Java类的类的实例化顺序
先静态、先父后子。
先静态:父静态 > 子静态
优先级:父类 > 子类 静态代码块 > 非静态代码块 > 构造函数
一个类的实例化过程:
1,父类中的static代码块,当前类的static
2,顺序执行父类的普通代码块
3,父类的构造函数
4,子类普通代码块
5,子类(当前类)的构造函数,按顺序执行。
6,子类方法的执行
Java多线程的通信
1,多个线程通过synchronized关键字
2,while轮询的方式
3,wait/notify机制
4,管道通信就是使用java.io.PipedInputStream 和 java.io.PipedOutputStream进行通信
join方法
在很多情况下,主线程创建并启动子线程,如果子线程中要进行大量的耗时运算,主线程往往将早于子线程结束之前结束。这时,如果主线程想等待子线程执行完之后再结束,比如子线程处理一个数据,主线程要取得这个数据中的值,就要用到join()方法了。join()方法的作用是等待线程对象的销毁。
ThreadLocal类主要解决的就是每个线程绑定自己的值,可以将ThreadLocal类类比喻成全局存放数据的盒子,盒子中可以存储每个线程的私有数据。
网友评论