- 博客(7)
- 资源 (1)
- 收藏
- 关注
原创 Java知识day05
一、线程的生命周期,线程有哪些状态 1.线程通常有五种状态,创建,就绪,运行、阻塞和死亡状态。 ⒉.阻塞的情况又分为三种: (1)等待阻塞:运行的线程执行wait方法,该线程会释放占用的所有资源,JVM会把该线程放入“等待池"中。进入这个状态后,是不能白动唤醒的,必须依靠其他线程调用notify或notifyAll方法才能被唤醒,wait是object类的方法 (2)同步阻塞:运行的线程在获取对象的同步锁时,若该同步锁被别的线程占用,则VM会把该线程放入"锁池"中 (3)其他阻塞:运行的线程执行slee
2022-01-03 19:01:09
229
原创 Java知识day04
HashMap和HashTable的区别?底层实现是什么? 如何实现一个IOC容器 Java类加载器有哪些 双亲委派模型 Java中的异常体系
2022-01-02 17:45:27
276
原创 Java知识day03
一、==和equals ==对比的是栈中的值,基本数据类型是变量值,引用类型是堆中内存对象的地址 equals: object中默认也是采用==比较,通常会重写 二、final作用 修饰类:表示类不可被继承Ⅰ 修饰方法:表示方法不可被子类覆盖,但是可以重载 修饰变量:表示变量—旦被赋值就不可以更改的值。 (1)修饰成员变量 如果final修饰的是类变量,只能在静态初始化块中指定初始值或者声明该类变量时指定初始值。·如果final修饰的是成员变量,可以在非静态初始化块声明该变量或者构造器中执行初始
2022-01-01 19:09:12
274
原创 java知识day2
一、面向过程与面向对象 面向过程:注重事情的每一个步骤及顺序,直接高效 面向对象:注重事情有哪些参与者(对象)及各自需要做什么,易于复用、扩展和维护 二、面向对象特性 ①封装:内部细节对外部调用透明,外部调用无需修改或关心内部实现 ②继承:子类共性的方法或者属性直接使用父类的,而不需要自己再定义,只需扩展自己个性化的 ③多态:维承,方法重写,父类引用指向子类对象 三、JVM 堆:new出来的对象优先存放在此处 栈(线程):局部变量表,操作数栈,动态链接,方法出口(确定返回main方法后的执
2021-12-31 19:20:01
240
原创 Java知识day1
一、java程序中出现线程安全问题的原因: ①原子性问题是线程切换造成的 解决:多线程之间同步synchronize或使用锁 ②可见性问题是缓存造成的 解决:synchronize、volatile、LOCK ③有序性问题是编译优化造成的 解决:Happpens-Before规则 二、Lock和synchronize区别: ①Lock是Java类;synchronize是Java内置关键字,在JVM层面 ②Lock只能给代码块加锁;synchronize可以给类、方法及代...
2021-12-30 21:59:37
319
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