黑马程序员技术交流社区
标题:
为什么静态只能访问静态成员,
[打印本页]
作者:
王会涛
时间:
2014-11-13 16:26
标题:
为什么静态只能访问静态成员,
为什么静态只能访问静态成员,在外部类的静态函数里面访问内部类时内部类必须是stastic可是为什么在主函数里面访问非静态内部类就可以呢(new Outer.Inter().内部类的方法)?
作者:
wf111sxwf
时间:
2014-11-13 18:37
何为静态? 类一加载它就存在了,不需要对象就可以直接用类名调用,而非静态的成员必须创建对象才可以调用,
内部类处于成员位置上时,你可以把他视作一个成员变量来理解, 静态成员方法可以访问非静态成员变量么?明显不能。 这就是为什么在外部类的静态函数里面访问内部类时内部类必须是stastic。
二。在主函数中访问非静态内部类 是这样的 Outer.Inner oi = new Outer.new Inner. oi.内部类方法。
作者:
wf111sxwf
时间:
2014-11-13 18:40
第二个我写错了。 误解了你的问题。 主函数是静态的 不可以直接访问非静态的方法,但是你创建了内部类对象,用对象调用了方法,这个和主函数是没什么关系的
作者:
关军波
时间:
2014-11-13 19:02
学习学习!!!!!!
作者:
叫我小强
时间:
2014-11-13 19:08
看看!!
作者:
王会涛
时间:
2014-11-13 20:10
wf111sxwf 发表于 2014-11-13 18:40
第二个我写错了。 误解了你的问题。 主函数是静态的 不可以直接访问非静态的方法,但是你创建了内部类对 ...
懂了,谢谢,就是看内部类是静态成员用类名.访问方法,如果是非静态,用对象.访问
作者:
w239983684
时间:
2014-11-13 20:12
学习了。
作者:
焦旭宁1
时间:
2014-11-13 21:07
学习!!!!!!
作者:
扫地僧wu
时间:
2014-11-13 22:03
2口回答的很好啊,学习了
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2