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

meta.DynamicProperty

MATLAB 객체의 동적 속성 설명

설명

meta.DynamicProperty 클래스에는 MATLAB® 클래스의 인스턴스에 추가한 동적 속성에 대한 설명 정보가 들어 있습니다. MATLAB 클래스는 dynamicprops의 서브클래스여야 합니다. meta.DynamicProperty 클래스의 속성은 클래스 정의 내에서 지정하는 속성 특성에 대응합니다. 동적 속성은 classdef 블록에서 정의되지 않지만, meta.DynamicProperty 객체 속성을 설정하여 동적 속성 특성을 설정할 수 있습니다.

dynamicprops 클래스의 addprop 메서드를 사용하여 객체에 동적 속성을 추가합니다. addprop 메서드는 새 동적 속성을 나타내는 meta.DynamicProperty 인스턴스를 반환합니다. meta.DynamicProperty 객체의 속성을 수정하여 동적 속성의 특성을 설정하거나 set 액세스 메서드나 get 액세스 메서드를 추가할 수 있습니다. 일반 속성의 경우라면 이런 정의가 classdef에서 이루어집니다.

meta.DynamicProperty 클래스는 인스턴스화할 수 없습니다. meta.DynamicProperty 객체를 가져오려면 addprop을 사용해야 합니다. 동적 속성을 갖는 객체에 대해 meta.DynamicProperty 객체를 가져오려면 findprop를 사용하십시오.

동적 속성을 제거하려면 meta.DynamicProperty 객체에 대해 delete 핸들 클래스 메서드를 호출하십시오.

dynamicprops addprop 메서드는 meta.DynamicProperty 객체로 구성된 배열을 추가되는 각 동적 속성마다 하나씩 반환합니다.

자세한 내용은 동적 속성 — 인스턴스에 속성 추가하기 항목을 참조하십시오.

속성

속성용도
Name

속성의 이름.

Description

현재 사용되지 않음

DetailedDescription

현재 사용되지 않음

AbortSet

true이면 새 값이 현재 값과 같은 경우 MATLAB에서 속성값을 설정하지 않습니다. 이런 접근 방식은 속성의 PreSet 이벤트와 PostSet 이벤트가 트리거되는 것을 막습니다.

Abstract 특성. 디폴트 값 = falsetrue인 경우, 속성에 구현이 없지만 구체 서브클래스(Concrete Subclass)는 Abstracttrue로 설정하지 않고 이 속성을 다시 정의해야 합니다.
  • 추상 속성은 set 액세스 메서드나 get 액세스 메서드를 정의할 수 없습니다. 속성 액세스 메서드 항목을 참조하십시오.

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

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

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

Access

동적 속성의 Access 특성은 동적 속성을 포함하는 인스턴스의 클래스에 적용됩니다. 자세한 내용은 동적 속성의 특성에 액세스하기 항목을 참조하십시오.

public - 무제한 액세스

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

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

이 속성에 대해 get 액세스와 set 액세스를 갖는 클래스의 목록. 클래스를 다음 형식의 meta.class 객체로 지정하십시오.

  • 단일 meta.class 객체

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

SetAccessGetAccess가 같은 값을 가지도록 설정하려면 Access를 사용하십시오. SetAccessGetAccess(Access 아님)의 값은 직접 쿼리하십시오.

Constant 특성. 디폴트 값 = false

동적 속성의 Constant 특성은 설정이 불가합니다. 동적 속성은 Constant일 수 없습니다.

DefaultValue

동적 속성은 디폴트 값을 정의할 수 없기 때문에 이 속성을 쿼리하면 오류가 반환됩니다.

DefiningClass이 속성을 정의하는 클래스를 나타내는 meta.class 객체입니다.
GetAccess 특성. 디폴트 값 = public

public - 무제한 액세스

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

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

SetAccess 특성. 디폴트 값 = public

public - 무제한 액세스

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

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

Dependent 특성. 디폴트 값 = false

false인 경우 속성값이 객체에 저장됩니다. true인 경우, 속성값이 객체에 저장되지 않으며 set 함수나 get 함수는 속성 이름을 사용하여 객체의 요소를 참조하는 방법으로 속성에 접근할 수 없습니다.

속성 get 메서드 항목을 참조하십시오.

Transient 특성. 디폴트 값 = false

true인 경우, 객체가 파일에 저장될 때 속성값이 저장되지 않습니다. 객체 저장에 대한 자세한 내용은 객체에 대한 저장 및 불러오기 프로세스 항목을 참조하십시오.

Hidden 특성. 디폴트 값 = false속성이 속성 목록(예: 속성 인스펙터, properties 호출 등)에 표시되는지 여부를 지정합니다.

NonCopyable

디폴트 값 = false

객체가 복사될 경우 동적 속성이 복사되어야 하는지를 지정합니다. 기본적으로 동적 속성은 복사되지 않습니다.

자세한 내용은 Exclude Properties from Copy 항목을 참조하십시오.

GetObservable 특성. 디폴트 값 = falsetrue이면 이 속성에 액세스하기 위한 리스너를 만들 수 있습니다. 리스너는 속성값을 쿼리할 때마다 호출됩니다. 속성 설정 및 쿼리 이벤트 항목을 참조하십시오.
SetObservable 특성. 디폴트 값 = falsetrue이면 이 속성에 액세스하기 위한 리스너를 만들 수 있습니다. 리스너는 속성값을 수정할 때마다 호출됩니다. 속성 설정 및 쿼리 이벤트 항목을 참조하십시오.
GetMethod 이 속성에 대한 get 메서드의 함수 핸들입니다. 지정된 get 메서드가 없는 경우 비어 있습니다. get 메서드 구문 항목을 참조하십시오.
SetMethod 이 속성에 대한 set 메서드의 함수 핸들입니다. 지정된 set 메서드가 없는 경우 비어 있습니다. 속성 set 메서드 항목을 참조하십시오.
HasDefault

항상 false입니다. 동적 속성은 디폴트 값을 정의할 수 없습니다.

이벤트

속성 이벤트 사용에 대한 자세한 정보는 속성값에 대한 변경 사항 수신 대기하기 항목을 참조하십시오.

이벤트 이름용도
PreGet속성이 쿼리되기 직전에 이벤트가 발생함.
PostGet속성이 쿼리된 직후에 이벤트가 발생함
PreSet이 속성이 수정되기 직전에 이벤트가 발생함
PostSet이 속성이 수정된 직후에 이벤트가 발생함
ObjectBeingDestroyedhandle에서 상속됨