OC基础学习日志

本文通过一个Objective-C的汽车类(Car)及其子类出租车(Taxi)的实例,详细展示了如何实现继承,并提供了完整的代码实现。该示例包括了父类Car的基本属性和方法,以及子类Taxi如何覆盖父类的方法。

继承部分典型例题:(主要以汽车Car为父类,Taxi为子类)

主文件main.m内容

#import <Foundation/Foundation.h>
#import "Car.h"
#import "Taxi.h"

int main(int argc, const char * argv[]) {
    @autoreleasepool {
        Car *newCar = [Car new];
        [newCar setNumber:3];
        [newCar setSpeed:156];
        [newCar run];
        
        Taxi *newTaxi = [Taxi new];
        [newTaxi setNumber:6];
        [newTaxi setSpeed:80];
        [newTaxi run];

    }
    return 0;
}

父类文件Car.h内容

#import <Foundation/Foundation.h>

@interface Car : NSObject
{
    int _number;
    int _speed;
}

-(void)setNumber:(int)number;
-(void)setSpeed:(int)speed;
-(void)run;

@end

父类文件Car.m内容

#import "Car.h"

@implementation Car

-(void)setNumber:(int)number
{
    _number = number;
}
-(void)setSpeed:(int)speed;
{
    _speed = speed;
}
-(void)run
{
    NSLog(@"这是Car中的run方法,%d号车跑起来了,本车时速为%dkm/h",_number,_speed);
}

@end

子类文件Taxi.h内容

#import <Foundation/Foundation.h>
#import "Car.h"

@interface Taxi : Car
-(void)run;
@end

子类文件Taxi.m内容

#import "Taxi.h"

@implementation Taxi
-(void)run{
//    [super run];
    NSLog(@"这是Taxi中的run方法,%d号车跑起来了,本车时速为%dkm/h",_number,_speed);
}
@end


转载于:https://my.oschina.net/AnyiLi/blog/515383

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值