在我的菜鸟思维和程序中,当我为类创建类别时,我会在新文件中创建它
像NSArray+Shuffle.h和.m
但我注意到,当我创建一个 ViewController 时,
我在实现中:
@interface PingusViewController ()
@end
@implementation PingusViewController
...
@end
所以我的问题是:
什么是
@interface PingusViewController ()
@end
部分?,这是用于类别的吗?或者有什么用?,如果它用于类别,为什么在这里使用它而不是在一些新文件中?
谢谢!
最佳答案
它称为类扩展。
将其视为类私有(private)声明的常规位置。
它通常在实现文件而不是头文件中声明,因为声明被视为私有(private),并且仅对类的 @implementation
可见。
类别 OTOH 是作者通常用来扩展类的公共(public)接口(interface)的接口(interface)。声明是相似的——毕竟,类扩展只是一个未命名的类别,但应用程序是不同的(按照惯例)。
关于objective-c - Objective C 关于类别的解释?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10100504/