当java类没有编写任何构造器的时候,系统会自动提供一个默认构造器,然后把所有的实例字段都设置为默认值,我想问一下这个默认构造器的权限是:public,protected,private还是本包可见的!

解决方案 »

  1.   

    感觉不应该是private,因为如果是private的话,那他不就不能被继承了吗,但是事实是它可以被别的类继承!
      

  2.   

    zephyr_cc()  正解 
    和类可见度一样
      

  3.   

    应该是public的,因为刚才用一个包中的程序继承了另一个包中的无构造器程序,结果可以继承,也就说明系统在初始化父类的时候自动加了构造器,然后进行初始化,之后才初始化子类,而子类和父类不在一个包中,所以它应该是public的!
      

  4.   

    是public,因为包可见决定了他是否可以被别的包中的类继承,所以不能从包可见的这个角度讲!