OC 基础复习(一)

最近开始学习OC 在学习OC之前 都是有专业基础

我这里对于细节不详细介绍,根据自身的学习稍微简单说一下

1、OC类

在Object C里面 基类是NSObject

OC和C语言的区别

(1)OC里面的关键字都是带@符号

(2)Oc 的预处理时#import  C语言的预处理是#include

(3)OC的变量声明在{}里面

OC与C语言的共同之处就是声明文件和实现文件是分开的


2.OC的构造方法和description方法

(1)在OC里面可以写自己init,在构造方法里面可以写一些自己想要实现的东西,在进行输出一个对象时 用NSLog(“%@”,对象名),结果输出的是对象地址

(2)在输出对象的地址时看不懂输出的是输出的什么内容,为此可以重写description方法

(NSString*) description{

return @“111111”;

}

输出自己想要的东西 我们还可以用StringWithFormat 来进行格式化输出的字符串


3、self, 自动释放, 变量作用域

(1)self不可以随意写,如果不分清楚容易造成死循环,self在动态方法里面 谁调用self就指向谁, 在静态方法里面 self就是指当前类名

【self  alloc】等价于【Student alloc】

(2) 在OC里有三种作用域 分别是@public @ protected @private  一般默认的是@protected

(3)OC系统内部自带的有自动释放  autorealease ,如果是自己写的 是需要【对象 release】

(4)任何指针类型都可以用(id)来表示

(5)OC的方法都是有+和-符号

(6)使用关键字new也可以进行内存分配  例如Student *stu= 【Student new】, 一般还是都会用 Student *stu=【【Student alloc】,init】

(7) 在进行成员变量的书写时  可以使用关键字@property 和 @ Synthesize 他们默认生成的成员变量都是私有的  在xcode4.5里面只用写@property 关键字 其他的都可以自动生成


4.@proterty 和@Synthesize

(1) 当成变量很多是 如果一一进行在.h文件中写get和set 会显得比较冗余  可以用@property进行代替 

例如@property int age  就像当于(int)age;} (void) setAge:(int newAge);

(2) 同样  在.m文件中可以用@Synthesize 代替

例如@Synthesize age  就像当于(int)age{return age;} (void) setAge:(int newAge){age=newAge;}

(3)他们自动生成的变量是私有的


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值