枚举和注解(34-41) 34. 用 enum 代替 int 常量int 常量表示枚举类型: enum 类型表示枚举类型: 35. 用实例域代替序数永远不要根据枚举的序数导出与它关联的值,而是要将它保存在一个实例域中。 36. 用 EnumSet 代替位域枚举代替位域: 将 EnumSet 实例传递给 applyStyles 方法: 37. 用 EnumMap 代替序数索引java.util.EnumMap 3 2020-09-16 02_编程语言 > 01_Java > 04_EffectiveJava #注解 #EffectiveJava #枚举
泛型(26-33) 26. 不要使用原生态类型如果使用像 List 这样的原生态类型,就会失掉类型安全性,但是如果使用像 List<Object> 这样的参数化类型,则不会。 List 原生态类型 和 List<Object> 参数化类型的区别: 前者逃避了泛型检查 后者明确告知编译器,它能够持有任意类型的对象 不能将任何元素(除了 null 之外)放到 Collection< 2020-09-16 02_编程语言 > 01_Java > 04_EffectiveJava #EffectiveJava #泛型
类和接口(15-25) 15. 使类和成员的可访问性最小化尽可能使每个类或成员不被外界访问。 公有类的实例域决不能是公有的。 包含公有可变域的类通常并不是线程安全的。 让类具有公有的静态 final 数组域,或者返回这种域的访问方法,这是错误的。 16. 要在公有类而非公有域中使用访问方法如果类可以在它所在的包之外进行访问,就提供访问方法。 如果类是包级私有的,或是私有的嵌套类,直接暴露它的数据域并没有本质的错误。 17 2020-09-16 02_编程语言 > 01_Java > 04_EffectiveJava #接口 #EffectiveJava
通用编程(57-68) 57.将局部变量的作用域最小化要使局部变量的作用域最小化,最有力的方法就是在第一次要使用它的地方进行声明。 几乎每一个局部变量的声明都应该包含一个初始化表达式。 最后一种“将局部变量的作用域最小化”的方法是使方法小而集中。 58. for-each 循环优先于传统的 for 循环推荐增强 for 循环,或者 迭代器: 59. 使用类库从Java 7开始,就不应该再使用Random了。现在选择随 2020-09-16 02_编程语言 > 01_Java > 04_EffectiveJava #EffectiveJava #反射
责任链模式 参考资料1:http://c.biancheng.net/design_pattern/ 参考资料2:https://refactoringguru.cn/design-patterns/catalog 1. 介绍1.1 简介责任链模式(Chain of Responsibility Pattern)为请求创建了一个接收者对象的链。这种模式给予请求的类型,对请求的发送者和接收者进行解耦。这种类型 2020-09-12 10_设计模式 #设计模式
适配器模式 参考资料1:http://c.biancheng.net/design_pattern/ 参考资料2:https://refactoringguru.cn/design-patterns/catalog 1. 介绍1.1 简介适配器模式(Adapter Pattern)是作为两个不兼容的接口之间的桥梁。 属于结构型模式,它结合了两个独立接口的功能。 适配器模式通过定义一个新的接口(对要实现的功能 2020-09-12 10_设计模式 #设计模式
IdGenerator IdGenerator123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899 2020-09-10 21_代码片段 > 01_工具类 #工具类
SqlBuildUtil SQL语句构建1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586import java.lang.reflect.Field 2020-09-04 21_代码片段 > 01_工具类 #工具类
ExcelUtil Excel快速导出12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910 2020-09-03 21_代码片段 > 01_工具类 #工具类
ELK日志分析系统搭建 ELK是一套针对日志数据做解决方案的框架,分别代表了三款产品: E: ElasticSearch(ES),负责日志的存储和检索; L:Logstash,负责日志的收集,过滤和格式化; K:Kibana,负责日志的展示统计和数据可视化。 一、ELK 是什么?ELK 是三个开源框架的简写,分别是:Elasticsearch、Logstash、Kibana 。 二、安装部署 Elasti 2020-08-20 15_分布式 > 07_分布式日志 #架构 #分布式 #ELK