为了账号安全,请及时绑定邮箱和手机立即绑定

以直接创建内部类对象 Inner i=new Inner(); 为什么非得 HelloWorld hello=new HelloWorld(); Inner i =hello.new.Inner(); 不明白!

以直接创建内部类对象 Inner i=new Inner(); 为什么非得 HelloWorld hello=new HelloWorld(); Inner i =hello.new.Inner(); 不明白!

正在回答

3 回答

这应该是创建内部类对象和静态内部类对象的区别;静态内部类对象可以直接创建;

0 回复 有任何疑惑可以回复我~
#1

qq_精神爽i_0 提问者

非常感谢!
2018-03-29 回复 有任何疑惑可以回复我~

因为main方法是static类,所以可以直接使用对象调用

0 回复 有任何疑惑可以回复我~

new一个对象时,其实是调用它的构造方法;

new Inner()实际上是调用其构造方法创建对象,调用方法时我们得用这个类的对象去调用,所以要创建一个外部类对象去调用这个方法;

而static修饰的是类的对象,在类加载时就完成了创建,所以可以直接使用


3 回复 有任何疑惑可以回复我~
#1

qq_精神爽i_0 提问者

非常感谢!
2018-03-29 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

以直接创建内部类对象 Inner i=new Inner(); 为什么非得 HelloWorld hello=new HelloWorld(); Inner i =hello.new.Inner(); 不明白!

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信