19 일째 : 객체 지향 클래스 [] 정적 속성 / 정적 속성 / 메소드 클래스의 방법

정적 속성 @property 

. 1  엄마 :
 2      성별 = " 여자 " 
3.      DEF  __init__ (자기 이름, 중량)
 . 4          self.name = 이름
 5.          self.weight = 중량
 6.      @Property # 정적 메소드 
7      # 제조 방법에 관한 것이다 
8.      DEF의 cook_dinner ( 셀프)
 . 9          복귀  " %의 S 오늘날 될 케이크 "   % 합니다 (self.name)
 10  
. 11 M1 = 엄마 ( ' XFD ' , 120 )
 (12)는  #인쇄 (m1.cook_dinner ()) # 오류에이 실행 
(13)  인쇄 (m1.cook_dinner)는 #은 통화 데이터는 사실, 속성 것으로 보인다 메소드를 호출 
14  # 숨겨진 기능은 외부 디스플레이의 역할을 속성 @Property , 동일한 데이터 속성 것 같다

정적 방법 : 나는 계란 느끼지 않았다

. (1 개)  클래스는 엄마 :
 2      성별 = " 여자 " 
3.      DEF  __init__ (자기 이름, 중량)
 . 4          self.name = 이름
 5.          self.weight는 = 중량
 6.      @staticmethod #
 7.      DEF CLEAN_UP (A, B) # 1 자기 아니다 바인딩 예 
. 8           " XFD는 S %의 와이 핑하고, S는 % "   % (A, B)
 . 9      DEF의 clean_up1 (A, B) :
 10          반환  " XFD는 S %의 와이 핑하고, S % "   % (A, B)
 . (11)  #
12은  전단 (Mom.clean_up ( ' 데스크 ' , ' " )) # 테이블을 와이 핑 하였다 XFD, 발판 
(13)은 M1 = 엄마 ( " XFD " , 110 )
 (14)  이 전단 (m1.clean_up ( ' 데스크 ' , ' 대변 ' )) #의 인스턴스를 호출 할 수있는 
15  # @staticmethod 클래스 툴킷 
16  #은 클래스, 인스턴스와 결합하지 않은, 그리고 결합하지 않는다 
. 17  # Mom.clean_up1 (1,2)이 호출 인 
18된다  #의 m1.clean_up1를 (1,2 )이 호출 할 수 없습니다 : 왜? 
19  #(전화 할 때 자신 (M1)에 통과하는 듯했지만 우리는 확실히 오류 기침을 정의하지 않는다) 
(20)  #이 @staticmethod하고 무슨 상관하지 않고 추가? 
21 단지 명목상으로 분류 관리, 당신은 클래스 변수와 인스턴스 변수를 사용할 수 없습니다 정적 메서드
@staticmethod

클래스 메소드

요구 사항 : 함수 속성 클래스 호출하는 방법의 예를 사용하지 않는

클래스 엄마는 : 
    성별 = " 여성 " 
    데프  __init__ (자체, 이름, 무게) : 
        self.name = 이름 
        self.weight = 체중
     #를 @ 번호 정적 메서드의 속성 
    # 방법에 관한이 만든 
    @classmethod #의 방법 클래스의 사용에 전념 
    데프 cook_dinner (CLS) : #는 이 키워드 CLS의 기억 
        #을 이 메서드 호출에 대한 클래스 정의, 헌신 할 classmethod를 사용하는 경우 
        반환  " 케이크로 오늘 %의 S를 "   % (cls.gender) 

    #의 DEF의 cook_dinner (자기) : 
    #을      % (self.name) "% s의 오늘 케이크로"반환

인쇄 (Mom.gender) 
M1 = 엄마 ( " XFD " , " 110 " )
 #의 이 호출이 볼 수있는 인쇄 (Mom.cook_dinner (M1)) #. 

인쇄 (M1.cook_dinner ()) #은 당신이 클래스 메소드 만 예제의 방법으로 호출 할 수 있습니다 사용하는 경우 
# 클래스 메소드를 어떻게, 즉하지 예를함으로써, 직접 전화를 
#는 이 클래스의 클래스 메소드의 앞에 배치 @classmethod 직접 할 수 있습니다 전화 (CLS)
수업 방법 @classmethod

참고 : 클래스 메소드를 : I 클래스 호출하지 CLS 초기화 데이터 속성 할 데이터를 속성만을 기억한다. 즉 사용의 예입니다!

 

추천

출처www.cnblogs.com/sunjinchao/p/11108745.html