Main Content

このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。

meta.DynamicProperty クラス

パッケージ: meta
スーパークラス: meta.property

MATLAB オブジェクトの動的プロパティの記述

説明

meta.DynamicProperty クラスには、MATLAB® クラスのインスタンスに追加された動的プロパティについての記述的な情報が含まれています。クラス インスタンスに動的プロパティを追加するには、クラスは dynamicprops クラスのサブクラスでなければなりません。meta.DynamicProperty クラスのプロパティは、プロパティ属性に相当します。動的プロパティは、classdef ブロックでは定義されませんが、meta.DynamicProperty オブジェクトのプロパティを設定して属性を設定することができます。

dynamicprops クラスの addprop メソッドを使用して、動的プロパティをオブジェクトに追加します。addprop メソッドは、meta.DynamicProperty インスタンスを返します。このインスタンスは、新しい動的プロパティを表します。meta.DynamicProperty オブジェクトのプロパティを変更して、動的プロパティの属性を設定したり、set アクセス メソッドと get access メソッドを追加したりすることができます。通常のプロパティでは、これらは classdef ファイルで定義されるものです。

動的プロパティを削除するには、meta.DynamicProperty オブジェクト上で delete ハンドル クラス メソッドを呼び出します。

詳細については、動的プロパティ — インスタンスへのプロパティの追加を参照してください。

meta.DynamicProperty クラスは handle クラスです。

クラスの属性

抽象型
true
Sealed
true

クラス属性の詳細については、クラスの属性を参照してください。

作成

meta.DynamicProperty クラスをインスタンス化することはできません。addprop メソッドは、オブジェクトに動的プロパティを追加すると meta.DynamicProperty を返します。既に動的プロパティをもっているオブジェクトの場合は、findprop を使用して meta.DynamicProperty オブジェクトを取得します。

プロパティ

すべて展開する

動的プロパティの名前。文字ベクトルとして返されます。

データ型: char

現在はコメントからのプロパティについての情報の収集は使用されていません。

データ型: char

現在はコメントからのプロパティについての情報の収集は使用されていません。

データ型: char

このプロパティをクエリできるコードの値。次のいずれかとして返されます。

public – アクセス制限なし

protected – クラスまたはサブクラスからのアクセス

private – クラス メンバーからのみアクセス

データ型: enumerated

このプロパティを設定できるコードの値。次のいずれかとして返されます。

public – アクセス制限なし

protected – クラスまたはサブクラスからのアクセス

private – クラス メンバーからのみアクセス

データ型: enumerated

false (既定値) の場合、プロパティの値はオブジェクトに保存されています。true の場合、プロパティ値はオブジェクトに保存されません。関数 set と get は、プロパティ名を使用してオブジェクトにインデックス付けする方法では、プロパティにアクセスできません。依存プロパティの値は他の何らかの値に依存しており、そのため、依存プロパティはその値を決定するにはアクセス方法を定義しなければなりません。詳細については、依存プロパティの set および get メソッドを参照してください。

データ型: logical

動的プロパティの Constant 属性の設定は許可されていません。動的プロパティを定数にすることはできません。

データ型: logical

true である場合、このプロパティは実装されません。ただし、具象サブクラスは、Abstracttrue に設定せずにこのプロパティを再定義しなければなりません。

  • Abstract プロパティは、set access または get アクセス メソッドを定義できません。プロパティ アクセス メソッドを参照してください。

  • Abstract プロパティは、初期値を定義できません。 既定値を割り当てる

  • すべてのサブクラスは、プロパティの SetAccessGetAccess 属性に、スーパークラスと同じ値を指定しなければなりません。

  • Abstract=true は、クラス属性を Sealed=false (既定) とした場合に使用します。

データ型: logical

true の場合、オブジェクトがファイルに保存されるときに、プロパティの値は保存されません。オブジェクトの保存の詳細は、オブジェクトの保存と読み込みのプロセスを参照してください。

データ型: logical

この属性は、プロパティがプロパティ インスペクターまたは関数 properties の出力などのプロパティ リストに表示されるかどうかを決定します。

データ型: logical

プロパティの get イベントをリスナーが検知できるか。logical 値として指定します。true の場合、プロパティの get イベントのリスナーを作成することができます。MATLAB は、プロパティの値がクエリされたときにはいつでもリスナーを呼び出します。プロパティの設定とクエリのイベントを参照してください。

データ型: logical

プロパティの pre set イベントおよび post set イベントをリスナーが検知できるか。logical 値として指定します。true の場合、プロパティの set イベントのリスナーを作成することができます。MATLAB は、プロパティの値が変更されたときにはいつでもリスナーを呼び出します。プロパティの設定とクエリのイベントを参照してください。

データ型: logical

値が変更されないとき set 操作を中止する。logical 値として指定します。true である場合、新しい値が現在の値と同じならば MATLAB はプロパティ値を設定しません。中止された set 操作では、プロパティの PreSet イベントおよび PostSet イベントはトリガーされません。

データ型: logical

プロパティがコピーできるか。logical 値として指定します。NonCopyable は、オブジェクトがコピーされるとき動的プロパティをコピーできるかどうかを決定します。既定では、動的プロパティはコピーされません。詳細については、コピーのプロパティの排除を参照してください。

データ型: logical

名前の部分一致の優先順位。正の整数として指定します。matlab.mixin.SetGet のサブクラスと共に使用し、set メソッドおよび get メソッドで使用されるプロパティ名の部分一致の相対的な優先順位を定義します。既定値は 1 です。値を大きくすると低い優先順位が割り当てられます。

詳細については、プロパティ名の部分一致に対する優先順位の設定を参照してください。

データ型: positive integer

プロパティの get メソッド。関数ハンドルとして返されます。関数ハンドルは、このプロパティに関連付けられた get メソッドを参照します。指定された get メソッドがなければ、値は空です。Get メソッドの構文を参照してください。

データ型: function_handle

プロパティの set メソッド。関数ハンドルとして返されます。関数ハンドルは、このプロパティに関連付けられた set メソッドを参照します。指定された set メソッドがなければ、値は空です。プロパティ の set メソッドを参照してください。

データ型: function_handle

動的プロパティの場合は常に false です。動的プロパティは、既定値を定義できません。

データ型: logical

動的プロパティでは validation はサポートされていません。

データ型: meta.Validation

動的プロパティはクラスでは定義されません。

データ型: 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.DynamicProperty オブジェクトを返す

dynamicprops addprop メソッドを使用してオブジェクトに動的プロパティを追加し、meta.DynamicProperty オブジェクトを返します。meta.DynamicPropertyHidden プロパティを設定してプロパティを非表示にします。

classdef MySimpleClass < dynamicprops
end
obj = MySimpleClass;
mdp = addprop(obj,'InstanceProp');
mdp.Hidden = true;
R2008a で導入