1.代码的分组 用到一个预处理的指令 1) #pragma mark 分组的名称 2) #pragma mark - 分组的名称 //多增加一条线 3) #pragma mark - 加一条线 注意: #pragma mark - 中划线后面不能有空格,否则出现两条 2.类常见错误汇总 1)类的声明不能够嵌套 @interface Dog:NSObject @end*/ @end 2)OC是一门弱语法的语言,下面写法不推荐 @implementation Car:NSObject { @public int _speed; } @end
3)只有类的声明,没有实现是不行的 @interface Car : NSObject { @public int _speed; } @end 3.调用对象方法 //消息机制 // [car run] 理解方式: // 1) 用car对象调用对象方法run // 2) 向car对象发送一个run消息 //异常捕获机制 //@try 把可能出现错误的代码,用户@try括起来 //@catch 给出错误信息 //@finally 不管出错与否,都执行此处的代码 4.用结构体作为类的实例变量 //定义一个结构体 typedef struct d1 {
//年 int year; //月 int month; //日 int day;
}MyDate; //生日 // 1992-11-11 //stu->_birthday 在对象 创建的时候,已经被初始化了 //1)错误写法 // stu->_birthday = {1992,11,11}; //正确写法: //1) 强制类型转换 // stu->_birthday = (MyDate){1992,11,11}; //2) 先定义一个结构体变量,并且初始化,然后赋值给 实例变量 // MyDate d1 = {1999,11,11}; // stu->_birthday = d1; //3) 逐个赋值 stu->_birthday.year = 1992; stu->_birthday.month = 11; stu->_birthday.day = 11; 5.NSString: NSString 是 OC中常用的处理字符串的类之一 NSMutableString NSString的常见的用法: 1) 创建字符串 NSString *_name = @"赵日天"; //Person *p = [Person new]; 2) 创建一个空字符串 NSString *str2 = [NSString new]; //空字符串 str2 = @"凤姐"; //给str2重新赋值了
3) 创建格式化的字符串 使用 stringWithFormat 来实现 img01.jpg img02.jpg .. img10.jpg NSString *str3 = [NSString stringWithFormat:@"%d.jpg",1];
NSString *subStr = @"I LOVE BZ"; //字符串连接 NSString *str4 = [NSString stringWithFormat:@"凤姐说:%@",subStr]; NSLog(@"str3 = %@",str4); //应用:创建固定格式的图片名称的字符串 for(int i=1;i<=10;i++){ //格式化的创建一个字符串 NSString *imgName = [NSString stringWithFormat:@"img%02d.jpg",i]; NSLog(@"%@",imgName); 6.NSString 字符串长度计算方法 NSString *str1 = @"itcast"; //利用对象方法 length 来获取字符串的长度 // NSUInteger == unsigned long--->typedef unsigned long NSUInteger; NSUInteger len = [str1 length];//打印用%lu //小结:在OC中不管中文汉字还是英文字母,都是一个字符 7.多文件开发 多文件开发的好处: 1) 便于团队协作 2) 数据更安全 ,对外只提供接口 3) 把不同功能,放到不同的类中,以便重用,代码的可读性高 多文件实现的思路: 把类的声明(接口)和实现进行分离. 类的声明 保存到.h文件中 类的实现 保存到.m文件中 要想使用其他的类,直接在使用的地方引入那个类的.h文件
|