七叶笔记 » golang编程 » 必学——Java抽象类、接口、多态

必学——Java抽象类、接口、多态

1、用关键字abstract修饰类称为abstract类( 抽象类

abstract class A

{ …

}

•abstract类不能用new运算符创建对象,必须产生其子类,由子类创建对象。

•若abstract类的类体中有abstract方法,只允许声明,而不允许实现。

2、接口

Java 不支持多继承性,即一个类只能有一个父类。单继承性使得Java简单,易于管理程序。

(1)、接口的声明与使用

接口通过使用关键字interface来声明,格式:

interface 接口的名字{}

(2)、一个类通过使用关键字implements 声明自己实现一个或多个接口。如果实现多个接口,用逗号隔开接口名,如:

class A implements Printable,Addable{…}

(3)、接口特性

–接口不可以被 实例化

–实现类必须实现接口的所有方法

–实现类可以实现多个接口

–接口中的变量都是静态常量

(4)、 编码 实现

3、 多态 :同一个引用类型,使用不同的实例而执行不同操作

(1)使用多态实现思路

–编写父类

–编写子类,子类重写父类方法 –运行时,使用父类的类型,子类的对象

(2)实现多态的两种形式

–使用父类或接口作为方法形参实现多态

–使用父类或接口作为方法返回值实现多态

4、抽象类 与 接口

(1)abstract类和接口都可以有abstract方法。

(2)接口中只可以有常量,不能有变量;而abstract类中即可以有常量也可以有变量。

(3)abstract类中也可以有非abstract方法,接口全是abstract方法。

5、接口有比抽象类更好的特性

(1).可以被多继承

(2).设计和实现完全分离

(3).更自然的使用多态

(4).更容易搭建程序框架

(5).更容易更换实现

相关文章