특정 클래스와 관련없는 함수(메서드)들의 선언 집합
함수(메서드) 정의는 없음
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()
'Swift' 카테고리의 다른 글
Swift 정리 : Type Property (0) | 2022.11.01 |
---|---|
Swift 정리 : extension(익스텐션) (0) | 2022.11.01 |
Swift 정리 : override : 부모와 자식에 같은 메서드가 있으면 자식 우선 (0) | 2022.11.01 |
Swift 정리 : 스위프트 상속 (0) | 2022.11.01 |
Swift 정리 : method overloading : 생성자 중첩 (0) | 2022.11.01 |