回答編集履歴
1
内容修正
test
CHANGED
@@ -14,11 +14,7 @@
|
|
14
14
|
「class Application(tk.Frame):」 としたとき、 クラスApplicationはクラス tk.Frame(tkinterモジュールのFrameクラス)を継承しています。 この時、FrameクラスをApplicationクラスの基底クラスと呼びます。親クラスとも呼ばれます。 逆に ApplicationクラスはFrameクラスの派生クラスとか子クラスと呼ばれます。
|
15
15
|
|
16
16
|
派生クラスの定義で基底クラスのメソッドと同じメソッドを定義することができます。これをメソッドのオーバーライドど言います。 派生クラスのインスタンスでこのメソッドを呼んだとき、実行されるのは派生クラスで定義されたメソッドになります。
|
17
|
-
|
17
|
+
さて、クラスの初期化を行なう`__init__`メソッドのようなメソッドをオーバーライドした場合、基底クラスでも重要な(この場合はインスタンスが意図した動作をするために必要な)処理を`__init__`メソッドが呼ば'れないことになってしまうので、インスタンスの機能が不十分になってしまいます。
|
18
|
-
なので、派生クラスの
|
18
|
+
なので、そのようなことにならないように、派生クラスの`__init__`メソッドで、基底クラスの`__init__`メソッドを呼ぶ必要があるのです。 その書き方が、`super().__init__(master)`です。
|
19
19
|
|
20
20
|
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|