问题描述:
1、描述一个Circle类,有一个成员变量radius,两个构造方法,四个成员方法,分别是获取周长,面积,体积,以及输出
2、描述一个Cylinder(圆柱)类继承了Circle,有两个成员变量radius和height,构造方法中调用了父类的构造方法,有两个成员方法,分别是获取体积以及输出
涉及变量:
radius:double型变量,半径(在两个类中有不一样的含义,圆的半径和圆柱的半径)
height:double型变量,圆柱的高度
大致思路:
以免浪费各位的时间先说两句,很久没有写到继承相关的题目,稍微温习了一下,今天这篇没什么干货和难度(虽然以往的也没有),对学过继承的朋友应该属于没有难度系列,可能也没什么帮助,觉得没必要的朋友可以避免这几分钟阅读时间的浪费。
圆的初始化方法,主要是设置半径,若忘记传递参数,可通过空参数的构造方法调用另一个构造方法,以免出错
所以在设置了带参数的构造方法后仍会设置空参数的构造方法
圆的成员方法中我私加了设置半径和获取半径的方法,在面积和体积的获取中使用到了Math类中的pow()方法
pow(radius,2)的意思是radius的二次方,是一个比较方便的方法
其实可以在开头处引入Math类,则可以不用写Math.pow(),而直接写pow()即可
Cylinder(圆柱类)类的写法与圆相类似
在调用父类的构造方法时使用的是super()
而在调用同类的另一构造方法时使用的是this()
且this.变量可以在方法中有重名的局部变量时指代成员变量
Cylinder中对Circle的getVolume()方法进行了重写
在测试类中将Circle 和Cylinder的类对象赋予相同的半径值
调用getVolume()时会取得不同的值
以上是我关于本次练习题的一点看法,希望对各位有所帮助
190130 Rewivy
原文地址:https://www.cnblogs.com/rewivy/p/10340279.html