首页 > 其他 > 详细

OC基础学习日志

时间:2015-10-12 19:31:09      阅读:148      评论:0      收藏:0      [点我收藏+]

课后练习题

定义Car,Bus,Truck为例题

main.m

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

int main(int argc, const char * argv[]) {
    @autoreleasepool {
        Car *car = [Car new];
        [car setWheel:22];
        [car setSpeed:33];
        [car describeCar:car];
    
        Bus *bus = [Bus new];
        [bus setWheel:14];
        [bus setSpeed:33];
        [bus setSeat:44];
        [bus describeBus:bus];
        
        Truck *truck = [Truck new];
        [truck setWheel:15];
        [truck setSpeed:56];
        [truck setWeight:99];
        [truck describeTruck:truck];
      
    }
    return 0;
}

Car.h

#import <Foundation/Foundation.h>

@interface Car : NSObject
{
    int _wheel;
    int _speed;
}
-(void)setWheel:(int)wheel;
-(void)setSpeed:(int)speed;
-(void)describeCar:(Car *)car;
@end

Car.m

#import "Car.h"

@implementation Car
-(void)setWheel:(int)wheel
{
    _wheel = wheel;
}
-(void)setSpeed:(int)speed
{
    _speed = speed;
}
-(void)describeCar:(Car *)car;
{
    NSLog(@"Car wheel is %d,Speed is %d km/h",_wheel,_speed);
}

@end

Bus.h

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

@interface Bus : Car
{
    int _seat;
}
-(void)setSeat:(int)seat;
-(void)describeBus:(Car *)bus;

@end

Bus.m

#import "Bus.h"

@implementation Bus
-(void)setSeat:(int)seat
{
    _seat = seat;
}
-(void)describeBus:(Car *)bus;
{
    NSLog(@"Bus wheel is %d,Speed is %d km/h,Seat is %d ",_wheel,_speed,_seat);
}
@end

Truck.h

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

@interface Truck : Car
{
    int _weight;
}

-(void)setWeight:(int)weight;
-(void)describeTruck:(Car *)truck;

@end

Truck.m

#import "Truck.h"

@implementation Truck

-(void)setWeight:(int)weight
{
    _weight = weight;
}
-(void)describeTruck:(Car *)truck;
{
    NSLog(@"Bus wheel is %d,Speed is %d km/h,weight is %d kg",_wheel,_speed,_weight);
}

@end

输出结果:

2015-10-12 18:20:09.872 继承多态练习(车)[1264:698570] Car wheel is 22,Speed is 33 km/h

2015-10-12 18:20:09.873 继承多态练习(车)[1264:698570] Bus wheel is 14,Speed is 33 km/h,Seat is 44 

2015-10-12 18:20:09.873 继承多态练习(车)[1264:698570] Bus wheel is 15,Speed is 56 km/h,weight is 99 kg


OC基础学习日志

原文:http://my.oschina.net/AnyiLi/blog/516002

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!