菜鸡学Swift3.0 15.2 协议 在代理模式中的使用、协议方法的可选性

import UIKit
// 协议在代理模式中的使用
protocol BuyDelegate: class {
func buyTicket ()
}

    class Person {
        // 定义代理属性
        weak var delegate: BuyDelegate?

        func goToJS() {
        // goToJS方法使用代理模式
        delegate?.buyTicket()
    }
}

// 协议中方法是可选方法
/*
1. protocol前面加上 @objc
2. 方法前面加上 @objc optional
 */
@objc protocol TestP {
    @objc optional func test()
}

class a: TestP {
    // 这里我不想实现方法
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容