A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 黄翔 中级黑马   /  2014-2-23 20:23  /  1028 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

一个类可以定义在另一个类的方法中吗?是不是也是内部类?到底有几种内部类?

评分

参与人数 1技术分 +1 收起 理由
zzkang0206 + 1

查看全部评分

3 个回复

倒序浏览
是的,一个类可以定义在另一个类中。称为内部类。内部类可写在成员位置上,或局部位置上。表现形式有两种:可以书写命名内部类的名字,也可写成匿名内部类,但匿名内部类需要有父类或者父接口才能完成

评分

参与人数 1技术分 +1 收起 理由
zzkang0206 + 1

查看全部评分

回复 使用道具 举报
可以。你说的这种情况就是内部类定义在局部。内部类定义在局部时:不可以被成员修饰符修饰,可以直接访问外部类中的成员,因为还持有外部类中的引用,但是不可以访问它所在的局部中的变量,只能访问被final修饰的局部变量还一种情况是:当内部类定义在外部类的成员位置上,而且非私有,可以在外部其他类中,直接建立该内部类对象。当内部类在成员位置上,就可以被成员修饰符所修饰。

评分

参与人数 1技术分 +1 收起 理由
zzkang0206 + 1

查看全部评分

回复 使用道具 举报
一个类定义在另一个类中的内部定义时,把这个定义在其他类内部的类称为内部类,也可以叫嵌套类(这个更容易理解)。
内部类有:
静态内部类;非静态内部类;匿名内部类;局部内部类

评分

参与人数 1技术分 +1 收起 理由
zzkang0206 + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马