OC 基础入门

OC 基础入门

OC 源文件

OC 源文件为 .h 和 .m( m表示 message,表示 OC 中的消息机制 )

在 .m 文件中可以写 OC 代码、C 代码、C++ 代码。反正 Java 的 .class 文件不能写 C 和 C ++。

NS 前缀

从之前的 OC 的历史中知道 OC 来自 NextStep. 所以许多的 OC 的类都是带了 NS 前缀。

注释

OC 的注释和 Java 一样分为两种:

单行注释:

 

// 我是单行注释

多行注释

 

/*
*我是多行注释
*/

@符号

在 OC 中大多数的关键字是用 @ 符号开头的。并且字符串类型是以 @ 开头申明的。

main 函数

这一点是和 Java 一致,程序的入口也是 main 方法。

OC 的 main 函数是可以不带参数。写法如下:

带参

 

int main(int argc,const char * argv[]){
    NSLog(@"Hello World!");
}

不带参

 

int main(){
    NSLog(@"Hello World!");
}

Java 语言的 main 函数

 

public static void main(String [] args){
    println("Hello World!");
}

OC 基本数据结构

OC 语言包含了 C 所有的数据结构,并且有更多其他的数据结构。

C:

  • int float double char
  • int的修饰符
  • short、long、 long long
  • unsigned 、signed
  • ...

OC:

  • CGFloat、BOOL、NSInteger

其中 BOOL 是的取值为 YES/ON 对应就是 Java true/false.

CGFloat 和 NSInteger 是为了兼容 64 位计算机和 32 位计算机而存在的,在 32 位操作系统中,CGFloat 表示的就是 4 个字节的 float,而在 64 位操作系统中,CGFloat 表示的是 8 个字节的 double.

NSInteger 也是类似的 —— 32 位操作系统中为 4 个字节 int. 64 位操作系统中为 8 个字节 long。

OC 也是有 Boolean 存在的。Boolean 表示的值就是 TRUE/FALSE 对应就是 Java true/false

BOOL 本质:

 

typedef signed char BOOL;
#define YES ((BOOL)1)
#define NO ((BOOL)0)

Boolean 本质:

 

typedef unsigned char Boolean;
#define true 1
#define false 0

本质区别是 Boolean 定义的是枚举。BOOL 定义的是宏。

OC 的数据类型

  • id 类型:万能指针,可以指向任何的 OC 对象。其实质是编译时不检测,运行时检测。
  • class - 表示类
  • SEL: 方法选择器
  • nil:nil 类似是 NULL 但是 nil 是一个对象
  • block :
  • 3
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值