Python
 Computer >> コンピューター >  >> プログラミング >> Python

Pythonクラスのメソッドチェーンについて説明する


メソッドチェーン

メソッドチェーンは、オブジェクト参照を1回だけ使用して、同じオブジェクトに対して複数のメソッド呼び出しを行うために使用される手法です。例-

barとbazの2つのメソッドを持つクラスFooがあると仮定します。

クラスFoo-

のインスタンスを作成します
foo = Foo()

メソッドチェーンなしで、オブジェクトfooでbarとbazの両方を呼び出すには、これを行います-

foo.bar()
foo.baz()

メソッドチェーンを使用して、これを行います-

オブジェクトfooのメソッドbar()とbaz()の両方へのチェーン呼び出し。

foo.bar().baz()
シンプルなメソッドチェーンはPythonで簡単に実装できます。

class Foo(object):
    def bar(self):
        print "Foo.bar called"
        return self
    def baz(self):
        print "Foo.baz called"
        return self
foo = Foo()
foo2 = foo.bar().baz()
print " id(foo):", id(foo)
print "id(foo2):", id(foo2)
出力 上記のプログラムを実行した結果は次のとおりです-

Foo.bar called
Foo.baz called
id(foo): 87108128
id(foo2): 87108128

  1. Pythonでクラスメソッドをオーバーライドする方法は?

    オーバーライドは、その基本クラスの1つによって提供されるメソッドの実装を変更するクラスのプロパティです。 オーバーライドは、継承にその全力を利用させるため、OOPの非常に重要な部分です。クラスをオーバーライドするメソッドを使用することにより、別のクラスを「コピー」して、重複したコードを回避し、同時にその一部を拡張またはカスタマイズすることができます。したがって、メソッドのオーバーライドは継承メカニズムの一部です。 Pythonでは、メソッドのオーバーライドは、子クラスで親クラスのメソッドと同じ名前のメソッドを定義するだけで発生します。オブジェクトでメソッドを定義すると、後者がそのメソッド呼

  2. Pythonのオブジェクト指向の概念を簡単に説明しますか?

    PythonでのOOPの概念 Pythonはオブジェクト指向プログラミング言語です。 Pythonでクラスとオブジェクトを簡単に作成して使用できます。 Pythonプログラミング言語の主なオブジェクト指向の概念を以下に示します- オブジェクト クラス 方法 継承 ポリモーフィズム データの抽象化 カプセル化 オブジェクト オブジェクトは、状態と動作を持つエンティティです。それは物理的および論理的かもしれません。例:マウス、キーボード、椅子、テーブル、ペンなど。 Pythonのすべてがオブジェクトであり、ほとんどすべてに属性とメソッドがあります。