1. 继承Thread类
继承、重写run()、new MyThread().start();
2. 实现Runnable接口
实现、重写run()、new Thread(t,”名字”).start();
3.使用Callable和Future创建线程
实现callable接口,重写call()方法,
FutureTask<Integer>task = new FutureTask<Integer>(callinstance);
newThread(task,”名字”).start();
2、3优缺点:多线程共享同一个target对象,创建的多个线程可以共享线程类的实例变量。