Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
80
Добавлен:
14.02.2015
Размер:
109.57 Кб
Скачать

Лабораторная работа №2. Классы и объекты

Цель работы: научиться создавать простые классы и объекты, а также уметь работать со строками в Java.

2.1 Пример создания класса и объекта

Класс CRectangle, который содержит свойства:

  • левая граница по оси Х (Left);

  • правая граница по оси Х (Right);

  • верхняя граница по оси Y (Top);

  • нижняя граница по оси Y (Bottom)

и методы:

  • конструктор, который присваивает значениям свойств случайные числа;

  • метод запроса у пользователя значений свойств прямоугольника;

  • определение площади фигуры и вывод ее на экран;

  • вывод на экран значений свойств.

В классе New_CRect создаются одиночные объекты и массив объектов класса CRectangle и вызываются методы, определенные в классе CRectangle,

Текст программы приведен в листинге 1.1, а результат выполнения программы рис. 1.1.

Листинг 2.1

Import java.Util.Random;

Import java.Util.Date;

Import java.Util.Scanner;

class CRectangle

{ private int Left; // левая граница по оси Х

private int Right; // правая граница по оси Х

private int Top; // верхняя граница по оси Y

private int Bottom; // нижняя граница по оси Y

public CRectangle()

{int i;

Random generator = new Random(new Date().getTime());

Left = generator.nextInt(500);

Right = generator.nextInt(500);

if (Left > Right) // проверка корректности данных

{ i = Right;

Right = Left;

Left = i;

}

Top = generator.nextInt(500);

Bottom = generator.nextInt(500);

if (Bottom > Top)

{ i = Bottom;

Bottom = Top;

Top = i;

}

}

public void Init() // метод запроса у пользователя значений

// свойств прямоугольника

{ int i;

Scanner in = new Scanner(System.in);

System.out.print("Enter Left value of rectangle (integer) ");

Left = in.nextInt();

System.out.print("Enter Right value of rectangle (integer) ");

Right = in.nextInt();

System.out.print("Enter Bottom value of rectangle (integer) ");

Bottom = in.nextInt();

System.out.print("Enter Top value of rectangle (integer) ");

Top = in.nextInt();

if (Bottom > Top) // проверка корректности данных

{ i = Bottom;

Bottom = Top;

Top = i;

}

if (Left > Right) // проверка корректности данных

{ i = Right;

Right = Left;

Left = i;

}

}

public void Square() // метод определения площади фигуры

{ int S;

S = (Right - Left) * (Top - Bottom);

System.out.println("Rectangle square is " + S) ;

}

public void PrintSv() // вывод на экран значений свойств

{ System.out.println("Left = " + Left);

System.out.println("Right = " + Right);

System.out.println("Top = " + Top);

System.out.println("Bottom = "+ Bottom);

}

}

public class New_CRect

{ public static void main(String[] args)

{ CRectangle Rect = new CRectangle ();

CRectangle [] a;

Rect.PrintSv();

Rect.Square(); //вывод значения площади определенного с помощью

// констуктора прямоугольника

System.out.println();

Rect.Init();

Rect.PrintSv(); // вывод свойств прямоугольника, введенных пользователем

Rect.Square(); // вычисление и вывод на экран площади прямоугольника,

// свойства которого были введены пользователем

System.out.println();

//создание массива объектов

a = new CRectangle [4];

for (int i = 0; i < 4; i++)

a[i] = new CRectangle();

//работа с массивом объектов

for (int i = 0; i < 4; i++)

{ int k = i+1;

System.out.println("Enter for " + k + " rectangle:");

a[i].Init();

a[i].Square();

System.out.println();

}

}

}

Рисунок 2.1 – Результат выполнения программы

Соседние файлы в папке Метод. ук. к л. р