Pythonのクラスの特徴
Pythonは言語仕様レベルでオブジェクト指向をサポートする言語です。
Pythonはクラスベースのオブジェクト指向言語であり、クラスを使用することができます。
クラスとはオブジェクトの設計図であり、その設計図から具体的なオブジェクトを生成することが出来ます。
クラスの定義
クラスを定義するには予約語の class を使います。
class クラス名: def __init__(self): # コンストラクタ def func(self): # メソッド
インスタンスの生成
クラスからインスタンスを生成するには以下のようにします。
変数名 = クラス名()
Pythonでは、クラス生成時にJavaやC#などで使う new といったキーワードは使いません。
コンストラクタ
インスタンスを生成する際に呼び出される特別なメソッドのことをコンストラクトと呼びます。
Pythonではクラス中に__init__という名前のメソッドがコンストラクタになります。
class クラス名: def __init__(self): # コンストラクタ
メソッド
クラスに所属する関数のことをメソッドと呼びます。
Pythonでメソッドを定義するには普通の関数と同じくdefキーワードを使用します。
class Sample: # メソッド def method(self): # 処理内容
メソッド定義の際は第一引数に必ず self を記述する必要があります。selfは呼び出した際のインスタンスが暗黙的に代入されます。