スーパークラスのinitializeメソッドはインスタンスメソッドだと思うのですが、なぜHoge.init(self, a, b)のようにクラス名.メソッド名で呼び出せるのですか?
またそれでクラスメソッドなのかな?と思ったら、第一引数にself指定してるからインスタンスメソッドなのかな、どっちかわからないな~と...
super()を使うと、super(Hoge, self).init(a, b)のように呼び出せるのですが、個の場合は__init__にselfを指定しなくてもいい、これも疑問です。
なぜか教えてください
python
1class Hoge: 2 def __init__(self, a, b): 3 self.a = a 4 self.b = b 5 6class Fuga(Hoge): 7 def __init__(self, a, b, c): 8 Hoge.__init__(self, a, b) 9 self.c = c 10 11ins = Fuga(1, 2, 3)
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/03/06 08:56