您的位置:首页技术文章
文章详情页

Effective java学习笔记3:用私有构造函数强化不可实例化能力

浏览:78日期:2024-06-18 17:56:25
内容: 有时候我们会编一些只含有静态域和静态方法的类.比如把操作原始类型和数组类型的方法集中起来:java.lang.Math,java.util.Arrays..或者把操作在特定接口之上的对象的方法集中起来,比如java.util.Collections.这个时候,不要试图创建一个abstract 类来使之不可实例化,因为abstract类可以被继承,最终被实例化.也不要试图不给出构造函数,因为即使这个类没有构造函数jvm也会给出一个默认的构造函数.所以,可以给出一个显示的私有构造函数,确保不可实例化.Example:// Noninstantiable utility class - page 12public class UtilityClass { // Suppress default constructor for noninstantiability private UtilityClass() { // This constructor will never be invoked } // ... // Remainder omitted} Java, java, J2SE, j2se, J2EE, j2ee, J2ME, j2me, ejb, ejb3, JBOSS, jboss, spring, hibernate, jdo, struts, webwork, ajax, AJAX, mysql, MySQL, Oracle, Weblogic, Websphere, scjp, scjd
标签: Java
相关文章: