![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JAVA SE
知友丶
这个作者很懒,什么都没留下…
展开
-
类的加载机制
1.加载: 将class文件字节码内容加载到内存中,并将这些静态数据转换成方法区的运行时数据结构, 然后生成一个代表这个类的java.lang.Class对象. 2.链接: 将Java类的二进制代码合并到JVM的运行状态之中的过程。 验证: 确保加载的类信息符合JVM规范,没有安全方面的问题 准备: 正式为类变量(static)分配内存并设置类变量默认初始值的阶段,这些内存都将在方法区中进行分配 解析: 虚拟机常量池内的符号引用(常量名)替换为直接引用(地址)的过程。 3.初始化: 执行类构造器()方法的过原创 2021-01-10 14:28:27 · 43 阅读 · 0 评论 -
Runable接口和Thread类区别
继承Thread类: 子类继承Thread类具备多线程能力 启动线程:子类对象. start() 不建议使用:避免OOP单继承局限性 实现Runnable接口: 实现接口Runnable具有多线程能力 启动线程:传入目标对象+Thread对象.start() 推荐使用:避免单继承局限性,灵活方便,方便同一个对象被多个线程使用 Sleep不会强制释放锁! 线程礼让: 礼让线程,让当前正在执行的线程暂停,但不阻塞 将线程从运行状态变成就绪状态 让cpu调度,礼让不一定成功!!! 看CPU心情 线程优先级不能决定原创 2021-01-10 14:22:39 · 85 阅读 · 0 评论