我有一個樣本代碼來解決其基於inner
類:益智上內部類和類隱藏
package inner;
class A {
void m() {
System.out.println("Outer");
}
}
public class TestInner {
public static void main(String[] args) {
new TestInner().go();
}
private void go() {
new A().m();
class A{
void m(){
System.out.println("Inner");
}
}
new A().m();
}
class A{
void m(){
System.out.println("Middle");
}
}
}
通過上述示例代碼給出的輸出爲:
Middle
Inner
我的問題是,鑑於我不想使用包名稱來創建對象,我如何打印輸出爲:
Outer
Inner
你有2個小時。沒有拼寫錯誤。 – sp00m 2012-04-20 08:00:32
當且僅當從現在起絕對必要時,請使用粗體。 – Lion 2012-04-20 08:02:08
這是一個非常人爲的難題,我沒有看到它的有趣之處,因爲它只是關於命名空間。在編譯單元中遇到第二個包 - 私有類之前,您將不得不查看幾百萬行生產級Java。 – 2012-04-20 09:13:54