метод. к лаб. работам (ООП). Основы языка java
Скачать 205 Kb.
|
Лабораторная работа №2Тема: объектная модель языка JAVA Цель работы:Изучение объектной модели Java. Изучить и освоить способы определения классов. Освоить создание и использование объектов ссылочного типа. Изучить и освоить способы определения, создания, инициализации и использования массивов Порядок выполнения работы:Ориентируясь на вариант задания: Разработать класс заданной предметной области; Для каждого класса разработать состав полей и методов, руководствуясь основными принципами объектно-ориентированного проектирования; Определить, какими модификаторами доступа должны быть помечены все поля и методы; Разработать совокупность конструкторов; Освоить использование ключевых слов super и this в конструкторах и методах классов; Разработать реализацию совокупности методов классов, освоить перегрузку и замещение методов; Предусмотреть определение, инициализацию и создание массивов, выполнение операций с элементами массивов примитивных типов и массивов ссылочного типа. Требования к содержанию отчета:Отчет готовится в электронном виде и должен содержать: цель работы; описание разработанных классов заданной предметной области; листинги классов; документацию, подготовленную с использованием утилиты javadoc; выводы и заключение. Контрольные вопросы (примерный перечень):Что делает операция new? Чем объявление массива отличается от его создания? Что такое поле класса? Чем оно отличается от поля объекта? Что такое сигнатура метода? Что можно сделать при помощи переменной super? В чем отличие результата применения модификатора final к классу и к переменной? Можно ли объявить двумерный массив так: int[] twoDimArray[] = new int[10][];? Что произойдет с переменной nameOfChild в результате выполнения операторов: String nameOfChild = "Bill"; nameOfChild += " Gates"; Что делает конструктор класса? Должен ли он обязательно явно присутствовать в объявлении класса? Какие в существуют виды ссылочных типов? Как реализуются ссылочные переменные? Что такое типы, определенные пользователем? В чем особенности строковых переменных? Как переменные различных видов передаются в качестве параметров методам? Что можно сделать при помощи переменной this? Что такое элементы класса и элементы экземпляра класса, чем они отличаются друг от друга? Как нужно указывать, что переменная или метод является элементом класса, а не экземпляра? Для чего используются модификаторы доступа? Какие существуют модификаторы доступа, как они ограничивают доступ к элементам? Как ведут себя строковые переменные при передаче их в качестве параметров? Что такое повторное использование кода? Какие заранее определенные переменные содержит каждый класс Java? Как импортировать классы из пакетов? Как использовать явные ссылки на классы из пакетов? Как добавить класс в пакет? Варианты заданияРазработать классы для описанных ниже объектов. Включить в класс методы set (…), get (…), toString (…). Определить другие методы. 1. Student: Фамилия, Имя, Отчество, Дата рождения, Адрес, Телефон, Факультет, Курс. Создать массив объектов. Вывести: а) список студентов заданного факультета; б) списки студентов для каждого факультета и курса; в) список студентов, родившихся после заданного года. 2. Abiturient: Фамилия, Имя, Отчество, Адрес, Оценки. Создать массив объектов. Вывести: а) список абитуриентов, имеющих неудовлетворительные оценки; б) список абитуриентов, сумма баллов у которых не меньше заданной; в) выбрать N абитуриентов, имеющих самую высокую сумму баллов, и список абитуриентов, имеющих полупроходной балл. 3. Aeroflot: Пункт назначения, Номер рейса, Тип самолета, Время вылета, Дни недели. Создать массив объектов. Вывести: а) список рейсов для заданного пункта назначения; б) список рейсов для заданного дня недели; в) список рейсов для заданного дня недели, время вылета для которых больше заданного. 4. Book: Автор, Название, Издательство, Год, Количество страниц. Создать массив объектов. Вывести: а) список книг заданного автора; б) список книг, выпущенных заданным издательством; в) список книг, выпущенных после заданного года. 5. Worker: Фамилия и инициалы, Должность, Год поступления на работу, Зарплата. Создать массив объектов. Вывести: а) список работников, стаж работы которых на данном предприятии превышает заданное число лет; б) список работников, зарплата которых больше заданной; в) список работников, занимающих заданную должность. 6. Train: Пункт назначения, Номер поезда, Время отправления, Число общих мест, Купейных, Плацкартных. Создать массив объектов. Вывести: а) список поездов, следующих до заданного пункта назначения; б) список поездов, следующих до заданного пункта назначения и отправляющихся после заданного часа; в) список поездов, отправляющихся до заданного пункта назначения и имеющих общие места. 7. Product: Наименование, Производитель, Цена, Срок хранения, Количество. Создать массив объектов. Вывести: а) список товаров для заданного наименования; б) список товаров для заданного наименования, цена которых не превышает указанной; в) список товаров, срок хранения которых больше заданного. 8. Bus: Фамилия и инициалы водителя, Номер автобуса, Номер маршрута, Марка, Год начала эксплуатации, Пробег. Создать массив объектов. Вывести: а) список автобусов для заданного номера маршрута; б) список автобусов, которые эксплуатируются больше 10 лет; в) список автобусов, пробег у которых больше 10 000 км. 9. Patient: Фамилия, Имя, Отчество, Адрес, Номер медицинской карты, Диагноз. Создать массив объектов. Вывести: а) список пациентов, упорядоченный в алфавитном порядке; б) список пациентов, имеющих данный диагноз; в) список пациентов, номер медицинской карты которых находится в заданном интервале. 10. Customer: Фамилия, Имя, Отчество, Адрес, Телефон, Номер кредитной карточки, Номер банковского счета, Баланс. Создать массив объектов. Вывести: а) список покупателей в алфавитном порядке; б) список покупателей, номер кредитной карточки которых находится в заданном интервале; в) список покупателей, баланс которых превышает заданное значение. 11. File: Имя файла, Размер, Дата создания, Количество обращений. Создать массив объектов. Вывести: а) список файлов, упорядоченный в алфавитном порядке; б) список файлов, размер которых превышает заданный; в) список файлов, число обращений к которым превышает заданное. 12. Word: Слово, Номера страниц, на которых слово встречается (от 1 до 10), Число страниц. Создать массив объектов. Вывести: а) слова, которые встречаются более чем на N страницах; б) слова в алфавитном порядке; в) для заданного слова номера страниц, на которых оно встречается. 13. House: Адрес, Этаж, Количество комнат, Площадь. Создать массив объектов. Вывести: а) список квартир, имеющих заданное число комнат; б) список квартир, имеющих заданное число комнат и расположенных на этаже, который находится в определенном промежутке; в) список квартир, имеющих площадь, превосходящую заданную. 14. Phone: Фамилия, Имя, Отчество, Адрес, Номер, Время внутригородских разговоров, Время междугородних разговоров. Создать массив объектов. Вывести: а) сведения об абонентах, время внутригородских разговоров которых превышает заданное; б) сведения об абонентах, воспользовавшихся междугородней связью; в) сведения об абонентах, выведенные в алфавитном порядке. 15. Person: Фамилия, Имя, Отчество, Адрес, Пол, Образование,Год рождения. Создать массив объектов. Вывести: а) список граждан, возраст которых превышает заданный; б) список граждан с высшим образованием; в) список граждан мужского пола. |