ООП — это парадигма программирования, основанная на концепции объектов, которые содержат данные и методы. Вот 4 ключевых принципа ООП с подробным объяснением:
Суть: Сокрытие внутренней реализации объекта и предоставление контролируемого доступа к данным через публичные методы.
Пример на Java:
public class BankAccount {
private double balance; // Приватное поле
public void deposit(double amount) {
if (amount > 0) {
balance += amount;
}
}
public double getBalance() {
return balance;
}
}
Важно:
private
public
методы (геттеры/сеттеры)Суть: Возможность создания новых классов на основе существующих с наследованием их свойств и методов.
Пример:
class Animal {
void eat() {
System.out.println("Eating...");
}
}
class Dog extends Animal {
void bark() {
System.out.println("Barking...");
}
}
Особенности:
extends
Суть: Возможность объектов с одинаковой спецификацией иметь различную реализацию.
Два типа:
class Shape {
void draw() {
System.out.println("Drawing shape");
}
}
class Circle extends Shape {
@Override
void draw() {
System.out.println("Drawing circle");
}
}
class MathOperations {
int add(int a, int b) {
return a + b;
}
double add(double a, double b) {
return a + b;
}
}
Суть: Сокрытие сложной реализации и предоставление только существенных характеристик объекта.
Реализуется через:
Пример абстрактного класса:
abstract class Vehicle {
abstract void move();
void startEngine() {
System.out.println("Engine started");
}
}
Пример интерфейса:
interface Drawable {
void draw();
void resize();
}
Хотя формально не входят в 4 основных принципа, но важны в ООП:
Эти принципы помогают создавать гибкие, поддерживаемые и масштабируемые приложения.