连击 天
fork: star:
环境 系统: Mac 工具: Alfred, git, homebrew, pngpaste. 语言: perl 其他: Gitee 工具下载 https://gitee.com/serpmelon/inazuma 思路 使用Gitee仓库作为图床, 使用Alfred工作流简化上传图片...
"重写equals方法时为啥要重写hashCode方法?"这个可能是面试出场率最高的问题了, 没有之一. 不重写hashCode方法会导致所有使用hash值的集合类处理异常, 比如HashMap和HashSet. 原理很好理解,...
08 Obey the general contract when overriding equals 重写equals方式时需要遵守通用规则 Object中的equals只有当比较的是"自己"时才返回true. public boolean equals(Object obj) { retur...
07 Avoid finalizers 避免使用finalizers 这里说的finalizers指的是Object类提供的finalize()方法, 该方法默认是一个空方法, 作者不建议我们重写使用该方法. protected void finalize() thr...
06 Eliminate obsolete object references 删除无用的对象引用 通常来说无用对象会在GC后被回收, 但是由于某些操作会导致这部分对象不再使用, 但是会一直存在, 也就是我们常说的内存泄露. 书...
01 Consider static factory methods instead of constructors 使用静态工厂方法代替参数很多并且参数类型一样的构造方法, 这样用户会比较清晰的构造对象. 02 Consider a builder when face...
Double a = null; double b = 0; Scanner in = new Scanner(System.in); boolean t = in.next().equals("y"); System.out.println(t ? a : b); 执行上述代码, 如果t为true则会抛出NPE, 执行j...
问题 同事J上了一个需求, 导致一个跟这个需求毫无关系的接口报错, 报错信息显示是因为SQL语法问题, 正常SQL应该是这样: select * from table where condition order by field limit from, si...
不使用netty是怎么实现网络通信的 netty是一个网络框架, 本篇会向你介绍netty的整体结构. 回忆下我们在上学时实现的"聊天室小程序", 当时是如何做的. 首先我们定义两个系统Server和Client, 然...
前言 了解过java spi后, 马上来看看dubbo spi有什么特殊之处 dubbo spi demo 还是以一个运行的demo开始, 基本和官网一样 public static void main(String[] args) { ExtensionLoader extensi...
前言 深入dubbo源码前最好先了解下java spi(service provider interface)机制, 简单来说, spi可以帮我们加载指定文件中描述的接口实现类. 嗯...就这? 是不是太简单了, 虽然我是个菜瓜, 那我也...
上篇介绍了guava包中的event bus的使用, 本篇深入源码了解实现细节 EventBus 了解 首先当然要看EventBus类, 类上的注释说了很多, 总结如下: 1 EventBus保证在多线程环境下, 不会同时访问订阅...
背景 event bus 数据总线, 数据发送者发送信息到总线, 数据接收者从总线接收数据. 大概类似于下飞机去取行李的时候, 旅客在行李传送带旁边等候自己的行李, 在这个场景下, 飞机相当于发送者,...
没有更多内容
加载失败,请刷新页面
文章删除后无法恢复,确定删除此文章吗?
动弹删除后,数据将无法恢复
评论删除后,数据将无法恢复