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

关于内部类和外部类有几个知识点不太懂

http://img1.sycdn.imooc.com//571203580001223908320512.jpg



定义了成员内部类后,必须使用外部类对象来创建内部类对象,而不能直接去 new 一个内部类对象,即:内部类 对象名 = 外部类对象.new 内部类( );


上面这句话,还有涉及到代码中为什么内部类定义为Inner inn=o.new Inner();



正在回答

3 回答

友情提示哦:

1、 外部类是不能直接使用内部类的成员和方法滴

可先创建内部类的对象,然后通过内部类的对象来访问其成员变量和方法。

2、 如果外部类和内部类具有相同的成员变量或方法,内部类默认访问自己的成员变量或方法,如果要访问外部类的成员变量,可以使用 this 关键字。

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

差不多先生1234 提问者

非常感谢!
2016-08-06 回复 有任何疑惑可以回复我~

可以这样理解,内部类相当于嵌套在外部类中的一个类,你想创建一个内部类的对象就必须经过外部类对象的来实现

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

你就把内部类当成外部类的一个普通成员变量(而且本来就是个意思),把内部类的构造方法当成一个普通的方法(构造方法本来就是一种特殊的方法)。

那么     成员变量=外部类对象.方法;     就对应 Inner inn=o.new Inner();

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

举报

0/150
提交
取消
Java入门第二季 升级版
  • 参与学习       530559    人
  • 解答问题       6091    个

课程升级!以终为始告别枯燥,在开发和重构中体会Java面向对象编程的奥妙

进入课程

关于内部类和外部类有几个知识点不太懂

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