Object-C详细编程教程(一):类定义与实现

来源:互联网 发布:刘诗诗同款衣服淘宝 编辑:程序博客网 时间:2024/09/21 09:25
1.类的定义:
//文件MyClass.h#import <Foundation/Foundation.h>//引入框架头文件,告诉编译器依赖其中的类@interface MyClass : NSObject {//@interface申明一个新类 类名:基类@public//公开成员变量    NSString *name;//字符串成员变量声明@private//私有成员变量    int age;//整形成员变量}-(NSString*)getName;//定义类成员方法 - (返回类型)方法名-(int)age;//获取age的方法,通常Object-C里面取值不用getXXX的形式,直接用XXX-(id)initWithName:(NSString*)newName AndAge:(int)newAge;//定义构造方法 - (返回类型)方法名:(类型)参数名:(类型)参数名+(void)className;//定义静态方法,与类方法不一样,使用+@end//类定义结束


2.类的实现

//文件MyClass.m#import "MyClass.h"@implementation MyClass//@implementation 实现类-(id)initWithName:(NSString*) newName AndAge:(int) newAge{//实现构造方法    self=[super init];//调用基类的构造方法,self相当于java中的this,super相当于java中的super    if(self){        name=newName;        age=newAge;    }    return self;}- (id)init{//默认的构造方法,要么返回完整的对象,要么抛出异常    return [self initWithName:@"myname" AndAge:24];//调用其他构造方法}-(NSString*) getName{//成员方法,返回name    return name;}-(int) age{//成员方法,返回age    return age;}- (void)dealloc//销毁,java中有垃圾回收机制,不需要管理对象销毁,类似于C++中的析构方法{    [name release];//先销毁成员变量    [super dealloc];//最后掉用基类的销毁}+(void)className{//实现类静态方法    NSLog(@"MyClass");}@end//结束实现


3.调用样例

//文件main.m#import <Foundation/Foundation.h>#import "MyClass.h"//引入头文件int main(int argc, const char* arg[]){    MyClass* me=[[MyClass alloc]initWithName:@"qiuqiu-球球" AndAge:24];//调用构造方法    NSLog(@"%@",me->name);//直接访问公开的成员变量,%@是对象的占位符    NSLog(@"myname is %@, age is %d",[me getName], [me age]);//%d是数字的占位符    [MyClass className];//调用类静态方法    return 0;}


0 0
原创粉丝点击