final
로 선언하면 재정의(override) 하는 것을 막을 수 있습니다.
서브클래스에서 특정 메소드, 프로퍼티, 서브스크립트가 오버라이드 하는 것을 방지하려면 final
키워드를 사용합니다. (final func
, final class func
, final subscript
등)
만일 final
로 선언된 메소드, 프로퍼티, 서브스크립트를 오버라이드 하려고 하면 컴파일 시간(compile-time)에 에러가 발생합니다.
클래스 전체를 final
로 선언해서 클래스 안의 모든 메소드, 프로퍼티 등이 override가 되는 것을 막을 수 있습니다. (final class
)
관련 강좌 : 상속