具有相同名称的Objective-C类别

时间:2012-05-12 04:06:10

标签: objective-c objective-c-category

我有一组数据类,我想通过创建每个类独有的类别来扩展我自己的方法。

在声明类别时,每个类别是否需要具有唯一名称,或者我可以重复使用相同的名称。

实施例。假设我有一个List类和ListItem类,我想要两者都有类别。我现在正在做的是声明如下:

在List + Additions.h

@interface List (Additions) ...

在ListItem + Addtions.h中

@interface ListItem (Additions) ...

可以吗?我不知道它是否一贯有效。什么被认为是类别名称?是“Additions”,还是组合,“ListItem + Additions”。

2 个答案:

答案 0 :(得分:2)

  

可以吗?我无法判断它是否一贯有效。什么被认为是类别名称?它是" Additions"还是组合," ListItem + Additions"。

是的,没关系。

两个类别都有相同的名称:Additions,但其中一个是List类别,另一个是ListItem类别。所以名字没有冲突。即使您将两个类别声明放在同一个文件中也是如此。

答案 1 :(得分:2)

类别名称为List (Additions)ListItem (Additions)。因此,这两个类别是独立和独立的。

像“ListItem + Additions”这样的东西是定义类别的文件名的通用约定,但编译器和运行时都没有注意到它。