meta.method クラス
パッケージ: meta
スーパークラス: meta.MetaData
MATLAB のクラス メソッドの記述
説明
meta.method
クラスは、MATLAB® のクラス メソッドについての情報を提供します。meta.method
クラスのプロパティは、クラス定義で構文的に指定されているメソッド属性とその他の情報に対応します。プロパティはすべて読み取り専用です。
meta.method
クラスは handle
クラスです。
作成
meta.method
オブジェクトを直接インスタンス化することはできません。meta.method
オブジェクトを meta.class
オブジェクトの MethodList
プロパティから取得します。MethodList
には、meta.method
オブジェクトの配列が含まれます。各クラス メソッドに対して 1 つのオブジェクトが対応します。
たとえば次のコードでは、ClassName
を、クエリするメソッドのクラスの名前に置き換えます。
mco = ?ClassName;
mlist = mco.MethodList;
mlist(1).Name; % name of first method in the list
クラス インスタンスから meta.class
オブジェクトを取得するには、関数 metaclass
を使用します。
mco = metaclass(obj);
プロパティ
Name
— メソッド名
文字ベクトル
メソッド名。文字ベクトルとして返されます。
Description
— メソッドの簡単な説明
文字ベクトル
メソッドの簡単な説明。文字ベクトルとして返されます。ユーザー定義クラスの場合、このプロパティのテキストはメソッド定義のコード コメントから取得されます。コメントがない場合、このプロパティは空の文字ベクトルを返します。クラス メソッドのヘルプ テキストを含める方法の詳細については、カスタム ヘルプ テキストを参照してください。
DetailedDescription
— メソッドの詳細な説明
文字ベクトル
メソッドの詳細な説明。文字ベクトルとして返されます。ユーザー定義クラスの場合、このプロパティのテキストはメソッド定義のコード コメントから取得されます。コメントがない場合、このプロパティは空の文字ベクトルを返します。クラス メソッドのヘルプ テキストを含める方法の詳細については、カスタム ヘルプ テキストを参照してください。
Access
— メソッドのアクセス レベル
public
(既定値) | protected
| private
| 1 つ以上の meta.class
オブジェクト
メソッドのアクセス レベル。次のものとして指定します。
public
— アクセス制限なしprotected
— クラスまたはサブクラスのメソッドからのアクセスprivate
— (サブクラスからではなく) クラス メソッドのみによるアクセスこのメソッドへのアクセスをもつクラスのリスト。次の形式の
meta.class
オブジェクトとして指定します。単一の
meta.class
オブジェクト。meta.class
オブジェクトの cell 配列。空の cell 配列{}
はprivate
アクセスと同じです。
データ型: enumerated
| meta.class
Static
— メソッドが静的か
false
(既定値) | true
メソッドが静的か。logical true
または false
として返されます。true
の場合、メソッドはクラスのオブジェクトに依存せず、入力としてオブジェクトを必要としません。
詳細については、静的メソッドを参照してください。
Abstract
— メソッドが抽象か
false
(既定値) | true
メソッドが抽象か。logical true
または false
として返されます。true
の場合、メソッドは実装されませんが、引数を含めることができる構文行があります。サブクラスは、抽象メソッドのシグネチャに従ってメソッドを実装します。
Sealed
— メソッドがオーバーライド可能か
false
(既定値) | true
メソッドがオーバーライド可能か。logical true
または false
で返されます。true
の場合、このメソッドはサブクラス内で再定義できません。サブクラス内で同じ名前のメソッドを定義しようとすると、エラーになります。
Hidden
— メソッドが非表示か
false
(既定値) | true
メソッドが非表示か。logical true
または false
として返されます。false
の場合、methods
または methodsview
コマンドを使用して表示されるメソッドのリストにメソッドの名前が表示されます。true
に設定した場合は、メソッドの名前はこれらのリストに含まれず、コマンド ウィンドウでオブジェクトを表示する場合にも含まれません。
InputNames
— 入力引数の名前
文字ベクトル | 文字ベクトルの cell 配列
関数シグネチャで使用される入力引数の名前。文字ベクトルまたは文字ベクトルの cell 配列として返されます。
OutputName
— 出力引数の名前
文字ベクトル | 文字ベクトルの cell 配列
関数シグネチャで使用される出力引数の名前。文字ベクトルまたは文字ベクトルの cell 配列として返されます。
DefiningClass
— メソッドを定義するクラス
meta.class
オブジェクト
メソッドを定義するクラス。定義しているクラスを表す meta.class
オブジェクトとして返されます。定義しているクラスは、meta.method
オブジェクトから見ると、常に最も特定的なクラスです。したがって、サブクラスが継承されたメソッドをオーバーライドする場合、サブクラス meta.method
オブジェクトを定義しているクラスはサブクラスです。同様に、スーパークラス meta.method
オブジェクトを定義しているクラスはスーパークラスです。
例
イントロスペクションを使用したメソッドに関する情報の取得
meta.method
を使用して IntrospectionExample
クラスのクラス メソッドについての情報を取得します。
IntrospectionExample
のコード
classdef IntrospectionExample % IntrospectionExample Performs basic functions on two numbers % This class can return the sum and product of its two properties. properties % a First property % First of two numeric properties a {mustBeNumeric} = 0 % b Second property % Second of two numeric properties b {mustBeNumeric} = 0 end methods function sum = addNumbers(obj) % addNumbers Sum the properties % Finds the sum of properties a and b. sum = obj.a + obj.b; end function prod = multNumbers(obj) % multNumbers Multiply the properties % Finds the product of properties a and b. prod = obj.a*obj.b; end end end
メタクラス インスタンスの作成および検査
IntrospectionExample
のメタクラス インスタンスを作成します。mc
の MethodList
プロパティの最初のメソッドにアクセスして、meta.method
オブジェクトを取得します。
mc = ?IntrospectionExample; mc.MethodList(1)
ans = method with properties: Name: 'multNumbers' Description: 'Multiply the properties' DetailedDescription: ' Finds the product of properties a and b.' Access: 'public' Static: 0 Abstract: 0 Sealed: 0 ExplicitConversion: 0 Hidden: 0 InputNames: {'obj'} OutputNames: {'prod'} DefiningClass: [1x1 meta.class]
バージョン履歴
R2008a で導入R2022a: Description
プロパティおよび DetailedDescription
プロパティにコード コメントからのテキストが含まれる
適切に配置されたコード コメントが含まれているユーザー定義クラスでは、Description
プロパティおよび DetailedDescription
プロパティに、そのコメントから取得されたテキストが入ります。コード コメントを使用してユーザー定義クラスのカスタム ヘルプ テキストを格納する方法の詳細については、カスタム ヘルプ テキストを参照してください。
MATLAB コマンド
次の MATLAB コマンドに対応するリンクがクリックされました。
コマンドを MATLAB コマンド ウィンドウに入力して実行してください。Web ブラウザーは MATLAB コマンドをサポートしていません。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)