zoukankan      html  css  js  c++  java
  • 使用工具类时尽量使用私有的无参构造函数

    以某个工具类来说,如果其只提供静态参数和静态方法,则这个工具类完全不需要实例化。

    然而,在缺少显式构造器的情况下,编译器会自动提供一个无参的,共有的构造函数。
    所以为了避免这个情况,我们要主动的提供一个私有的无参构造函数来避免工具类自动实例化。
     
     
    下面时 SHA-256加密算法工具类,用来举例。
    /**
     * @author lyn
     * @date 2020-1-9 11:02
     */
    public class SHA256Util {
        /**  私有构造器 **/
        private SHA256Util(){}
        /**  加密算法 **/
        public final static String HASH_ALGORITHM_NAME = "SHA-256";
        /**  循环次数 **/
        public final static int HASH_ITERATIONS = 10;
        /**  执行加密-采用SHA256和盐值加密 **/
        public static String sha256(String password, String salt) {
            return new SimpleHash(HASH_ALGORITHM_NAME, password, salt, HASH_ITERATIONS).toString();
        }
    }
  • 相关阅读:
    Shiro认证过程?
    使用过Redis做异步队列么,你是怎么用的?
    使用 Spring Boot有什么好处
    Spring Boot、Spring MVC 和 Spring 有什么区别?
    es
    python并发编程
    Go基础05
    Go04基础
    Go03基础
    Go基础02
  • 原文地址:https://www.cnblogs.com/vegetableDD/p/12189553.html
Copyright © 2011-2022 走看看