Лабораторные работы №№1-3 по дисциплине: Объектно-ориентированное программирование и анализ. Вариант общий
Состав работы
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Работа представляет собой zip архив с файлами (распаковать онлайн), которые открываются в программах:
- Microsoft Word
Описание
Лабораторная работа №1:
Тема: построение UML диаграммы вариантов использования и диаграммы классов, построить объектную структуру на языке Java на основе созданных диаграмм.
Задание: для диаграммы вариантов использования нужно отобразить на диаграмме следующие основные действия с объектом «компьютер»: ввод программы с клавиатуры, подсоединение внешнего устройства (флэшки), просмотр результата работы программы на мониторе.
На диаграмме классов необходимо отобразить класс объекта «компьютер», основные поля класса (номер компьютера, расположение-аудитория), методы класса, перечисленные в диаграмме вариантов использования, а также отобразить классы, представляющие собой основные компоненты (части) объекта «компьютер»: системный блок, монитор, клавиатура, мышка. Созданные классы необходимо соединить между собой ассоциациями с указанием множественности на концах ассоциаций.
Для построения программы необходимо использовать объекты и UML диаграмму классов, построенные ранее. Каждый класс диаграммы необходимо представить в виде самостоятельного (отдельного) класса.
Рекомендации к выполнению:
Для построения UML диаграммы можно воспользоваться любым графическим редактором или использовать программу, включающую в себя графические примитивы языка UML – программа Dia.
Для создания программы удобнее всего использовать текстовый редактор с возможностью компиляции и запуска программы, например редактор Geany.
После создания нового файла на языке Java можно в соответствии с основными компонентами созданной диаграммы классов перейти к созданию соответствующих классов согласно синтаксису языка в тексте программы. Например, Ваша программа может состоять из следующих объектов (фрагмент):
public class lab {
public static void main (String args[]) {
Computer comp = new Computer();
comp.GetDataFromKeyBoard();
comp.ShowMousePosition();
}
}
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), классы, создающие требуемую объектную структуру (классы Computer, Mouse, KeyBoard).
Класс lab содержит статичный метод main в котором осуществляется создание экземпляра класса Computer и выполнение методов класса. При отсутствии класса lab и присутствии только основных классов воссоздающих структуру объекта, программа будет скомпилирована, но ее запуск будет невозможен. Для демонстрации работа функциональных частей объекта на экран выводятся строки о работе соответствующего метода.
Так как объекты Mouse и Keyboard являются функциональными единицами объекта Computer, в классе Computer созданы экземпляры данных объектов (поля), а в конструкторе класса Computer при создании класса происходит создание экземпляров Mouse и Keyboard.
Лабораторная работа №2:
Тема: Пакеты, внутренние и вложенные классы.
Задание: Необходимо расширить построенную объектную структуру с внедрением внутренних классов.
Рекомендации к выполнению:
Для изменения ранее созданной программы необходимо классы, являющиеся зависимыми от класса-предка представить как внутренние классы. Например, класс «Mouse» класса «Computer» можно преобразовать во внутренний класс:
public class Computer {
class Mouse {
int id;
void GetPosition() {
}
}
int id;
Mouse mouse;
void GetDataFromFleshka() {
}
}
Лабораторная работа №3:
Тема: Коллекции объектов.
Задание: преобразование структуры программы для представления информации о наборе объектов. Расширение программы должно включать обязательные элементы объявления и создания коллекции для хранения набора объектов и добавление в коллекцию нескольких объектов. Также для каждого элемента коллекции необходимо выполнить обращение к методу объекта.
Рекомендации к выполнению:
Для преобразования программы необходимо выполнить следующие основные изменения:
- в главный класс-предок необходимо добавить переменную коллекцию (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 и вызов методов класса, в методе класса для вывода на экран информации о работе данного элемента структуры выводится строка с текстом имени метода.
Тема: построение UML диаграммы вариантов использования и диаграммы классов, построить объектную структуру на языке Java на основе созданных диаграмм.
Задание: для диаграммы вариантов использования нужно отобразить на диаграмме следующие основные действия с объектом «компьютер»: ввод программы с клавиатуры, подсоединение внешнего устройства (флэшки), просмотр результата работы программы на мониторе.
На диаграмме классов необходимо отобразить класс объекта «компьютер», основные поля класса (номер компьютера, расположение-аудитория), методы класса, перечисленные в диаграмме вариантов использования, а также отобразить классы, представляющие собой основные компоненты (части) объекта «компьютер»: системный блок, монитор, клавиатура, мышка. Созданные классы необходимо соединить между собой ассоциациями с указанием множественности на концах ассоциаций.
Для построения программы необходимо использовать объекты и UML диаграмму классов, построенные ранее. Каждый класс диаграммы необходимо представить в виде самостоятельного (отдельного) класса.
Рекомендации к выполнению:
Для построения UML диаграммы можно воспользоваться любым графическим редактором или использовать программу, включающую в себя графические примитивы языка UML – программа Dia.
Для создания программы удобнее всего использовать текстовый редактор с возможностью компиляции и запуска программы, например редактор Geany.
После создания нового файла на языке Java можно в соответствии с основными компонентами созданной диаграммы классов перейти к созданию соответствующих классов согласно синтаксису языка в тексте программы. Например, Ваша программа может состоять из следующих объектов (фрагмент):
public class lab {
public static void main (String args[]) {
Computer comp = new Computer();
comp.GetDataFromKeyBoard();
comp.ShowMousePosition();
}
}
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), классы, создающие требуемую объектную структуру (классы Computer, Mouse, KeyBoard).
Класс lab содержит статичный метод main в котором осуществляется создание экземпляра класса Computer и выполнение методов класса. При отсутствии класса lab и присутствии только основных классов воссоздающих структуру объекта, программа будет скомпилирована, но ее запуск будет невозможен. Для демонстрации работа функциональных частей объекта на экран выводятся строки о работе соответствующего метода.
Так как объекты Mouse и Keyboard являются функциональными единицами объекта Computer, в классе Computer созданы экземпляры данных объектов (поля), а в конструкторе класса Computer при создании класса происходит создание экземпляров Mouse и Keyboard.
Лабораторная работа №2:
Тема: Пакеты, внутренние и вложенные классы.
Задание: Необходимо расширить построенную объектную структуру с внедрением внутренних классов.
Рекомендации к выполнению:
Для изменения ранее созданной программы необходимо классы, являющиеся зависимыми от класса-предка представить как внутренние классы. Например, класс «Mouse» класса «Computer» можно преобразовать во внутренний класс:
public class Computer {
class Mouse {
int id;
void GetPosition() {
}
}
int id;
Mouse mouse;
void GetDataFromFleshka() {
}
}
Лабораторная работа №3:
Тема: Коллекции объектов.
Задание: преобразование структуры программы для представления информации о наборе объектов. Расширение программы должно включать обязательные элементы объявления и создания коллекции для хранения набора объектов и добавление в коллекцию нескольких объектов. Также для каждого элемента коллекции необходимо выполнить обращение к методу объекта.
Рекомендации к выполнению:
Для преобразования программы необходимо выполнить следующие основные изменения:
- в главный класс-предок необходимо добавить переменную коллекцию (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 и вызов методов класса, в методе класса для вывода на экран информации о работе данного элемента структуры выводится строка с текстом имени метода.
Дополнительная информация
Работы зачтены без замечаний!
Дата сдачи: сентябрь 2018 г.
Содержание архива:
1) Лабораторная №1:
Задание.doc; Диаграммы.doc; lab1.java
2) Лабораторная №2:
Задание.doc; lab2.java
3) Лабораторная №3:
Задание.doc; lab3.java
Выполняю работы на заказ по различным дисциплинам.
E-mail: LRV967@ya.ru
Дата сдачи: сентябрь 2018 г.
Содержание архива:
1) Лабораторная №1:
Задание.doc; Диаграммы.doc; lab1.java
2) Лабораторная №2:
Задание.doc; lab2.java
3) Лабораторная №3:
Задание.doc; lab3.java
Выполняю работы на заказ по различным дисциплинам.
E-mail: LRV967@ya.ru
Похожие материалы
Лабораторные работы №1-3 по дисциплине: Объектно-ориентированное программирование. Вариант общий
holm4enko87
: 12 ноября 2024
Задание:
Часть 1. Описать класс tPoint, инкапсулирующий основные свойства и методы точки на плоскости. При написании программы на С++ или С# инициализировать поля с помощью конструктора (объявить два конструктора: по умолчанию и с параметрами). Создать массив из 100 точек. Нарисовать точки случайным образом случайным цветом на экране.
Часть 2. Сделать защиту полей класса (т.е. работать с полями в основной программе не напрямую, а используя соответствующие методы записи в поле и чтения из поля).
500 руб.
Лабораторные работы №1-3 по дисциплине: Объектно-ориентированное программирование. Вариант общий
xtrail
: 22 июля 2024
Лабораторная работа №1
Тема: Принцип инкапсуляции. Описание класса.
Задание:
Часть 1. Описать класс tPoint, инкапсулирующий основные свойства и методы точки на плоскости. При написании программы на С++ или С# инициализировать поля с помощью конструктора (объявить два конструктора: по умолчанию и с параметрами). Создать массив из 100 точек. Нарисовать точки случайным образом случайным цветом на экране.
Часть 2. Сделать защиту полей класса (т.е. работать с полями в основной программе не напр
600 руб.
Лабораторная работа №1 по дисциплине: Объектно-ориентированный анализ и программирование. Вариант общий
xtrail
: 25 декабря 2025
Тема: построение UML диаграммы вариантов использования и диаграммы классов, построить объектную структуру на языке Java на основе созданных диаграмм.
Задание: для диаграммы вариантов использования нужно отобразить на диаграмме следующие основные действия с объектом «компьютер»: ввод программы с клавиатуры, подсоединение внешнего устройства (флэшки), просмотр результата работы программы на мониторе.
На диаграмме классов необходимо отобразить класс объекта «компьютер», основные поля класса (но
400 руб.
Лабораторные работы №1-3 по дисциплине: Объектно-ориентированный анализ и программирование. Без вариантов.
IT-STUDHELP
: 20 июля 2020
Цикл лабораторных работ включает в себя следующие работы:
Построение UML диаграммы вариантов использования и диаграммы классов и Построение объектной структуры программы по этим диаграммам.
Расширение построенной объектной структуры с внедрением внутренних классов.
Добавление в разработанную ранее программу информации о наборе объектов.
Прежде, чем приступать к выполнению очередной лабораторной работы необходимо сначала прочитать конспект лекций соответствующий разделу лабораторной работы.
Вс
600 руб.
Курсовая работа по дисциплине: Объектно-ориентированное программирование и анализ. Вариант №7
SibGOODy
: 15 сентября 2018
Курсовая работа состоит из одного задания. Необходимо разработать систему хранения и обслуживания информации объекта согласно индивидуальному варианту (см. далее перечень вариантов).
Номер варианта выбирается по двум последним цифрам пароля.
Задание:
Написать программу, используя объектно-ориентированный подход, которая описывает объект и его основные характеристики и действия.
Описание классов необходимо оформить в виде отдельного модуля. Иерархия классов должна включать минимум три класса, од
900 руб.
Лабораторные работы 1-3 по дисциплине: Объектно-ориентированный анализ и программирование. Вариант №04
IT-STUDHELP
: 11 октября 2023
Вариант №04
Лабораторная работа 1
Тема: построение UML диаграммы вариантов использования и диаграммы классов, построить объектную структуру на языке Java на основе созданных диаграмм.
Задание: для диаграммы вариантов использования нужно отобразить на диаграмме следующие основные действия с объектом «компьютер»: ввод программы с клавиатуры, подсоединение внешнего устройства (флэшки), просмотр результата работы программы на мониторе.
На диаграмме классов необходимо отобразить класс объекта «ком
900 руб.
Лабораторные работы 1-3 по дисциплине: Объектно-ориентированный анализ и программирование. Вариант №22
IT-STUDHELP
: 5 декабря 2022
Лабораторная работа №1
Тема: построение UML диаграммы вариантов использования и диаграммы классов, построить объектную структуру на языке Java на основе созданных диаграмм.
Задание: для диаграммы вариантов использования нужно отобразить на диаграмме следующие основные действия с объектом «компьютер»: ввод программы с клавиатуры, подсоединение внешнего устройства (флэшки), просмотр результата работы программы на мониторе.
На диаграмме классов необходимо отобразить класс объекта «компьютер», осн
900 руб.
Лабораторная работа №3 по дисциплине: Объектно-ориентированный анализ и программирование. Вариант общий
xtrail
: 25 декабря 2025
Тема: Коллекции объектов
Задание: преобразование структуры программы для представления информации о наборе объектов. Расширение программы должно включать обязательные элементы объявления и создания коллекции для хранения набора объектов и добавление в коллекцию нескольких объектов. Также для каждого элемента коллекции необходимо выполнить обращение к методу объекта.
Рекомендации к выполнению:
Для преобразования программы необходимо выполнить следующие основные изменения:
- в главный кла
400 руб.
Другие работы
Расчет привода ленточного конвеера
nikolas0711
: 20 мая 2009
Пояснительная записка по курсовому проектированию деталей машин выполнена на основе задания схема 7 вариант 5 – проектирование привода цепного конвейера. С учетом необходимых требований содержит: энерго-кинематический расчет привода с выбором стандартных редуктора и электродвигателя, расчет передач редуктора, расчет и конструирование зубчатых колес, расчет цепной передачи, расчет и конструирование звездочек цепной передачи, расчет и конструирование вала редуктора, выбор подшипников, соединительн
Технологический процесс изготовления детали накатного ролика
Рики-Тики-Та
: 2 декабря 2012
АННОТАЦИЯ
Дипломный проект направлен на снижение себестоимости изготовления ролика накатного.
Объем проекта: 9 листов графической части и листов пояснительной записки.
В ходе критического анализа была выявлена наиболее проблемная операция существующего технологического процесса – шлифование профиля ролика. Был разработан технологический процесс, исключающий обработку профиля шлифованием. Профиле-образующая операция – зубофрезерная производится на прогрессивном оборудовании, в качестве инст
825 руб.
Лабораторная работа №2 по дисциплине: «Современные технологии программирования». Абстрактный тип данных (ADT) «p - ичная память». Вариант №1
xtrail
: 17 апреля 2013
1. Задание.
Тема: Классы Object Pascal, С++
Цель: Сформировать практические навыки: реализации абстрактного типа данных с помощью классов Object Pascal, С++.
Задание
1. В соответствии с приведенной ниже спецификацией реализовать абстрактный тип данных «р-ичная память», используя класс
• Object Pascal,
• C++.
2. Протестировать каждую операцию, определенную на типе данных одним из методов тестирования.
Содержание отчета
1. Задание.
2. Текст программы.
3. Тестовые наборы данных для тестирования ти
200 руб.
Убийство при отягчающих обстоятельствах
Lokard
: 10 марта 2014
§ 1. Введение. Общая характеристика обстоятельств, отягчающих умышленное убийство.
§ 2. Отягчающие обстоятельства, характеризующие субъективные свойства убийства и личность виновного
1. Убийство из корыстных побуждений
2. Убийство из хулиганских побуждений
3. Убийство, совершенное в связи с выполнением потерпевшим своего служебного или общественного долга
4. Убийство с целью скрыть другое преступление или облегчить его совершение, а равно сопряженное с изнасилованием
5. Убийство, совершенное лиц
5 руб.