Stacking Fire
Swift 12. 접근제어 본문
Objective-C에서는 은닉화가 아예 파일 구조로 분리가 되어 있었고, 필요할 때 필요한 파일만을 연결해서 사용했습니다. 그런데 Swift에서는 파일 구분이 사라졌고 게다가 한 프로젝트 전체가 하나의 네임스페이스가 됩니다. 이에 따라, Swift 은닉화는 의미에 따라 자연스럽게 되는 것이 아니라 일부러 해주어야 하는 구조가 된 겁니다.
접근 제어는 사실 문법이 너무 쉬운지라 그냥 그런가보다 하고 지나가지만, 제대로 판단해서 넣어주지 않으면 Objective-C보다 더 정리가 안 된 코드가 되고 맙니다.
접근 수준
open
:class
에서만 사용됨. 모듈 밖에서도 상속이 가능... 즉 상속이 가능한 클래스에서만.public
: 모듈 외부에서 접근이 가능. 상속은 불가능!intrenal
: 모듈 내부. 기본값.fileprivate
: 해당 파일 내에서만.private
: 비공개.
규칙
- 상위요소보다 하위 요소가 더 넓은 접근수준을 지닐 수 없음! 경고나 오류가 발생하지는 않지만 효력이 없음.
'개발 > Objective-C -> Swift' 카테고리의 다른 글
Swift 14. 옵셔널 체이닝, 그리고 빠른 종료 (0) | 2017.08.10 |
---|---|
Swift 13. 클로저 (0) | 2017.07.12 |
Swift 11. 이니셜라이저 (0) | 2017.07.03 |
Swift 10. 메서드 (0) | 2017.07.01 |
Swift 9. 프로퍼티 (0) | 2017.06.27 |
Comments