Main Content

이 페이지의 최신 내용은 아직 번역되지 않았습니다. 최신 내용은 영문으로 볼 수 있습니다.

meta.property 클래스

패키지: meta
슈퍼클래스: meta.MetaData

MATLAB 클래스의 속성 설명

설명

meta.property 클래스는 MATLAB® 클래스의 속성에 대한 정보를 제공합니다. meta.property 클래스의 속성은 클래스 정의에 구문으로 지정된 속성 특성의 값 및 기타 정보를 포함합니다. 모든 속성은 읽기 전용입니다.

meta.property 클래스는 handle 클래스입니다.

클래스 특성

Abstract
true
ConstructOnLoad
true

클래스 특성에 대한 자세한 내용은 클래스 특성 항목을 참조하십시오.

생성

meta.property 객체는 직접 인스턴스화할 수 없습니다. meta.property 객체는 meta.class PropertyList 속성에서 가져와야 합니다. 이 속성에는 meta.property 객체로 구성된 배열이, 각 클래스 속성별로 하나씩 들어 있습니다. 예를 들어, 아래 예에서 ClassName을 속성을 쿼리하려는 클래스의 이름으로 바꿉니다.

mco = ?ClassName;
plist = mco.PropertyList;
mp = plist(1); % meta.property for first property in list

클래스 인스턴스에서 meta.class 객체를 가져오려면 metaclass 함수를 사용하십시오.

mco = metaclass(obj);

속성

모두 확장

속성 이름으로, 문자형 벡터로 반환됩니다. meta.property Name 속성은 클래스로 정의된 해당 속성의 이름에 대응됩니다.

데이터형: char

주석에서 클래스에 대한 정보를 수집하는 것으로, 현재 사용되지 않습니다.

데이터형: char

주석에서 클래스에 대한 정보를 수집하는 것으로, 현재 사용되지 않습니다.

데이터형: char

속성값을 쿼리할 수 있는 코드로, 다음 중 하나로 반환됩니다.

public - 무제한 액세스

protected – 클래스나 서브클래스에서 액세스

private – 클래스 멤버에서만 액세스

이 속성에 대한 액세스가 허용되는 클래스의 목록. 클래스를 다음 형식의 meta.class 객체로 지정하십시오.

  • 단일 meta.class 객체

  • meta.class 객체로 구성된 셀형 배열. 빈 셀형 배열 {}private 액세스와 같습니다.

자세한 내용은 클래스 멤버 액세스 항목을 참조하십시오.

예: properties (GetAccess = protected)

데이터형: enumerated | meta.class

이 속성값을 설정할 수 있는 코드로, 다음 중 하나로 반환됩니다.

public - 무제한 액세스

protected – 클래스나 서브클래스에서 액세스

private – 클래스 멤버에서만 액세스

immutable — 생성자에서만 속성을 설정할 수 있음

자세한 내용은 Mutable and Immutable Properties 항목을 참조하십시오.

이 속성에 대해 set 액세스를 갖는 클래스를 목록으로 만들 수 있습니다. 클래스를 다음 형식의 meta.class 객체로 지정하십시오.

  • 단일 meta.class 객체

  • meta.class 객체로 구성된 셀형 배열. 빈 셀형 배열 {}private 액세스와 같습니다.

클래스 멤버 액세스 항목을 참조하십시오.

예: properties (SetAccess = protected)

데이터형: enumerated | meta.class

속성값이 다른 값에 종속되는지 여부로, 논리값 true 또는 false로 반환됩니다. false(디폴트 값)인 경우, 속성값이 객체에 저장됩니다. true인 경우, 속성값이 객체에 저장되지 않으며 set 함수나 get 함수는 속성 이름을 사용하여 객체의 요소를 참조하는 방법으로 속성에 접근할 수 없습니다. 종속 속성의 값은 다른 어떤 값에 종속됩니다. 종속 속성은 액세스 메서드를 정의해야 합니다. 자세한 내용은 종속 속성에 대한 set 메서드 및 get 메서드 항목을 참조하십시오.

예: properties (Dependent = true)

데이터형: logical

