zoukankan      html  css  js  c++  java
  • objective-C基本知识

    预编译指令

     1.自己写的头文件最好用双引号,而系统自带的可以用尖括号。

    *************************************************

    点语法

      p.age= 10;

         1.不是访问age成员变量,而是调用其方法

         2.其他的很多编程语言都有点语法,为了其他编程的程序员可以快速掌握oc,从而添加了点语法

         3.编译器在遇到点语法的时候,会自动将之转化为:[p setAge:10];

         4.故点语法的本质还是调用方法,而不是访问成员变量(访问成员变量就一种:通过箭头)。

    *******************************************

    isa指针

    在OC中,对于每个实例对象,其中都会有一个isa指针,isa= is a,同一个类创建出来的对象的isa指针是一样的。

    它的作用是告诉对象它是哪个类以及它的父类是谁。

    这个指针只有在程序运行的时候才看得见(在调试模式的具体对象处能够找到)。

    *******************************************

    import和include的区别:

      import关键字会对重复引用的文件进行自动省略,而include不会。所以,import能够避免碰到“常见但定位麻烦的重复引用头文件错误”。

      在OC中,我们一般使用import来引用其他头文件。

    **********************************

    关键字

    “@”符号:在OC中表示关键字。

    @interface:类声明的开始。

    @implementation:类实现的开始。

    @end:类声明或者类实现的结束。

    夹在@interface和@end之间的即为类的声明,而夹在@implementation和@end之间的即为类的实现。

    **************************

    在OC中,self表示对象自己,它和C++中的this含义相近。super表示父类对象。

    ************************

    继承和重写

    类库之间的继承:

    cocoa的框架中,大部分的类库都是继承自NSObject,而类库之间还存在各种各样的父子关系,比如所有的控件类(UIControl、NSControl)都是继承自响应者类(UIResponder、NSResponder);所有的多功能视图(tableview/scrollview/webview等)都是继承自视图类(UIView、NSView)等。如果我们想找类库的继承关系,我们可以在开发文档中找到。

    ************************

    分类(Category)

    ************************

    协议(Protocols)和代理(Delegation)

    1.代理的引入真正意义上完全实现MVC的程序结构框架。

    2.协议是对类的实现进行规约的一套标准,可以保证多个承诺实现协议的类的接口一致性。

  • 相关阅读:
    MPI编程简述
    网购时代,写在消费者权益保护的新篇章大企业
    在哪里?
    H264 编解码器架构简单
    Unity+NGUI打造网络图片异步加载和本地缓存工具(一)
    分数减法
    JAVA设计模式(09):结构化-代理模式(Proxy)
    I2C驱动程序框架probe道路
    安卓表格布局android:collapseColumns,android:shrinkColumns和stretchColumn
    智课雅思词汇---七、cur是什么意思
  • 原文地址:https://www.cnblogs.com/123qw/p/4375233.html
Copyright © 2011-2022 走看看