Language/Swift-Basic

Swift - 프로토콜 상속

Jessi :D 2022. 3. 2. 06:58
  • 프로토콜 자체는 자신의 인스턴스는 만들지 못한다.
  • 프로토콜을 임플리먼트하면 해당 프로토콜의 변수나, 메소드의 설정이 강제된다.
  • 프로토콜도 상속해서 사용이 가능하다.

프로토콜 선언

// 이름
protocol Naming {
	// get set 을 통해 이름을 성정하고 가져올수 있다.
	var name: String { get set }
	func getName() -> String
}

// 나이
protocol Aging {
	var age: Int { get set }
}

 

상속

이름, 나이 프로토콜을 상속하는 친구 프로토콜

protocol UserNotifiable : Naming, Aging {
	
}

 

스트럭트

친구 프로토콜을 임플레먼트하는 MyFriend 스트럭트

struct MyFriend: UserNotifiable {

	var name: String
	var age: Int
	
	func getName() -> String {
		return self.name
	}
	
}

 

결과

var myFriend = MyFriend(name: "만쥬", age: 10)
myFriend.getName() // 만쥬
myFriend.age	// 10
반응형