微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

OC学习笔记一

招了一份ios的实习,只能从零开始学习了。。

我们第一周的任务是熟悉oc的使用,这里就不繁复地罗列了,会记几个重点,也就是oc特有的东西。

1.oc的消息机制

oc不像其他语言,有很强的动态特性,[object message]这样的发送给对象的消息会在运行时判断。

2.修改项目模板

修改项目模板以及main函数中的内容
/Applications/Xcode.app/Contents/Developer/Library/Xcode/Templates/Project Templates/Mac/Application/Command Line Tool.xctemplate/

修改OC文件头部的描述信息
/Applications/Xcode.app/Contents/Developer/Library/Xcode/Templates/File Templates/Source/Cocoa Class.xctemplate

Xcode文档安装的位置1:
/Applications/Xcode.app/Contents/Developer/Documentation/DocSets
注意: 拷贝之前最好将认的文档删除, 因为如果同时存在高版本和低版本的文档, 那么低版本的不会显示
Xcode文档安装的位置2:
/Users/你的用户名/Library/Developer/Shared/Documentation/DocSets
如果没有该文件夹可以自己创建一个

3.Nsstring

创建字符串:Nsstring *str = @"lnj";

或者:Nsstring *str = [Nsstring stringWithFormat:@"age = %i, height = %f\n", 30, 1.75];

计算字符串的长度:NSUInteger len = [str length]

4. 多态的支持

比如:Animal *a1 = [Dog new];

注意和java不同的是 在多态中, 如果想调用子类特有的方法必须强制类型转换为子类才能调用

5. 实例变量修饰符

@public
>可以在其它类中访问被public修饰的成员变量
>也可以在本类中访问被public修饰的成员变量
>可以在子类中访问父类中被public修饰的成员变量

@private
>不可以在其它类中访问被private修饰的成员变量
>可以在本类中访问被private修饰的成员变量
>不可以在子类中访问父类中被private修饰的成员变量

@protected
>不可以在其它类中访问被protected修饰的成员变量
>可以在本类中访问被protected修饰的成员变量
>可以在子类中访问父类中被protected修饰的成员变量

注意: 认情况下所有的实例变量都是protected

@package
>介于public和private之间的
如果是在其它包中访问那么就是private的
如果是在当前代码所在的包种访问就是public的

6. 点语法

可以用来直接调用getter/setter方法

7.构造方法

- (instancetype)init:参数列表
{
    self = [super init]; // self == nil == 0
    if (self) {
        // 初始化子类
    }
    return self;
}

8. 类工厂方法

用于快速创建对象的类方法, 我们称之为类工厂方法
类工厂方法中主要用于 给对象分配存储空间和初始化这块存储空间
规范:
1.一定是类方法 +
2.方法名称以类的名称开头, 首字母小写
3.一定有返回值, 返回值是id/instancetype

 

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