java为什么要new_为什么Java允许你new一个接口,这样的意义是什么?

这个问题很好回答,我们先不考虑java原生是否提供了这个功能(JDK8之后都是支持的)

假如现在有个接口,然后其他的代码需要调用这个接口提供的服务,并且只用一次,或者只在一个地方调用,其他的代码不会调用他

你是不是首先想到的是要去实现这个接口

实现这个接口你首先想到的是创建一个class,单独的一个文件,然后去implement 这个接口

然后大功告成

但是你回过头来想想我上面说的场景,这个接口的实现只在某一个地方被调用了,其他地方都调用不到,也就是说不存在复用的情况,我们知道创建一个单独的class有一个好处是可以在其他地方复用,而我上面描述的场景是不需要复用的

所以jdk就原生提供了new一个接口的方式来实现一个类,这种方式的类被称为匿名内部类,这个很好理解,匿名=没有名字,确实没有名字嘛,因为他是直接new的接口名,然后直接写实现

匿名内部类有很多好处和他的使用场景,上面只是一种case,你可以搜索一下相关资料,全面了解一下

希望我的回答对你有帮助,如果有帮助,麻烦点赞关注一下,方便下次有问题我也可以提供力所能及的帮助,谢谢

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值