「Swift5」プロトコルを複数定義して利用するサンプル
環境
Swift version 5.2.3 (swift-5.2.3-RELEASE)
Target: x86_64-unknown-linux-gnu
書式
protocol プロトコル名1 { func 関数名A() func 関数名B(引数:データの型) } protocol プロトコル名2 { func 関数名C() } class クラス名: プロトコル名1,プロトコル名2 { func 関数A(){処理コード} func 関数B(引数:データの型){処理コード} func 関数名C() {処理コード} }
使用例
//プロトコルInterAの定義 protocol InterA { func funA() func funB(username: String) } //プロトコルInterBの定義 protocol InterB { func funC() } //プロトコルを実装 class InterAA: InterA, InterB { //メソッドfunAを実装 func funA () { print("メソッドfunAを呼び出す--東京") } //メソッドfunBを実装 func funB(username: String) { print("メソッドfunBを呼び出す--"+username) } //メソッドfunCを実装 func funC() { print("メソッドfunCを呼び出す---tokyo") } } //InterAAのインスタンス生成 let cft = InterAA() //funAを呼び出します cft.funA() //funBを呼び出します cft.funB(username: "山田 二郎") //funCを呼び出します cft.funC()
実行結果
$ swift 27.swift
メソッドfunAを呼び出す–東京
メソッドfunBを呼び出す–山田 二郎
メソッドfunCを呼び出す—tokyo