|
Технология разработки телекоммуникационных сервисов вариант3
|
|
| engineerklub | Дата: Среда, 05.10.2022, 13:23 | Сообщение # 1 |
 Генералиссимус
Группа: Администраторы
Сообщений: 37408
Статус: Offline
| Технология разработки телекоммуникационных сервисов. вариант 3
Тип работы: Работа Лабораторная Сдано в учебном заведении: ДО СИБГУТИ
Описание: Лабораторная работа №1
Приёмы объектно-ориентированного программирования на языке Java 2
Цель работы:Изучение принципов объектно-ориентированного программирования – инкапсуляции, наследования, полиморфизма.
Подготовка к лабораторной работе:
1. Изучить лекционный материал дисциплины "Технологии разработки телекоммуникационных сервисов" по теме "Объектно-ориентированное программирование на языке Java".
2. Изучить соответствующие разделы в литературе [1, 2].
3. Повторить принципы работы в среде Eclipse.
Краткая теория
Один из основных способов, при помощи которого управляют сложностью, - это абстракция. Абстракция определяет свойства и поведение объекта, которые отличают его от других объектов. Суть объектно-ориентированного программирования (ООП) заключается в моделировании абстракции с использованием классов и их экземпляров- объектов.
Абстракция
Абстрагирование— это способ выделить набор значимых характеристик объекта, исключая из рассмотрения незначимые. Соответственно, абстракция— это набор всех таких характеристик.
Класс
Класс является описываемой на языке терминологии исходного кода моделью ещё не существующей сущности (объекта). Фактически он описывает устройство объекта, являясь своего рода чертежом. Говорят, что объект— этоэкземпляркласса. Обычно классы разрабатывают таким образом, чтобы их объекты соответствовали объектам предметной области.
Пример объявления класса:
//класс окружность
classCircle{
// поля класса
publicdoublex; // абсциссацентра
public double y; // ординатацентра
publicdoubler; // радиус
// методы класса
// выводит на экран параметры окружности
publicvoidprintCircle(){
System.out.println("Окружностьсцентром("+x+";"+y+")ирадиусом"+r);
}
// перемещает центр, движение окружности
publicvoidmoveCircle(doublea,doubleb){
x=x+a;
y=y+b;
}
// масштабируем с коэффициентом k
publicvoidzoomCircle(doublek){
r=r*k;
}
}
Объект
Объект — сущность вадресном пространствевычислительной системы, возникающая при создании экземпляра класса или копирования прототипа (например, после запуска результатовкомпиляцииикомпоновкиисходного кода на выполнение).
Пример создания объектов:
Circle c1 =newCircle();
Circlec2 =newCircle(10.0,35.0, 20.0);
Конструкторкласса
Конструктор — это специальный метод, вызываемый при создании экземпляра класса. Его имя совпадает с именем класса, и он не возвращает значения. Класс может иметь несколько конструкторов. Если при объявлении класса не описаны конструкторы, то при создании объекта будет выполняться конструктор по умолчанию.
public Circle(double xx, doubleyy,doublerr) {
x = xx;
y = yy;
r = rr;
}
Прототип
Прототип— это объект-образец, по образу и подобию которого создаются другие объекты. Объекты-копии могут сохранять связь с родительским объектом, автоматически наследуя изменения в прототипе; эта особенность определяется в рамках конкретногоязыка программирования.
СКАЧАТЬ
|
| |
|
|
| engineerklub | Дата: Среда, 05.10.2022, 13:24 | Сообщение # 2 |
 Генералиссимус
