类的继承相关练习问题

问题描述:

  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

猜你喜欢

转载自www.cnblogs.com/rewivy/p/10340279.html
今日推荐