0% нашли этот документ полезным (0 голосов)
2 просмотров6 страниц

Labka 9 Java

Загружено:

m.nureke0705
Авторское право
© All Rights Reserved
Мы серьезно относимся к защите прав на контент. Если вы подозреваете, что это ваш контент, заявите об этом здесь.
Доступные форматы
Скачать в формате PDF, TXT или читать онлайн в Scribd
0% нашли этот документ полезным (0 голосов)
2 просмотров6 страниц

Labka 9 Java

Загружено:

m.nureke0705
Авторское право
© All Rights Reserved
Мы серьезно относимся к защите прав на контент. Если вы подозреваете, что это ваш контент, заявите об этом здесь.
Доступные форматы
Скачать в формате PDF, TXT или читать онлайн в Scribd

Лабораторная работа №9

Дисциплина: Объектно-ориентированное программирование (ООП)


Тема: Constructors. Method Overloading. Java Properties

Цель работы
Изучить понятие конструктора в языке Java;
Научиться создавать несколько конструкторов в одном классе;
Освоить перегрузку методов (method overloading);
Познакомиться с использованием свойств (properties) в классах.

Краткая теория
Конструкторы (Constructors)

В языке Java конструктор — это специальный метод класса, который вызывается


автоматически при создании объекта.

Основные особенности конструктора:

• имя конструктора совпадает с именем класса


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

Конструкторы позволяют сразу задать начальные значения переменных класса.

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

Student s = new Student();

В этот момент автоматически вызывается конструктор класса.

Конструктор по умолчанию

Если программист не создал конструктор, компилятор автоматически добавляет


конструктор по умолчанию.

Пример:

public class Student {

String name;

При создании объекта будет использован пустой конструктор.

Параметризованный конструктор

Конструктор может принимать параметры для инициализации объекта.


Student s = new Student("Ali", 20);

Такой конструктор позволяет создавать объекты с разными значениями.

Перегрузка методов (Method Overloading)

Перегрузка методов — это создание нескольких методов с одинаковым именем, но с


разными параметрами.

Условия перегрузки:

• одинаковое имя метода


• разные параметры (количество или тип)

Перегрузка используется для удобства работы с методами.

Свойства класса (Properties)

Свойства класса — это переменные (поля), которые описывают характеристики объекта.

Пример:

class Student
name
age
group

Эти поля являются свойствами объекта.

Свойства хранят состояние объекта и используются в методах класса.

Примеры
Пример 1. Конструктор без параметров
public class Student {

String name;

Student() {
name = "Unknown";
}

void showName() {
[Link]("Name: " + name);
}

public static void main(String[] args) {

Student s = new Student();


[Link]();
}

}
Объяснение:
Конструктор автоматически присваивает значение переменной name.

Пример 2. Конструктор с параметрами


public class Student {

String name;
int age;

Student(String n, int a) {
name = n;
age = a;
}

void showInfo() {
[Link](name + " " + age);
}

public static void main(String[] args) {

Student s = new Student("Ali", 20);


[Link]();
}

Объяснение:
Конструктор получает значения через параметры и сохраняет их в полях класса.

Пример 3. Перегрузка методов


public class Calculator {

int add(int a, int b) {


return a + b;
}

int add(int a, int b, int c) {


return a + b + c;
}

public static void main(String[] args) {

Calculator c = new Calculator();

[Link]([Link](5, 3));
[Link]([Link](5, 3, 2));

Объяснение:
Метод add имеет одинаковое имя, но разные параметры.

Пример 4. Перегрузка конструкторов


public class Book {
String title;
int year;

Book() {
title = "Unknown";
year = 0;
}

Book(String t, int y) {
title = t;
year = y;
}

void showInfo() {
[Link](title + " " + year);
}

public static void main(String[] args) {

Book b1 = new Book();


Book b2 = new Book("Java Programming", 2023);

[Link]();
[Link]();

Объяснение:
Класс имеет два конструктора: без параметров и с параметрами.

Задания к лабораторной работе №9


Блок 1. Конструкторы
Задание 1
Создайте класс Student с полями name и age.
Создайте конструктор без параметров, который присваивает значения по умолчанию.

Задание 2
Создайте класс Car с полями brand и year.
Создайте конструктор с параметрами для инициализации этих полей.

Задание 3
Создайте класс Book с полями title и author.
Создайте конструктор, который задаёт значения этим полям.

Блок 2. Перегрузка конструкторов


Задание 4
Создайте класс Employee.
Создайте два конструктора:
• без параметров
• с параметрами (name, salary)
Задание 5
Создайте класс Phone.
Создайте два конструктора:
• один принимает название телефона
• второй принимает название и цену.

Блок 3. Перегрузка методов


Задание 6
Создайте класс Calculator.
Создайте два метода add():

• сложение двух чисел


• сложение трёх чисел

Задание 7
Создайте класс Printer.
Создайте два метода print():

• вывод одного текста


• вывод текста и числа.

Блок 4. Свойства класса


Задание 8
Создайте класс Person с полями:

name
age
city

Создайте метод showInfo(), который выводит значения полей.

Задание 9
Создайте класс Product с полями:

name
price

Создайте конструктор для инициализации этих полей.

Итоговое задание
Задание 10
Создайте класс UniversityStudent со свойствами:

name
group
age
Реализуйте:

• конструктор без параметров


• конструктор с параметрами
• метод showStudent() для вывода информации о студенте.

Вам также может понравиться