抽象クラス2
抽象メソッドに具体的な処理を記述し、子クラスから呼び出すことができる。
code:abc2.py
from abc import ABCMeta, abstractmethod
class Animal(metaclass=ABCMeta):
@abstractmethod
def __init__(self, name, spicies):
self.name = name
self.spicies = spicies
@abstractmethod
def voice(self):
pass
def talk(self):
print('私は', self.name, 'という名前の', self.spicies, 'です')
class Cat(Animal):
def __init__(self, name):
super().__init__(name, 'NEKO') # 親クラスの抽象メソッド呼出し
def voice(self):
print('ネコはニャーと鳴きます')
print('# 実験2 --------------')
c1 = Cat('Mike') # ミケ・インスタンス
c1.talk()
c1.voice()
https://scrapbox.io/files/65091185acd8df001ce116dc.png
/icons/hr.icon
※ ブラウザのバックボタンで戻る