OC入门、面向对象语法

来源:互联网 发布:孙悦nba数据 编辑:程序博客网 时间:2024/06/05 18:59

1. #import的用途:

   跟#include一样,拷贝文件的内容

   可以自动防止文件的内容被重复拷贝

2. OC程序的编译连接

    编译:  cc –c  文件名.m

    链接:  cc  文件名.o  -framework Foundation

3. OC中所有的对象都要通过指针来访问。

4. 所有变量类型都必须用 ( ) 括起来。

5. 成员变量命名以下划线 _开头。

6. get方法方法名跟成员变量名一致。

7. 对象方法以– 开头;

    类方法以 + 开头。

    注:带参数的方法中冒号:也是方法名的组成部分。

8. 在类对象中存储类方法和对象方法列表,成员变量存储在对象中。

                   

9. 类方法中不能访问成员变量(实例变量)。

10.类方法不依赖于对象,执行效率高。当方法内部不需要使用成员变量时尽量用类方法。

11.self是指向方法调用者的指针。

    利用 “self -> 成员变量名” 访问当前对象内部的成员变量。

    利用 [self 方法名] 可以调用其他对象方法/类方法。

12.OC中不允许子类和父类拥有相同名称的成员变量。但是子类可以重写父类方法。

13.OC只允许单继承。

14.super作用:直接调用父类中的某个方法

     super处在对象方法中,就会调用父类的对象方法。

     super处在类方法中,就会调用父类的类方法。

     使用场合:子类重写父类的方法时想保留父类的一些行为。

15.多态的代码体现:父类型的指针指向子类对象。

     局限性:不能直接调用子类特有的方法,必须强制转为子类型变量后才能直接调用子类特有的方法。

16.OC中字符串以@开头。

     @”hello everyone”

17.OC字符串创建与输出:

     NSString *str = @”itcast”;

     NSString *newStr = [NSString stringWithFormat:@"My ageis %d and no is %d and name is %@", age, no, name];

     NSLog(@”我在%@上课”,str);

     注:NSLog输出C语言字符串的时候不能有中文!

18.字符串length方法返回的是字符串的字数(空格算一个字):

     NSString *name = @”哈哈jack”;

     //size==6

     intsize = [name length];

19.成员变量作用域:

      @public :在任何地方都能直接访问对象的成员变量。

      @private :只能在当前类的对象方法中直接访问。(@implementation中默认是@private)

      @protected :可以在当前类及其子类的对象方法中直接访问。(@interface中默认是@protected)

      @package :只要处在同一框架中就能直接访问对象的成员变量。介于private和public之间。

      @interface和@implementation中不能声明同名的成员变量。


20. @implementation里面也可定义成员变量,默认权限是private


0 0
原创粉丝点击