认识抽象类

认识抽象类
1.简介
假设要编写一个计算圆、三角形和矩形的面积与周长的程序。若按照前面所学的方式编程,就必须定义3个类:圆类、三角形类、矩形类,它们之间没有继承关系。程序写好之后虽然能执行,但从代码的整体结构来看,前面三个类的许多共同属性和操作没有好好地利用,需要重复的编写代码,降低了程序的开发效率,且使出现错误的机会增加。
仔细分析上面3个例子的类,可以看到这三个类都要计算面积与周长,虽然公式有所不同,但是目标是相同的。因此,可以把这三个类抽象出一个父类,在父类里面定义圆,三角形和矩形3个类共同的成员属性及成员方法。把计算面积和周长的成员方法名放在父类中说明,再在子类中将具体方法实现。
抽象类是它所有子类的公共属性集合,是包含一个或多个抽象方法的类。使用抽象类的一大优点是可以充分利用这些公有属性来提高开发和维护程序的效率。

2.抽象方法
在了解抽象类之前,先来了解一下抽象方法。抽象方法是一种特殊的方法:它只有声明,而没有具体的实现。抽象方法的声明格式为:

abstract 返回值类型 方法名 (【参数列表】);

例如:abstract void eat();
注意:抽象方法没有定义的方法体,方法名后面直接跟一个分号,而不是花括号。抽象方法必须用abstract关键字进行修饰。

3.定义抽象类
如果一个类含有抽象方法,则称这个类为抽象类,抽象类必须在类前用abstract关键字修饰。

猜你喜欢

转载自www.cnblogs.com/wuliaojava/p/11697314.html