2014-08-29 3 views

답변

1

을 제공합니다 ...

public class GUIManager { 
    private MainAR mainClass; 

    public GUIManager(Context context){ 
     //mainClass = ??? 
     ... 
    } 

    private method(){ 
     mainClass.mehtodMain(); 
    } 
} 

하지만 난 아무 생각이 어떻게 mainClass를 초기화하지해야합니다 : 다른 클래스 다음

public class MainAR extends Activity{ 
    ... 
    private GUIManager mGUIManager; 
    ... 
    mGUIManager = new GUIManager(getApplicationContext()); 
    ... 
    public void mehtodMain(){ 
     ... 
    } 
} 

그리고 : 다른에서 나는 MainAR에서 메소드를 호출 할 당신의 메인 클래스의 인스턴스

mGUIManager = new GUIManager(MainAR.this); 

public GUIManager(MainAR mainClass){ 
     this.mainClass = mainClass; 
    } 
+0

저는 여전히이 문제와 혼동을 겪습니다. 제 프로그래밍 기술에서 큰 "빈"이라고 생각합니다. 따라서 "인스턴스"는 연결된 참조의 일종입니까? – gkapellmann

+0

이것은 상호 참조이며 추악한 연습입니다. 부모 개체를 참조하려면 자식 개체를 피해야합니다. 더 나은 방법은 관찰자 패턴입니다. 부모가 인터페이스를 보유하고있는 인터페이스를 통해 부모가 구현하므로 인터페이스를 통해 자식으로부터 if 메소드를 호출 할 수 있습니다. 일반적으로 자바는이 방법이 좋지 않습니다. – icbytes