Open vs Public access control - kirseia/study GitHub Wiki

open vs public

  • 사실 라이브러리를 만들지 않으면 신경쓰지 않았던 접근 제어 키워드인데 최근 회사에서 라이브러리를 만드느라 다시 한번 확인
공통점
  • 둘다 프레임워크를 배포 할 때 사용하는 쪽에서 접근 가능하게 해주는 접근자이다.
차이점
//module 1
public func A(){}
open func B(){}
//module 2
override func A(){} // error
override func B(){} // success

별 다른 설명 필요없이 위 예제 하나면 설명이 될 듯, public 은 override가 불가하고, open 은 override 가 가능하다.

Ref.