shinoblog-manabu

Progate(プロゲート)を使って初歩の初歩からプログラミング勉強をはじめました。無料から有料バージョンへ以降しつつ、自分辞書として活用しています。なるべく私と同じ初心者目線を使い、各プログラミング内容を説明したいです。

クラスを定義するために

クラスを発展させる方法

 

まずは継承の仕組み関連名称をサクッと覚えよう

1.クラスの拡張(extends)

 

クラスの発展 = クラスの拡張 と捉える。pythonでは元のクラスにさらに新しいクラスを定義することができる。

 

これをクラスの拡張という。




2.継承(inheritance)

 

拡張されたクラスはデータ属性やメソッドを引き継ぐ仕組みがある。

 

つまり、既存のクラスに新しく必要とされるデータ属性・メソッドを追加しつつコードを書いていくことが可能となる。

 

これが継承の概念である。




3.基底クラス(base class)

 

上記にて継承された元のクラスを指す。




派生クラス(derived class)

 

継承された新しいクラスを指す。




1.クラスの拡張(extends)

 

例1

 

class 派生クラス名(基底クラス名)



def(=definition:定義する)派生クラスに追加するメソッド(self, 引数のリスト):

                                             self. 派生クラスに追加するデータ属性 = 値



参考:動画

Extending Python With C - YouTube




selfとは

 

ちなみに 「self」という指定をつけた変数に、データとなる値を代入して使うことができる。

 

この変数を「データ属性」という。





メソッド(method)

 

selfを1つめの引数として関数を定義した関数。メソッドとして処理をまとめる。



その他

・データ属性+メソッド両方合わせて、単純に属性とも呼ばれる(attribute)



まとめると・・。

 

  • クラスを定義する
  • メソッドを定義する
  • データ属性を書く

 

f:id:shinoblog-manabu:20210719085131p:plain



point

 

このクラスを実行しても何も起こらない。

何故か?

 

・関数を準備しただけ。

・personMethodの設計図を準備しただけ。

 

上記の設計図をもとにPerson、つまり人間をつくらなければならない。




その人間をつくるには、インスタンス化が必要になってくる。






本日はここまでになります。お疲れ様でした。