異種混合配列表示のカスタマイズ
非スカラーの異種混合配列に対しては、シールされたメソッドのみを呼び出すことができます。異種混合階層の一部をなすクラスをカスタマイズする場合、CustomDisplay
インターフェイスを構成するすべてのメソッドをオーバーライドし、Sealed
として宣言しなければなりません。
matlab.mixin.CustomDisplay
から継承される disp
と display
のバージョンはシールされています。しかし、これらのメソッドは、パーツ ビルダー メソッド(パーツ ビルダー メソッド) と状態ハンドラー メソッド (状態ハンドラー メソッド) のすべてを呼び出します。
CustomDisplay
インターフェイスを使用するために、異種混合階層のルート クラスでこれらのメソッドを Sealed
かつ Access = protected
として宣言できます。
特定のメソッドをオーバーライドする必要がない場合は、以下のコードで示すようにスーパークラス メソッドを呼び出します。
たとえば、以下のコードでは、getPropertyGroups
と displayScalarObject
を変更し、他のすべてでスーパークラスの実装を使用することが示されています。
classdef RootClass < matlab.mixin.CustomDisplay & matlab.mixin.Heterogeneous %... methods (Sealed, Access = protected) function header = getHeader(obj) header = getHeader@matlab.mixin.CustomDisplay(obj); end function groups = getPropertyGroups(obj) % Override of this method % ... end function footer = getFooter(obj) footer = getFooter@matlab.mixin.CustomDisplay(obj); end function displayNonScalarObject(obj) displayNonScalarObject@matlab.mixin.CustomDisplay(obj); end function displayScalarObject(obj) % Override of this method % ... end function displayEmptyObject(obj) displayEmptyObject@matlab.mixin.CustomDisplay(obj); end function displayScalarHandleToDeletedObject(obj) displayScalarHandleToDeletedObject@matlab.mixin.CustomDisplay(obj); end end end
継承された静的メソッドを Sealed
として宣言する必要はありません。