Iphone 类中没有名称的类别';s.m文件

Iphone 类中没有名称的类别';s.m文件,iphone,objective-c,ios,Iphone,Objective C,Ios,创建这样的类别意味着什么:@interface myClass()@在同一类的.m文件中结束?此类别可能包含方法和属性,为什么不直接在类的.h文件中添加这些方法和属性呢 提前感谢您。这基本上是解决Objective-C缺少私有方法的一个方法。您将类放在其中,以对类的用户隐藏它们。他们在技术上仍然可以使用它们(尽管他们会得到警告),但如果他们不知道,他们可能不会。这基本上是解决Objective-C缺乏私有方法的一个办法。您将类放在其中,以对类的用户隐藏它们。从技术上讲,他们仍然可以使用它们(尽管

创建这样的类别意味着什么:
@interface myClass()@在同一类的
.m
文件中结束
?此类别可能包含方法和属性,为什么不直接在类的
.h
文件中添加这些方法和属性呢


提前感谢您。

这基本上是解决Objective-C缺少私有方法的一个方法。您将类放在其中,以对类的用户隐藏它们。他们在技术上仍然可以使用它们(尽管他们会得到警告),但如果他们不知道,他们可能不会。这基本上是解决Objective-C缺乏私有方法的一个办法。您将类放在其中,以对类的用户隐藏它们。从技术上讲,他们仍然可以使用它们(尽管他们会收到警告),但如果他们不知道,他们可能不会使用它们。

如果括号中没有名称,这是一个类扩展。如果您定义了一个名称,那么它就是一个类别


这样做的最常见原因是隐藏实例变量和方法。使类看起来是私有的。

如果括号中没有名称,则它是类扩展。如果您定义了一个名称,那么它就是一个类别


这样做的最常见原因是隐藏实例变量和方法。使方法看起来是私有的。

有时,当我有私有方法时,我会这样做

因为,如果方法没有在头中定义,当您在实现中调用它时,您会收到一条警告(您方法的代码在您调用的代码之上)

如下所示:
未找到实例方法'-XXX'(返回类型默认为'id')


因此,为了不引起任何警告,我在一个类别中放置了一个方法define,也许我会编写一个@interface myClass(private)。

有时候,当我有一个私有方法时,我会这样做

因为,如果方法没有在头中定义,当您在实现中调用它时,您会收到一条警告(您方法的代码在您调用的代码之上)

如下所示:
未找到实例方法'-XXX'(返回类型默认为'id')


因此,为了不发出警告,我在一个类别中放置了一个方法define,也许我会编写一个@interface myClass(private)。

为什么不为它添加一个名称呢?为什么不为它添加一个名称呢