정적 메서드(static method)

CODEDRAGON Development/Python

반응형



 

 

정적 메서드(static method)

·         인스턴스 객체와 무관하게 클래스 이름 공간에 존재하는 메소드로서 클래스 이름을 이용하여 직접 호출할 있는 메소드입니다.

·         인스턴스 객체를 참조하는 self 인자가 필요하지 않습니다.

·         인스턴스 메서드가 객체의 인스턴스 필드를 self 통해 엑세스할 있는 반면, 정적 메서드는 이러한 self 파라미터를 갖지 않고 인스턴스 변수에 엑세스할 없습니다. 따라서, 정적 메서드는 보통 객체 필드와 독립적이지만 로직상 클래스내에 포함되는 메서드에 사용됩니다.

·         정적 메소드는 해당 클래스의 인스턴스를 통해서도 호출 가능하지만 권장하지 않습니다.

·         정적 메서드는 메서드 앞에 @staticmethod 라는 장식자(Decorator) 표시하여 해당 메서드가 정적 메서드임을 표시합니다.

 

 

 

 

 

정적(static) 메서드 형식

class MyClass:

   

    @staticmethod

    def 정적메소드명(인자1, 인자2, ...): # self 키워드가 없다.

        pass

<호출할 메소드 이름> = staticmethod(클래스내 정의한 메소드 이름)

 

 


'Development > Python' 카테고리의 다른 글

클래스 메서드와 정적 메서드  (0) 2020.02.15
모듈 vs 클래스 vs 인스턴스  (0) 2020.02.15
파이썬에서 다형성  (0) 2020.02.15
메서드(Method)  (0) 2020.02.15
인스턴스 메서드(instance method)  (0) 2020.02.15