はじめに
本日はJavaにおける重要な概念であるpublicとprivateについて解説しています。
そもそもpublicとprivateは何?
一言で言うと、両方はプログラムやコード内でアクセス(範囲)制御に使用されるキーワードです。
publicはクラスの外からアクセスできるようにメンバー(変数やメソッド)を制御してくれます。
一方、privateはクラス内からしかアクセスできるようにメンバーを制御してくれます。
public
- クラスの外部からアクセスできるメンバーを指定する時に使う
- publicで定義したメンバーは、どのクラスからでもアクセスできる(外部のコードから利用可能)
- 他のクラスからpublicメンバーにアクセスする場合、インスタンス化ORオブジェクトが必要
例:
public class MyClass {
public int publicVariable;
public void publicMethod() {
// メソッドの中身
}
}
private
- クラス内部からしかアクセスできないメンバーを指定する時に使う
- privateで定義したメンバーは、クラスの外部からは直接アクセスできない。
- 他のクラスからprivateメンバーにアクセスする時に、公開用のメソッド(getterやsetter)を介してアクセスする必要がある。
例:
public class MyClass {
private int privateVariable;
public void setPrivateVariable(int value) {
privateVariable = value;
}
public int getPrivateVariable() {
return privateVariable;
}
}
getterとsetterについて下記の記事をご参考ください。
終わりに
要は、”public”は外部からのアクセスを許可し、”private”は外部からのアクセスを制限するために使用されます。
アクセス制御は、データの情報隠匿とコードの安全性を確保するために非常に重要な役割を果たしています。ぜひ意識しながらコーディンクをしてみてください!