Лабораторная работа №3 По дисциплине: Объектно-ориентированный анализ и программирование Тема: Коллекции объектов
Состав работы
|
|
Необходимые программы
Работа представляет собой файл, который можно открыть в программе:
- Microsoft Word
Описание
Тема: Коллекции объектов
Задание: преобразование структуры программы для представления информации о наборе объектов. Расширение программы должно включать обязательные элементы объявления и создания коллекции для хранения набора объектов и добавление в коллекцию нескольких объектов. Также для каждого элемента коллекции необходимо выполнить обращение к методу объекта.
Рекомендации к выполнению:
Для преобразования программы необходимо выполнить следующие основные изменения:
- в главный класс-предок необходимо добавить переменную коллекцию (ArrayList)
- в конструкторе класса данную переменную необходимо создать (оператор new)
- в процессе добавления элементов необходимо использовать метод add для добавления нового объекта в коллекцию.
Пример:
import java.util.*;
public class lab {
public static void main (String args[]) {
ComKlass klass = new ComKlass();
Computer comp1 = new Computer();
Computer comp2 = new Computer();
klass.AddComputer(comp1);
klass.AddComputer(comp2);
for(int i=0;i<klass.GetComputerList().size();i++) {
((Computer)klass.GetComputerList().get(i)).GetDataFromKeyBoard();
((Computer)klass.GetComputerList().get(i)).ShowMousePosition();
}
}
}
class ComKlass {
private ArrayList computers;
ComKlass() {
computers = new ArrayList();
}
void AddComputer(Computer c) {
computers.add(c);
}
ArrayList GetComputerList() {
return computers
}
}
class Computer {
private int id;
Mouse mouse;
KeyBoard keyboard;
Computer() {
mouse = new Mouse();
keyboard = new KeyBoard();
}
void GetDataFromKeyBoard() {
keyboard.GetKey();
}
void ShowMousePosition() {
mouse.GetPosition();
}
}
class Mouse {
private int x,y;
void GetPosition() {
System.out.println("Mouse.GetPosition()");
}
void SetPosition(int x, int y) {
this.x = x;
this.y = y;
}
}
class KeyBoard {
private char key;
void SetKey(char k) {
this.key = k;
}
char GetKey() {
System.out.println("KeyBoard.GetKey()");
return key;
}
}
В изложенном выше примере для создания компьютерного класса и запуска программы был использован класс lab, имеющий статический метод main. После создания нового экземпляра объекта «компьютер», переменная помещается в коллекцию с помощью вызова метода AddComputer. Внутри коллекции происходит циклический перебор всех ее элементов с явным приведением типа объекта к Computer и вызов методов класса, в методе класса для вывода на экран информации о работе данного элемента структуры выводится строка с текстом имени метода.
Задание: преобразование структуры программы для представления информации о наборе объектов. Расширение программы должно включать обязательные элементы объявления и создания коллекции для хранения набора объектов и добавление в коллекцию нескольких объектов. Также для каждого элемента коллекции необходимо выполнить обращение к методу объекта.
Рекомендации к выполнению:
Для преобразования программы необходимо выполнить следующие основные изменения:
- в главный класс-предок необходимо добавить переменную коллекцию (ArrayList)
- в конструкторе класса данную переменную необходимо создать (оператор new)
- в процессе добавления элементов необходимо использовать метод add для добавления нового объекта в коллекцию.
Пример:
import java.util.*;
public class lab {
public static void main (String args[]) {
ComKlass klass = new ComKlass();
Computer comp1 = new Computer();
Computer comp2 = new Computer();
klass.AddComputer(comp1);
klass.AddComputer(comp2);
for(int i=0;i<klass.GetComputerList().size();i++) {
((Computer)klass.GetComputerList().get(i)).GetDataFromKeyBoard();
((Computer)klass.GetComputerList().get(i)).ShowMousePosition();
}
}
}
class ComKlass {
private ArrayList computers;
ComKlass() {
computers = new ArrayList();
}
void AddComputer(Computer c) {
computers.add(c);
}
ArrayList GetComputerList() {
return computers
}
}
class Computer {
private int id;
Mouse mouse;
KeyBoard keyboard;
Computer() {
mouse = new Mouse();
keyboard = new KeyBoard();
}
void GetDataFromKeyBoard() {
keyboard.GetKey();
}
void ShowMousePosition() {
mouse.GetPosition();
}
}
class Mouse {
private int x,y;
void GetPosition() {
System.out.println("Mouse.GetPosition()");
}
void SetPosition(int x, int y) {
this.x = x;
this.y = y;
}
}
class KeyBoard {
private char key;
void SetKey(char k) {
this.key = k;
}
char GetKey() {
System.out.println("KeyBoard.GetKey()");
return key;
}
}
В изложенном выше примере для создания компьютерного класса и запуска программы был использован класс lab, имеющий статический метод main. После создания нового экземпляра объекта «компьютер», переменная помещается в коллекцию с помощью вызова метода AddComputer. Внутри коллекции происходит циклический перебор всех ее элементов с явным приведением типа объекта к Computer и вызов методов класса, в методе класса для вывода на экран информации о работе данного элемента структуры выводится строка с текстом имени метода.
Похожие материалы
Лабораторная работа №2 По дисциплине: Объектно-ориентированный анализ и программирование Тема: Объекты и классы
amphtears
: 11 февраля 2026
Тема: Объекты и классы
Задание: построить объектную структуру на языке Java с использованием UML диаграммы классов.
Для построения программы необходимо использовать объекты и UML диаграмму классов, построенную на первых занятиях. Каждый класс диаграммы необходимо представить в виде самостоятельного (отдельного) класса.
300 руб.
Лабораторная работа №3 по дисциплине: Объектно-ориентированное программирование
vohmin
: 3 июня 2018
Тема:
Принцип наследования.
Создание иерархии классов.
Классы и модули.
Задание:
Создать иерархию графических классов в соответствии с рисунком. Описания классов оформить в отдельном модуле.
50 руб.
Лабораторная работа №3 по дисциплине: «Объектно-ориентированный анализ и программирование»
Мария114
: 24 мая 2017
Тема: Пакеты, внутренние и вложенные классы
Задание: Необходимо расширить построенную объектную структуру с внедрением внутренних классов.
100 руб.
Лабораторная работа №3 по дисциплине: «Объектно-ориентированное программирование». Все варианты
Roma967
: 21 марта 2015
Задание:
Создать иерархию графических классов в соответствии с рисунком. Описания классов оформить в отдельном модуле.
Рекомендации к выполнению:
В данной лабораторной работе Вы должны написать, откомпилировать и сохранить модуль, содержащий описание классов графических фигур. Для этого изучите в лекциях §9 “Классы и модули” и разберите в примере 2.7 (§10) конспекта лекций модуль FIGURA. Т.е. Вы должны прислать на проверку только файл с текстом модуля (программа, которая будет использовать модул
300 руб.
Курсовая работа по дисциплине Объектно-ориентированный анализ и программирование на тему: Создание объектно-ориентированного программного приложения для обработки данных в заданной предметной области
DENREM
: 12 мая 2018
Создание объектно-ориентированного программного приложения для обработки данных в заданной предметной области
Заданная предметная область ___Пункт обмена валют
ВВЕДЕНИЕ 5
ЗАДАНИЕ 8
1 АНАЛИЗ ПРЕДМЕТНОЙ ОБЛАСТИ 10
1.1 Общие положения 10
1.2 Разработка модели прецедентов 12
1.3 Разработка модели классов анализа 13
2 РАЗРАБОТКА СТРУКТУРЫ ВХОДНЫХ И ВЫХОДНЫХ ДАННЫХ 17
2.1 Входные данные программы 17
2.2 Выходные данные и результаты работы программы 17
2.3 Функциональная структура п
1500 руб.
Лабораторная работа № 3 По дисциплине: Объектно-ориентированное программирование Вариант 4
Nitros
: 28 июня 2025
Лабораторная работа №3
Тема: Принцип полиморфизма. Использование виртуальных методов.
Задание:
Внести следующие изменения в программу, разработанную в лабораторной работе №2:
Использовать общий метод движения фигур, описанный в родительском классе самого верхнего уровня иерархии (т.е. описание самого метода движения Move убрать из всех классов, кроме самого верхнего родительского).
Использовать виртуальные методы для корректной работы программы после внесенных изменений.
300 руб.
Лабораторная работа №3 по дисциплине “Объектно-ориентированное программирование” Вариант №6
Софья5
: 16 сентября 2024
Лабораторная работа №3
Язык программирования: C++
Тема: Принцип полиморфизма. Использование виртуальных методов.
Задание:
Внести следующие изменения в программу, разработанную в лабораторной работе №2:
Использовать общий метод движения фигур, описанный в родительском классе самого верхнего уровня иерархии (т.е. описание самого метода движения Move убрать из всех классов, кроме самого верхнего родительского).
Использовать виртуальные методы для корректной работы программы после внесенных измене
100 руб.
Лабораторная работа №3 по дисциплине: «Объектно-ориентированное программирование». Вариант №7
kiana
: 27 октября 2014
Тема:
Принцип наследования.
Создание иерархии классов.
Классы и модули.
Задание:
Создать иерархию графических классов в соответствии с рисунком. Описания классов оформить в отдельном модуле.
Рекомендации к выполнению:
В данной лабораторной работе Вы должны написать, откомпилировать и сохранить модуль, содержащий описание классов графических фигур. Для этого изучите в лекциях §9 “Классы и модули” и разберите в примере 2.7 (§10) конспекта лекций модуль FIGURA. Т.е. Вы должны прислать на прове
50 руб.
Другие работы
Сравнительный анализ средств администрирования в операционных системах Windows
alfFRED
: 10 октября 2013
СОДЕРЖАНИЕ
Введение
1. Общие понятия ОС семейства Windows и системного администрирования
1.1 История операционных систем семейства Windows
1.2 Основные понятия системного администрирования
2. Сравнительный анализ систем администрирования ОС семейства Windows
2.1 Определение востребованности операционных систем Windows
2.2 Сравнительная характеристика операционных систем Windows
2.3 Итог сравнительного анализа ОС семейства Windows
Заключение
Список используемой литературы
ВВЕДЕН
10 руб.
Контрольная работа по курсу Теория вероятностей. Вариант № 5
vereney
: 12 января 2012
1,вероятность появления поломок на каждой из соединительных линий равна . Какова вероятность того, что хотя бы две линии исправны?
2,в одной урне белых шаров и черных шара, а в другой - белых и черных. Из первой урны случайным образом вынимают шара и опускают во вторую урну. После этого из второй урны также случайно вынимают шара. Найти вероятность того, что все шары, вынутые из второй урны, белые.
3,в типографии имеется печатных машин. Для каждой машины вероятность того, что о
50 руб.
Из истории Москвы XIX века
Aronitue9
: 25 августа 2013
Особенности внутриполитического режима, установившегося при Павле I (1796—1801), сказались и на положении в Москве. За недолгое правление этого императора в Москве появилось много тайных агентов, следивших за настроениями дворянского общества. Было издано и такое предписание: владельцы домов, устраивавшие у себя балы или концерты, были обязаны заранее ставить об этом в известность полицию. Однако и полученное разрешение не освобождало от обязательного присутствия среди гостей квартального в мунд
5 руб.
Экологический кризис г. Октябрьского
VikkiROY
: 17 марта 2013
Содержание:
1. Экологические проблемы республики Башкортостан.
2. Краткий исторический очерк о городе Октябрьский.
3. Сложившаяся экологическая ситуация в городе Октябрьском.
4. Причины экологического кризиса и пути его преодоления.
Экологические проблемы Республики Башкортостан
и пути их решения
— Сложившиеся веками традиции, обычаи и быт башкир способствовали сохранению уникального природного богатства Башкортостана. Культ природы прослеживается в
15 руб.