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

Classdef ブロック

属性とスーパークラスの指定方法

classdef ブロックは、クラス定義を含みます。classdef 行では、以下を指定します。

  • クラスの属性

  • スーパークラス

classdef ブロックは、propertiesmethodsevents サブブロックを含みます。

クラス属性の構文

クラスの属性は、クラスの動作を何らかの方法で変更します。クラス属性の既定値を変更するときに限り、クラス属性に値を割り当てます。

既定の属性値に変更はありません。

classdef ClassName
   ...
end

1 つまたは複数の属性値が割り当てられます。

classdef (attribute1 = value,...)
   ...
end

たとえば、次の TextString クラスでは、サブクラスの派生には使用できないことが指定されています。

classdef TextString (Sealed)
   ...
end

属性の一覧と、属性が制御する動作の説明は、クラスの属性を参照してください。

スーパークラスの構文

classdef 行でスーパークラスを指定することにより、1 つ以上の他のクラスからクラスを派生させます。

classdef ClassName < SuperclassName
   ...
end

たとえば、LinkedList クラスは Array および handle というクラスを継承しています。

classdef LinkedList < Array & handle
   ...
end

クラス ファイル内のローカル関数

1 つのファイルで定義できるクラスは 1 つのみです。ただし、classdef ブロックを含むファイルにローカル関数を追加できます。ローカル関数は、スコープが classdef ファイルで、プライベート クラス メンバーと保護されたクラス メンバーにアクセスできます。

classdef ClassName
   ...
end
function localFunction
   ...
end

関連するトピック