Лабораторные работы №№1-3 по дисциплине: Объектно-ориентированное программирование и анализ. Вариант общий

Состав работы

material.view.file_icon
material.view.file_icon
material.view.file_icon lab2.java
material.view.file_icon Задание.doc
material.view.file_icon
material.view.file_icon lab3.java
material.view.file_icon Задание.doc
material.view.file_icon
material.view.file_icon lab1.java
material.view.file_icon Диаграммы.doc
material.view.file_icon Задание.doc
Работа представляет собой 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 и вызов методов класса, в методе класса для вывода на экран информации о работе данного элемента структуры выводится строка с текстом имени метода.

Дополнительная информация

Работы зачтены без замечаний!
Дата сдачи: сентябрь 2018 г.
Содержание архива:
1) Лабораторная №1:
Задание.doc; Диаграммы.doc; lab1.java
2) Лабораторная №2:
Задание.doc; lab2.java
3) Лабораторная №3:
Задание.doc; lab3.java

Выполняю работы на заказ по различным дисциплинам.
E-mail: LRV967@ya.ru
Лабораторные работы №1-3 по дисциплине: Объектно-ориентированное программирование. Вариант общий
Задание: Часть 1. Описать класс tPoint, инкапсулирующий основные свойства и методы точки на плоскости. При написании программы на С++ или С# инициализировать поля с помощью конструктора (объявить два конструктора: по умолчанию и с параметрами). Создать массив из 100 точек. Нарисовать точки случайным образом случайным цветом на экране. Часть 2. Сделать защиту полей класса (т.е. работать с полями в основной программе не напрямую, а используя соответствующие методы записи в поле и чтения из поля).
User holm4enko87 : 12 ноября 2024
500 руб.
promo
Лабораторные работы №1-3 по дисциплине: Объектно-ориентированное программирование. Вариант общий
Лабораторная работа №1 Тема: Принцип инкапсуляции. Описание класса. Задание: Часть 1. Описать класс tPoint, инкапсулирующий основные свойства и методы точки на плоскости. При написании программы на С++ или С# инициализировать поля с помощью конструктора (объявить два конструктора: по умолчанию и с параметрами). Создать массив из 100 точек. Нарисовать точки случайным образом случайным цветом на экране. Часть 2. Сделать защиту полей класса (т.е. работать с полями в основной программе не напр
User xtrail : 22 июля 2024
600 руб.
promo
Курсовая работа по дисциплине: Объектно-ориентированное программирование и анализ. Вариант №7
Курсовая работа состоит из одного задания. Необходимо разработать систему хранения и обслуживания информации объекта согласно индивидуальному варианту (см. далее перечень вариантов). Номер варианта выбирается по двум последним цифрам пароля. Задание: Написать программу, используя объектно-ориентированный подход, которая описывает объект и его основные характеристики и действия. Описание классов необходимо оформить в виде отдельного модуля. Иерархия классов должна включать минимум три класса, од
User SibGOODy : 15 сентября 2018
900 руб.
promo
Лабораторные работы №1-3 по дисциплине: Объектно-ориентированный анализ и программирование. Без вариантов.
Цикл лабораторных работ включает в себя следующие работы: Построение UML диаграммы вариантов использования и диаграммы классов и Построение объектной структуры программы по этим диаграммам. Расширение построенной объектной структуры с внедрением внутренних классов. Добавление в разработанную ранее программу информации о наборе объектов. Прежде, чем приступать к выполнению очередной лабораторной работы необходимо сначала прочитать конспект лекций соответствующий разделу лабораторной работы. Вс
User IT-STUDHELP : 20 июля 2020
600 руб.
promo
Лабораторные работы 1-3 по дисциплине: Объектно-ориентированный анализ и программирование. Вариант №04
Вариант №04 Лабораторная работа 1 Тема: построение UML диаграммы вариантов использования и диаграммы классов, построить объектную структуру на языке Java на основе созданных диаграмм. Задание: для диаграммы вариантов использования нужно отобразить на диаграмме следующие основные действия с объектом «компьютер»: ввод программы с клавиатуры, подсоединение внешнего устройства (флэшки), просмотр результата работы программы на мониторе. На диаграмме классов необходимо отобразить класс объекта «ком
User IT-STUDHELP : 11 октября 2023
900 руб.
promo
Лабораторные работы 1-3 по дисциплине: Объектно-ориентированный анализ и программирование. Вариант №22
Лабораторная работа №1 Тема: построение UML диаграммы вариантов использования и диаграммы классов, построить объектную структуру на языке Java на основе созданных диаграмм. Задание: для диаграммы вариантов использования нужно отобразить на диаграмме следующие основные действия с объектом «компьютер»: ввод программы с клавиатуры, подсоединение внешнего устройства (флэшки), просмотр результата работы программы на мониторе. На диаграмме классов необходимо отобразить класс объекта «компьютер», осн
User IT-STUDHELP : 5 декабря 2022
900 руб.
promo
Курсовая и Лабораторные работы 1-3 по дисциплине: Объектно-ориентированный анализ и программирование. Вариант №04
Курсовая работа Вариант №04 Перечень вариантов и текст задания: 4. Почта. Определить перечень услуг предоставляемых почтовым отделением с точки зрения клиента, и сточки зрения работника почты. ------------------------------------------------------------------------------ Курсовая работа состоит из одного задания. Необходимо разработать систему хранения и обслуживания информации объекта. Задание: Написать программу, используя объектно-ориентированный подход, которая описывает объект и его
User IT-STUDHELP : 11 октября 2023
1350 руб.
promo
Курсовая и Лабораторные работы 1-3 по дисциплине: Объектно-ориентированный анализ и программирование. Вариант №22
Лабораторная работа №1 Тема: построение UML диаграммы вариантов использования и диаграммы классов, построить объектную структуру на языке Java на основе созданных диаграмм. Задание: для диаграммы вариантов использования нужно отобразить на диаграмме следующие основные действия с объектом «компьютер»: ввод программы с клавиатуры, подсоединение внешнего устройства (флэшки), просмотр результата работы программы на мониторе. На диаграмме классов необходимо отобразить класс объекта «компьютер», осн
User IT-STUDHELP : 5 декабря 2022
1350 руб.
promo
ММА/ИДО Иностранный язык в профессиональной сфере (ЛТМ) Тест 20 из 20 баллов 2024 год
ММА/ИДО Иностранный язык в профессиональной сфере (ЛТМ) Тест 20 из 20 баллов 2024 год Московская международная академия Институт дистанционного образования Тест оценка ОТЛИЧНО 2024 год Ответы на 20 вопросов Результат – 100 баллов С вопросами вы можете ознакомиться до покупки ВОПРОСЫ: 1. We have … to an agreement 2. Our senses are … a great role in non-verbal communication 3. Saving time at business communication leads to … results in work 4. Conducting negotiations with foreigners we shoul
User mosintacd : 28 июня 2024
150 руб.
promo
Задание №2. Методы управления образовательными учреждениями
Практическое задание 2 Задание 1. Опишите по одному примеру использования каждого из методов управления в Вашей профессиональной деятельности. Задание 2. Приняв на работу нового сотрудника, Вы надеялись на более эффективную работу, но в результате разочарованы, так как он не соответствует одному из важнейших качеств менеджера - самодисциплине. Он не обязателен, не собран, не умеет отказывать и т.д.. Но, тем не менее, он отличный профессионал в своей деятельности. Какими методами управления Вы во
User studypro : 13 октября 2016
200 руб.
Особенности бюджетного финансирования
Содержание: Введение Теоретические основы бюджетного финансирования Понятие и сущность бюджетного финансирования Характеристика основных форм бюджетного финансирования Анализ бюджетного финансирования образования Понятие и источники бюджетного финансирования образования Проблемы бюджетного финансирования образования Основные направления совершенствования бюджетного финансирования образования Заключение Список использованный литературы Цель курсовой работы – исследовать особенности бюджетного фин
User Aronitue9 : 24 августа 2012
20 руб.
Программирование (часть 1-я). Зачёт. Билет №2
ЗАЧЕТ по дисциплине “Программирование (часть 1)” Билет 2 Определить значение переменной y после работы следующего фрагмента программы: a = 3; b = 2 * a – 10; x = 0; y = 2 * b + a; if ( b > y ) or ( 2 * b < y + a ) ) then begin x = b – y; y = x + 4 end; if ( a + b < 0 ) and ( y + x > 2 ) ) then begin x = x + y; y = x – 2 end;
User sibsutisru : 3 сентября 2021
200 руб.
Программирование (часть 1-я). Зачёт. Билет №2
up Наверх