Dev_Python

[Python] property 예제

최선을 다하자! 2023. 9. 21. 17:48
class Person:
    bag = []
    val1 = 123

    def __init__(self,val2):
        self.bag2 = []
        self.val2 = []

    def put_bag(self, stuff):
        self.bag.append(stuff)

    def put_bag2(self, stuff):
        self.bag2.append(stuff)


    def minus_val1(self):
        # self.val1 -= 10
        Person.val1 -= 10

    def class_method(self):
        print("클래스 메소드 출력")

    @staticmethod  # 클래스메서드에 접근하는 방식
    def class_method(): # 셀프를 지우면 일반적인 호출이 아니라 클래스에서 막바로 매서드를 호출
        print("클래스 메소드 출력")


# 클래스 메서드 (=public method 혹은 static method 라고 자바에서 불림)
# Person.class_method() # 클래스에서 바로 호출하는 매서스



# 인스턴스 메서드
per1 = Person(456)
per1.put_bag("책") # 클래스 필드에 삽입.
per1.put_bag2("책") # 클래스 필드에 삽입

per2 = Person(789)
per2.put_bag("열쇠") # 클래스 필드에 삽입.
per2.put_bag2("열쇠")

print(per1.bag)
print(per2.bag)
print(per1.bag2)
print(per2.bag2)

per1.minus_val1()
per2.minus_val1()

print(per1.val1)
print(per2.val1)