我是Java新手。所以這個問題可能看起來很天真......但你能幫忙嗎?如何在私有屬性中調用公共方法?
比方說,我有一個類如下:
public class Human {
private float height;
private float weight;
private float hairLength;
private HairState hairTooLong = new HairState() {
@Override
public void cut(Human paramHuman) {
Human.this.decreaseHairLength();
}
@Override
public void notCut(Human paramHuman) {
Human.this.increaseHairLength();
}
};
public float increaseHairLength() {
hairLength += 10;
}
public float decreaseHairLength() {
hairLength -= 10;
}
private static abstract interface HairState {
public abstract void cut(Human paramHuman);
public abstract void notCut(Human paramHuman);
}
}
然後,我有另一個類如下:
public class Demo {
public static void main(String[] args) {
Human human1 = new Huamn();
Human.HairState.cut(human1);
}
}
聲明
Human.HairState.cut(human1);
無效.. 。
我打算打電話大衆cut()
函數,它屬於hairTooLong
私有屬性。
我應該怎麼做?
你不能。它只能從'Human'內調用... – MadProgrammer