Swiftで行こう!--Protocolで簡単、機能追加!
extensionを使うことでProtocolを便利に使うことができます。自分でも書いてみます。
protocol Animal{
var name:String{get}
var age:Int{get set}
func bark()->String
Animalでprotocolを宣言して、
extension Animal{
func bark() ->String{
return "nyaaa"
}
}
extensionします。
return "nyaaa"
を追加してやることで、bark()がすぐに使えるようになります。
試してみましょう!
struct Dog:Animal{
var name = "taro"
var age = 9
}
var dog = Dog()
dog.name
dog.age
dog.bark()
構造体StructでDogを定義してやり、var dogとしてインスタンス化して使ってみます。
dog.bark()はStructで定義していませんが
dog.name
dog.age
dog.bark()
についてplaygroundで実行すると、
"taro"
"9"
"nyaaa"
となっています。Protocolを便利に使いたいですね。
この記事が気に入ったらサポートをしてみませんか?