匿名内部类方式实现线程的创建和线程安全问题的概述
匿名内部类方式实现线程的创建
匿名:没有名字
内部类:写在其他类内部的类
匿名内部类作用:简化代码
把子类继承父类,重写父类方法,创建子类对象合一步完成
把实现类实现类接口,重写接口中的方法,创建实现类对象合成一步完成
匿名内部类的最终产物:子类/实现类对象,而这个类没有名字
格式:
new 父类/接口(){
重复父类/接口中的方法
};
public class demg_06 { public static void main(String[] args) { //线程的父类是Thread //new Thread.start new Thread(){ //重写run方法,设置线程 @Override public void run() { for (int i = 0; i <= 20 ; i++) { System.out.println(Thread.currentThread().getName()+"-->"+"黑马"); } } }.start(); //Runnable r = new Runnable(); //多态 Runnable r = new Runnable() { @Override public void run() { for (int i = 0; i <=20 ; i++) { System.out.println(Thread.currentThread().getName()+"-->"+"程序猿"); } } }; new Thread(r).start(); //简化接口的方式 new Thread(new Runnable() { @Override public void run() { for (int i = 0; i <= 20 ; i++) { System.out.println(Thread.currentThread().getName()+"-->"+"Java"); } } }).start(); } }
线程安全问题的概述
如果有多个线程在同时运行,而这些线程可能会同时运行这段代码。
程序每次运行结果和单线程运行的结果是一样的,而且其他的变量的值也和预期的是一样的,就是线程安全的。


浙公网安备 33010602011771号