Инкапсуляция - это принцип ООП, который подразумевает, что объект должен скрывать свою внутреннюю реализацию от внешнего мира и предоставлять интерфейс для взаимодействия с ним. Таким образом, объект может быть использован без необходимости знать, как он работает внутри.
Примеры использования инкапсуляции:
- Класс, представляющий банковский счет, может иметь закрытые поля для хранения баланса и номера счета. Вместо того, чтобы позволить клиенту напрямую получать доступ к этим полям, класс может предоставить методы для получения и изменения значения баланса. Это позволяет скрыть детали реализации и защитить данные от несанкционированного доступа.
public class BankAccount {
private double balance;
private int accountNumber;
public BankAccount(double initialBalance, int accountNumber) {
this.balance = initialBalance;
this.accountNumber = accountNumber;
}
public double getBalance() {
return balance;
}
public void deposit(double amount) {
balance += amount;
}
public void withdraw(double amount) {
if (amount <= balance) {
balance -= amount;
} else {
System.out.println("Insufficient funds");
}
}
}
- Класс, представляющий автомобиль, может иметь закрытые поля для хранения скорости и текущего режима передач. Вместо того, чтобы позволить клиенту напрямую получать доступ к этим полям, класс может предоставить методы для управления скоростью и режимом передач. Это позволяет скрыть детали реализации и защитить данные от несанкционированного доступа.
public class Car {
private int speed;
private int gear;
public Car() {
speed = 0;
gear = 1;
}
public void accelerate(int increment) {
speed += increment;
}
public void brake(int decrement) {
speed -= decrement;
}
public void changeGear(int newGear) {
gear = newGear;
}
public int getSpeed() {
return speed;
}
public int getGear() {
return gear;
}
}
Таким образом, инкапсуляция позволяет создавать более безопасный и удобный код, который легче поддерживать и расширять в дальнейшем.
Аналог желудочного сока Бальзам Болотова для улучшения ЖКТ и жизненной силы.