フィールドをカプセル化する方法
Javaではアクセス修飾子を使用してメソッドをカプセル化できます。Javaではpublic、protected、privateの3種類のアクセス修飾子が用意されています。
- public:パブリック、どこからでもメソッドにアクセス可能
- プロテクト:同じパッケージ内の他のクラスとサブクラス内だけでアクセスできるメソッド。
- private: アクセスできるのは同じクラス内だけ
以下のコード例は、メソッドをラップする方法を示します。
public class MyClass {
private int myPrivateMethod() {
// 私有方法,只能在同一类中访问
return 10;
}
public void myPublicMethod() {
// 公共方法,可以在任何地方访问
System.out.println("公共方法");
}
protected void myProtectedMethod() {
// 受保护方法,可以在同一包内的其他类和子类中访问
System.out.println("受保护方法");
}
}
上のコードでは、myPrivateMethod はプライベートメソッドで、MyClass クラス内だけでアクセスできます。myPublicMethod はパブリックメソッドで、どこからでもアクセスできます。myProtectedMethod はプロテクトメソッドで、同じパッケージ内であれば他のクラスと継承クラスからアクセスできます。
適切なアクセス修飾子を使うことでメソッドのカプセル化を図ることができ、不要なアクセスや変更を防ぐことができます。これにより、コードの安全性と保守性が向上します。