MST

星途 面试题库

面试题:Objective-C中类继承与NSObject根类的基础理解

在Objective-C中,简述一个自定义类继承NSObject根类的语法格式,并说明NSObject为子类提供了哪些常用的基础方法。
24.7万 热度难度
编程语言Objective-C

知识考点

AI 面试

面试题答案

一键面试

自定义类继承NSObject根类的语法格式

// 声明部分
@interface CustomClass : NSObject

// 在这里声明属性和方法
@property (nonatomic, strong) NSString *propertyName;
- (void)customMethod;

@end

// 实现部分
@implementation CustomClass

// 在这里实现方法
- (void)customMethod {
    NSLog(@"执行自定义方法");
}

@end

NSObject为子类提供的常用基础方法

  1. 初始化方法
    • init:类的默认初始化方法,用于为对象分配内存并进行基本的初始化操作。
  2. 内存管理方法
    • retain:增加对象的引用计数。
    • release:减少对象的引用计数,当引用计数为0时,对象会被释放。
    • autorelease:将对象放入自动释放池,在自动释放池销毁时,会向其中的对象发送release消息。
  3. 对象比较方法
    • isEqual::用于判断两个对象是否相等,默认情况下比较的是对象的内存地址。通常需要在子类中重写此方法来实现基于对象内容的比较。
    • hash:返回对象的哈希值,用于在哈希表等数据结构中快速查找对象。重写isEqual:方法时,通常也需要重写hash方法以保证一致性。
  4. 类与对象信息方法
    • class:返回对象所属的类。
    • superclass:返回对象所属类的父类。
    • description:返回对象的字符串描述,默认实现返回类名和内存地址。通常在调试时会重写此方法以提供更有意义的信息。
  5. 协议相关方法
    • conformsToProtocol::判断对象是否遵循某个协议。
    • respondsToSelector::判断对象是否能够响应某个特定的选择器(方法)。