Java для начинающих: Конструкторы и создание объектов

Конструкторы — важная часть любого класса в Java. Они присутствуют в каждом классе, даже если явно не объявлены. В этом случае используется конструктор по умолчанию — конструктор без параметров. Он подобен пустой функции, не содержит явного кода, но необходим для создания экземпляров класса.

Создание экземпляров класса и конструкторы

Конструкторы создают экземпляры класса. При создании объекта неявно вызывается конструктор (по умолчанию или другой). В одном классе может быть несколько конструкторов. Например, если класс содержит поле height, его значение можно установить при создании объекта с помощью конструктора, а не после.

Создание конструктора

Создание конструктора просто:

  1. Модификатор доступа: Рекомендуется использовать public, поскольку конструкторы служат для создания объектов.
  2. Имя конструктора: Имя должно совпадать с именем класса (например, Person для класса Person).
  3. Скобки и параметры: После имени добавляются скобки (). Внутри скобок указываются параметры, передаваемые при создании объекта.

Пример конструктора по умолчанию:

public Person() {
  // Тело конструктора (пустое)
}

Пример конструктора с параметром:

public Person(int h) {
  this.h = h; // Присваивание значения параметра h полю h класса
}

Этот конструктор принимает один параметр h (целое число, представляющее высоту) и присваивает его полю h объекта. При создании объекта Person можно указать значение высоты:

Person vita = new Person(120);

Множественные конструкторы

В одном классе может быть несколько конструкторов, отличающихся количеством и типами параметров. Компилятор выбирает нужный конструктор на основе переданных параметров. Например:

public Person() {} // Конструктор по умолчанию

public Person(int h) { this.h = h; } // Конструктор с одним параметром

public Person(String name, int h) { this.name = name; this.h = h; } // Конструктор с двумя параметрами

Инициализация полей в конструкторе

Поля класса можно инициализировать в конструкторе:

public class Person {
    String name;
    int h;

    public Person(String n, int h) {
        this.name = n;
        this.h = h;
    }
    // ... другие методы ...
}

При создании объекта Person нужно передать имя и высоту:

Person vita = new Person("Витя", 180);

Обратите внимание на использование this. для различения переменной класса и параметра. Это необходимо, если имена совпадают.

Конструкторы — мощный инструмент в Java, позволяющий создавать объекты с заданными значениями параметров. Можно создавать множество конструкторов в одном классе для различных сценариев инициализации. Это упрощает создание и использование объектов, повышая читаемость и удобство кода.

Что будем искать? Например,программа