实例方法

实例变量:实例后才能使用的方法

☆类方法

id : 对象类型(只要继承NSObject 的类型,都可以使用)

+ (void)sum:(int)num1 andNum2:(int)num2;

 

 

☆实例方法

 

类方法和实例方法唯一区别是调用者不同

无论是 类方法 还是 实例方法 

 

[receirver message]; 消息机制---------给 receiver 发送了一个message 消息

 

oc 多参

 

 

//方法名称:(int)setScore:(float)score;

(void)setScore:(int)score;方法名相同

setName:sex:age:

 

//初始化方法

//只调用一次 在创建对象的时候调用

//是一个实例方法  返回值是 id 类型

//以init开头

//初始化方法的作用:创建对象的同时,给对象相应的赋值(为实例变量赋值)

 

self.相当于this.表示当前的。

 

- (id)initWithName:(NSString *)name age:(int)age

{

    self = [superinit];//调用父类的初始化方法。初始化父类里面的变量---

    if (self)

    {

        [self setName:name andAge:age];   

//        [self setName:name];

//        [self setAge:age];

//        

    }

    returnself;

}

 

初始化的时候,父类的实例变量有父类的方法来初始化,子类的变量有子类本身初始化。

 

- (id)initWithName:(NSString *)name age:(int)age num:(int)num school:(NSString *)school

{

    //第一步调用父类的  初始化方法  为继承过来的变量赋初值

    self = [super initWithName:name age:age];

    if (self) {//第二步 为自己独有的变量 赋初值

        [self setNum:num];

        [self setShool:school];

    }

    returnself;//第三步返回对象

}

 

 

 

初始化方法:1.调用父类的初始化方法2给自己特有的变量进行初始化,返回对象。

 

 

         //副方法

- (id)initWithName:(NSString *)name

{

//    self = [super init];

//    if (self) {

//        [self setName:name];

//    }

//    return self;

    return [self initWithName:name age:0];

}

        //主方法           //指定初始化方法:                 //公共代码//多个方法都调用这一个方法。一般参数比较多。

- (id)initWithName:(NSString *)name age:(int)age

{

    self = [super init];

    if (self)

    {

        [self setName:name andAge:age];   

//        [self setName:name];

//        [self setAge:age];

//        

    }

    returnself;

}

 

便利构造器---------------类名开头

//便利构造器

//类方法   返回值id 类名开头

+ (id) personWithName:(NSString *)name age:(int)age

{

    Person *p = [[Personalloc]initWithName:name age:age];//初始化一个person 类型的对象

    return p;

 

}

 

初始化方法和便利构造器的却不

 

 

作业-----------------------------------------------------------//为上次作业中的15个类:添加初始化方法,指定初始化方法 ,添加便利构造器-----------------------------------------

posted @ 2013-11-05 20:48  lanacon  Views(189)  Comments(0Edit  收藏  举报