Main Content

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

matlab.mixin.Heterogeneous.getDefaultScalarElement

クラス: matlab.mixin.Heterogeneous
パッケージ: matlab.mixin

異種混合配列演算に対する既定のオブジェクトを返す

構文

defaultObject = getDefaultScalarElement

説明

defaultObject = getDefaultScalarElement は、異種混合階層の既定のオブジェクトを返します。ルート クラスが抽象である場合、または異種混合階層のクラスでルート クラスが適切な既定のオブジェクトではない場合は、このメソッドをオーバーライドします。getDefaultScalarElement は、異種混合階層の他のメンバーのインスタンスを返さなければなりません。

matlab.mixin.Heterogeneous クラスから継承された getDefaultScalarElement の実装は、ルート クラスのインスタンスを返します。ルート クラスが抽象である場合、既定のオブジェトを返すには、ルート クラスに getDefaultScalarElement を実装しなければなりません。詳細については、ルート クラスを参照してください。

MATLAB® は、既定のオブジェクトが必要な場合に getDefaultScalarElement メソッドを呼び出します。異種混合配列と既定のオブジェクトの詳細については、matlab.mixin.Heterogeneous を参照してください。

出力引数

defaultObject

異種混合配列演算に対する既定のオブジェクト

属性

Statictrue
AccessProtected
Sealedtrue は必要ありません

メソッドの属性の詳細については、メソッドの属性を参照してください。

この例では、抽象クラスであるために既定のオブジェクトに使用できないルート クラス (FinancialObjects) をもつ異種混合階層について説明します。FinancialObjects クラス定義には、既定のオブジェクトとして Assets クラスのインスタンスを返す getDefaultScalarElement メソッドのオーバーライドが含まれます。

ルート クラスは、matlab.mixin.Heterogeneous クラスで定義されている getDefaultScalarElement メソッドをオーバーライドして、Assets オブジェクトを既定のオブジェクトとして返すことができます。

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 によって返された値がスカラーでないか、階層の有効なメンバーであるクラスのインスタンスでない場合、エラーを返します。