名前付きのフィールドが1つあるクラスがあります(クラスとorbits
同じタイプで、修飾子があります):Body
private
public class Body {
// I defined it as private field
private Body orbits = null;
public Body getOrbits(){
return orbits;
}
public void setOrbits(Body orbits){
this.orbits = orbits;
}
public void capture(Body victim){
//Why 'victim' can access 'orbits' ?
victim.orbits = this;
}
}
このクラスでは、capture(Body victim)
type のパラメーターを 1 つ持つという名前のメソッドを定義しましたBody
。インスタンスのprivate
フィールドに直接アクセスできるのはなぜですか?つまり、フィールドはです。インスタンスの犠牲者からはアクセスできませんか?orbits
victim
private