ドキュメンテーション

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

meta.property

MATLAB クラスのプロパティの記述

説明

meta.property クラスは、MATLAB® のクラス プロパティについての情報を提供します。meta.property クラスの読み込み/書き込みプロパティは、プロパティ属性に相当し、クラス定義内からのみ設定されます。

meta.property オブジェクトの読み取り専用プロパティをクエリして、クラスによって構文的に指定された情報を取得することができます (プロパティの set アクセス メソッドの関数ハンドルを取得するなど)。

meta.property オブジェクトを直接インスタンス化することはできません。meta.property オブジェクトを meta.class PropertyList プロパティから取得します。このプロパティには、meta.property オブジェクトの配列が含まれます。各クラス プロパティに対して 1 つのオブジェクトが対応します。たとえば、ClassName をクエリするプロパティのクラスの名前に置き換えます。

mco = ?ClassName;
plist = mco.PropertyList;
plist(1).Name; % name of first property

関数 metaclass を使用して、クラス インスタンスから meta.class オブジェクトを取得します。

mco = metaclass(obj);

プロパティ

プロパティ目的
Name 読み取り専用

プロパティの名前です。

Description 読み取り専用

現在使用されていません。

DetailedDescription 読み取り専用

現在使用されていません。

AbortSet 属性、既定の設定 = false

true であり、このプロパティがハンドル クラスに属する場合、新しい値が現在値と同じであると MATLAB はプロパティ値を設定しません。この設定は、プロパティの PreSet イベントと PostSet イベントのトリガーを妨げます。

プロパティ値変更のリスニングを参照してください。

Abstract 属性、既定の設定 = falsetrue である場合、このプロパティは実装されません。ただし、具象サブクラスは、Abstracttrue に設定せずにこのプロパティを再定義しなければなりません。
  • Abstract プロパティは、set access または get アクセス メソッドを定義できません。プロパティ アクセス メソッドを参照してください。

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

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

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

GetAccess 属性、既定の設定 = public

public – アクセス制限なし

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

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

このプロパティにアクセスできるクラスのリストを表示します。次の形式で meta.class オブジェクトとしてクラスを指定します。

  • 単一の meta.class オブジェクト

  • meta.class オブジェクトの cell 配列。空の cell 配列 {}private アクセスと同じです。

クラス メンバーのアクセスを参照してください。

SetAccess 属性、既定の設定 = public

public – アクセス制限なし

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

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

immutable — プロパティはコンストラクター内でのみ設定できます。

可変プロパティと不変プロパティを参照してください。

このプロパティへの設定アクセスをもつクラスをリストします。次の形式で meta.class オブジェクトとしてクラスを指定します。

  • 単一の meta.class オブジェクト

  • meta.class オブジェクトの cell 配列。空の cell 配列 {}private アクセスと同じです。

クラス メンバーのアクセスを参照してください。

Access

public – アクセス制限なし

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

private - クラス メンバーからのアクセスのみ (サブクラスからは不可)

このプロパティに get および set アクセスのあるクラスのリスト。次の形式で meta.class オブジェクトとしてクラスを指定します。

  • 単一の meta.class オブジェクト

  • meta.class オブジェクトの cell 配列。空の cell 配列 {}private アクセスと同じです。

SetAccessGetAccess が同じ値をもつように設定するには、Access を使用します。SetAccessGetAccess の値を直接クエリする (Access ではない)。

Constant 属性、既定の設定 = false

クラスのすべてのインスタンスで、このプロパティの値を 1 つのみにする場合は、true に設定します。

  • サブクラスは constant プロパティを継承はしますが、変更はできません。

  • Constant プロパティは、次の値になることはできません。 Dependent

  • SetAccess は無視されます。

定数値をもつクラス プロパティの定義を参照してください。

DefaultValue

プロパティの既定値 (クラス定義で指定された場合)。HasDefault プロパティも参照してください。抽象、依存、および動的プロパティは、既定値を定義できません。

DefiningClassこのプロパティを定義するクラスを表す meta.class オブジェクト。
Dependent 属性、既定の設定 = false

false の場合、プロパティ値はオブジェクトに保存されます。true の場合、プロパティ値はオブジェクトに保存されません。関数 set と get は、プロパティ名を使用してオブジェクトにインデックス付けする方法では、プロパティにアクセスできません。

プロパティの get メソッドを参照してください。

Transient 属性、既定の設定 = false

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

GetMethod 読み取り専用 このプロパティに関連付けられた get メソッドの関数ハンドル。指定された get メソッドがなければ、空です。プロパティの get メソッドを参照してください。
GetObservable 属性、既定の設定 = falsetrue に設定されており、かつハンドル クラス プロパティである場合、このプロパティにアクセスするためのリスナーを作成できます。このリスナーは、プロパティ値がクエリされるたびに呼び出されます。プロパティの設定とクエリのイベントを参照してください。
HasDefault

プロパティには、プロパティが既定値を定義しているかどうかを示すブール値が格納されます。MATLAB:class:NoDefaultDefined エラーを避けるために、DefaultValue プロパティをクエリする前に HasDefault をテストしてください。

Hidden 属性、既定の設定 = falseプロパティがプロパティ リスト (たとえば、プロパティ インスペクター、properties の呼び出しなど) に表示するかどうかを指定します。

NonCopyable 属性、既定の設定 = false

オブジェクトをコピーするときにプロパティ値をコピーするかどうかを指定します。

詳細については、コピーのプロパティの排除を参照してください。

SetMethod 読み取り専用このプロパティに関連付けられた set メソッドの関数ハンドル。指定された set メソッドがなければ、空です。プロパティ の set メソッドを参照してください。
SetObservable 属性、既定の設定 = falsetrue に設定されており、かつハンドル クラス プロパティである場合、このプロパティにアクセスするためのリスナーを作成できます。このリスナーは、プロパティ値が変更される場合に呼び出されます。プロパティの設定とクエリのイベントを参照してください。
Validationこのプロパティで定義される検証を記述する meta.Validation オブジェクト。

イベント

プロパティ イベントの使用の詳細は、プロパティ値変更のリスニングを参照してください。

イベント名目的
PreGetイベントは、プロパティがクエリされる直前に発生します。
PostGetイベントは、プロパティがクエリされた直後に発生します。
PreSetイベントは、このプロパティが変更される直前に発生します。
PostSetイベントは、このプロパティが変更された直後に発生します。

R2008a で導入