1 继承Thread类
2 实现Runnable接口
- public class java_thread implements Runnable{
- public static void main(String args[])
- {
- (new Thread(new java_thread())).start();
- System.out.println("main thread run ");
- }
- public void run()
- {
- System.out.println("sub thread run ");
- }
- }
3 直接在函数体使用
- void java_thread()
- {
- Thread t = new Thread(new Runnable(){
- public void run(){
- mSoundPoolMap.put(index, mSoundPool.load(filePath, index));
- getThis().LoadMediaComplete();
- }});
- t.start();
- }
4 比较
继承Thread类的优势;
(1) 可以将线程的类抽象出来,当需要使用抽象工厂模式设计时。
(2) 多线程同步
实现Runnable接口的优势;
(1) 适合多个相同的程序代码的线程去处理同意个资源
(2) 可以避免java中的单继承的限制
(3) 增加程序的健壮性,代码可以被多个线程共享,代码个数据独立
在函数体使用的优势;
(1) 无需继承Thread或者实现Runnable接口,缩小作用域。