05 2023 档案

摘要:善用if(!n)表示只有()中条件为真的时候if语句才会执行,根据n的值判断是否为真,n为false的时候就是!n为ture此时可以执行,否则n为true的时候不定执行。 阅读全文 »
posted @ 2023-05-14 00:07 Bepowerful 阅读(9) 评论(0) 推荐(0) 编辑
摘要:jvm中的常量池分为三种(1.6前都在方法区) 1.类文件常量池(Class Constant Pool) 也称静态常量池 2.运行时常量池(Runtime Constant Pool) 3.字符串常量池(String Constant Pool) 1.类文件常量池 我们写的每一个Java类被编译后 阅读全文 »
posted @ 2023-05-13 20:24 Bepowerful 阅读(268) 评论(0) 推荐(0) 编辑
摘要:1、Buffer Pool认识 ​ 我们在对数据库执行增删改操作的时候,不可能直接更新磁盘上的数据的,因为如果你对磁盘进行随机读写操作,那速度是相当的慢, 随便一个大磁盘文件的随机读写操作,可能都要几百毫秒。如果要是那么搞的话,可能你的数据库每秒也就只能处理几百个请求了 ! ​ 你在对数据库执行增删 阅读全文 »
posted @ 2023-05-13 20:22 Bepowerful 阅读(20) 评论(0) 推荐(0) 编辑
摘要:下面说的常量池都是指字符串常量池,字符串常量池存在运行时常量池之中(在JDK7之前存在运行时常量池之中,在JDK7已经将其转移到堆中),运行时常量池从永久代移到了元空间中。 String a = new String("ab"); 此时创建了两个对象,常量池中创建了ab对象,堆内存中也创建了ab对象 阅读全文 »
posted @ 2023-05-13 20:22 Bepowerful 阅读(44) 评论(0) 推荐(0) 编辑
摘要:==逃逸分析== 首先我们需要知道,==逃逸分析并不是直接的优化手段,而是而是分码分析手段==。具体而言就是: 逃逸分析是“一种确定指针动态范围的静态分析,它可以分析在程序的哪些地方可以访问到指针”。Java虚拟机的即时编译器会对新建的对象进行逃逸分析,判断对象是否逃逸出线程或者方法。即时编译器判断 阅读全文 »
posted @ 2023-05-13 20:22 Bepowerful 阅读(74) 评论(0) 推荐(0) 编辑
摘要:Minor GC 当年轻代空间不足时,就会触发Minor GC,这里的年轻代满指的是Eden满,Survivor满不会触发GC。(每次Minor GC 会清理年轻代的内存) 因为Java对象大多都具备朝生熄灭的特性,所以Minor GC非常频繁,一般回收速度也比较快。 Minor GC会引发STW, 阅读全文 »
posted @ 2023-05-13 20:22 Bepowerful 阅读(67) 评论(0) 推荐(0) 编辑
摘要:单列模式 一、静态引用变量直接实力例化对象 随着类装载就完成实例化 二、使用代码块,和一一样 三、懒汉式加载 前两个是类装载就完成实例化,不是当需要调用的时候才实例化 四、三的改进,加锁避免线程安全的问题,但是耗时,不高效 五、用静态代码块缩小锁的范围,但是还是会出现线程的问题 六、双重检查解决线程 阅读全文 »
posted @ 2023-05-13 20:20 Bepowerful 阅读(9) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示