MST

星途 面试题库

面试题:Objective-C中@protocol的基本使用

请简述Objective-C中@protocol的定义方式,以及如何在类中遵循一个协议。假设有一个协议`MyProtocol`,其中定义了一个方法`-(void)doSomething;`,请展示如何在一个`MyClass`类中遵循并实现这个协议。
29.3万 热度难度
编程语言Objective-C

知识考点

AI 面试

面试题答案

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