创建线程———-就绪状态———-执行状态———等待/挂起———异常/死亡
    就绪——-执行
    new() start() run() wait() exption over
    notify/notifyAll

    实现线程的过程 方法一
    1.自己描述一个类
    2.继承父类Thread
    3.重写run方法
    4.new一个线程对象 调用start()方法 让线程进入就绪状态

    实现线程的过程 方法二
    1.自己描述一个类
    2.实现父接口 Runnable
    3.重写run方法
    4.new一个线程对象 Thread t1 = new Thread(类对象)
    t1.start()

    example:
    字节型文件输入流
    FileInputStream
    read() read(byte[]) close() avaialbe()
    skip(long count)
    文件 100字节 5个线程对象 同时读
    1从头—20 2跳过20读—40 3。。。。依次,就压力不会那么大了

    // 属性 集合 ArrayList Vector安全点 Stack
    购票的小例子
    利用Vector集合 线程安全 多个线程并发操作同一个集合的时候 不会抢夺资源