抽象类、抽象方法、接口

抽象方法:使用abstract修饰的方法,没有方法体,只有声明。

抽象类包含抽象方法的类就是抽象类、通过抽象类,我们可以做到严格限制子类的设计,使子类之间更加通用

•使用要点:1.有抽象方法的类职能定义为抽象类

2.抽象类不能实例化,不能用new来实例化抽象类

3.抽象类可以包含属性、方法、构造方法。但是构造方法不能用来new实例,只能用来被子类调用

4.抽象类只能被继承

5.抽象方法必须被子类实现

测试实例:

  

 

接口是比“抽象类”还抽象的抽象类,可以更加规范的对子类进行约束。接口不提供任何实现,接口中所有的方法都是抽象方法。接口只定义规范,不定义具体的实现。

声明格式:访问修饰符 interface  [extends  父接口1,父接口2] {

                   常量定义;

                  方法定义;

                 }

定义接口的详细说明:1.访问修饰符:只能是pulic 或默认

2.接口名:和类名采用相同命名机制

3.extends:接口可以多继承

4.常量:接口中的属性只能是常量,用static static final修饰

5.方法:接口中的方法只能是public abstract

 

 

•要点:1.子类通过implements来实现接口中的规范

2.接口不能创建实例,但是可以用于声明引用变量类型

3.一个类实现了接口,必须实现这个接口中所有的方法,并且这些方法都只能是public的

 

提问♥:java中有多继承吗?  类不能实现多继承,接口可以实现多继承

 

面向接口编程:是面向对象编程的一部分

为什么需要面向接口编程?  软件设计中最难处理的需求的复杂变化,需求的变化更多体现在具体实现上。借口就是规范,是项目中最稳定的东西。通过面向接口编程,而不是实现面向实现类编程,可以大大降低模块之间的耦合性,提高整个系统的可扩展性和可维护性。

 

为什么阿里巴巴谨慎使用继承:介绍了多态比继承更有优势的地方

posted @ 2019-08-18 10:40  acehm  阅读(218)  评论(0编辑  收藏  举报