Java 继承、抽象、接口

2017-10-13  本文已影响0人  陈凯冰

一、继承

1. 概述

2. 特点

1. 提高了代码的复用性。
2. 让类与类之间产生了关系,是多态的前提。

3. 应用

二、抽象

1. 概述

2. 特点

  1. 抽象类和抽象方法必须使用 abstract 关键字进行修饰。

  2. 抽象方法只有方法声明,没有方法体,定义在抽象类中。

    • 格式:修饰符 abstract 返回值类型 函数名(参数列表);
  3. 抽象类不能被实例化,也就是说不能用 new 创建对象,抽象类是从具体事物抽取出来的,抽象类本身是不具体的,没有对应的实例。

    • 例如:犬科是一个抽象的概念,真正存在的实例是狗和狼。
  4. 抽象类通过其子类进行实例化,子类必须重写(覆盖)抽象类中所有的抽象方法,子类才能实例化,否则该子类也会是抽象类。

     注:抽象类中可以存在非抽象方法。
    
    • 例如:

3. 抽象类与一般类

三、接口

1. 概述

2. 特点

  1. 接口是程序功能的扩展。

  2. 接口是对外暴露的规则。

  3. 接口的出现降低了耦合性。

  4. 接口可以用来多实现,对于 Java 不支持多继承的缺陷而做的转换,Java 支持多实现。

  5. 类与接口之间是实现关系,类只能继承一个类,但同时可以实现多个接口。

  6. 接口与接口之间可以有继承关系,而且接口与接口之间支持多继承。

     注:
         1. 接口不可以创建对象,因为接口有抽象方法需要子类实现(implements),子类需要全部重写接口中的抽象方法后,子类才能实例化,否则该子类也会是抽象类。
         2. 实现多个接口时,接口中不允许有返回类型不同的同名抽象函数,如果有这样的情况时,子类实现将无法重写接口的抽象方法。
    

3. 接口与抽象类

上一篇 下一篇

猜你喜欢

热点阅读