Группа: Администраторы
Сообщений: 37408
Статус: Offline
| Инкапсуляция
Инкапсуляция— это свойство системы, позволяющее объединить данные и методы, работающие с ними, в классе и скрыть детали реализации от пользователя.
Пример:
classCircle{
⋮
private double r; // радиус
public doublegetR() { return r; } public voidsetR(doublerr) { if(rr> 0) { r=rr;
}else{
System.out.println("Radius must be positive");
}
}
В приведённом примере r радиус окружности – переменная закрытого типа (private), доступ к ней возможен через методы открытого типа (public)getR()и setR()
Наследование
Наследование— это свойство системы, позволяющее описать новый класс на основе уже существующего с частично или полностью заимствованной функциональностью. Класс, от которого производится наследование, называется базовым, родительским или суперклассом. Новый класс— потомком, наследником, производным классом или подклассом.
Пример:
// две окружности
classTwoCircleextendsCircle{
publicdoublex1; // абсциссацентравторойокружности
publicdoubley1; // ординатацентравторой окружности
publicdoubler1; // радиусвторой окружности
⋮
publicvoidprintCircle(){
System.out.println("Перваяокружностьсцентром("+x+";"+y+")ирадиусом"+r);
System.out.println("Втораяокружностьсцентром("+x1+";"+y1+")ирадиусом"+r1);
}
}
Полиморфизм
Полиморфизм— это свойство системы использовать объекты с одинаковым интерфейсом без информации о типе и внутренней структуре объекта. Это позволяет использовать метод с одинаковым именем, выполняющий разные действия в зависимости от того, какой объект его вызывает.
Пример:
1 Circle c1 = newCircle();
2 TwoCirclec2 = newTwoCircle();
3 c1.printCircle();
4 c2.printCircle();
Метод printCircle() в третьей строке относится к объекту c1класса Circleи выводит на экран сведения об одной окружности, метод printCircle() в четвёртой строке относится к объекту c2 класса TwoCircle и выводит сведения о двух окружностях.
Методmain()
Один из классов приложения должен содержать метод main(). Для того, чтобы запустить приложение, метод main()вызывается Java-интерпретатором, иначе называемым виртуальной машиной Java (JVM – JavaVirtualMashine).
// класс, содержащийметод main
public classMain (){
public static voidmain(String[]args){
// создаём объект (окружность класса Circle)
Circleo1 =newCircle(10.2, 30.5, 25.0);
// выводим на экран параметры окружности
o1.printCircle();
// меняем расположение окружности
o1.moveCircle(100, 300);
// меняем радиус
o1.setR(132.5);
// выводим на экран обновлённые параметры окружности
o1.printCircle();
}
}
Задание:
1. Разработать суперкласс в соответствии с вариантом задания.
2. В суперклассе определить заданные поля и методы.
3. Описать конструктор суперкласса, определяющий значения полей.
4. Разработать три класса-потомка описанного выше суперкласса в соответствии с вариантом задания.
5. Определить, если это необходимо, дополнительные поля и методы подклассов, а также методы, переопределяющие методы суперкласса.
6. В каждом подклассе определить одно закрытое поле по вашему усмотрению и обеспечить вывод значения этого поля.
7. Создать класс, содержащий метод main(), в котором:
ü описать четыре объектные ссылки на объекты четырёх описанных выше классов;
ü создать четыре объекта описанных выше классов;
ü создать массив из четырёх элементов, тип которых определяется суперклассом;
ü присвоить четырем элементам массива ссылки на объекты описанные выше;
ü произвести действия со всеми элементами массива переопределёнными методами;
ü предусмотреть вывод результатов.
СКАЧАТЬ
|
| |
|
|
| engineerklub | Дата: Среда, 05.10.2022, 13:24 | Сообщение # 3 |
 Генералиссимус
Группа: Администраторы
Сообщений: 37408
Статус: Offline
| Порядок выполнения работы:
1. Запустить среду Eclipse, установленную на компьютере.
2. Создать новый проект (FileÞNewÞJavaProject). Указать его название и местоположение.
3. Создать суперкласс (FileÞNewÞClass). Добавить его описание (конструктор, поля и методы).
4. Создать поочерёдно потомки суперкласса (FileÞNewÞClass).
Примечание 1: не забыть после создания класса-потомка добавить к его имени указание на то, что это подкласс суперкласса …extends…
5. Добавить их описание (собственные поля и методы).
6. Создать класс, содержащий метод main().
Примечание2:при создании класса поставить крыжик в поле [publicstaticvoidmain(String[] args)].
7. Скомпилировать и запустить на выполнение методmain().
8. При необходимости исправить найденные ошибки и повторить п.7.
9. Оформить отчёт.
10. Сдать лабораторную работу.
Содержание отчёта:
1. Номер, название и цель лабораторной работы.
2. Задание по варианту.
3. Описание суперкласса и подклассов: их полей и методов.
4. Тексты классов и класса, содержащего метод main().
5. Результаты работы программы.
6. Описание полученных результатов.
7. Вывод по проделанной работе.
Контрольные вопросы:
1. В чём заключается преимущество объектно-ориентированного программирования?
2. Что такое инкапсуляция.
3. Для чего применяется наследование?
4. В чём преимущества полиморфизма?
5. Поясните структуру класса в языке Java.
6. Для чего необходим метод main()?
7. Какие методы доступа в языке Java вы знаете?
Вариант 3 - СВЯЗЬ
СКАЧАТЬ
|
| |
|
|
| engineerklub | Дата: Среда, 05.10.2022, 13:27 | Сообщение # 4 |
 Генералиссимус
Группа: Администраторы
Сообщений: 37408
Статус: Offline
| Тип работы: Работа Контрольная Сдано в учебном заведении: ДО СИБГУТИ
Описание:
Контрольная работа выполняется в среде разработки Eclipse на языке программирования Java. Для создания базы данных (БД) используется СУБД MySQL server. Вариант задания выбирается по списку в журнале группы. В качестве результатов выполнения контрольной работы необходимо представить преподавателю: • папку с Java проектом (содержащую все файлы в составе проекта); • пояснительную записку в формате .doc, .docx, .pdf, содержащий: o титульный лист, o оглавление, o задание по варианту, o краткое теоретическое описание (MySQL, Java, клиент-серверные приложения), o описание базы данных, o скриншоты создания базы данных, o тексты java-классов с комментариями, o скриншоты запуска java-программ и полученных результатов, o описание результатов выполнения, o выводы по проделанной работе; • файлы ввода-вывода; • файл базы данных.
Вариант 3 Телефонная станция c
СКАЧАТЬ
|
| |
|
|