クラスとインスタンス メソッド
Python の PEP 8 スタイル ガイドでは、インスタンス メソッドの最初の引数に "self" を使用し、クラスに "cls" を使用することを推奨しています。メソッドの最初の引数。これら 2 種類のメソッドの違いを理解することは、効果的なオブジェクト指向プログラミングにとって重要です。
インスタンス メソッドは、クラスの特定のインスタンスに関連付けられます。これらはインスタンスのデータを操作し、通常は最初の引数として「self」を受け取ります。 object.method() などのインスタンス メソッドにアクセスすると、インスタンスは自動的にメソッドに渡されます。
たとえば、次のクラス定義を考えてみましょう:
class Person:
def __init__(self, name):
self.name = name
def greet(self):
print("Hello, my name is", self.name)
ここで、「greet()」はインスタンス メソッドで、「object.greet( )".
一方、クラス メソッドは、個々のインスタンスではなくクラス自体に関連付けられます。これらは、クラスを表す「cls」を最初の引数として受け取ります。クラス メソッドは、新しいインスタンスの作成やクラス レベルのデータへのアクセスなど、クラス全体に関連するタスクに使用されます。
次のコード スニペットは、クラス メソッドを示しています。
class Math:
@classmethod
def sum(cls, a, b):
return a b
「Math.sum()」メソッドは、加算されて返される 2 つの引数を受け取ります。これはクラス メソッドであるため、Math.sum(1, 2) として直接呼び出して結果を取得できます。
インスタンス メソッドとクラス メソッドの違いを理解することで、開発者はオブジェクトの全機能を効果的に活用できます。 Python での - 指向プログラミング。
免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。
Copyright© 2022 湘ICP备2022001581号-3