---------------------------------------------------------------------------------------

アクセス修飾子とは、アクセスの範囲を制限するためのものである。


public →どこからでもアクセス可能


protected →同一パッケージの全てのクラス、別パッケージのサブクラスからアクセス可能


修飾子なし →同一パッケージのすべてのクラスからアクセス可能


private →同一クラスのみからアクセス可能


---------------------------------------------------------------------------------------


カプセル化を行うことで、開発者は操作(メソッド)の仕様さえ守れば自由に作成や改変ができる。

privateを使うことでjavaでのカプセル化は実現できる。その例を以下に示す。


class Student{

private String name = "";

private int age = 0 ;

void setName(String n){

name=n.substring(0,13);  //①長さ13以上なら後部をカット

}

void setAge(int a){

if(a<0){a=0};     //②値がマイナスなら0をセット

age=a;     

}

}


①、②のように変数の書き込みメソッドで値をチェックすることができると同時に、開発者も開発を進めるうえで守るべきルールがわかりやすいというメリットがある。