Objective-C 入门(二)对象 类 变量 方法
2011-12-19 15:30
281 查看
学过Java 的 面向对象比较熟悉 Objective-C也是面向对象的
我们来看Objective-c所表达的方式
先写一个类:我们看到这个类里只有熟悉和方法名字 并没用去实现 .文件
#import <Foundation/Foundation.h>
@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 <Foundation/Foundation.h>
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方法
我们来看Objective-c所表达的方式
先写一个类:我们看到这个类里只有熟悉和方法名字 并没用去实现 .文件
#import <Foundation/Foundation.h>
@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 <Foundation/Foundation.h>
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方法
相关文章推荐
- Objective-C 入门(二)对象 类 变量 方法
- [Objective-c] 002_对象 类 变量 方法
- Objective-C—方法与成员变量、匿名对象
- Objective-C语言介绍 、 Objc与C语言 、 面向对象编程 、 类和对象 、 属性和方法 、 属性和实例变量
- 【Objective-C】04-OC对象成员变量的封装规范:get方法和set方法
- Objective-C学习笔记(二十)——成员变量对对象方法与类方法的可见性分析
- 【JavaSE学习笔记】面向对象_01(入门,匿名对象,成员变量,局部变量,封装,this,构造方法)
- JavaScript字符串对象charAt方法入门实例(用于取得指定位置的字符)
- Excel VBA入门(6) - Worksheet对象常用方法事件
- JavaScript从入门到放弃(3)-对象的不同创建方法-实现真正的面向对象
- 通过Java对象来遍历成员方法,成员变量,构造函数
- [1]姥爷幽默谈Objective-C(Objective-C起源,对象,类,方法)
- java面向对象思想之方法的重载、this变量、静态变量、Java中的常量
- Objective-C之成魔之路【9-类构造方法和成员变量作用域、以及变量】
- Objective-C中数组对象排序的方法(OC中NSString的常用API的基础应用2)
- objective-c 类和对象中静态数据成员和静态成员函数(类方法)详解
- Java面向对象-final类和final方法、final变量(常量)
- Objective-C中的NSObject对象经常使用到的方法
- PHP面向对象之旅:深入理解static变量与方法
- Objective-C学习笔记2:类、对象和方法