
public class ThreadRuning extends Thread{
public ThreadRuning(String name){
//重写构造,可以对线程添加名字
super(name);
}
@Override
public void run() {
while(true){
System.out.println("good time");
//在run方法里,this代表当前线程
System.out.println(this);
}
}
public static void main(String[] args){
ThreadRuning threadRuning = new ThreadRuning("1111");
threadRuning.start();
}
}
![吴裕雄--天生自然JAVA线程编程笔记:创建线程-LMLPHP 吴裕雄--天生自然JAVA线程编程笔记:创建线程-LMLPHP]()
public class RunableTest implements Runnable {
@Override
public void run() {
while (true) {
System.out.println("good time");
}
}
public static void main(String[] args) {
RunableTest runableTest1 = new RunableTest();
RunableTest runableTest2 = new RunableTest();
new Thread(runableTest1).start();
new Thread(runableTest1).start();
new Thread(runableTest2).start();
}
}
![吴裕雄--天生自然JAVA线程编程笔记:创建线程-LMLPHP 吴裕雄--天生自然JAVA线程编程笔记:创建线程-LMLPHP]()
public class CallTest implements Callable {
@Override
public Object call() throws Exception {
return "hello world";
}
public static void main(String[] args){
FutureTask<String> futureTask = new FutureTask<String>(new CallTest());
new Thread(futureTask).start();
try {
String result = futureTask.get();
System.out.println(result);
} catch (InterruptedException e) {
e.printStackTrace();
} catch (ExecutionException e) {
e.printStackTrace();
}
}
}