더북(TheBook)

5000원을 가진 greg 객체와 2000원을 가진 john 객체를 만듭니다(#5). 그런 다음 gregjohn에게 자신이 가진 돈 2000원을 give_money() 함수를 통해 줍니다(#6). 돈을 주기 전과 후에 각 객체의 show() 함수를 호출해 보면 greg의 돈이 2000원 줄었고 john의 돈이 2000원 늘었다는 것을 알 수 있습니다.

give_money() 함수를 호출할 때(#6) 혹은 show() 함수를 호출할 때 함수에 전달된 첫 번째 인자가 함수를 호출한 객체 자신이라는 점도 주의 깊게 봐야 합니다. 이 부분을 잘 이해하면 클래스를 작성할 때마다 보이는 self의 의미를 알 수 있습니다.

class 키워드를 사용하지 않고 클래스와 비슷하게 객체 지향 프로그래밍을 구현한 이유는 함수 정의가 제각각 떨어져 있고 직관적이지 않은 코드를 작성해 보면서 클래스의 필요성을 느끼기 위해서입니다. 이어서 클래스를 이용해 객체를 만들어 보면서 인스턴스, 멤버, 메서드, 속성의 개념을 알아보겠습니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.