$ sudo teach IT
МОДУЛЬ 8 · УРОК 4

Interfaces

An interface is a contract defining WHAT a class must do, not HOW.

30 minBeginnerJavaOOP

interface

interface Drawable { void draw(); }
class Circle implements Drawable { public void draw() { } }

implements vs extends

implements is for interfaces, extends is for classes. A class can implement MULTIPLE interfaces.

interface Flyable { void fly(); }
interface Swimmable { void swim(); }
class Duck implements Flyable, Swimmable { }

default (Java 8)

interface Vehicle { void start(); default void honk() { } }

static (Java 8), private (Java 9)

interface Util { static int add(int a, int b) { return a+b; } }

✅ Итоги урока

  • Interface = contract (what, not how).
  • implements for interfaces, extends for classes.
  • Multiple interface implementation is allowed.
  • default methods (Java 8): methods with body.
  • static (Java 8), private (Java 9) methods.
  • Interface fields are always public static final.

Next lesson: polymorphism.

Test: Test: Interfaces

3 вопроса

Интерфейс Drawable

Premium