Инкапсуляция в Java: принципы и применение
Инкапсуляция в Java - это принцип объектно-ориентированного программирования, который позволяет объединить данные и методы в единый объект, скрыть детали реализации от других объектов и предоставить доступ к ним только через определенные методы. Таким образом, инкапсуляция обеспечивает защиту данных от неправильного использования или изменения извне.
Для реализации инкапсуляции в Java используются ключевые слова private, public и protected. Ключевое слово private ограничивает доступ к данным или методам только внутри класса, в котором они объявлены. Ключевое слово public позволяет свободный доступ к данным или методам из любого другого класса. Ключевое слово protected ограничивает доступ к данным или методам только внутри класса и его подклассов.
Пример кода:
public class Person {
private String name;
private int age;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
if (age >= 0) {
this.age = age;
} else {
System.out.println("Некорректный возраст");
}
}
}
public class Main {
public static void main(String[] args) {
Person person = new Person();
person.setName("John");
person.setAge(25);
System.out.println("Имя: " + person.getName());
System.out.println("Возраст: " + person.getAge());
}
}
В данном примере класс Person инкапсулирует данные - имя и возраст, и предоставляет методы для их доступа - getName и getAge для получения данных, а setName и setAge для изменения данных. Ключевое слово private ограничивает доступ к данным класса извне, поэтому для их получения или изменения нужно использовать соответствующие методы. Это обеспечивает контроль над данными и предотвращает неправильное использование или изменение этих данных из других частей программы.