Objective-C重写具有2个参数的方法

Objective-C重写具有2个参数的方法,objective-c,overriding,Objective C,Overriding,B.h类 @interface ClassB : rndvzViewController { int sum, num1, num2; } -(void)sumPrint; -(int)addNum1:(int)_num1 andNum2:(int)_num2; B.m类 -(int)addNum1:(int)_num1 andNum2:(int)_num2 { num1 = _num1; num2 = _num2; return sum = num1 +

B.h类

@interface ClassB : rndvzViewController {
    int sum, num1, num2;
}

-(void)sumPrint;
-(int)addNum1:(int)_num1 andNum2:(int)_num2;
B.m类

-(int)addNum1:(int)_num1 andNum2:(int)_num2
{
    num1 = _num1;
    num2 = _num2;

    return sum = num1 + num2;
}

-(void)sumPrint
{
    NSLog(@"%d", sum);
}
C.h类

@interface ClassC : ClassB

@end
C.m类

-(int)addNum1:(int)_num1 andNum2:(int)_num2
{

    //[self addNum1:num1 andNum2:num2];
    int interest = sum*.05;

    return interest;
}
调用方法:

ClassB* classB = [[ClassB alloc] init]; 
ClassC* classC = [[ClassC alloc] init];

[classB addNum1:12 andNum2:12];
classB.sumPrint;
//[classC addNum1:12 andNum2:12];
classC.sumPrint;
输出: 2014-09-09 14:07:48.919甲级[38418:60b]24 2014-09-09 14:07:48.919 A类[38418:60b]0


我做错了什么,为什么classC.sumPrint返回0,我希望C类打印B*类利息值的总和

这是非常基本的面向对象的东西。不完全是Obj-C

无论如何,如果希望C中的
addNum1:andNum2:
方法首先在B中运行该方法,然后像这样创建它

- (int)addNum1:(int)_num1 andNum2:(int)_num2
{
    return [super addNum1:_num1 andNum2:_num2] * 0.5;
}

虽然它有点笨重,而且命名约定已经关闭,我不会以这种方式存储数据和其他很多东西。但这将满足您的需要。

这是非常基本的面向对象编程。不完全是Obj-C

无论如何,如果希望C中的
addNum1:andNum2:
方法首先在B中运行该方法,然后像这样创建它

- (int)addNum1:(int)_num1 andNum2:(int)_num2
{
    return [super addNum1:_num1 andNum2:_num2] * 0.5;
}

虽然它有点笨重,而且命名约定已经关闭,我不会以这种方式存储数据和其他很多东西。但这将满足您的需要。

这是非常基本的面向对象编程。不完全是Obj-C

无论如何,如果希望C中的
addNum1:andNum2:
方法首先在B中运行该方法,然后像这样创建它

- (int)addNum1:(int)_num1 andNum2:(int)_num2
{
    return [super addNum1:_num1 andNum2:_num2] * 0.5;
}

虽然它有点笨重,而且命名约定已经关闭,我不会以这种方式存储数据和其他很多东西。但这将满足您的需要。

这是非常基本的面向对象编程。不完全是Obj-C

无论如何,如果希望C中的
addNum1:andNum2:
方法首先在B中运行该方法,然后像这样创建它

- (int)addNum1:(int)_num1 andNum2:(int)_num2
{
    return [super addNum1:_num1 andNum2:_num2] * 0.5;
}
虽然它有点笨重,而且命名约定已经关闭,我不会以这种方式存储数据和其他很多东西。但这会满足你的需要。

@suisied不道歉:)只是指出一些要看的东西。@suisied不道歉:)只是指出一些要看的东西。@suisied不道歉:)只是指出一些要看的东西。@suisied不道歉:)只是指出一些要看的东西。