objective-c - iOS如何实现一个协议(protocol)的@property

标签 objective-c ios cocoa

我的理解是,协议(protocol)指定方法名称,而遵守该协议(protocol)的其他人执行这些方法。

那么协议(protocol)中声明的属性呢?实现一个属性是否意味着实现它的setter和getter?

最佳答案

Property 是一个或两个具有特定签名的方法的奇特名称,Objective-C 为其提供了一个约定,允许您使用替代点 . 语法调用它们。协议(protocol)声明之间没有区别,比如说,一对

-(int) foo;
-(void)setFoo:(int)_foo;

方法和声明读写属性的协议(protocol):

 @property (readwrite) foo;

所以你完全正确,实现一个属性意味着实现一个或两个方法,这取决于你实现的是只读、只写还是读写属性。

关于objective-c - iOS如何实现一个协议(protocol)的@property,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11746986/

相关文章:

ios - AFNetworking 发送 JSON 作为 POST 请求的参数

ios - 无法使用 SDWebImage 框架获取对图像的引用

java - 在 Objective-C 中解压 .jar 文件

iOS 7.1 更新到 Xcode 5.1 后出现错误

cocoa - 在 OSX 应用程序中显示已知 Wifi 网络列表需要钥匙串(keychain)访问

objective-c - 带有可见控件的透明 NSWindow

iphone - 检查互联网连接以及连接类型?

css - UIWebView 顶部的空间在 Firefox 或 Safari 中看不到

objective-c - 在大型 Cocoa 应用程序中放置导出/操作的最佳位置?

cocoa - Cocoa 中 .Net 数据中继器的等效项