파이썬 클래스 예제

변수에 클래스를 할당할 수 있습니다. 이를 개체 인스턴스화라고 합니다. 그런 다음 점을 사용하여 클래스 내부에 있는 특성에 액세스할 수 있습니다. 연산자. 예를 들어 뱀 예제에서는 뱀 클래스의 특성 이름에 액세스할 수 있습니다. 클래스는 프로그램에 필요한 것을 정확하게 모델링하는 데 필요한 특성과 동작을 정의하는 코드 본문입니다. 로켓 선이나 기타 현과 같은 실제 환경에서 무언가를 모델링하거나 게임에서 로켓이나 게임 엔진에 대한 물리적 법칙 세트와 같은 가상 세계에서 무언가를 모델링할 수 있습니다. 파생 된 클래스 정의의 실행은 기본 클래스와 동일하게 진행됩니다. 클래스 개체가 생성되면 기본 클래스가 기억됩니다. 이는 특성 참조를 해결하는 데 사용됩니다: 요청된 특성이 클래스에서 찾을 수 없는 경우 검색은 기본 클래스에서 보기 로 진행됩니다. 이 규칙은 기본 클래스 자체가 다른 클래스에서 파생된 경우 재귀적으로 적용됩니다.

상속은 개체 지향 프로그래밍의 강력한 기능입니다. 지금까지 클래스에 대해 보았던 것을 사용하여 높은 정확도로 놀라운 다양한 현실 세계 및 가상 현상을 모델링 할 수 있습니다. 작성하는 코드는 다양한 응용 프로그램에서 안정적이고 재사용 가능할 수 있습니다. 반려견의 인스턴스를 포함하는 애완동물 클래스를 만드십시오. 이 클래스는 Dog 클래스와 완전히 분리되어 있습니다. 즉, Dog 클래스는 Pets 클래스에서 상속되지 않습니다. 그런 다음 Pets 클래스의 인스턴스에 세 개의 개 인스턴스를 할당합니다. 아래 코드로 시작합니다. 파일을 pets_class.py로 저장합니다. 다음, Pets 클래스에서 메서드를 호출할 때 Pets 클래스에 할당된 각 개 인스턴스가 걷기 되도록 애완 동물 및 개 클래스 모두에 walk() 메서드를 추가 합니다.

dog_walking.py로 저장합니다. 이것은 약간 더 어렵습니다. 예를 들어 여러 가지 동물을 추적하고 싶다고 가정해 보겠습니다. 목록을 사용하는 경우 첫 번째 요소는 동물의 이름이 될 수 있지만 두 번째 요소는 나이를 나타낼 수 있습니다. 동작은 클래스 내에서 정의된 작업입니다. 이러한 메서드는 클래스에 대해 정의된 함수로 구성됩니다. 생성자 메서드가 자동으로 초기화되므로 명시적으로 호출할 필요가 없으며 클래스의 새 인스턴스를 만들 때 클래스 이름 다음에 괄호 안에 인수를 전달할 때만 전달됩니다. 클래스는 파이썬의 핵심입니다. 그들은 우리에게 많은 힘을 제공하지만이 힘을 오용하는 것은 정말 쉽습니다. 이 섹션에서는 파이썬의 클래스와 관련된 몇 가지 모호한 트릭과 주의 사항을 공유합니다.

가자! 종종 메서드의 첫 번째 인수를 self라고 합니다. 이것은 규칙에 지나지 않습니다 : 이름 self는 파이썬에 특별한 의미가 없습니다. 그러나 규칙을 따르지 않으면 코드가 다른 Python 프로그래머에게 덜 읽을 수 있으며 이러한 규칙에 의존하는 클래스 브라우저 프로그램이 작성될 수도 있습니다.