ios初级笔记

时间:2018-09-01 18:21:50
【文件属性】:

文件名称:ios初级笔记

文件大小:21KB

文件格式:TXT

更新时间:2018-09-01 18:21:50

ios初级

ios初级代码 1.oc中的set和get方法 1>.首先NewFile创建类,选iOS中的Cocoa Touch,再点击Objective-C class,输入类名Student,作为NSobject(系统 自带)的子类 2>.在.h中做方法的声明 在Student.h中: //@interface代表声明一个类 // : 代表继承 #import @interface Student : NSObject{ //成员变量要定义在此{}中 int age; int no; } //age no 的get,set方法 //-代表调用动态方法,+代表静态方法 -(void)setAge:(int)newAge andNo:(int)newNo; //方法名是setage: andNo: 注:冒号也是方法名的一部分 -(int)age; //方法名是age -(int)no; @end 在Student.m中: #import "Student.h" @implementation Student - (int)age{ return age; } - (int)no{ return no; } - (void)setAge:(int)newAge andNo:(int)newNo { age=newAge; age=newNo; //self.age = newAge; //这是个错误的方法会导致死循环,相当于[self setAge] } @end 在main.m中: #import int main(int argc,const char * argv[]) { @autoreleasepool{ //创建对象,alloc方法,init方法都是继承NSlog Student *stu=[[student alloc] init]; //释放方法 [stu release] [stu setAge:20 andNo:3] NSLog(@"this age is:i% andNo:i%",[stu age],[stu no]) } return 0; } 2.点语法 以1为实例: stu.age = 10; //编译的时候调用的是:[stu setAge:10]; int a = stu.age; //编译的时候调用的是:[stu age]; 注:1>oc中的点不是成员变量的访问,是调用set,get方法 2>成员变量默认是@protected 3>当成员变量为@public时,外部直接访问用stu->name; 3.构造方法和description方法 1>.在student.h中 #import @interface student:NSObject{ //默认的是@protected int _age; int _no; } - (void)setAge:(int)age; - (void)setNo:(int)no; - (int)age; - (int)no; //自己写构造方法 - (id)initWithAge:(int)age andNo:(int)no; @end 2>.在student.m中 #import "student.h" @implementation student -(void)setAge:(int)age{ _age = age; } - (void)setNo:(int)no{ _no = no; } - (int)age{ return _age; } -(int)no{ return _no; } //实现构造方法 - (id)initWithAge:(int)age andNo:(int) no{ //首先要调用super的构造方法 //self = [super init]; //如果self不为nil if(self = [super init]){ _age = age; _no = no; } return self; } //重写父类的的description方法 //当使用%@带打印一个对象时候,会调用这个方法 - (NSString *)description{ NSString *str = [NSString stringWithFormat:@"age is %i and no is %i",_age,_no]; return str; } @end 3>.在main.m中: #import int main(int argc,const char * argv[]) { @autoleasepool{ student *stu = [[student alloc] initWithAge:100 andNo:20]; [stu release] //NSLog(@"this age is:i% this no is:i%",stu.age,stu.no); //%@代表打印一个oc对象 NSLog(@"%@",stu); } }


网友评论