Javaの自己 - クラスとオブジェクトアクセス修飾子

四つのJavaアクセス修飾子

4つのメンバ変数は、修飾子がある
民間独自の
パッケージ変更のために /優しい/デフォルトではない書き込み
保護された保護された
公共の公衆

公共の例については、公共の表現

public String name;

パッケージ/優しい/デフォルトを表しmaxHP無修正、

float maxHP

実施例1 のクラスの間の関係

:クラスAとクラス間の関係は以下の通りである
ケースではヒーロー
自体は:ヒーロー自身を指す
パンの種類と:ADHeroこのクラスは、ヒーローとヒーローのサブクラスであり、そしてにおける下同じパッケージ
異なるカテゴリーパン:このサポートヒーロークラスはサブクラスですが、中に他のパッケージ
袋付き:GiantDragonとヒーローは、このクラスはある同じパケットが、互いに無継承関係
、他のカテゴリ:アイテムのこのクラスは、異なるパッケージで、のないクラス階層が存在しない
クラス間の関係
例2:プライベートプライベート

私有財産の修正の使用
自体は:アクセス可能な
パンクラスで:継承されていない
別のクラスのパンを:あなたが継承することはできません
同じ袋:アクセスすることはできません
他の袋を:アクセスできません。

注意:赤いフォントは、表現は現実的ではありません

プライベートプライベート

package charactor;
 
import property.Weapon;
 
public class Hero {
 
    //属性id是private的,只有Hero自己可以访问
    //子类不能继承
    //其他类也不能访问
    private int id;
     
    String name;
 
    float hp;
 
    float armor;
 
    int moveSpeed;
 
    public void equip(Weapon w) {
 
    }
 
}

例3:/優しい/デフォルト書き込みませ用パッケージ変更

無修正パッケージを表していない、どの/優しい/デフォルト
フロートMAXHPを、血液を制限

パッケージ/優しい/デフォルト不写

package charactor;
 
import property.Weapon;
 
public class Hero {
    private int id;
 
    String name;
 
    // 无修饰符的属性 hp
    // 自己可以访问
 
    // 同包子类可以继承
    // 不同包子类不能继承
 
    // 同包类可以访问
    // 不同包类不能访问
    float hp;
 
    float armor;
 
    int moveSpeed;
 
    public void equip(Weapon w) {
 
    }
 
}

例4:保護された保護されました

保護された修飾子
フロート馬力を保護し、血

保護された保護

package charactor;
 
import property.Weapon;
 
public class Hero {
    private int id;
 
    String name;
 
    // protected饰符的属性 hp
    // 自己可以访问
 
    // 同包子类可以继承
    // 不同包子类可以继承
 
    // 同包类可以访问
    // 不同包类不能访问
    protected float hp;
 
    float armor;
 
    int moveSpeed;
 
    public void equip(Weapon w) {
 
    }
 
}

例5:パブリックパブリック

修飾子public
公共の文字列名、名前
のどこかには、アクセスすることができます

公共の公衆

package charactor;
 
import property.Weapon;
 
public class Hero {
    private int id;
 
    // public的属性 name
    // 自己可以访问
 
    // 同包子类可以继承
    // 不同包子类可以继承
 
    // 同包类可以访问
    // 不同包类可以访问
    public String name;
 
    protected float hp;
 
    float armor;
 
    int moveSpeed;
 
    public void equip(Weapon w) {
 
    }
 
}

例6:要約

概要
例7:だから何がそれが何であるかを使用修飾子はどうなりますか?

それでは、それが何であるかを使用修飾子はどうなりますか?
ビューの範囲の観点から、例のすべてを使用することができ、公開。しかし、職場で誰もが、彼らは本当にそれが修飾するものの使用が何であるかを最終的に、すべての公開をして使用していませんか?

  1. 私有財産は、一般的にカプセル化するために使用されます
  2. 一般市民のための方法は、を求めています
  3. サブクラスのメソッドによって継承されます、一般的に保護された使用
  4. 非常に少ないとのパッケージ、それはこの事剤の認識していなかったので、通常は初心者、パッケージを使用します

そして、そこに最小限の範囲の原理は
簡単に言えば、それはパッケージで、プライベートではなく、ズームレベルに民間することができ、その後、保護を使用しないように、そして最終的に公共。これが露出していないだろう、明らかにする必要がないため、可能な限りデータをカプセル化します

おすすめ

転載: www.cnblogs.com/jeddzd/p/11441502.html