`
lizhuang
  • 浏览: 899827 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

id,NSObject, id<Obejct>

 
阅读更多
1,id关键字在编译时不被检查,而NSObject在编译时会被检查是否被调用一些错误方法。
2,id可以是任何对象,包括非NSObject对象
3,定义id的时候不使用*,NSObject却需要。
我的理解,基本上来讲,定义id类似于定义了一个地址(只有指针,抽象指针),而NSObject是确实的定义了一个逻辑对象的地址。
而NSObject*指针 指向的是NSObject对象或其子类。
id可以指向函数,也可以指向对象。

原帖:
http://www.devdiv.com/ios_id_nsobject_id_lt_nsobject_gt_-blog-1-50764.html

http://blog.sina.com.cn/s/blog_6fa695690100ylaa.html
分享到:
评论

相关推荐

    iOS开发UI篇—字典转模型 - 文顶顶 - 博客园

    &lt;key&gt;id&lt;/key&gt; &lt;integer&gt;158&lt;/integer&gt; &lt;key&gt;name&lt;/key&gt; &lt;string&gt;应用1&lt;/string&gt; &lt;key&gt;version&lt;/key&gt; &lt;integer&gt;0&lt;/integer&gt; &lt;!-- 其他相关信息 --&gt; &lt;/dict&gt; &lt;!-- 更多的字典条目 --&gt; &lt;/array&gt; ``` 开发...

    iOS支付宝支付方法详解

    可以在出错文件中单独导入,或者在项目的.pch文件中全局引入,如`#import &lt;UIKit/UIKit.h&gt;`和`#import &lt;Foundation/Foundation.h&gt;`。 3. 错误:“'openssl/asn1.h' file not found”。为了解决这个问题,需要添加...

    iOSXML数据解析

    &lt;book id="bk101"&gt; &lt;author&gt;Gambardella, Matthew&lt;/author&gt; &lt;title&gt;XML Developer's Guide&lt;/title&gt; &lt;genre&gt;Computer&lt;/genre&gt; &lt;price&gt;44.95&lt;/price&gt; &lt;publish_date&gt;2000-10-01&lt;/publish_date&gt; &lt;description&gt;An...

    iOS中XML解析 (一) TBXML (实例:打印xml内容及存储到数组)

    &lt;book id="1"&gt; &lt;title&gt;书名1&lt;/title&gt; &lt;author&gt;作者1&lt;/author&gt; &lt;/book&gt; &lt;book id="2"&gt; &lt;title&gt;书名2&lt;/title&gt; &lt;author&gt;作者2&lt;/author&gt; &lt;/book&gt; &lt;/books&gt; ``` 我们可以使用TBXML来打印XML的内容: ```objc ...

    ios中工厂方法的完美实现

    @interface ConcreteProductA : NSObject &lt;ProductProtocol&gt; @end @implementation ConcreteProductA -(void)execute { NSLog(@"ConcreteProductA is executing."); } @end @interface ConcreteProductB : ...

    NSObject脑图

    NSObject脑图

    iPhone编程解析xml

    @interface YourXMLParser : NSObject &lt;NSXMLParserDelegate&gt; @property (nonatomic, strong) NSMutableArray&lt;Item *&gt; *items; @end @implementation YourXMLParser - (void)parser:(NSXMLParser *)parser ...

    NSObject源码.zip

    在iOS和Objective-C的世界里,`NSObject`是所有对象的基础,它是Cocoa Touch和Cocoa框架的核心部分。这个压缩包“NSObject源码.zip”显然包含了`NSObject`类的源代码,这对于我们深入理解Objective-C的对象模型和...

    NSObject扩展

    ### NSObject扩展:深入理解与应用 在Objective-C中,`NSObject`是所有类的基类,它提供了许多基本的功能和属性。对`NSObject`进行扩展(Category)是一种常见的编程技巧,用于向现有类添加额外的功能,而无需修改...

    Objective C 中介者模式设计源码

    - (void)colleague:(id&lt;Colleague&gt;)colleague performAction:(NSString *)action; @end // ConcreteMediator类 @interface ConcreteMediator : NSObject &lt;Mediator&gt; @property (nonatomic, strong) NSMutableArray ...

    Objective C简单工厂模式设计源码

    @protocol CalculatorProtocol &lt;NSObject&gt; @required - (NSNumber *)add:(NSNumber *)num1 with:(NSNumber *)num2; - (NSNumber *)subtract:(NSNumber *)num1 from:(NSNumber *)num2; @end ``` 接下来,我们可以...

    swift-RN环境搭建和原生交互

    &lt;key&gt;NSAppTransportSecurity&lt;/key&gt; &lt;dict&gt; &lt;key&gt;NSAllowsArbitraryLoads&lt;/key&gt; &lt;true/&gt; &lt;/dict&gt; ``` 2. 在`MyRNProject/index.js`中,导入并注册Swift模块: ```javascript import { NativeModules } from ...

    iOS应用开发中使用设计模式中的观察者模式的实例

    @property (nonatomic, strong) NSMutableArray&lt;id&lt;ObserverProtocol&gt;&gt; *observers; - (void)attachObserver:(id&lt;ObserverProtocol&gt;)observer; - (void)detachObserver:(id&lt;ObserverProtocol&gt;)observer; - (void)...

    swift tableview

    &lt;key&gt;NSAllowsArbitraryLoads&lt;/key&gt; &lt;true/&gt; &lt;/dict&gt; ``` 在单元格的重用机制中,`dequeueReusableCell(withIdentifier:for:)`方法非常重要,它减少了内存消耗并提高了性能。确保在storyboard或代码中为单元格...

    iOS中NSObject的两种含义:类和协议详解

    协议中&lt;NSobject&gt;是什么意思? 子类继承了父类,子类会遵守父类遵守的协议吗? 会遵守NSObject协议,但是只在头文件中声明,编译器是不会自动生成实例变量的。需要自己处理getter和setter 方法 NS/CF/CG/CA/UI这些...

    【IOS一气呵成】之IAP集成:内购和内购恢复 DEMO

    #import &lt;Foundation/Foundation.h&gt; ...@property(nonatomic,assign) id&lt;RMIAPHelperDelegate&gt; delegate; -(void)setup; -(void)destroy; -(void)buy:(NSString*)productId; -(void)restore; @end

    分页效果设置

    @protocol ZSegmentedControlDelegate &lt;NSObject&gt; - (void)setSelectedIndex:(NSUInteger)selectedIndex; @end typedef NS_ENUM(NSInteger, MSegmentedControlIndicatorStyle){ ...

    OC-工厂模式-处理不同通知

    - (id&lt;NotificationObserver&gt;)createObserverForNotificationType:(NSString *)notificationType; @end ``` #### 4.2 创建具体工厂 接着,创建具体工厂类实现这个协议,例如`DefaultNotificationObserverFactory`:...

    NSObject中methodSignatureForSelector、forwardInvocation两个消息方法

    在Objective-C中,`NSObject`是所有对象的基类,它提供了一系列基本的功能,包括响应消息的能力。在处理未知或未实现的消息时,`NSObject`提供了两个关键的方法:`methodSignatureForSelector:` 和 `...

    IOS中XML解析类

    &lt;title&gt;XML 解析&lt;/title&gt; &lt;author&gt;John Doe&lt;/author&gt; &lt;year&gt;2020&lt;/year&gt; &lt;/book&gt; ``` 在这个例子中,`book`是根元素,包含了`title`、`author`和`year`子元素。 ### 2. iOS中的XML解析方式 iOS提供了两种主要的...

Global site tag (gtag.js) - Google Analytics