通常构造函数是public的, 今天无意间写了一个default的构造函数, 在另外一个包里面使用的时候居然发现The constructor is not visible,于是有了兴趣, 试验发现private, protected都是not visible.回去翻书《Thinking in java》关于构造函数那一节也没有讲。
写了几个例子,发现构造函数也遵循普通函数的访问机制, 即:
public:所有的类都可以使用;
protected: 本包以及子类可以使用;
default:本包可以使用;
private:仅本类可以使用。
所以:
如果构造函数是private的,则不可被继承;也阻止了本类被继承(如果只有这一个构造函数的话).
转载请注明来自:http://blog.csdn.net/sunxing007