exponenta event banner

Настройка отображения для разнородных массивов

Можно вызывать только запечатанные методы в нескалярных гетерогенных массивах. Если требуется настроить классы, являющиеся частью разнородной иерархии, необходимо переопределить и объявить как Sealed все методы, которые являются частью CustomDisplay интерфейс.

Версии disp и display которые наследуются от matlab.mixin.CustomDisplay герметизируют. Однако эти методы вызывают всего строителя части (Методы Строителя Части) и указывают методы укладчика (государственные Методы Укладчика).

Для использования 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.

Связанные темы