matlab.mixin.Heterogeneous.getDefaultScalarElement
クラス: matlab.mixin.Heterogeneous
名前空間: matlab.mixin
異種混合配列演算に対する既定のオブジェクトを返す
構文
defaultObject = getDefaultScalarElement
説明
は、異種混合階層の既定のオブジェクトを返します。defaultObject = getDefaultScalarElementmatlab.mixin.Heterogeneous クラスから継承された getDefaultScalarElement の実装は、"ルート クラス" のインスタンスを返します。ルート クラスは、異種混合階層内の matlab.mixin.Heterogeneous の直接サブクラスです。
ルート クラスが抽象である場合、または異種混合階層のクラスでルート クラスが適切な既定のオブジェクトではない場合、既定のオブジェクトを返すには、ルート クラスで getDefaultScalarElement をオーバーライドする必要があります。getDefaultScalarElement は、異種混合階層の他のメンバーのスカラー インスタンスを返さなければなりません。
MATLAB® は getDefaultScalarElement メソッドを呼び出して異種混合配列のギャップを埋めます。詳細については、既定のオブジェクトの定義を参照してください。
出力引数
例
この例では、抽象クラスであるために既定のオブジェクトに使用できないルート クラス (FinancialObjects) をもつ異種混合階層について説明します。

FinancialObjects クラス定義には、既定のオブジェクトとして Assets クラスのインスタンスを返す getDefaultScalarElement メソッドのオーバーライドが含まれます。
classdef FinancialObjects < matlab.mixin.Heterogeneous methods (Abstract) val = determineCurrentValue(obj) end methods (Static,Sealed,Access=protected) function default_object = getDefaultScalarElement default_object = Assets; end end end
ヒント
ルート クラスが既定のオブジェクトとして適切でない場合にのみ、
getDefaultScalarElementをオーバーライドします。異種混合階層のルート クラスでのみ、
getDefaultScalarElementをオーバーライドします。getDefaultScalarElementはスカラー オブジェクトを返さなければなりません。getDefaultScalarElementはアクセスが保護されている静的メソッドでなければなりません。MATLAB では必要ありませんが、このメソッドをシールして他のクラスによるオーバーライドを防ぐことができます。MATLAB は、
getDefaultScalarElementによって返された値がスカラーでないか、階層の有効なメンバーであるクラスのインスタンスでない場合、エラーを返します。
バージョン履歴
R2011b で導入