implements关键字

implements是一个类实现一个接口用的关键字,它是用来实现接口中定义的抽象方法

 (1)接口可以被多重implements,抽象类只能被单一extends

        (2)接口只有定义,抽象类可以有定义和实现

        (3)接口的字段定义默认为:public static final, 抽象类字段默认是"friendly"(本包可见)

 #People是一个接口,他里面有say这个方法。
 #接口的定义:
public interface People{
public void say();
}
#但是接口没有方法体。只能通过一个具体的类去实现其中的方法体。
#比如 Chinese这个类,就实现了People这个接口。
#接口的实现:
public class Chinese implements People{
public void say() {
System.out.println(" 你好!");
}
}
#接口的调用:
People chinese = new Chinese() ;
chinese.say();
/*接口可以有不同的实现,即使用不同的类实现。

 

     

    

接口函数要重定义方法才能被调用,调用函数可理解为已经重写方法的接口函数

implements的作用通常的解释是实现多态,一个接口可以有多种实现,接口使用方用一种方式调用接口,保持使用方代码的稳定,指定实现类可以在运行时动态进行,也可以在配置文件中明确。

这确实是一个作用,我们见得最多的是在比较底层的代码,比如JDK中的容器类、Swing大量使用接口,这类代码是工具性的,给别人用的,情况复杂,动态性需求强烈。不过,如果是做应用层开发,就个人十几年的开发经历来看,多态的需求非常罕见,一个功能就是一种实现。

如果没有多态的需求,接口是不是就没用了?非也。接口在代码的模块化设计上非常有用,模块间的交互基于接口来调用,接口屏蔽了模块的内部行为,只暴露外部行为,接口是模块的分界线。举个例子,会员管理类,如果没有接口,别的模块要获取会员积分,要在会员管理类的诸多方法中寻找这个方法,无关的方法和代码干扰太多,不方便,而且模块间的界限不明显,很容易冲动在一个模块里写出别的模块的功能,或者在多个地方写出重复的代码,导致紧耦合和臭味。



 

转载于:https://my.oschina.net/stuka/blog/639052

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值