美文网首页
java工具类该怎么写

java工具类该怎么写

作者: 蜗牛写java | 来源:发表于2021-07-29 11:43 被阅读0次

    java工具类该怎么写

    • 命名以复数(s)结尾,或者以Utils结尾

      ObjectsCollectionsIOUtilsFileUtils

    • 构造器私有化

      构造器私有化,这样无法创建实例,也无法产生派生类

    • 方法使用 static 修饰

      因为构造器私有化了,那么对外提供的方法就属于类级别

    • 异常需要抛出,不要 try-catch

      将异常交给调用者处理

    • 工具类不要打印日志

      工具类属于公共的,所以不要有定制化日志

    • 不要暴露可变属性

      工具类属于公共类,所以不要暴露可变的属性;如List集合等(可以返回不可变的集合,或者拷贝一个暴露给调用者,这样调用者修改了集合中元素,不会影响到工具类中的集合元素)

    示例(JDK中Arrays摘录典型部分):

    public class Arrays {
        
        /**
         * The minimum array length below which a parallel sorting
         * algorithm will not further partition the sorting task. Using
         * smaller sizes typically results in memory contention across
         * tasks that makes parallel speedups unlikely.
         */
        private static final int MIN_ARRAY_SORT_GRAN = 1 << 13;
        
        // Suppresses default constructor, ensuring non-instantiability.
        private Arrays() {}
        
        @SafeVarargs
        @SuppressWarnings("varargs")
        public static <T> List<T> asList(T... a) {
            return new ArrayList<>(a);
        }
        
        public static int[] copyOfRange(int[] original, int from, int to) {
            int newLength = to - from;
            if (newLength < 0)
                throw new IllegalArgumentException(from + " > " + to);
            int[] copy = new int[newLength];
            System.arraycopy(original, from, copy, 0, Math.min(original.length - from, newLength));
            return copy;
        }
    }
    

    相关文章

      网友评论

          本文标题:java工具类该怎么写

          本文链接:https://www.haomeiwen.com/subject/mmvxvltx.html