Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/multithreading/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java中的游戏模拟_Java_Multithreading - Fatal编程技术网

Java中的游戏模拟

Java中的游戏模拟,java,multithreading,Java,Multithreading,我对java有点陌生,我正在做一个多线程资源游戏,我有3个类 操场课(资源所在地…黄金、木材、食物) Animat类(在这里,我有在需要时使用资源的动画) 游戏(主)类(运行游戏) 有谁能告诉我如何使用一个线程,这样我就可以制作一个动画,减少操场课上的资源? …实际上,我想知道我是否可以让线程运行方法以及如何 螺纹类型 线程是另一个执行调用,它与调用它的线程并行运行。每个Java程序都从main线程开始。是文档 编写类以使用线程类型 编写类时,可以将关键字extends与类名一起

我对java有点陌生,我正在做一个多线程资源游戏,我有3个类

  • 操场课(资源所在地…黄金、木材、食物)

  • Animat类(在这里,我有在需要时使用资源的动画)

  • 游戏(主)类(运行游戏)

有谁能告诉我如何使用一个线程,这样我就可以制作一个动画,减少操场课上的资源? …实际上,我想知道我是否可以让线程运行方法以及如何

螺纹类型

线程是另一个执行调用,它与调用它的线程并行运行。每个Java程序都从
main
线程开始。是文档

编写类以使用线程类型

编写类时,可以将关键字
extends
与类名一起附加到标题。在这种情况下,
线程

public class A extends Thread
此时,将要求您实现一个方法,
run
。这是将在线程生命周期内执行的循环

public void run()
{
    // Some code.
}
就你而言

您希望使用另一个类中的资源,因此最好通过
的构造函数传入对另一个类的引用

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
方法。这将启动线程,并开始递减值。

您想知道线程是否可以运行方法吗?我认为在编写多线程程序之前,您需要阅读一些关于Java的好书或教程。先尝试一下,这太开放了。您应该尝试用java编写/运行
线程
。从那以后,事情会变得更清楚。请在句子的开头加一个大写字母。也可以用大写字母表示I,缩写和首字母缩略词如JEE或WAR。这使得人们更容易理解和帮助。因为我没有使用大写字母,所以不是一个真正的问题?这里有些人有问题…@user2375278不,这不是一个真正的问题。这里没有足够的细节来回答你的问题。总的来说,有人在线程方面给了你一些帮助,这就是你从这个问题中所能得到的全部。另外,“我对java有点陌生,我正在进行多线程阅读”,我对java有点经验,我仍然以线程应得的尊重对待线程;它们是一个高级主题,很容易导致不小心的错误,你的游戏不太可能需要它们。(并不是说你不能尝试,我只是警告你它们不是为胆小的人准备的)谢谢你的帮助。。。