속성값이 상수인지 여부로, 논리값 true 또는 false로 반환됩니다. true인 경우, 클래스의 모든 인스턴스에서 이 속성이 하나의 값을 갖습니다.

  • 서브클래스는 상수 속성을 상속하지만 변경할 수는 없습니다.

  • Constant 속성은 다음이 될 수 없음: Dependent

  • SetAccess는 무시됩니다.

상수 값으로 클래스 속성 정의하기 항목을 참조하십시오.

예: properties (Constant = true)

데이터형: logical

속성이 추상인지 여부로, 논리값 true 또는 false로 반환됩니다. true인 경우, 속성이 구현부를 갖지 않으며 클래스는 추상입니다.

  • 추상 속성은 set 액세스 메서드나 get 액세스 메서드를 정의할 수 없습니다. 속성 액세스 메서드 항목을 참조하십시오.

  • 추상 속성은 초기값을 정의할 수 없습니다. Assigning a Default Value

  • 모든 서브클래스는 SetAccess 속성 특성과 GetAccess 속성 특성에 대해 슈퍼클래스와 같은 값을 지정해야 합니다.

  • Abstract=true는 클래스 특성 Sealed=false(디폴트 값)와 함께 사용해야 합니다.

예: properties (Abstract = true)

데이터형: logical

속성이 객체와 함께 저장되는지 여부로, 논리값 true 또는 false로 반환됩니다. true인 경우, 객체가 MAT 파일에 저장될 때 속성값이 저장되지 않습니다. 객체 저장에 대한 자세한 내용은 객체에 대한 저장 및 불러오기 프로세스 항목을 참조하십시오.

예: properties (Transient = true)

데이터형: logical

속성이 속성 목록에서 숨겨졌는지 여부로, 논리값 true 또는 false로 반환됩니다. Hidden은 속성이 속성 목록(예: 속성 인스펙터, properties에 대한 호출 등)에 표시되는지 여부를 지정합니다. 숨겨진 속성은 디폴트 객체 표시에 표시되지 않습니다.

예: properties (Hidden = true)

데이터형: logical

리스너가 속성 get 이벤트를 수신할 수 있는지 여부로, 논리값 true 또는 false로 반환됩니다. true이고 이것이 핸들 클래스 속성인 경우, 속성값이 쿼리될 때 실행되는 리스너를 만들 수 있습니다. MATLAB은 속성값이 쿼리될 때마다 리스너를 호출합니다. 자세한 내용은 속성 설정 및 쿼리 이벤트 항목을 참조하십시오.

예: properties (GetObservable = true)

데이터형: logical

리스너가 속성 set 이벤트를 수신할 수 있는지 여부로, 논리값 true 또는 false로 반환됩니다. true이고 이것이 핸들 클래스 속성인 경우, 속성값이 설정될 때 실행되는 리스너를 만들 수 있습니다. MATLAB은 속성값이 수정될 때마다 리스너를 호출합니다. 자세한 내용은 속성 설정 및 쿼리 이벤트 항목을 참조하십시오.

예: properties (SetObservable = true)

데이터형: logical

값이 변경되지 않은 경우 속성을 설정할지 여부로, 논리값 true 또는 false로 반환됩니다. true인 경우, 새 값이 현재 값과 같으면 속성값 설정이 중단됩니다. 속성이 핸들 클래스에 속하는 경우, AbortSettrue로 설정하면 속성의 PreSet 이벤트와 PostSet 이벤트에 대한 트리거가 차단됩니다.

예: properties (AbortSet = true)

데이터형: logical

속성을 복사할 수 있는지 여부로, 논리값 true 또는 false로 반환됩니다. 객체가 복사될 때 속성값이 복사되도록 하려면 지정하십시오(handle 클래스만 해당). 기본적으로 핸들 객체를 복사하면 해당 객체의 구체 속성이 복사됩니다. 자세한 내용은 Exclude Properties from Copy 항목을 참조하십시오.

예: properties (NonCopyable = true)

데이터형: logical

부분 이름 일치에 대한 우선 순위로, 숫자형 값으로 반환됩니다. matlab.mixin.SetGet의 서브클래스와 함께 사용하여, setget 메서드 인수에서 사용되는 부분 속성 이름 일치의 상대 우선 순위를 정의할 수 있습니다. 디폴트 값은 1입니다. 값이 클수록 할당되는 우선 순위가 낮습니다.

