메서드 체이닝
메소드 연결은 개체 참조를 한 번만 사용하여 동일한 개체에 대해 여러 메서드를 호출하는 데 사용되는 기술입니다. 예 -
bar와 baz의 두 가지 메서드가 있는 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