Main Content

이 번역 페이지는 최신 내용을 담고 있지 않습니다. 최신 내용을 영문으로 보려면 여기를 클릭하십시오.

속성 구문

속성 정의 블록

다음 그림은 일반적인 속성 사양을 보여줍니다. propertiesend 키워드는 동일한 특성 설정을 갖는 속성을 정의하는 코드 블록을 기술합니다.

참고

속성의 이름은 클래스의 이름과 동일할 수 없습니다.

예제는 간단한 클래스 생성하기 항목을 참조하십시오.

디폴트 값 할당하기

위의 예제는 디폴트 값 [0 0 1]을 갖는 것으로 지정된 Coefficients 속성을 보여줍니다.

MATLAB® 표현식을 사용하여 속성값을 초기화할 수 있습니다. 그러나 이러한 표현식은 클래스 정적 메서드를 호출하는 경우를 제외하고는 사용자가 어떤 방식으로든 정의하는 클래스를 참조할 수 없습니다.MATLAB은 클래스를 초기화할 때만 초기 속성값을 생성하는 표현식을 실행합니다. 이는 처음으로 클래스를 사용하기 직전에 수행됩니다. MATLAB이 디폴트 값 표현식을 실행하는 방법에 대한 자세한 내용은 속성의 디폴트 값 항목을 참조하십시오.

라인당 하나의 속성 정의하기

속성 이름은 각각 별도의 라인에 나열되어야 합니다. MATLAB은 속성 이름 다음에 오는 이름을 클래스 이름으로 해석합니다.

속성값 제한하기

클래스와 속성 정의의 속성을 연결하여 속성값을 제한할 수 있습니다. 예를 들어, MyData를 정의하려면 이 속성에 할당된 값이 int32형이거나 int32형과 호환되는 유형이어야 합니다.

properties
   MyData int32
end

자세한 내용은 속성값 유효성 검사 항목을 참조하십시오.

속성값 액세스

속성 액세스 구문은 MATLAB 구조체 필드 구문과 비슷합니다. 예를 들어, obj가 클래스의 객체인 경우 속성 이름을 참조하여 속성의 값을 가져올 수 있습니다.

val = obj.PropertyName

등호의 왼쪽에 속성 참조를 배치하여 속성에 값을 할당합니다.

obj.PropertyName = val

속성에 액세스하면 MATLAB은 속성 set 액세스 메서드 또는 get 엑세스 메서드를 실행하고 활성화된 속성 이벤트를 트리거합니다.

속성 상속

한 클래스에서 다른 클래스를 파생시키면 파생된(서브클래스) 클래스가 슈퍼클래스의 모든 속성을 상속합니다. 일반적으로, 서브클래스는 특정 클래스에 고유한 속성만 정의합니다. 슈퍼클래스는 2개 이상의 서브클래스에서 사용되는 속성을 정의합니다.

속성 특성 지정하기

properties 키워드로 지정된 특성은 해당 블록에서 뒤에 나오는 모든 속성 정의에 적용됩니다. 특정 속성에만 특성 설정을 적용하려면 다시 properties 키워드를 사용하여 그 속성에 대한 속성 블록을 하나 더 만드십시오.

예를 들어, 다음 코드에서는 SetAccess 특성이 IndependentVar 속성 및 Order 속성에 대해 private으로 설정되어 있지만 Coefficients 속성에 대해서는 설정되어 있지 않음을 보여줍니다.

특정 클래스의 속성에 대한 자세한 내용은 properties 함수를 사용하십시오.

관련 항목