Skip to content

Instantly share code, notes, and snippets.

@sunmeat
Last active August 30, 2025 11:37
Show Gist options
  • Select an option

  • Save sunmeat/4a58a925260e8f536147 to your computer and use it in GitHub Desktop.

Select an option

Save sunmeat/4a58a925260e8f536147 to your computer and use it in GitHub Desktop.
package com.alex.constructors;
// клас, що представляє людину з ім'ям, прізвищем та віком
class Person {
private String name;
private String surname;
private int age;
// конструктор без параметрів
Person() {
this("Олександр", "Загоруйко", 36); // делегування до основного конструктора
System.out.println("конструктор без параметрів викликано");
}
// конструктор з одним параметром (ім'я)
Person(String name) {
this(name, "Загоруйко", 36); // делегування до основного конструктора
System.out.println("конструктор з параметром: ім'я");
}
// конструктор з двома параметрами (ім'я, прізвище)
Person(String name, String surname) {
this(name, surname, 36); // делегування до основного конструктора
System.out.println("конструктор з параметрами: ім'я, прізвище");
}
// основний конструктор з усіма параметрами
Person(String name, String surname, int age) {
this.name = name; // ініціалізація імені
this.surname = surname; // ініціалізація прізвища
this.age = age; // ініціалізація віку
System.out.println("основний конструктор викликано");
}
// конструктор з ім'ям та віком
Person(String name, int age) {
this(name, "Загоруйко", age); // делегування до основного конструктора
System.out.println("конструктор з параметрами: ім'я, вік");
}
// метод для виведення інформації про людину
void print() {
System.out.println(name + " " + surname + ", " + age + " років.");
}
// головний метод для демонстрації роботи конструкторів
public static void main(String[] args) {
// створення об'єктів з різними конструкторами
Person person1 = new Person(); // виклик конструктора без параметрів
person1.print();
Person person2 = new Person("Олег"); // виклик конструктора з ім'ям
person2.print();
Person person3 = new Person("Марія", "Петренко"); // виклик конструктора з ім'ям та прізвищем
person3.print();
Person person4 = new Person("Андрій", "Сидоренко", 30); // виклик основного конструктора
person4.print();
Person person5 = new Person("Юлія", 22); // виклик конструктора з ім'ям та віком
person5.print();
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment