学习笔记(OC)--Foundation框架的基本应用一

本文深入探讨了Objective-C语言的基础框架Foundation,包括其类、函数、方法的组成及使用,详细介绍了NSObject类中常用方法的功能及应用示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

      框架是许多类,函数,方法组成的一个类库。以方便开发者更好的开发程序。Foundation框架是OC语言的基础框架,框架中的类都是以"NS(NextStep)"为前缀 。Foundation类的根是NSObject和NSCoping协议组成的,这两个定义了类的基本属性和方法。继承自NSObject的常用类大致有:NSString,NSArray,NSDictionary,NSValue,NSDate,NSSet等。

NSObject类中的一些常用方法:

1.比较两个指针是否指向同一个对象,看两个对象是否是同一个对象,即两个对象是否指向同一地址。-(BOOL)isEqual:(id)boject;

        //创建两个对象p1,p2
        NSObject *p1=[[NSObject alloc]init];
        NSObject *p2=[[NSObject alloc]init];
        //-(BOOL)isEqual:(id)boject;通过方法的声明可以看出,方法的返回值是BOOL类型的,所以用BOOL类型的变量去接收,方法的传入参数是id类型(非基本类型的任意类型),p2是类NSObject声明的符合条件。
        //由于p1与p2是NSObject类声明的两个独立的指针变量,他们指向的堆地址不同,result1=0
        bool result1=[p1 isEqual:p2];
2.调用一个方法,没有声明直接调用(暴力调用)-(id)performSelector:(SEL)aSelector;
        Person *person=[[Person alloc]init];
        //-(id)performSelector:(SEL)aSelector;SEL相当于函数指针
        SEL sel =NSSelectorFromString(@"test");
        [person performSelector:sel];
        [person performSelector:@selector(test1:) withObject:@20];//20是参数

3.某一对象是否派生或属于某一类        //-(bool)isKindOfClass:(Class)aClass
        Class class1=[person class];//返回当前对象的类
        bool result2=[person isKindOfClass:class1 ];
4.某一对象是否属于某一类        //-(bool)isMemberOfClass:(Class)aClass
        BOOL result3=[person isMemberOfClass:class1];
5.某对象是否相应指定的方法         //-(bool)respondToSelector:(SEL)aSelector,判断某对象是否能调用某方法
        BOOL result4=[p1 respondsToSelector:@selector(test)];
6.-(Class)superclass:返回指定对象的父类与—(Class)class:返回指定对象的本类
        Class class3=[person superclass];
        BOOL result5=[person isMemberOfClass:class3];

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值