swift-可选协议

可选协议也称唯类协议,就是只能被类实现,不能被结构、枚举实现,可选意思是:可实现或不实现,例子:

//可选协议- 一定是唯类协议

@objc protocol MyProtocol

{

    //可选属性

     @objc optional var status : String{get}

    //可选方法

     @objc optional func increment(val:Int)

    //可选下标

     @objc optional subscript(idx:Int)->Int{get}

}

//定义空类不实现任何属性和方法,编译正确。

class EmptyClass : MyProtocol{

    

}