6.2.2 メソッドのオーバーライド
# スーパークラスの定義
class Circle:
# クラス変数の定義
PI = 3.14
def __init__(self, radius):
self.radius = radius
def area(self):
# スーパクラスのインスタンス変数radiusとクラス変数PIを使用して計算
return self.radius * self.radius * Circle.PI
# サブクラスの定義
class Cilinder(Circle):
# 初期化メソッドをオーバライド
def __init__(self, radius, height):
# スーパークラスの初期化メソッドを呼び出し
super().__init__(radius)
self.height = height
def volume(self):
return self.area() * self.height