java 接口、继承、多态

1. 接口定义:

(1) 使用interface来定义一个接口。接口定义和类定义类似,分为接口的声明和接口体,接口体由变量定义和方法定义两部分组成。

(2) 接口中的方法只有定义而没有被实现。

(3) Java的类文件一样,接口文件的文件名必须和接口相同。

2. 接口的实现:

(1) 接口定义后,在类中实现该接口。使用implements关键字。

(2) 语法:[修饰符] class <类名> [extends 父类名] [implements 接口列表]{}

(3) 在使用implements时,接口列表为必选参数。当接口列表中存在多个接口名时,各接口名之间采用逗号隔开。

(4) 在类中实现接口时,方法名、返回值类型、参数个数及类型必须与接口中的完全一致,并且必须实现接口中的所有方法。

(5) 在类的继承时,只能做单重继承,而实现接口,一次可以实现多个。但可能出现变量或方法名冲突的情况。解决该问题:如果变量冲突,则需要明确指定变量的接口,可以通过“接口名.变量”实现。如果出现方法冲突,则只要实现一个方法即可。

3. 继承实现:

(1) 继承通过extends关键字来实现,用extends来指明当前类是子类,并指明从那个类继承来的。

(2) 语法: [修饰符] class 子类名 extends 父类名{}

4. 继承中的重写:

(1) 重写是指父子类之间的关系当子类继承父类中所有可能被子类访问的成员方法时,如果子类的方法名与父类的方法名相同,那么子类就不能继承父类的方法,便称为子类的方法重写了父类的方法。

(2) 使用重写可以使一个方法在不同的子类中表现出不同的行为

5. 使用super关键字

(1) 子类可以继承父类的非私有成员变量和成员方法作为自己的成员变量和方法。如果子类中的声明和父类中的一样,则子类无法继承父类。如果想要在子类中访问父类中被子类隐藏的成员方法和变量,就可以使用super关键字。

(2) 调用父类的构造方法   super([参数列表])

(3) 操作被隐藏的成员变量和被重写的成员方法  super.成员变量名    super.成员方法名([列表参数])

6. 多态:

(1) 多态性是面向对象程序设计的重要部分。通常使用方法的重写和重载来实现类的多态性。

(2) 重写之所以具有多态性,是因为父类的方法在子类中被重写,子类和父类的方法名称相同,但完成的功能却不一样。

(3) 方法的重载是指在一个类中出现多个·方法名相同,但参数个数或参数类型不同的方法,则称为方法的重载。

(4) 重载的方法之间不一定有什么联系,但是为了提高程序的可读性,一般只重载功能相似的方法。

(5) 在进行方法的重载的时候,方法返回值的类型不能作为区分方法的标志。

猜你喜欢

转载自blog.csdn.net/qq_38354978/article/details/80252596