package lesson1;
public class Sequence {
public static void main(String[] args) {
//启动0-9编号的十个线程,每个线程打印它的编号
for(int i=0;i<=100;i++){
final int j=i;
//类似匿名类 这是个接口,直接在这里实现接口的方法,直接是接口的实例
Runnable r=new Runnable() {
//Runnable是一个接口但也可以new,它创建出来后直接要实现方法,相当于一个实现类
@Override
public void run() {
//这个打印是无序的,操作系统去调度
//在内部类访问,打印的这个值必须用final修饰
System.out.println(j);
}
};
Thread t=new Thread(r);//创建线程,不分配资源,
// 系统层面也看的到,也真实的创建了相关的系统级线程
//程序代码中是不能直接调系统相关的直接创建的线程
//我们创建的线程运行起来,系统级线程是看的到的
t.start();//启动之后才执行内部类
//调用本地库启动
//启动之后交给操作系统去进行调度,顺序无法控制
}
}
//Thread.sleep();
//Thread类里面的静态方法:在哪个线程里面,就对该线程起作用,就属于哪个线程,只作用域当前线程
//只作用于当前代码范围的线程
//多个CPU的时候,main线程可能与t线程同时执行,但是t线程里Thread类的静态方法不作用于main
}