Java语言中内部类的几个小问题?(答得好考虑加分)

1)什么情况下要用到内部类,有什么好处?2)静态内部类又有什么作用?3)匿名内部类呢?... 1)什么情况下要用到内部类,有什么好处?
2)静态内部类又有什么作用?
3)匿名内部类呢?
展开
 我来答
币不服输
2011-07-14 · TA获得超过553个赞
知道小有建树答主
回答量:110
采纳率:0%
帮助的人:112万
展开全部
首先要理解内部类和静态修饰符static
1)首先,用内部类是因为内部类与所在外部类有一定的关系,往往只有该外部类调用此内部类。所以没有必要专门用一个Java文件存放这个类。
2)静态都是用来修饰类的内部成员的。比如静态方法,静态成员变量,静态常量。它唯一的作用就是随着类的加载(而不是随着对象的产生)而产生,以致可以用类名+静态成员名直接获得。
这样静态内部类就可以理解了,因为这个类没有必要单独存放一个文件,它一般来说只被所在外部类使用。并且它可以直接被用 外部类名+内部类名 获得。

以下举例说明怎么使用:
Student类有个叫School的内部类(非静态)
Student stu = new Student();
stu.School sch = new stu.School();
sch就是School的一个对象。

假如School是内部静态类:
Student.School sch = new Student.School();
3。匿名内部类
可以访问外部类的私有方法,当一个内部类的类声名只是在创建此类对象时用了一次,而且要产生的新类需继承于一个已有的父类或实现一个接口,才能考虑用匿名类,由于匿名类本身无名,因此它也就不存在构造方法,它需要显示地调用一个无参的父
类的构造方法,并且重写父类的方法。所谓的匿名就是该类连名字都没有,只是显示地调用一个无参的父类的构造方法。
希望对你有所帮助,谢谢。。
慷慨且坦荡的小烤红薯L
2011-07-14 · TA获得超过605个赞
知道小有建树答主
回答量:1470
采纳率:75%
帮助的人:263万
展开全部
最好不用这个 。
没啥好处 。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式