2017-03-17 94 views
-1
class B{ 
A object; 
B(A object){this.object = object;} 
    void display(){System.out.println(object.data);}} 
class A{ 
    int data = 10; 
    A(){ 
     B b = new B(this); 
     b.display(); 
    } 
} 
public class Test { 
    public static void main(String[] args) { 
    A a = new A(); 
    } 
} 

任何人都可以解釋這個程序,哪個部分首先執行以及如何傳遞值。解釋程序:在構造函數中使用'this()'參數

+0

該代碼不是C++,那麼它爲什麼標記C++? – Peter

+0

如果這個問題是要削減,它將不得不重新措施。例如:你預期會發生什麼,你爲什麼認爲應該這樣做。然後問「爲什麼不」。另外,代碼必須以可接受的方式進行格式化。至少這會給我們一個實際的問題陳述來回答。 – YoYo

回答

0

你正在做

B b = new B(this); 
在A級

,這意味着要傳遞的參數A類的實際實例,即對象,你在這裏創建了一個

public static void main(String[] args) { 
    A a = new A(); 
}