자세한 내용은 부분 속성 이름 일치에 대한 우선 순위 설정하기 항목을 참조하십시오.

예: properties (PartialNatchPriority = 2)

데이터형: positive integer

속성 get 메서드로, 함수 핸들 또는 빈 값으로 반환됩니다. 이 속성에 대한 get 메서드의 함수 핸들입니다. 클래스 정의에 지정된 get 메서드가 없는 경우 이 값은 비어 있습니다. 자세한 내용은 속성 get 메서드 항목을 참조하십시오.

데이터형: function_handle

속성 set 메서드로, 함수 핸들 또는 빈 값으로 반환됩니다. 이 속성에 대한 set 메서드의 함수 핸들입니다. 클래스 정의에 지정된 set 메서드가 없는 경우 이 값은 비어 있습니다. 자세한 내용은 속성 set 메서드 항목을 참조하십시오.

데이터형: function_handle

속성이 디폴트 값을 정의하는지 여부로, 논리값 true 또는 false로 반환됩니다. true인 경우, 속성은 클래스 정의에 디폴트 값을 정의합니다. DefaultValue 속성을 쿼리하기 전에 HasDefault를 테스트하여 MATLAB:class:NoDefaultDefined 오류를 방지하십시오.

데이터형: logical

클래스 정의에 지정된 디폴트 값으로, 지정된 값으로 반환됩니다. 추상적인 동적 Dependent 속성은 디폴트 값을 지정할 수 없습니다. 디폴트 값은 해당 속성에 대해 지정된 모든 유효성 검사를 충족해야 합니다. 속성 유효성 검사에 대한 자세한 내용은 속성값 유효성 검사 항목을 참조하십시오. 클래스 정의에 디폴트 값이 없는 경우, MATLAB은 DefaultValue 속성을 표시하지 않습니다.

클래스 정의에 지정된 디폴트 값이 없는 속성의 경우, DefaultValue에 대한 액세스를 시도하면 MATLAB:class:NoDefaultDefined 오류가 발생합니다. HasDefault 속성을 사용하여 클래스가 해당 속성에 대해 디폴트 값을 정의하는지 확인하십시오.

예: Prop = 7

데이터형: any

속성에 대해 정의된 유효성 검사로, meta.Validation 객체로 반환됩니다. 이 속성은 이 속성에 의해 정의된 유효성 검사를 설명하는 meta.Validation 객체를 포함합니다. 속성이 유효성 검사를 정의하지 않은 경우, 이 속성은 빈 meta.Validation 객체를 포함합니다.

데이터형: meta.Validation

속성을 정의하는 클래스로, meta.class 객체로 반환됩니다. meta.class 객체는 이 속성을 정의하는 클래스를 나타내며, 이 클래스는 슈퍼클래스일 수 있습니다.

데이터형: meta.class

이벤트

이벤트 이름트리거이벤트 데이터이벤트 특성
PreGet속성값이 쿼리되기 직전에 이벤트가 발생함.event.PropertyEvent

NotifyAccess: private

ListenAccess: public

PostGet속성값이 쿼리된 직후에 이벤트가 발생함.event.PropertyEvent

NotifyAccess: private

ListenAccess: public

PreSet속성값이 변경되기 직전에 이벤트가 발생함.event.PropertyEvent

NotifyAccess: private

ListenAccess: public

PostSet속성값이 변경된 직후에 이벤트가 발생함.event.PropertyEvent

NotifyAccess: private

ListenAccess: public

예제

모두 축소

meta.Property 객체의 속성을 사용하여 어떤 클래스 속성이 읽기 전용인지 확인할 수 있습니다.

MyClass라는 이름의 클래스에 대한 meta.class 객체를 가져옵니다.

mc = ?MyClass;

findobj를 사용하여 meta.class PropertyList 속성에 포함된 meta.property 객체의 목록을 검색합니다. findobj에 대한 이 호출은 읽기 전용 속성의 이름을 반환합니다.

findobj(mc.PropertyList,'GetAccess','public','-AND','-NOT','SetAccess','public').Name
R2008a에 개발됨