본문 바로가기
Swift

[Swift] 21. 프로토콜 Protocol

by CodingKwon 2021. 11. 18.

1. 프로토콜 Protocol

프로토콜은 어떤 역할을 하는 메서드, 프로퍼티, 기타 요구사항 등을 설계한 것

 

protocol 프로토콜 이름 {
    /* 정의부 */
}

 

protocol Talkable {
    
    // 프로퍼티 요구
    // 프로퍼티 요구는 항상 var 키워드를 사용합니다
    // get은 읽기만 가능해도 상관 없다는 뜻이며
    // get과 set을 모두 명시하면 
    // 읽기 쓰기 모두 가능한 프로퍼티여야 합니다
    var topic: String { get set }
    var language: String { get }
    
    // 메서드 요구
    func talk()
    
    // 이니셜라이저 요구
    init(topic: String, language: String)
}

 

 

2. 프로토콜 상속

  • 프로토콜은 하나 이상의 프로토콜을 상속받아 기존 프로토콜의 요구사항보다 더 많은 요구사항을 추가 가능
  • 프로토콜은 다중상속 가능

'Swift' 카테고리의 다른 글

[Swift] 23. 오류처리  (0) 2021.11.18
[Swift] 22. Extension  (0) 2021.11.18
[Swift] 20. assert, guard  (0) 2021.11.18
[Swift] 19. 타입캐스팅  (0) 2021.11.17
[Swift] 18. 옵셔널 체이닝, nil 병합 연산자  (0) 2021.11.15

댓글