INNENTÜREN, TUNING DESIGN TÜREN aus Slowenien.


  • Ljubljana


    0038651 - 660 - 406

  • Ptuj


    0038651 - 316 - 130
    0038631 - 688 - 777

클래스 메서드 예제

클래스 메서드 예제

개체 상태를 수정할 수 있는 경우 인스턴스 메서드는 self._class__ 특성을 통해 클래스 자체에 액세스할 수도 있습니다. 즉, 인스턴스 메서드는 클래스 상태를 수정할 수도 있습니다. 이 유형의 메서드는 self 또는 cls 매개 변수를 사용하지 않습니다 (물론 임의의 수의 다른 매개 변수를 허용하는 것은 무료입니다). 정적 메서드는 클래스의 개체를 만들지 않고 호출할 수 있는 Java의 메서드입니다. 클래스 이름 자체 또는 해당 클래스의 개체에 대 한 참조에 의해 참조 됩니다. 이러한 메서드를 호출할 때 이러한 메서드가 어떻게 동작하는지 살펴보겠습니다. 먼저 클래스의 인스턴스를 만든 다음 세 가지 다른 메서드를 호출합니다. 경우에 따라 모든 개체에 공통적인 변수를 두려고 합니다. 이 작업은 정적 수정자를 통해 수행됩니다. 해당 선언에 정적 수정자가 있는 필드를 정적 필드 또는 클래스 변수라고 합니다.

개체가 아닌 클래스와 연결됩니다. 클래스의 모든 인스턴스는 메모리의 고정된 위치에 있는 클래스 변수를 공유합니다. 모든 개체는 클래스 변수의 값을 변경할 수 있지만 클래스 변수는 클래스의 인스턴스를 만들지 않고 조작할 수도 있습니다. 위의 mean() 메서드는 동일한 클래스 내에서 호출되는 한 static으로 선언되지 않은 경우에도 잘 작동합니다. 클래스 외부에서 호출되고 static으로 선언되지 않은 경우 개체로 정규화해야 합니다. 클래스 내에서 사용되는 경우에도 메서드를 정적으로 정의해야 하는 좋은 이유가 있습니다. 이와 같은 기술을 사용하면 클래스 아키텍처의 일부에 대해 명확하게 통신할 수 있으므로 이러한 설정된 경계 내에서 새로운 개발 작업이 자연스럽게 수행되도록 유도할 수 있습니다. 물론 이러한 제한을 무시하기가 쉬울 것입니다. 그러나 실제로 그들은 종종 원래의 디자인에 대한 가는 우발적 인 수정을 방지하는 데 도움이됩니다. 클래스 내에서 정의된 변수는 클래스의 각 인스턴스(즉, 클래스의 각 개체)에 이러한 변수의 고유한 복사본을 포함하기 때문에 인스턴스 변수라고 합니다. 따라서 한 개체에 대한 데이터는 다른 개체의 데이터와 분리되고 고유합니다.

인스턴스 변수는 공용 또는 개인 또는 기본값으로 선언할 수 있습니다(수정자 없음). 변수의 값이 바뀌지 않도록 하려면 클래스를 비공개로 선언해야 합니다. 공용 변수에 액세스하고 클래스 외부에서 변경할 수 있습니다. 우리는 OOP 개념 튜토리얼에서 더 많은 정보를 해야합니다. 구문은 다음과 같습니다. 클래스는 클래스 키워드를 사용하여 선언됩니다. 클래스 본체는 중괄호 {와 }사이에 둘러싸여 있습니다. 클래스 내에서 정의된 데이터 또는 변수를 인스턴스 변수라고 합니다. 코드는 메서드 내에 포함되어 있습니다. 클래스 내에서 정의된 메서드와 변수를 클래스의 멤버라고 합니다. 메서드를 정적 메서드로 플래그지정하는 것은 메서드가 클래스 또는 인스턴스 상태를 수정하지 않는다는 힌트가 아닙니다.

circle_area() 메서드는 클래스의 나머지 부분과 완전히 독립적이기 때문에 테스트하기가 훨씬 쉽습니다. 이 섹션에서는 정적 키워드를 사용하여 클래스의 인스턴스가 아닌 클래스에 속하는 필드와 메서드를 만드는 방법에 대해 설명합니다. 위의 예에서 circle_area()는 클래스 또는 클래스 인스턴스를 어떤 식으로든 수정할 수 없습니다. (물론 전역 변수를 사용하면 항상 이 작업을 해결할 수 있지만 여기서는 문제가 되지 않습니다.) 그런데 인스턴스 메서드는 self._class__ 특성을 통해 클래스 자체에 액세스할 수도 있습니다. 이렇게 하면 인스턴스 메서드가 액세스 제한 측면에서 강력해지며 개체 인스턴스와 클래스 자체의 상태를 수정할 수 있습니다. 6) 그런 다음, 당신이 지금 알고있는 main() 메서드로 이동하면 프로그램을 실행하는 기본 제공 Java 메서드입니다 (main 내부의 모든 코드가 실행됩니다). myCar라는 자동차 개체를 만듭니다. myCar 개체에서 fullThrottle() 및 speed() 메서드를 호출하고 프로그램을 실행합니다: 파이썬은 클래스당 __init___ 메서드 하나만 허용합니다.