Основы ООП
Четыре принципа ООП
Инкапсуляция — скрытие внутреннего состояния объекта.
Наследование — создание новых классов на основе существующих.
Полиморфизм — способность объектов разных типов иметь единый интерфейс.
Абстракция — выделение существенных характеристик объекта.
Пример
public abstract class Animal {
private final String name;
protected Animal(String name) {
this.name = name;
}
public String getName() { return name; }
public abstract String speak();
}
public class Dog extends Animal {
public Dog(String name) { super(name); }
@Override
public String speak() { return "Woof!"; }
}Диаграмма
classDiagram
Animal <|-- Dog
Animal <|-- Cat
class Animal {
-String name
+getName() String
+speak() String
}
class Dog {
+speak() String
}
class Cat {
+speak() String
}