Java Game

If we are willing to make any change,nothing can be insufferably arrogant!

Java Game 迷炫了多少少年的童年,谁知都在一个不可知的死循环里旋转。The world is plat,the screen is plat,the code is plat,but plat moves in cirles.

就正如:"阴在阳之内,不在阳之对。太阳,太阴"之说云云。

制作游戏,有几个重要的Points使得游戏程序看似很是高端,比如:

Point one:

线程:java中实现多线程的表示方式有两种,一种是继承Thread类,一种是实现Runnable接口;而后者在资源共享方面具有很大的优势。

但是Thread类也实现了Runnable接口,因此,从Thread类继承的类的实例也可以作为target传入这个构造方法。可通过这种方法实现多个线程的资源共享。

在这里先草述些有关thread的内容:

1.新建一个thread线程:

Thread thread =new Thread();//跟其他的java对象一样,新建的线程对象被分配了堆内存。

2.启动线程,使得线程处于就绪状态,即Runnable:

thread.start();//调用该方法,使得线程处于随时待命状态

3.挂起线程,使得线程处于阻塞状态:

while(true){

try{

   Thread.sleep(millis);

}catch (InterruptedException e){

       e.printStackTrace();

   }

}


至于Runnable 接口应该由那些打算通过某一线程执行其实例的类来实现。通过实例化某个 Thread 实例并将自身作为运行目标,就可以运行实现 Runnable 的类而无需创建 Thread 的子类。

Part two: 

BufferedImage

它是Image的一个子类,用来在内存开辟一块缓冲画布区,使得各个对象之间获取画布不受彼此影响

首先从窗体取画布:
JFrame jframe=new JFrame();
Graphics g=jframe.getGraphics();

其次新建一个BufferedImage对象,在缓冲内存区取画布,在缓冲区取到的画布上画画
BufferedImage bufferedImage=new BufferedImage();
Graphics g2=bufferedImage.getGraphics();
g2.drawImage(yourImageName.getImage(),0,0,null);

最后把缓冲区的画布对象画到窗体上的画布上
g.drawImage(bufferedImage,x,y,null);

loading....

你可能感兴趣的:(java,thread,多线程)