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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 黄坚声 中级黑马   /  2012-5-11 21:16  /  1714 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

Java为什么需要内部类?

4 个回复

倒序浏览
给你举两个例子 特典型,(1)比如定义一个类Panda(熊猫),继承抽象类Animal(动物)这个类,并且实现Protect(受保护的)这个接口,但是奇怪的是Animal和Protect中都有抽象方法:price(价格){}这个方法(动物类),请问Panda(熊猫)怎么处理?这是就要用到内部类。。。
(2)有时候一个类只需要在一处代码中使用一次,其他位置不会再用到这个类,这时我们就可以用匿名内部类来解决,无需为该类命名。。。例如GUI中监听事件。。。
回复 使用道具 举报
当描述事物时,事物的内部还有事物,该事物用内部类来描述。
因为内部事务在使用外部事物的内容。
内部类可以直接访问外部类中的成员,包括私有。
之所以可以直接访问外部类中的成员,是因为内部类中持有了一个外部类的引用,格式 外部类名.this
外部类要访问内部类,必须建立内部类对象。
其实内部类可以减少好多的代码书写,不过稍微有点不好阅读.
回复 使用道具 举报
这么说吧。宾利车是一个类,但其内部结构:发动机、油箱、刹车系统等又是各种内部类。若这部车坏了,你总得先访问这部车吧,再访问这部车内部的其他配置。 这些内部类提供了供外部类访问的方法。这就是内部类的必要性。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马