新网创想网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
Objective-C入门(二)对象类变量方法
创新互联建站服务项目包括诸城网站建设、诸城网站制作、诸城网页制作以及诸城网络营销策划等。多年来,我们专注于互联网行业,利用自身积累的技术优势、行业经验、深度合作伙伴关系等,向广大中小型企业、政府机构等提供互联网行业的解决方案,诸城网站推广取得了明显的社会效益与经济效益。目前,我们服务的客户以成都为中心已经辐射到诸城省份的部分城市,未来相信会继续扩大服务区域并继续获得客户的支持与信任!
学过Java的面向对象比较熟悉 Objective-C也是面向对象的
我们来看Objective-c所表达的方式
先写一个类:我们看到这个类里只有熟悉和方法名字并没用去实现 .文件
#import
@interface SKPerson: NSObject{ //创建类
NSString * name; //NSString*属性
int age; //int属性
}
-(void)setName:(NSString*) n; //set get方法
-(void)setAge: (int)a;
-(NSString*)name;
- (void) go;
@end;
实现这个类的代码 .m文件
@implementation SKPerson
-(void)setName:(NSString*) n{ //实现setName方法
If(n!=nil){
[n retain] //拿住这个对象
[ name release] //释放原来的对象
name=n;
}
}
-(void)setAge: (int)a{
Age=a;
}
-(NSString*)name{
return name;
}
- (void) go{
NSLog(@"This is a method");
}
@end;
实例化类对象的方法 .m文件
#import
int main(int argc,const char*argv[]){
NSAutoreleasePool * pool=[[NSAutoreleasePool alloc] intit ];
SKPerson * skyoceanone;
skyoceanone=[[SKPerson alloc] init];//也可以写成[SKPerson new]不建议
[skyoceanone setName:@"sky"];
[skyoceanone setAge:25];
[skyoceanone go];
[skyoceanone release];
[pool drain];
return 0;
}
NSString *类型 是一个指针类型 它指向的是字符串的内存地址 OC的代码 就是指针类型 (以后会做详细的解析指针)
然后为变量生成 get和 set方法 (get字母被省略) OC中不能自动生成get和set下面介绍 另一种方法来生成 get set
属性访问器:
-(void)setName:(NSString*) n;
-(void)setAge: (int)a;
-(NSString*)name;
可以写成:
@propert(retain) NSString* name; //一行代码就实现了 set和 get
@propert(assign) int age;
实习方法的代码可以写成:
@synthesize name;
@synthesize age;
使用方法可以写成:
Skyoceanone.name=@"sky"; //set方法
Skyoceanone.age=25;
Skyoceanone.age; //没有=号就相当于使用了get方法
---------本博文针对有JAVA基础 OC还属于初学者 文中有错误的地方还请指出 特感谢赵哲老师提供图片