위키북스 박응용 저 "점프 투 파이썬" 책을 읽고 정리한 내용입니다.

다소 잘못된 내용과 구어적 표현 이 포함되어 있을 수 있습니다.

선언

class Class_name(Parent_class) :
  • 괄호 안에 상속받을 부모 클래스 이름을 적는다. 상속받을 클래스가 없으면 안적어도 된다
  • 괄호안에 부모클래스가 들어간다는 것에 유의할 것

메소드 선언

def method_name(self, arg1, arg2, ... ) :
  • 메소드 선언 명령어는 def이다
  • 첫번째 매개변수는 관례적으로 self 를 써준다
  • 함수가 아닌 메소드 선언시에는 self 를 잊지 말자

생성자/객체변수 선언

def __init__(self, arg1, arg2, ...) :
	self.arg = 123
  • 메소드 이름을 __init__ 으로 해줘야 생성자로 인식을 한다
  • 관례적으로 객체변수는 생성자에서 self.변수 = 값 형식으로 선언을 해서 사용한다
  • 생성자 이름이 클래스명이 아닌것에 유의할 것

정적 클래스 변수 선언

arg = 123
Class_name.arg = 456
  • 클래스 내부 최상위 인덴트에 변수를 선언해주면 클래스 변수로 선언된다
  • 값을 변경할때는 객체로 접근해서 변경하는게 아닌 클래스로 접근하여 변경해야 한다
  • 클래스가 아닌 객체에서 값을 변경하면 정적인 특성을 잃는다는 것에 유의할 것

오버라이딩

def parent_method(self, arg1, arg2, ... ) :
  • 따로 @override 같은거 할 필요 없이 부모클래스의 메소드를 그대로 가져와서 구현만 새로 해주면 된다