본문 바로가기

Swift

Swift 정리 : protocol(프로토콜)

특정 클래스와 관련없는 함수(메서드)들의 선언 집합

함수(메서드) 정의는 없음

protocol 프로토콜명{              //프로토콜 정의

   프로퍼티명

   메서드 선언 //메서드는 선언만 있음

}

protocol 프로토콜명 : 부모1프로토콜, 부모2프로토콜{

   // 프로토콜은 다중 상속도 가능

}

protocol Runnable {     //대리하고 싶은 함수 목록 작성, 정의

  var x : Int {get set} //읽기와 쓰기 가능 프로퍼티(필수적으로 있어야 )

                        //{get} 읽기 전용

  func run()                   //메서드는 선언만 있음

}

class Man : Runnable {                 //채택, adopt, 상속 부분 참고

  var x : Int = 3                      //준수, conform

  func run(){print("달린다~")}  //준수, conform 

}

let lee = Man()

lee.run()