Sobes.tech
Back to questions
Junior
139
questionbank

Что такое интерфейс в контексте программирования?

Sobes Copilot

Get answers in real time

Answer from AI

sobes.tech AI

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

Пример в Dart:

// Определение интерфейса (используем абстрактный класс в Dart)
abstract class Printable {
  void printContent();
}

// Класс, реализующий интерфейс
class Document implements Printable {
  @override
  void printContent() {
    // Реализация метода printContent для документа
    print('Printing document content...');
  }
}

// Еще один класс, реализующий тот же интерфейс
class Report implements Printable {
  @override
  void printContent() {
    // Реализация метода printContent для отчета
    print('Printing report content...');
  }
}

void main() {
  // Работаем с объектами через общий интерфейс Printable
  Printable doc = Document();
  Printable report = Report();

  doc.printContent();
  report.printContent();
}