二 Cocoa编程Protocol and Message用法

二 Cocoa编程Protocol and Message用法

1.protocol用法

    protocol顾名思义,就是联系两个东西的桥梁。翻译成中文就叫协议,protocol在实际编程中应用的比较少,但是cocoa的API中却大量用到了它。例如:cocoa编程中,如果你在UI上使用了Table View控件,最常用的一个方法numberOfRowsInTableView。它返回将要在Table View上显示条目的个数,但是这个Cocoa的API怎么使用哪?程序员直接调用么?显然不是,因为apple工程师写这个方法的时候,他们怎么知道程序员将来要在Table View上显示几行啊!那么下面我们就拿这个例子分析protocol到底是怎么工作的。

   numberOfRowsInTableView这个方法虽然是cocoa提供的,但是它要由程序员实现。其实这个方法就相当于java中的接口,在c++中一般用纯虚函数定义这种方法。这样程序员就可以根据实际情况改变函数的实现方法。虽说思想相同,但是cocoa实现的这种方法和java,c++却大不一样。下面就拿java的实现和此方法对比吧,首先如果java定义一个接口,那么如果想用这个接口,程序员的类就必须继承这个接口。这样接口中的方法也就必须全部实现,相当于方法都暴露给程序员了。而cocoa实现的原理是定义一个协议NSTableViewDelegetProtocol,在这个协议中定义

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值