Что указывается при объявлении метода или свойства в ООП?

«Что указывается при объявлении метода или свойства в ООП?» — вопрос из категории ООП, который задают на 24% собеседований PHP Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

При объявлении метода или свойства в объектно-ориентированном программировании указываются следующие элементы:

1. Модификаторы доступа:

  • public — доступ из любого места программы.
  • protected — доступ только внутри класса и его наследников.
  • private — доступ только внутри класса, где объявлен.

2. Дополнительные модификаторы:

  • static — принадлежность классу, а не экземпляру.
  • final — запрет на переопределение метода или наследование класса.
  • abstract — объявление абстрактного метода (только в абстрактном классе).

3. Типы данных (для языков со строгой типизацией):

  • Для свойств: тип значения, которое может храниться.
  • Для методов: тип возвращаемого значения (void, если ничего не возвращается).

4. Имя и тело:

  • Уникальное имя идентификатора.
  • Для свойства — начальное значение (опционально).
  • Для метода — список параметров и тело (логика).

Пример на Java:

public class User {
    // Свойство: private модификатор, тип String, имя 'name'
    private String name;

    // Статическое свойство: принадлежит классу User
    public static int userCount = 0;

    // Метод: public модификатор, возвращает String, имя 'getName', параметров нет
    public String getName() {
        return this.name;
    }

    // Метод: protected, final, возвращает void, имя 'setName', один параметр типа String
    protected final void setName(String newName) {
        this.name = newName;
    }
}

Конкретный синтаксис и доступные модификаторы зависят от языка программирования (C++, C#, Java, PHP, Python и т.д.).