Python 3 – Pythonでの継承(例付き)

継承:クラスは、別のクラスのプロパティと変数を取得できます。 このクラスは、スーパークラスまたは親クラスと呼ばれます。

継承により、繰り返しを回避できます (コーディング:繰り返してはいけません)、メソッドを一度定義して、1つ以上のサブクラスで使用できます。

関連コース: 完全なPythonプログラミングコースと演習

前書き

継承が機能するには、少なくとも2つのクラスが必要です。 実生活のように、一方は他方から継承します。
スーパークラスから継承するクラスがすべてを取得します。 すべては何ですか?

オブジェクト指向プログラミングの場合、それはスーパークラスからメソッドと変数を取得することを意味します。

複数のクラスが同じスーパークラスから継承できます。 このような場合、すべてのサブクラスがスーパークラスのすべてのプロパティとメソッドを取得します。

継承

使い方

2つのクラスを定義します。1つはスーパークラス(App)、もう1つはサブクラス(Android)です。 サブクラス(Android)は、クラスAppから継承します。

まず、スーパークラスを定義します。 スーパークラスは通常のクラスと同じように書かれており、他の人がそれを継承することを除いて、特別なことは何もありません。 必要に応じて、メソッドと変数を指定できます。

1
2
3
class App:
def start(self):
print('starting')

スーパークラス(App)でメソッドと変数を定義しました。継承すると、サブクラスで使用できるようになります。 スーパークラスを継承するクラス(Android)を作成してみましょう。

スーパークラスでは、メソッドstart()を作成します。 これはデモンストレーションのみを目的としており、Androidクラスでオブジェクトを作成するときにメソッドを使用できます。

Pythonは、クラスが継承したいことをどのように認識しますか? その後の中括弧はクラス名です。

最初に通常のクラス名が定義され、その後にスーパークラスが定義されます。

コード例

以下の例は、Pythonでの継承のデモンストレーションです。 Pythonは多重継承をサポートしていますが、この例では1つのスーパークラスからのみ継承しています。

以下の完全な例:

1
2
3
4
5
6
7
8
9
10
11
12
13


class App:
def start(self):
print('starting')

class Android(App):
def getVersion(self):
print('Android version')

app = Android()
app.start()
app.getVersion()

初心者の方は、 それなら私はこの本を強くお勧めします。

演習

以下の演習を試してください。

  1. クラスAppから継承する新しいクラスを作成します
  2. 2つのスーパークラスから継承するクラスを作成してみてください(多重継承)

例をダウンロード

Hope this helps!

Source link