ホームページ > Java > &#&チュートリアル > Javaカプセル化とパーミッション修飾子の適用例の分析

Javaカプセル化とパーミッション修飾子の適用例の分析

WBOY
リリース: 2023-04-29 18:28:15
転載
1411 人が閲覧しました

1. ユーザーが直接データを入力できないように属性をカプセル化する ユーザーが「object.property」メソッドを使用して属性に値を代入できないようにする必要があります。

2. クラスの属性をプライベート化し、この属性の値を取得 (getXxx) および設定 (setXxx) するためのパブリック メソッドを提供します

カプセル化を反映し、

1 に一致する権限修飾子が必要です。Java によって指定された 4 つの権限 (小さいものから大きいものへ並べられています) : private、Default、protected、public
2. 次の 4 つのアクセス許可を使用して、クラスとその内部構造を変更できます: 属性、メソッド、コンストラクター、内部クラス
3. 特定のはい、4 種類のアクセス許可を使用して内部構造を変更できます。クラスの: 属性、メソッド、コンストラクター、内部クラス
クラスを変更する場合に使用できるのは、default、public

例:

package KindMethod3;
public class privateTest {
//	用private修饰,定义为私有变量,外不不能随意更改
	private int age;	//年龄
	private String name;	//名字
//	同时,我们给这两个属性创建两个可以更改他们的接口

	public void setAge(int age){
		this.age=age;
	}
	public int getAge(){
		return age;
	}
	public void setName(String name){
		this.name=name;
	}
	public String getName(){
		return name;
	}
	public void disPlay(){
		System.out.println("我的名字叫"+name+"今年"+age+"岁");
	}
}
ログイン後にコピー
package KindMethod3;
public class privateTest1 {
    public static void main(String[] args) {
        privateTest sc = new privateTest();
//        这个时候就不能直接给类中属性直接赋值了,就会报错
//        sc.age=18;
//        sc.name="小芳"

//        我们需要通过set方法给属性赋值,get取值
        sc.setAge(18);
        sc.setName("小芳");
        sc.disPlay();
    }

}
ログイン後にコピー

Javaカプセル化とパーミッション修飾子の適用例の分析

コードをチェックして実行結果を確認してください:

 public class Order {
	private int text1;
	int text2;
	public int text3;
	private void methodPrivate(){
		text1 = 1;
		text2 = 2;
		text3 = 3;
	}
	void methodDefault(){
		text1 = 1;
		text2 = 2;
		text3 = 3;
	}
	public void methodPublic(){
		text1 = 1;
		text2 = 2;
		text3 = 3;
	}
}
ログイン後にコピー
 public class OrderTest {
	public static void main(String[] args) {
		Order order = new Order();
		order.text2 = 1;
		order.text3 = 2;
		//出了Order类之后,私有的结构就不可以调用了
//		order.text1 = 3;//The field Order.text1 is not visible
		order.methodDefault();
		order.methodPublic();
		//出了Order类之后,私有的结构就不可以调用了
//		order.methodPrivate();//The method methodPrivate() from the type Order is not visible
	}
}
ログイン後にコピー

以上がJavaカプセル化とパーミッション修飾子の適用例の分析の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:yisu.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート