问答详情
源自:7-6 Java 中的成员内部类

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

http://img.mukewang.com/571203580001223908320512.jpg



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


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



提问者:差不多先生1234 2016-04-16 17:20

个回答

  • 流逝的回忆已成空白
    2016-05-16 17:21:53
    已采纳

    友情提示哦:

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

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

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

  • JustWannaHugU
    2016-07-30 12:02:38

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

  • 智慧树要枯了
    2016-04-16 19:19:09

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

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