12、Objective-C 继承、多态、动态类型与动态绑定详解

Objective-C 继承、多态、动态类型与动态绑定详解

1. 继承扩展:添加新实例变量

在面向对象编程中,继承是一种强大的机制,它不仅允许我们为类添加新方法,还能添加新的实例变量。这种扩展是累积性的,通过继承,我们只能添加方法或实例变量,对于方法,还可以进行重写,但不能减少它们。

以简单的 ClassA ClassB 类为例,我们可以为 ClassB 添加一个新的实例变量 y

@interface ClassB: ClassA
{
    int  y;
}
-(void) printVar;
@end

尽管从上述声明看, ClassB 似乎只有一个实例变量 y ,但实际上它有两个:从 ClassA 继承的变量 x 和自身定义的 y

下面是一个完整的示例代码:

// Extension of instance variables
#import <Foundation/Foundation.h>

// Class A declaration and definition
@interface ClassA: NSObject
{
    int  x;
}
-(void) initVar;
@end

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值