2013-05-12 82 views
-2

即時通訊在java中有點新,我正在做一個多線程資源遊戲,我有3個類。在Java中的遊戲模擬

  • 遊樂場類(在資源舉行了金,木,食品)

  • 阿尼馬特類(在那裏我有當我要使用的資源animats)

  • 遊戲(主)類(遊戲運行)

誰能告訴我如何使用一個線程,所以我可以使Animat減少操場類的資源? ...其實我想知道如果我可以讓線程運行的方法和如何...

+2

你想知道線程是否可以運行方法?我認爲在編寫多線程程序之前,您需要閱讀一些關於Java的好書或教程。嘗試[這一個](http://docs.oracle.com/javase/tutorial/)爲初學者。 – Keppil 2013-05-12 16:46:01

+2

這太開放了。你應該嘗試在java中編寫/運行一個'Thread'。從那裏開始,事情會更加清晰。 – acdcjunior 2013-05-12 16:47:58

+0

請在句子開頭添加大寫字母。還要爲單詞I使用大寫字母,並使用JEE或WAR等縮寫詞和首字母縮略詞。這使人們更容易理解和幫助。 – 2013-05-12 16:48:14

回答

0

螺紋類型

線程是另一個執行調用,在並行運行的線程叫它。每個Java程序都以main線程開始。 Here是文檔。

寫一個類時,你寫你的類使用線程型

,您可以在關鍵字extends連接到頭部,與類名一起。在這種情況下,Thread

public class A extends Thread 

在這一點上,你會被要求執行的方法,run。這是將在線程生命週期中執行的循環。

public void run() 
{ 
    // Some code. 
} 

在你的情況

您要使用的資源從另一個類,所以它可能是明智的在這個其他類的引用來傳遞,通過A的構造。

public A(Playground playground) 
{ 
    this.playground = playground; 
    // Assumes a field of type Playground called playground. 
} 

在你的run方法中,你會希望減少一些值。這很好,很簡單。

public void run() 
{ 
    while(gameIsNotOver) 
    { 
     // Loop assumes some boolean value, gameIsNotOver. 
     playground.methodCall(); 
     // Call some method that will perform the requested calculations on the values. 
    } 
} 

使用線程

在主類中,當你想啓動這個線程,做調用run方法。這不會啓動異步執行。您應該致電start方法。這將啓動該線程,並且它將開始遞減值。

+0

感謝你的幫助M8 ... – user2375278 2013-05-12 19:44:51