【JAVA】java中implements和extends的使用小结

java中implements和extends的使用小结

复制代码
  1 interface InterfaceOne
  2 {
  3        void sayHello();
  4 }
  5 
 10 interface InterfaceThree extends InterfaceOne
 11 {
 12 }
 13 //抽象类可以不用实现接口或父抽象类的方法。
 14 abstract class AbstractClassOne implements InterfaceOne
 15 {
 16 }
 17 abstract class AbstractClassTwo extends AbstractClassOne
 18 {
 19 }
 20 //非抽象类一定要实现接口内的方法。
 21 class ClassOne implements InterfaceOne
 22 {
 23        public void sayHello() {};
 24 }
复制代码

如果遇到一个接口中需要实现的方法很多,但我们只需要用其中的几个方法, 
假设需要继承的接口是:

复制代码
  1 interface A
  2 {
  3        void operation1();
  4        void operation2();
  5        ……
  6        void operation100();
  7 }
复制代码

假设我们只需要使用其中的operation5 
如果直接继承这个接口,则所有方法都要实现:

复制代码
  1 class Class implements A
  2 {
  3        public void operation1(){}
  4        public void operation2(){}
  5        ……
  6        public void operation5(){
  7                
 10        }
 11        ……
 12        public void operation100(){}
 13 }
复制代码

这样十分麻烦,所以可以使用如下方法解决, 
新建一个抽象类(如果规定一个接口方法一定要实现,则把它设为抽象方法,比如说operation99必须要实现):

复制代码
  1 abstract class Abstract implements A
  2 {
  3        public void operation1(){}
  4        public void operation2(){}
  5        ……
  6        public void operation98(){}
  7        //这里的operation99就不提供虚实现,从而必须要在具体类中实现它。
  8        public void operation100(){}
  9 }
复制代码

为所有接口方法提供一个虚实现,今后要利用这个接口只需要进行如下操作:

复制代码
  1 class Class extends Abstract
  2 {
  3        //重写operation5
  4        public void operation5(){
  5                
  8        }
  9        //实现operation99
 10        public void operation99(){
 11                
 14        }
 15 }
复制代码

这样就不必为每个接口方法提供实现了。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值