티스토리 뷰

iOS

Swift Final Keyword

@서비 2022. 4. 25. 22:39

 

1. 정의

 

swift 에는 final이라는 키워드를 제공하는데 override를 막는 키워드이다. 즉 해당 키워드를 작성하면, 다른 class에서 상속받지 못한다.

 

2. 이점

일반적으로 swift 에서는 상속을 고려하여 runtime에 어떤 메서드를 실행할지를 결정하는 반면에 final로 작성해두면, 컴파일 타임에 어떤 함수를 사용할지 (어디서) 결정할 수 있기 때문에 판단 과정이 생략되고 이로 인해 퍼포먼스에 이점이 있다고 할 수 있다. 참고로 만약 final로 선언하고 override를 하게 되면 컴파일 타임 에러가 발생한다.

 

 

 

참고

 

https://velog.io/@ryan-son/Swift-final-%ED%82%A4%EC%9B%8C%EB%93%9C-%EC%99%9C-%EC%82%AC%EC%9A%A9%ED%95%98%EB%8A%94%EA%B1%B8%EA%B9%8C

https://github.com/apple/swift/blob/main/docs/OptimizationTips.rst#advice-use-final-when-you-know-the-declaration-does-not-need-to-be-overridden

'iOS' 카테고리의 다른 글

Frame 과 Bounds 의 차이  (0) 2022.05.07
In-Active State  (0) 2022.04.26
Swift Retain Cycle  (0) 2022.04.25
Firebase Analytics, Analytics.logEvent -2  (0) 2022.04.21
Firebase 시작하기, FirebaseSDK, GoogleService-info.plist -1  (0) 2022.04.21
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/05   »
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
글 보관함