黑马程序员技术交流社区

标题: 请教一下构造方法前面不加修饰符它默认是使用的哪个关键字 [打印本页]

作者: syusikoku    时间: 2014-3-10 19:25
标题: 请教一下构造方法前面不加修饰符它默认是使用的哪个关键字
请教一下构造方法前面不加修饰符它默认是使用的哪个关键字,小弟在做反射的时候有些不解,请高手指点一二。谢谢.
作者: 透过生活    时间: 2014-3-10 19:36
假设一个类为,Test
没有修饰就是package型的,同一个包的中其他类可以构造此类的对象,
如果test()定义为private,则连同一个包中的其它类也无法构造
test的对象,只能在test类中的方法来构造test对象。
public权限是最大的。
作者: 焚雨成灰    时间: 2014-3-10 20:20
默认的修饰符和它的类一样
作者: duanyoujiji    时间: 2014-3-10 20:43
应该是public修饰的的构造方法,你可以用 A a =new A();
如果private修饰的就不能new来创建对象了。
作者: duanyoujiji    时间: 2014-3-10 20:48
duanyoujiji 发表于 2014-3-10 20:43
应该是public修饰的的构造方法,你可以用 A a =new A();
如果private修饰的就不能new来创建对象了。 ...

不对不对,我说错了,默认的是随类的修饰符,
作者: 2528870651    时间: 2014-3-10 20:54
默认的构造方法 默认的关键字和类一样
作者: 上官镇海    时间: 2014-3-10 21:27
如果一个类的成员没有任何权限修饰,那么它门就是缺省包访问权限,用friendly来表示,注  意friendly不是Java中的关键字,这里是个人喜欢的方式用它表示而已。同一个包内其它类可以访问,但包外  就不可以。
作者: syusikoku    时间: 2014-3-10 21:40
嗯,理解了,谢谢各位。
作者: 李猛    时间: 2014-3-10 21:48
默认应该是protect,受保护的
作者: 严旭晟    时间: 2014-3-10 23:00
Constructor只有public,protected, private三种修饰符,在缺省的情况下,要和所在类的修饰符一致的
一般类:
     默认构造方法的修饰符是和所在类的修饰符一致的,所以有3种可能,public、protected、private;
内部类
     因为此时类的修饰符只能是private,protected,谷相应的构造方法的修饰符只有2种可能,private和protected




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2