协议protocol

类似 java中的接口,用来实现多种不同方式的多态

import Foundation

protocol baseClass {

    

}

protocol Action {

    var myName:String{

    get set

    }

    

    var myAge:Int{

        get

    }

    

    func getMyname()->String

}

protocol child{

    func getMyAge()->Int

}

class Inuse:Action,baseClass{

    var m_name:String=""

    var myName:String{

        get{

            return "111"

        }

        set{

            m_name=newValue

        }

    }

    var myAge:Int{

        get{

            return 30

        }

    }

    

    func getMyname() -> String {

        return "my name"

    }

}

var sundy:Action=Inuse()

func hello(s:protocol<Action,child>){

    

}

原文地址:https://www.cnblogs.com/daochong/p/4836418.html