博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

匿名内部类的两种场景的写法

Posted on 2018-11-30 22:22  ☆Keep★Moving☆  阅读(391)  评论(0编辑  收藏  举报

https://blog.csdn.net/qq_41703539/article/details/80345712

 

使用匿名内部类的目的:因为接口和抽象类都不能实例化对象,
使用匿名内部类的方式构造接口、实例化对象(只要是抽象的,不管是抽象类还是接口,都可以通过匿名内部类的方式访问)

 


情况一: 接口、抽象类使用:相当于不用特意去写一个类去实现这个接口的方法,直接在实例化的时候就写好这个方法(接口、抽象类不能实例化,所以采用匿名内部类的方式来写)


接口用匿名内部类:

 

 

抽象类用匿名内部类:

 

 

情况二:当接口作为参数放在方法体里的时候,用new 接口()的方式来实例独享,则匿名内部类必须要实现这两个方法,如下

这是接口:

 

 

PS:其实这种使用匿名内部类的方式等同于,定义一个蘑菇类,实现水果结构的getName() 和panlt() 方法,然后农民类父类引用指向子类,也可以达到同样的效果。
---------------------
作者:爱生活-爱JAVA
来源:CSDN
原文:https://blog.csdn.net/qq_41703539/article/details/80345712
版权声明:本文为博主原创文章,转载请附上博文链接!