标签:流程 并且 arraylist href int ref pre 网络io capacity
目录
见名知意。包名、类名、变量名、方法名一定要通过命名读懂其意思
代码顺序。按照JVM加载该类以及实例化的顺序编码。
遵循 静态变量--> 静态代码块 --> 实例变量 --> 静态方法 --> 实例方法 --> 抽象方法
变量的声明范围最小化,能局部就不要实例声明,能实例声明就不要静态声明,最少原则(能延迟到子类的就只在子类中声明)
工具类一致用final声明,且为单例,并且只有静态方法,最好是无状态、或者是只读线程安全的类
常量类、配置类一致为单例模式
静态方法尽量用泛型来泛化
public static <T> T checkIsNull(T t, String errorMsg) {
if (t == null) {
throw new NullPointerException(errorMsg);
}
return t;
}
对于变量尽量使用final来声明
public ByteBuf directBuffer(int initialCapacity, int maxCapacity) {
//提前判断参数合法化
if (initialCapacity == 0 && maxCapacity == 0) {
//对于非法的参数,返回一个空的对象,而非null
return emptyBuf;
}
validate(initialCapacity, maxCapacity);
return newDirectBuffer(initialCapacity, maxCapacity);
}
synchronized (XXX.class){
//此块为类级别的锁,效率低
}
标签:流程 并且 arraylist href int ref pre 网络io capacity
原文地址:https://www.cnblogs.com/henuzyy/p/10152846.html