Developing Games in Java(部分)
原文来自于《Developing Games in Java》,作者:David Brackeen, Bret Barker, Laurence Vanhelsuwé
Java在设计时充分考虑了线程,因此在Java中线程的操作比其他语言要简单。只需生成一个Thread类的实例便可创建一个线程,然后调用start()方法线程就启动了。
Thread myThread=new Thread();
myThread.start();
当然,这段代码没有任何实际意义,因为该线程中没有包含任何任务。Java虚拟机创建一个新的系统线程后,便启动该线程,然后Thread对象的run()方法被调用。默认情况下,run()方法不做任何工作,因此,线程便随即停止。
如果想让线程完成某项任务,在run()方法中添加相应代码即可。有三种基本的方法可以实现这一操作:
1,继承扩展Thread类
2,实现Runnable接口
3,使用匿名内部类
继承扩展Thread类
给线程分配任务的一个快捷的方法是继承扩展Thread类,并重写run()方法:
public class MyThread extends Thread {
public void run() {
System.out.println("Do something cool here.");
}
}
然后创建和启动线程:
Thread myThread = new MyThread();
myThread.start();
现在有两个线程正在运行:main主线程和你刚才启动的那个线程。
实现Runnable接口
继承扩展Thread线程固然简单,但大多数情况下你可能只是想启动一个线程而并非重新编写类。例如:有一个类已经继承扩展了其他类,但你仍希望将它作为一个线程。在这种情况下只有实现Runnable接口:
public class MyClass extends SomeOtherClass implements Runnable {
public MyClass() {
Thread thread = new Thread(this);
thread.start();
}
public void run() {
&n
相关文档:
66. EJB容器提供的服务
主要提供声明周期管理、代码产生、持续性管理、安全、事务管理、锁和并发行管理等服务。
67. EJB规范规定EJB中禁止的操作有哪些?
1.不能操作线程和线程API(线程API指非线程对象的方法如n ......
通过使用一些辅助性工具来找到程序中的瓶颈,然后就可以对瓶颈部分的代码进行优化。一般有两种方案:即优化代码或更改设计方法。我们一般会选择后者,因为不去调用以下代码要比调用一些优化的代码更能提高程序的性能。而一个设计良好的程序能够精简代码,从而提高性能。
下面将提供一些在JAVA程序的设计和编码中,为了能够 ......
Java连接mysql数据库,代码经过运行准确无误。
下面为实例---->
用数据库操纵工具(例:SQLyogEnt)操纵mysql建表,或dos下建,如下:
数据库名:scutcs
表名:student
表内容:
sno char[7] NO NULL Primary Key;
sname varchar[8] NO NULL;
sex char[2] NO NULL; ......
类是广泛的概念,表示一个有共同性质的群体。如:人类。
代码:
// 声明一个类“Human”
class Human{
priv ......
1. 如何得到Java应用程序的可用内存?
答:如下代码实现取得总的内存大小和可用内存大小,并打印到控制台上
public class MemoryExp {
public static void main(String[] args) {
System.out.println("Total Memory"+Runtime.getRuntime().totalMemory());
System.out.println("Free Memory ......