【发布时间】:2010-12-17 03:54:22
【问题描述】:
我正在尝试制作一个简单的 Java 俄罗斯方块游戏。我正在关注一个关于 GameDev.net。我想通过将可运行的 Frame 类保留在主类之外来走出教程,而不是像教程所说的那样将所有内容放在一个类中(如果我这样做,代码就可以工作)。
此代码是我尝试执行以下操作(如下),我假设调用了可运行对象,但应用程序由于某种原因没有显示。
有人可以澄清我做错了什么以及我需要做什么,同时保持我在 Frame 类中的可运行性
Main.java 类
import java.lang.String;
public class Main {
public static void main(String args[])
{
//boolean victory = false;
Frame bob = new Frame();
bob.init();
}
}
Frame.java 类:
import java.applet.*;
import java.awt.Graphics;
public class Frame extends Applet implements Runnable {
Thread t;
int i;
public void init()
{
t = new Thread(this);
t.start();
i = 0;
}
public void run()
{
while(true)
{
i++;
repaint();
try {
t.sleep(1000/30);
} catch (InterruptedException e) { ; }
}
}
public void paint(Graphics g)
{
g.drawString("i = "+i,10,20);
}
}
我们将不胜感激!
【问题讨论】:
-
为什么不尝试制作一个合适的桌面应用程序呢?这并不比设置一个小程序更难。
-
我决定使用另一个教程,其中的代码结构以我更熟悉的方式构建。 javaboutique.internet.com/tutorials/Java_Game_Programming 这样的问题让这个问题变得毫无意义,对于任何花时间理解我的问题的人,我深表歉意。我将把这个问题留到足够长的时间,直到我可以在本教程中制作一个包含多个类的程序。
标签: java multithreading applet runnable