5-5. 일차

<16. Objektorientiertes Programm>

1. 객체 지향 프로그래밍

  • 문제를 여러 개체로 분할하여 문제를 해결하는 방법

1-1 객체란 무엇입니까?

  • 물리적으로 존재하거나 추상적으로 생각할 수 있는 것 중 고유한 속성을 가지고 있다고 확인할 수 있는 것을 말합니다.

1-2 수업이란 무엇입니까?

  • 객체 생성을 위한 청사진 같은 종류
  • 클래스는 속성(필드)과 메서드(함수)로 구성됩니다.
    • 속성: 데이터가 저장되는 위치
    • 방법: 개체의 동작에 해당하는 실행 블록입니다.

1-3 클래스와 객체

  • 건축도면이 수업이라면 실제로 지은 집은 오브제
  • 개체는 클래스로 만들어 인스턴스화되는 인스턴스입니다.
  • 객체는 실제로 메모리에 상주하는 클래스의 인스턴스입니다.
  • Python의 모든 변수와 함수는 객체로 저장됩니다.

2. 수업 만들기

class 클래스명:
  프로퍼티명1 = 값1
  프로퍼티명 2= 값2
  ...

  def 메소드명1(self, 변수1, 변수2, ...)
      메소드가 호출되면 실행할 문장
      ...

  def 메소드명2(self, 변수1, 변수2, ...)
      메소드가 호출되면 실행할 문장
      ...
  • 클래스를 통해 액세스되는 변수를 속성(필드)이라고 합니다.
  • 클래스에서 호출되는 함수를 메서드라고 합니다.
  • self는 클래스의 호출된 각 객체를 가리킵니다.




3. 생성자

  • 클래스가 인스턴스화될 때 자동으로 실행되는 첫 번째 메소드
  • __초기화__(자신)
  • 생성자는 클래스에서 처리하는 데이터를 정의하고 초기화합니다.





4. 방법의 정의

  • 메소드로서의 클래스 내의 함수,
  • 이 클래스의 객체에서만 호출할 수 있는 함수
  • 개체 속성에 대한 작업 수행
  • 개체 이름 형식으로 호출됩니다. 메서드 이름()

4-1 메소드 정의



4-2 방법 유형

  • Instance Method : 객체 형태로 호출되기 때문에 해당 메서드를 호출한 객체에서만 사용
  • 클래스 메서드: 클래스 이름으로 호출되는 메서드(메소드 선언 위에 @stacticmethod 표시)