본문 바로가기
728x90
반응형

클래스3

[Python] 6. 다중 상속 및 이름 충돌 다중 상속 : 2개 이상의 클래스를 동시에 상속 받는 것을 의미 # 다중 상속 테스트 class Tiger: def Jump(self): print("호랑이 Jump") class Lion: def Bite(self): print("사자 Bite") class Liger(self): def Play(self): print("라이거 Play") if __name__ == "__main__": adultLiger = Liger() # 2개의 클래스로부터 상속받은 메소드 사용 시 오류 발생 X adultLiger.Play() adultLiger.Bite() adultLiger.Jump() # 다중 상속의 경우, 이름 충돌이 발생하는 경우 테스트 class Tiger: def Jump(self): print(".. 2021. 10. 26.
[Python] 3. 정적 메소드 정적 메소드(= static method) - 클래스에서 직접 호출할 수 있는 메소드 - 즉, 인스턴스(객체)를 생성하지 않고 클래스 이름을 이용하여 호출할 수 있는 메소드 - 메소드를 정의할 때 인스턴스 객체를 참조하는 self라는 인자를 선언하지 않음 아래 코드와 설명을 보며, 좀 더 확실하게 이해해 보자!! class MyOperatorStatic(): @staticmethod def my_addStatic(x, y): return x+y class MyOperator(): def my_add(self, x, y): return x + y if __name__ == '__main__': print(MyOperatorStatic.my_addStatic(1,6)) myOperator = MyOperat.. 2021. 10. 13.
[Python] 1. 클래스와 인스턴스 클래스 - 개발자에게 필요한 새로운 형식을 정의하는 것을 의미 - 데이터를 변형하는 함수와 속성을 같은 이름 공간에 묶음 - 메모리 공간 차지 X 인스턴스 - 클래스를 복사해서 생성한 복사본 - 메모리 공간 차지 O 클래스와 인스턴스의 관계 - 붕어빵틀(클래스)과 붕어빵(인스턴스)의 관계와 같음 - 붕어빵틀이 있다고 해서 붕어빵이 있는 건가? X - 붕어빵틀은 붕어빵을 만들기 위한 틀일 뿐! 붕어빵이 있는 것은 아니다. - 이걸 프로그래밍 관측에서 보면, - 붕어빵틀(클래스)은 그냥 틀일 뿐, 메모리에 존재하는 게 아니다. - 붕어빵(인스턴스)을 만들어야 메모리에 존재하는 것이다. cf. 인스턴스와 객체는 같은 뜻이며, 둘 중 어느 단어를 사용하든 상관 없다. 객체 지향 프로그래밍의 특징 1. 추상성 :.. 2021. 10. 5.
728x90
반응형