面试题答案
一键面试- @protocol定义方式:
在上述代码中,使用@protocol MyProtocol <NSObject> -(void)doSomething; @end
@protocol
关键字定义协议,协议名通常采用驼峰命名法,<NSObject>
表示该协议继承自NSObject
协议(一般都会继承,NSObject
协议提供了一些基础方法),在@protocol
和@end
之间定义协议中的方法。 - 类遵循协议并实现:
首先定义
MyClass
类:
在@interface MyClass : NSObject <MyProtocol> @end @implementation MyClass -(void)doSomething{ // 具体实现 NSLog(@"执行doSomething方法"); } @end
MyClass
类的接口部分,通过在类名后<MyProtocol>
表明该类遵循MyProtocol
协议,然后在实现部分实现MyProtocol
协议中定义的doSomething
方法。