メソッド、プロパティ、サブスクリプトがオーバーライドされることを final で防ぐことができます。そうするには、メソッド、プロパティ、サブスクリプトのキーワードの前に final
を(final var
, final func
, final class func
, final subscript
のように)記述します。
サブクラスで final なメソッド、プロパティ、サブスクリプトをオーバーライドしようとすると、コンパイル時エラーとなります。エクステンションでクラスに追加するメソッド、プロパティ、サブスクリプトにも、エクステンションの定義内で final にすることができます。
クラス定義で class
キーワードの前に final
を記述 (final class
) して、クラス全体を final にすることができます。final なクラスからサブクラス化しようとすると、コンパイル時エラーとなります。
Portions of this page are translations based on work created and shared by Apple and used according to terms described in the Creative Commons Attribution 4.0 International License.