8

我有一个类型的类结构UIViewControllerSubclass : UIViewController,其中 UIViewControllerSubclass 的唯一功能是#import UIViewController+Category.h。我在类别中添加方法的原因是我也可以制作UITableViewControllerSubclass : UITableViewController,这将#import UIViewController+Category.h也是。众所周知,不要重复自己。

现在假设 UIViewController+Category.h 具有以下结构:

@interface UIViewController(Category)
- (void) method1;
- (void) method2;
@end

创建的安全性如何UIViewControllerSubclassSubclass : UIViewControllerSubclass,它将覆盖method1?我认为这会因为 Objective-C 的消息传递而起作用,但由于某种原因,我的直觉告诉我我做错了。

4

1 回答 1

7

自从类别应用于 之后,一切都应该正常工作UIViewController,因此 的所有实例UIViewController,包括子类,都可以访问这些方法。没有什么不安全的。这就是类别的应用方式。

于 2013-08-29T14:20:45.830 回答