- •Проверка версии Java на персональном компьютере
- •1.5 Запуск простого приложения Java
- •Подготовка к выполнению работы. Подготовка производится в часы самостоятельной работы студентов. Она включает:
- •Описание алгоритма нахождения определителя матрицы
- •Освоение отладчика
- •1.3 Разработка основных методов нахождения определителя матрицы
- •Подготовка к выполнению работы. Подготовка производится в часы самостоятельной работы студентов. Она включает:
- •3.2 Создание нового проекта и подготовка основных классов
- •Описание свойств и методов классов
- •Инициализация объекта справочника и пример клиентского кода
- •Запуск программы и устранение ошибок
- •Подготовка к выполнению работы. Подготовка производится в часы самостоятельной работы студентов. Она включает:
- •Создание графической формы
- •Компоновка формы под редактор телефонного справочника
- •Запуск приложения
- •1. Подготовка к выполнению работы. Подготовка производится в часы самостоятельной работы студентов. Она включает:
- •5.2 Реализация обработчиков события нажатия на кнопки инструментальной панели
- •5.3 Создание свойства телефонного справочника
- •5.4 Добавление абонента в справочник
- •5.5 Удаление абонента в справочнике
- •Подготовка к выполнению работы. Подготовка производится в часы самостоятельной работы студентов. Она включает:
- •Создание проекта с графическим интерфейсом
- •Компоновка формы под графический редактор
- •1. Подготовка к выполнению работы. Подготовка производится в часы самостоятельной работы студентов. Она включает:
- •7.2 Отображение позиции курсора мыши
- •7.3 Разработка классов фигур
- •7.4 Реализация обработчиков события нажатия на кнопки инструментальной панели
- •7.5 Очистка области рисования
- •1. Подготовка к выполнению работы. Подготовка производится в часы самостоятельной работы студентов. Она включает:
- •8.2 Перемещение фигур на панели
- •8.3 Изменение размера фигуры
- •8.4 Интерфейс iResizable
- •8.5 Изменение курсора мыши
Подготовка к выполнению работы. Подготовка производится в часы самостоятельной работы студентов. Она включает:
изучение теоретического материала темы по конспекту лекций и литературе;
ознакомление с содержанием работы по настоящему методическому пособию.
2. Создание нового проекта и подготовка основных классов.
3. Описание свойств и методов классов.
4. Инициализация объекта справочника и пример клиентского кода.
5. Запуск программы и устранение ошибок.
3.2 Создание нового проекта и подготовка основных классов
Создайте новый проект (Java Application) с названием TelephoneDirectory. Переименуйте класс TelephoneDirectory в Example.
Создайте три новых класса Address, Abonent и TelephoneDirectory. Для создания класса вызовите выпадающее меню на необходимом пакете проекта. В выпадающем меню выберите “New” -> “Java Class…” (рисунок 3.1).
Рисунок 3.1 – Создание нового класса
Описание свойств и методов классов
Рисунок 3.2 – диаграмма классов UML
В классе Address объявите следующий набор свойств объекта:
улица (streetName);
номер дома (homeNumber);
номер квартиры (apartmentNumber).
Объявите и инициализируйте конструктор объекта адреса с данными тремя аргументами. Присвойте значения аргументов свойствам объекта. Т.к. имена аргументов будут совпадать с именами свойств и для исключения перекрытия свойств аргументами, используйте ключевое слово this для свойств объекта (например, this.street).
В классе Abonent объявите следующий набор свойств объекта:
фамилия (family);
имя (name);
отчество (patronymic);
адрес (address);
телефонный номер (telephoneNumber).
В том же классе создайте конструктор объекта с таким же набором аргументов, как и его свойства. Присвойте значения аргументов свойствам объекта.
Создайте методы для чтения свойств объекта (get-методы).
В классе TelephoneDirectory объявите свойство коллекции (abonents), в которой будут храниться все абонента телефонного справочника. Коллекцию используйте класса ArrayList, для хранения конкретного типа Abonent (ArrayList<Abonent>). Класс ArrayList может хранить объекты любого типа, но также является типизированным, т.е. ему можно жестко задать тип для предотвращения ошибочного попадания иного типа.
Объявите и опишите конструктор объекта телефонного справочника. Данный конструктор не имеет аргументов и содержит в своем теле инициализацию свойства abonents объектом коллекции ArrayList (abonents = new ArrayList<Abonent>()).
Создайте методы для добавления и удаления абонентов из справочника (addAbonent(Abonent abonent) и removeAbonent(Abonent abonent)). Для добавления абонента в коллекцию используйте метод add (abonents.add(abonent)). Для удаления абонента из коллекции используйте метод remove (abonents.remove(abonent)). Создайте метод для чтения всех абонентов справочника (ArrayList<Abonent> getAbonents()). И методы для поиска абонента по фамилии (ArrayList<Abonent> getAbonents(String family)) и номеру телефона (Abonent getAbonent(int telephoneNumber)).
Инициализация объекта справочника и пример клиентского кода
Для тестирования написанного кода справочника опишите пример клиентского кода (класс Example). В методе main объявите переменную телефонного справочника (например telephoneDirectoryGroupStudents или tdGroupStudents) и инициализируйте ее новым объектом. Создайте новый объект Абонента (например, new Abonent(“Петров”, “Иван”, “Васильевич”, new Adderss(“Дедюкина”, 20, 205), 2281834)) и передайте его в метод addAbonent телефонного справочника. Создайте еще пару других абонентов.
Вызовите метод, возвращающий всех абонентов телефонного справочника, присвойте ссылку полученный объект новой переменной allAbonents того-же типа.
Создайте конструкцию цикла for (удобнее всего использовать конструкцию for-each) для чтения всех абонентов поочередно. В теле цикла выведите на консоль все свойства абонента (System.out.println(abonent.getFamily + “ ” + abonent.getName() + “ “ + …)).
Реализуйте поиск абонентов по фамилии и номеру телефона. Результат выведите на консоль.