int转byte只保留最后一位,其他三位舍弃
数字类型的字面量可以使用下划线进行分割,比如:100_100
注解只是特殊的接口,都会继承Annotation接口
静态属性不能被序列化
实体类boolean类型,不要用is开头,会导致序列化错误(使用JsonFiled注解可以进行转换)
fail-fast :快速失败
transient :关键字可以使一些属性不被序列化
BigDecimal 使用double值进行构造,可能出现不可预期的错误,可以先转成字符串进行构造
工具类尽量是无状态的,没有普通字段,不存在继承,可以是抽象的或final,java8之后的工具类可以用接口实现
把Exception捕获之后抛出RunTimeException可以减少try-catch
do开头的方法一般都是protected
jdk中方法名是0结尾的,一般都是private
少用assert进行快速失败,会受jvm参数影响,应该使用工具类实现
方法参数列表中,可变的参数必须在最后一位
JVM
jvm参数 -xx ,x越多代表,在之后的版本可能移除,不带x的基本不会改变,比如 -version