使用工具類時盡量使用私有的無參構造函數


以某個工具類來說,如果其只提供靜態參數和靜態方法,則這個工具類完全不需要實例化。

然而,在缺少顯式構造器的情況下,編譯器會自動提供一個無參的,共有的構造函數。
所以為了避免這個情況,我們要主動的提供一個私有的無參構造函數來避免工具類自動實例化。
 
 
下面時 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(); } }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM