java之中有四种访问权限,分别是public;private;protected,还有默认的。他们的访问权限如下:
public:是公有的,被它修饰的成员方法,成员函数和类,在本类,子类,同包,不同包中都可以访问。
private:是私有的,被它修饰的成员方法,成员函数和类,在子类,同包,不同包中都不可以访问,只有在本类中可以访问。
protected:是保护的,被它修饰的成员方法,成员函数和类,只有在本类,和子类中能访问,在同包,不同包中都不可以访问。
默认的访问权限:被它修饰的成员方法,成员函数和类,在本类,子类,同包中能访问,在不同包中不可以访问。
对于你的问题:构造函数中加不加public都能显示出结果,这观点是片面的,要看访问它的对象在哪里了,如果不加public,当访问该构造函数的对象,在不同的包中,即与构造函数所在的类不同与一个包中,就不能显示结果了,对于这样的问题,我想只要你弄清楚几个访问权限的访问范围,就能很好的理解了 |