码迷,mamicode.com
首页 > 其他好文 > 详细

[Objective-c]对象 类 变量 方法

时间:2015-05-24 23:27:25      阅读:158      评论:0      收藏:0      [点我收藏+]

标签:

接触过Java的对面向对象应该是熟悉不过了, Objective-C也是面向对象的。


 

  • 对象
  • 变量
  • 方法

 

Objective-c 中如何定义一个类?

.h文件

#import <Foundation/Foundation.h>

@interface Student: NSObject{      //创建学生类继承NSObject

  NSString * name;   

  int age;

 }

-(void)setName:(NSString*)nameString; //name set方法

-(void)setAge: (int)ageValue;    //age set方法

-(NSString*)getName;      //name get 方法  

-(NSString*)getAge;       //age get方法

@end;

 

.m文件

@implementation Student

-(void)setName:(NSString*) nameString{     //实现setName方法

  if(nameString!= nil){ 

    [name relelase] ;                    //释放原来的name

    [nameString retain];               //保留nameString 

    name = nameString;

  }

}

-(void)setAge: (int)ageValue {

  age = ageValue;

}

-(NSString*)getName {

  return name;

}

- (int) getAge {

  return age;

}

@end;

 

实例化类对象 (.m文件)

#import <Foundation/Foundation.h>

int main(int argc,const char*argv[]){

  NSAutoreleasePool  *pool=[[NSAutoreleasePool alloc] intit ];

  Student  *student = [[SKPerson alloc] init]; //初始化对象

  [student setName:@"SuperDo"];

  [student setAge:25];

  [student release];

  [pool release];

  return 0;

}

 

在上面的.h文件中我们对一个属性的get set 一一申明,然后在.m文件中一一实现,其实在Objective-c 中有便捷的写法,我们改写下

.h文件

#import <Foundation/Foundation.h>

@interface Student: NSObject{      //创建学生类继承NSObject

  NSString * name;   

  int age;

 }

@property  (nonatomic,retain) NSString* name;   //一行代码就申明了 setName 和 getName

@property  (nonatomic,assign)int age;         //一行代码就申明了 setAge 和 getAge

@end;

 

@implementation Student

@synthesize name;     //一行代码就实现了 setName 和 getName

@synthesize age;      //一行代码就实现了 setName 和 getName

@end;

 

 技术分享

本站文章为 宝宝巴士 SD.Team 原创,转载务必在明显处注明:(作者官方网站: 宝宝巴士 
转载自【宝宝巴士SuperDo团队】 原文链接: http://www.cnblogs.com/superdo/p/4526629.html

 

 

[Objective-c]对象 类 变量 方法

标签:

原文地址:http://www.cnblogs.com/superdo/p/4526629.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!