2010-12-09 87 views
4

我在我的主類中創建一個線程。 線程有一個定時器,可以在套接字上寫入和讀取。訪問在另一個類中創建的對象

我需要調用線程類中的方法,例如writeSomething()來自其聲明的位置之外的另一個類(Main)。

如何從另一個類引用該對象?

編輯

public static Thread connectionThread; 

ModelJTable table = new ModelJTable(); 
connectionThread = new Thread(new ConnectionThread(table), "connectionThread"); 
connectionThread.start(); 

我在線程類的方法

public void openFile(String fileName){ 
    String request = "open;" + fileName; 
    out.print(request); 
} 

我想從另一個類訪問,如果(JTable類)

String open = "open;" + getname + ";" + getpath; 
// This doesnt work 
ConnectionThread.openFile(open); 

這致電給出錯誤

類型ConnectionThread沒有外圍實例是 範圍訪問

+0

你只需要調用該方法,還是需要調用該類的特定實例的方法? – 2010-12-09 18:36:59

+0

好吧,我有一個線程,它有一個套接字連接,以及一個緩衝讀取器和printwriter流。我基本上只需要讓線程寫入一個消息到套接字。我在其他地方創建的消息,並希望從該類調用線程方法。如果我只是調用該方法,並且該方法寫入創建的printwriter,那麼調用是否足夠(而不是特定對象) – jarryd 2010-12-09 18:41:53

+0

您是否嘗試實現我的答案? – 2010-12-09 18:49:11

回答

8

它要麼通過在第二類的構造函數或使其在第一類的靜態,或序列化

方式1:靜態一個

Class A{ 
public static int a=0; 
} 

Class B{ 
public void someMethod(){ 
A.a = 10; 
} 
} 
0

將對線程的引用傳遞給需要調用該方法的類。

相關問題