클래스에서 OuterClass에는 Thread InnerThread가 있습니다. 스레드에서 나는 OuterClass에서 메서드에 액세스해야합니다. 어떻게해야합니까? 나는 시도했다 :내부 클래스에서 외부 클래스 액세스 Java
public class OuterClass{
public static void main(String[]args){
Runnable thread = new innerThread(param);
new Thread(thread).start();
public void method(param1, param2){
System.out.println("Test method");
}
public class InnerThread extends Thread{
public void run(){
System.out.println("Test thread")
OuterClass.this.method(param1, param2);
}
}
}
그러나 프로그램 doesnt는 방법으로 들어간다. 왜 그런데 어떻게 작동할까요?
편집 다른 작업을 수행하고 작동하므로 스레드가 실행 중임을 확인하고 (param1, param2) 메소드의 시작 부분에 인쇄 권한을 지정하므로 입력되지 않습니다. 방법. 나는 OuterClass가없는 방법 (param1, param2) 만 시도했다.
"방법에 들어 가지 않습니까?" 어떻게 결정 했니? –
실제로 스레드를 시작 하시겠습니까? –
모호성을 제거 할 필요가 없다면'method'를 호출하는 것이 좋습니다. 이 질문은 현재 형태로는 분명하지 않습니다. [SSCCE] (http://sscce.org/)를 제공하십시오. –