Sobes.tech
Junior — Middle

Можете ли да обясните разликите между клас, обект и интерфейс в обектно-ориентираното програмиране?

sobes.tech AI

Отговор от AI

Класс — это шаблон или описание, по которому создаются объекты. Он определяет свойства (поля) и поведение (методы), которые будут у объектов этого класса.

Объект — это конкретный экземпляр класса, созданный в памяти во время выполнения программы. Объект имеет состояние (значения полей) и может выполнять методы, определённые в классе.

Интерфейс — это абстрактный тип, который определяет набор методов без их реализации. Классы, реализующие интерфейс, обязаны предоставить конкретную реализацию этих методов. Интерфейсы используются для задания контракта, который должны соблюдать классы.

Пример на Java:

interface Flyable {
    void fly();
}

class Bird implements Flyable {
    public void fly() {
        System.out.println("Птица летит");
    }
}

public class Main {
    public static void main(String[] args) {
        Bird sparrow = new Bird(); // объект класса Bird
        sparrow.fly();
    }
}