好了,這裏的設置:您可以通過公共嵌套接口訪問私有[靜態]嵌套類嗎?
EnclosingClass {
public interface ClassFactory {
public static SomeClass getInstance(int which);
}
private static ClassFactoryImpl {
@Override
public static SomeClass getInstance(int which) {
switch(which) {
case 1:
return new SomeClassSubclassA();
case 2:
return new SomeClassSubclassB();
...
}
}
}
}
我想能夠發出沿的行語句:
SomeClass x = EnclosingClass.ClassFactory.getInstance(instanceClassRequest);
這可能嗎?如果不是,我怎樣才能通過它實現的接口訪問靜態嵌套類?
你試過了嗎? – 2012-07-06 20:23:09
...''ClassFactory''是一個接口,而不是一個類,'getInstance'不是一個靜態方法。所以你不能像你所做的那樣寫一個像EnclosingClass.ClassFactory.getInstance這樣的語句...... – 2012-07-06 20:24:24
@LouisWasserman改變了它。他們應該是「靜態」的。 – dcow 2012-07-06 20:25:18