在看这个小列子之前
建议大家 最好 先理解一下 静态代理的概念.
http://blog.csdn.net/makemeasmile/article/details/55667574
其实我们的多线程 以实现 Runnable 接口的形式 这种方式 就是采用了我们的 静态代理模式
启用多线程步奏:
1)、真实角色 - 这个角色 就是你要去做的事情
2)、代理角色 - 这个同样也是已经提供好的 代理类 Thread类
3)、有共同的接口- 这个接口当然是jdk已经提供好的 Runnable 接口
4)、代理角色持有 被代理 对象
5)、代理对象.start 方法 启用线程
推荐使用 实现Runnable 接口的方式 实现多线程,而不使用继承 Thread 的方式
1、避免单继承 (如果使用继承Thread方式,无法在继承其他类)
2、便于 共享资源 --- 看下面的列子 web12306 就是一个真实对象 也是共享的资源 大家都来抢他
按照以上步奏
// 创建真实角色
public class Web12306 implements Runnable{ / /真实角色
private int num =50;// 一共有50票的资源
@Override
public void run()