
Java
文章平均质量分 84
java相关
big muscle
Java开发
展开
-
设计模式_
评估代码质量:可维护性,可读性,可拓展性,灵活性,简洁性,可复用性,可测试性。原创 2022-08-18 17:07:15 · 113 阅读 · 0 评论 -
面试__编程
2. 栈单调栈每日温度(减栈)# 栈中元素为下标和温度值,温度减少才入栈去除重复字符(增栈,考虑剩余)# 先统计每个字符的个数;遍历,set或者数组判断是否已存在,若不存在,看是否更小且后面还有(通过统计的个数),是则入栈,且更新set为没有求最大矩形(增栈)# 从左往右遍历,递增则入栈,否则栈顶元素逐渐出栈,高度(栈顶元素的下标对应的值)*宽度(i-stack.peek-1)= 面积,求面积最大值4. 数组5. 回溯(深度优先,递归)一般有两个方法5. 递归(树的深度优先)# 方法一般原创 2022-07-02 12:10:22 · 223 阅读 · 0 评论 -
面试__八股
面试八股文原创 2022-07-02 12:09:38 · 395 阅读 · 0 评论 -
性能调优实战
概述衡量指标响应时间TPS(每秒事务处理量)计算机资源分配使用率(CPU 占用率、内存使用率、磁盘 I/O、网络 I/O)负载承受能力1. java编程调优string对象char2个字节,byte1个字节即使使用 + 号作为字符串的拼接,也一样可以被编译器优化成 StringBuilder的方式。但再细致些,你会发现在编译器优化的代码中,每次循环都会生成一个新的 StringBuilder 实例,同样也会降低系统的性能。平时做字符串拼接的时候,我建议你还是要显示地使用 Stri原创 2021-09-13 20:51:43 · 247 阅读 · 1 评论 -
1. 虚拟机(极客)
https://static001.geekbang.org/resource/image/41/77/414248014bf825dd610c3095eed75377.jpg原创 2021-04-11 23:01:02 · 851 阅读 · 0 评论 -
2. 深入java虚拟机
第三部分 虚拟机执行子系统第6章 类文件结构字节码命令所能提供的语义描述能力肯定会比Java语言本身更加强大。因此,有一些Java语言本身无法有效支持的语言特性不代表字节码本身无法有效支持.........原创 2020-04-24 16:16:49 · 402 阅读 · 0 评论 -
3. 并发编程 (慕课视频)
导读基础知识并发线程安全高并发处理思路及手段线程安全性原创 2020-06-01 15:37:13 · 421 阅读 · 0 评论 -
4. java gc
gc roots常说的GC(Garbage Collector) roots,特指的是垃圾收集器(Garbage Collector)的对象,GC会收集那些不是GC roots且没有被GC roots引用的对象。1.虚拟机栈(栈帧中的本地变量表)中引用的对象;2.方法区中的类静态属性引用的对象;3.方法区中常量引用的对象;4.本地方法栈中JNI(即一般说的Native方法)中引用的对象...............原创 2020-04-10 21:04:14 · 485 阅读 · 0 评论 -
5. java 锁
锁的状态无锁偏向锁轻量级锁重量级所(1)偏向锁为什么要引入偏向锁?因为经过HotSpot的作者大量的研究发现,大多数时候是不存在锁竞争的,常常是一个线程多次获得同一个锁,因此如果每次都要竞争锁会增大很多没有必要付出的代价,为了降低获取锁的代价,才引入的偏向锁。偏向锁的升级当线程1访问代码块并获取锁对象时,会在java对象头和栈帧中记录偏向的锁的threadID,因为偏向锁不.........原创 2020-04-17 14:39:43 · 191 阅读 · 1 评论 -
6. 高并发 (极客)(高性能、高可用、高可扩展)
1原创 2021-02-26 21:04:42 · 1142 阅读 · 0 评论 -
7. java 线程
Java中wait和sleep的区别Thread.sleep(long millis),一定是当前线程调用此方法,当前线程进入TIMED_WAITING状态,但不释放对象锁,millis后线程自动苏醒进入就绪状态。作用:给其它线程执行机会的最佳方式。Thread.yield(),一定是当前线程调用此方法,当前线程放弃获取的CPU时间片,但不释放锁资源,由运行状态变为就绪状态,让OS再次选择线程。作用:让相同优先级的线程轮流执行,但并不保证一定会轮流执行。实际中无法保证yield()达到让步目的,因为让原创 2021-05-21 10:31:15 · 164 阅读 · 1 评论 -
8. io
io,读写,指的是内存, 读是内存从文件网络等读取数据写是内存写数据到文件网络等nio原创 2021-02-18 11:05:19 · 169 阅读 · 0 评论 -
9. java知识点
异常除了error和runtimeException其他都为必检异常尽量不要捕获类似Exception这样的通用异常,而是应该捕获特定异常不要生吞(swallow)异常。这是异常处理中要特别注意的事情,因为很可能会导致非常难以诊断的诡异情况不要e.printStackTrace();,不好确认输出到哪里了Throw early, catch late(提前抛出能早点定位到问题,晚点catch,在更高层面,因为有了清晰的(业务)逻辑,往往会更清楚合适的处理方式是什么)try-catch代码段会产原创 2020-07-16 17:39:12 · 230 阅读 · 0 评论 -
java8
import java.util.*;import java.util.function.Predicate;import java.util.stream.Collectors;public class a { public static void main(String[] args){ List<String> names = Arrays.asList("peter", "anna", "mike", "xenia"); System.ou原创 2020-10-12 14:29:09 · 109 阅读 · 0 评论