面向对象第三篇

2018-11-26  本文已影响0人  鹿白_tz

一:抽象类
实例
描述:定义一个抽象类Shape,具有受保护类型的x和y属性,以及公有的抽象方法获得面积。
Rectangle类继承于Shape类,在构造方法中给父类属性x和y初始化,并重写父类中求面积的抽象方法。
Triangle类也继承于Shape类,在构造方法中给父类属性x和y初始化,并重写父类中求面积的抽象方法。
Cube类继承于Rectangle类,独有的属性是height,其构造方法需要调用父类的构造方法完成对x和y的初始化(立方体的底面长和宽),并对height初始化;独有的方法是求体积。
创建上转型对象,求矩形的面积和三角形面积。
创建对象,求立方体的体积。

Shape类


Triangle类


Triangle.png

Rectangle类

Rectangle.png

Cube类


Cube.png

ShapeText类

ShapeText.png

运行结果


运行结果.png

二:super关键字的三个作用

访问父类属性

访问父类属性.png

调用父类构造方法

调用父类构造方法.png

调用父类成员方法

调用父类成员方法.png

四. 抽象类的说明

抽象类中可以有抽象方法和非抽象方法共存
如果一个类中含有抽象方法,则该类一定是抽象类
子类如果继承抽象类,必须强制重写父类中的抽象方法。

五:接口
和抽象类相似,但是更严格
接口中只能有抽象方法
一个类可以实现多个接口

关键字abstruct 允许在类中创建没有定义的方法——接口部分,但是没有提供具体的实现。interface关键字将产生一个完全抽象的类,该类中的所有方法都是抽象的。我们称这种类为接口。把关键字class用interface代替。

接口中的成员修饰符是固定的:

成员常量:public static final
成员函数:public abstract
由此得出结论,接口中的成员都是公共的权限。

具体可见博客链接:http://blog.csdn.net/dt235201314/article/details/50958173

上一篇 下一篇

猜你喜欢

热点阅读