Лабораторная работа №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 руб.
Другие работы
Совершенствование технического обслуживания подвижного состава в ооо «светлый - н» новоспасского района ульяновской области
Рики-Тики-Та
: 16 февраля 2017
АННОТАЦИЯ
Дипломный проект выполнен на ___ стр. машинописного текста, графическая часть выполнена на __ листах формата А1.
Проведён анализ эксплуатации подвижного состава ООО «Светлый - Н» Новоспасского района Ульяновской области, выявлены недостатки.
Для улучшения технического обслуживания разработан пункт технического обслуживания подвижного состава.
Разработано устройство для удаления выхлопных газов из выхлопной трубы транспортного средства при его техническом обслуживании.
Рассмотрены вопро
825 руб.
Гидростатика и гидродинамика ТИУ Задача 2.1 Вариант 5
Z24
: 31 декабря 2026
По напорному трубопроводу диаметром d, м, перекачивается мазут, имеющий кинематическую вязкость ν = 1,5 Ст (стокс). Расход мазута составляет Q, л/с. Определить режим движения жидкости.
120 руб.
Балахонцев Е.В. Техническая термодинамика Контрольная работа 4 Задача 11
Z24
: 19 октября 2025
Определить скорость истечения перегретого пара через суживающееся сопло, если начальные параметры пара р1=0,6 МПа и t1=350 ºС, а давление среды, в которую происходит истечение, р2=0,4 МПа. Скоростью на входе в сопло, потерями и теплообменом со стенками пренебречь.
200 руб.
Визуальное программирование и человеко-машинное взаимодействие. Лабораторная работа №1
svladislav987
: 9 ноября 2021
Лабораторная работа №1. Знакомство с основными интерфейсными элементами
Тема: Работа с компонентами ListBox, ComboBox, RadioButton, CheckBox, GroupBox, Panel.
1) Создать визуальную часть приложения (интерфейс), используя необходимые компоненты. Все нужные компоненты указаны на рисунке 1. Их расположение и общий вид формы может выбираться самостоятельно.
2) Приложение должно позволить пользователю открыть текстовый файл, который считается в RichTextBox. Далее, пользователь может выбрать к
150 руб.