-----------android培训、java培训、java学习型技术博客、期待与您交流!------------
视频16:
1、为什么要引入import
import引入的头文件,可以防止重复包含。
include它是使用预处理指令防止重复包含,如果没有写预处理指令,则无法防止重复包含问题。
import和@class的区别
<Foundation/Foundation.h>
是什么意思?
头文件,这个稳健包含了其它大量的文件。引入这个文件,等于把OC的库文件都引入过来了。
2、NSLog与printf
可以自动换行,可以自动输出时间等项目信息
NSLog函数的参数是一个NSStiring对象,printf是一个字符串常量指针。
OC中有自己特有的表示方法。用%@输出字符串。
3、@符号使用
@表示将一个c的字符串转化为OC中的字符串对象NSString
5、OC和C的差别
1)文件的差异
2)数据类型的差异
3)关键字的差异
4)流程控制语句
OC中并没有增加新的流程控制
OC中提供一种增强型的for循环
7、bool
作用:保存逻辑值
取值:YES(真、1) NO(假、0)
BOOL flag = YES;
if (flag) {
NSLog(@"真%d",flag);
}
else
NSLog(@"假%d",flag);
OC中异常捕捉机制:
异常:程序运行的时候又bug
捕捉机制:排除错误
方法的声明和实现,都必须以+或者-开头
+表示类方法(静态方法)
-表示对象方法(动态方法)
7、类的实现与声明
类的声明:规定当前类的类名,属性行为
@interface 类名:父类名
{
//定义类的属性
}
//类的行为
@end
2)类的实现(实现类的行为)
@implementation 类名
8、OC创建对象
[Car new];
//做了三件事情
1)想计算机申请内存空间
2)给类中的每一个成员初始化值
3)返回新申请c的空间的首地址
Car *p = [Car new];
理解方式一:定义了一个car、类型的指针变量,指针变量指向新申请的内存空间
理解方式二:用car类实例话了一个实例对象,对象的名称是p
9、有参数方法
-(返回值类型)方法名1:(参数类型)参数名;
-(返回值类型)方法名1:(参数类型)参数名 and:(返回值类型)方法名