IOS基础语法

Objective-C(简称OC)是iOS开发的核心语言,在开发过程中也会配合着使用C语言、C++,OC主要负责UI界面,C语言、C++可用于图形处理。

Objective-C是C语言的面向对象的一个超集,Objective-C 是ANSI C的超集,扩展了C 语言使它具备面向对象设计的能力,例如类、继承

C语言是一门面向过程的语言,OC是在C语言的基础上,增加了一层最小的面向对象语法。(OC把一些比较复杂的面向对象语法都去掉了,剩下的都是面向对象的精华,OC是一门面向对象的语言,而且会比C++简单很多)

       1、继承:Objective-C与同Java和Smalltalk一样不支持多重继承,而C++语言支持多重继承(从侧面可以说明多重继承的效率不高);

  2、函数调用:Objective-C通过互相传递消息实现函数调用,而C++直接进行函数调用

  3、定型:Objective-C是动态定型(dynamicaly typed)。所以它的类库比C++要容易操作。Objective-C 在运行时可以允许根据字符串名字来访问方法和类,还可以动态连接和添加类。而C++,对象的静态类型决定你是否可以发送消息给它。

  4、接口:Objective-C采用protocol协议(非正式和正式)的形式来定义接口,而C++采用虚函数的形式来定义接口。

  5、方法重载:c++中允许两个方法的名字相同,参数个数相同,但是参数类型不同,以及不同的返回值类型。而OC中不允许同一个类中两个方法有相同的名字,参数个数相同,参数类型不同。

OC是基于C语言的,所以完全兼容C语言,也就是说我们在开发iOS程序过程中,可以在OC代码中混入C语言代码,甚至是C++代码。

OC关键字为了和C/C++区别,所以加上@。

@interface  

 声明类

@implementation   

实现类

@protocol   

声明和谈

@optional   

与@protocol共同应用,申明和谈中的某个或者某几个办法可以不实现

@required

与@protocol共同应用,申明和谈中的某个办法或者某几个办法必须实现

@end

与@interface ,@implementation,@protocol共同应用,代表声明或者实现停止

@encode

@encode为编译器宏,它可以将类型转换为响应的字符串。


id

id是指向Objective-C类对象的指针,它可以声明为任何类对象的指针,当在Objective-C中应用id时,编译器会假定你知道,id指向哪个类的对象。与void*是不同的是,void*编译器不知道也不假定指向任何类型的指针。

在Objective-C 中,id 类型是一个独特的数据类型。在概念上,类似Java 的Object 类,可以转换为任何数据类型。换句话说,id 类型的变量可以存放任何数据类型的对象。在内部处理上,这种类型被定义为指向对象的指针,实际上是一个指向这种对象的实例变量的指针。



nil

定义为一个常量,若是一个指针的值为nil,代表这个指针没有指向任何对象。

self

在Objective-C中,关键字self与c++中this是同一概念,就是类对象自身的地址,经由过程self可以调用本身的实例变量和办法

Super

当子类须要调用父类的办法时,会用到Super关键字. Super指向的是父类的指针,子类重写父类的办法时,调用父类的办法是一个非常好的习惯。因为当我们不知道父类在该办法中实现的功能时,若是不调用父类的办法,有可能我们重写的办法会落空该功能,这是我们不想看到的景象。

NSNull

NSNull是没有的意思,若是一个字典的值为NSNull,那申明与该值对应的Key是没有值的,例如Key为address,申明与address对应的是值是没有。

 

 

for(xx   in  xx); 快速遍历   相当于JAVA for(xx:  xx);


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值