2016-09-17 113 views
-3
public class Outer { 
    static int x=200; 
    void show(){ 
     Inner in=new Inner(); 
     in.display(); 
    } 
    public class Inner{ 
     void display(){ 
      //In here I want to access 'x' to print. 
     } 
    } 
} 
+0

只需訪問'x',它應該在範圍內。 – dasblinkenlight

+0

只需使用x或Outer.x –

+0

我沒有看到標題中提到的代碼中的子類。標題很難理解。 – mm759

回答

0

像這樣:

public class Outer { 
    static int x = 200; 

    public void method() { 
     System.out.println(x); 
    } 
} 

如果變量在另一個類中定義的,你就必須引用那個班也是。在這種情況下,該變量必須是public

public class OtherClass { 
    public void method() { 
     System.out.println(Outer.x); 
    } 
} 

編輯:

薩科有一個觀點,我表示歉意。

+0

它不需要公開,因爲它是一個內部類 –

+0

技術上是的。我添加了這個部分有兩個原因,他可能需要從別的地方打電話給它,答案長度必須是30個字符:D – rorschach

+0

這是有史以來最糟糕的原因,提供誤導/無效/不正確的信息只能達到30個字符,來吧 ?!? –