目次
1.実行環境
- Debian7.11
- Python2.7
2.Pythonでの継承について
Pythonでクラスを継承する場合は子クラスのクラス名の後に()を用いてスーパークラスのクラス名を記述します。 そして、親クラスの機能を引き継ぐために子クラスのinitメソッド内で親クラスのinitを呼び出してselfを渡してあげます。 これでクラスの継承が可能になります。
それでは、具体的な記述内容に関しては以下のサンプルコードを見ていきましょう。
3.親クラスを作成しよう
parent.py
#_*_ coding: utf-8 _*_ class Parent: def __init__(self, lastName): self.lastName = lastName def getLastName(self): return self.lastName
4.子クラスを作成しよう
children.py
#_*_ coding: utf-8 _*_ from parent import Parent class Children(Parent): def __init__(self, firstName, lastName, age): Parent.__init__(self, lastName) self.firstName = firstName self.age = age def getFirstName(self): return self.firstName def getAge(self): return self.age def getFullName(self): return self.firstName + self.lastName
5.継承させたクラスを使ってみよう
実際に継承できているかを確認していきましょう。
main.py
#_*_ coding: utf-8 _*_ from children import Children jon = Children("jon", "test", "21") bob = Children("bob", "test", "31") print "--- result output ---" print "Children jon: " print jon.getFirstName() print jon.getLastName() print jon.getFullName() print jon.getAge() print "Children bob: " print bob.getFirstName() print bob.getLastName() print bob.getFullName() print bob.getAge()
実行結果
root@dev:~/tmp# python main.py --- result output --- Children jon: jon test jontest 21 Children bob: bob test bobtest 31
しっかりと親クラスに定義しているgetLastName()を子クラスから呼び出せていますね。
以上