geeksforgeeks.org/encapsulation-in-javaによると、カプセル化 = データの隠蔽 + 抽象化 ? はいの場合、データが隠されていることがわかりますが、ここで抽象化はどこにありますか?
カプセル化の例としてこれを挙げている人もいます
class Person
{
private String name;
private int age;
public void setName(String name){
this.name = name;
}
public String getName(){
return this.name;
}
public void setAge(int age){
this.age = age;
}
public int getAge(){
return this.age;
}
}
また、これはカプセル化の例ではないと言う人もいます。ref : https://www.youtube.com/watch?v=tjyZWqJkNpc (また、このビデオで教えている人は Java がとても上手で、彼が間違っている可能性があるとは信じがたいです)
では、カプセル化とは実際には何なのでしょうか?
- データ隠蔽 + 抽象化
- 変数とメソッドを 1 つのユニットにグループ化する
正しい定義はどれですか?
(スタックオーバーフローが初めてで、質問の仕方に関するルールがわからないため、この質問とタグを無視することがわかっている場合にのみ回答してください。疑問を解消したいだけです)