码迷,mamicode.com
首页 > 编程语言 > 详细

Effective Java 英文 第二版 读书笔记 Item 4:Attempting to enforce noninstantiability by making a class abstract does not work.

时间:2015-09-04 17:07:47      阅读:246      评论:0      收藏:0      [点我收藏+]

标签:

 

The class can be subclassed and the subclass instantiated.Futhermore,it misleads the user into thinking the class was designed for inheritance(继承). There is,however,a simple idiom to ensure noninstantiability.A default constructor is generated only if a class contains no explicit constructors,so a class can be made noninstantiable by including a private constructor.

 

package noninstantiability;

//Noninstantiable utility class
public class UtilityClass {
    //Suppress default constructor for noninstantiability
    
    private UtilityClass(){
        throw new AssertionError();
    }

    
}

 

Effective Java 英文 第二版 读书笔记 Item 4:Attempting to enforce noninstantiability by making a class abstract does not work.

标签:

原文地址:http://www.cnblogs.com/linkarl/p/4781874.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!