博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
OC:打僵尸问题(类的问题)
阅读量:7061 次
发布时间:2019-06-28

本文共 2735 字,大约阅读时间需要 9 分钟。

1、定义普通僵尸类:

 实例变量:僵尸种类、僵尸总血量、僵尸每次失血量。

 方法:初始化方法(设置僵尸种类,总血量)、被打击失血、死亡。

   2、定义路障僵尸类:

 实例变量:僵尸种类、僵尸总血量、僵尸每次失血量,道具,弱点。

  方法:初始化方法(设置僵尸种类,总血量)、被打击失血、失去装备、死亡。

3、定义铁桶僵尸类:

  实例变量:僵尸种类、僵尸总血量、僵尸每次失血量,道具,弱点。

  方法:初始化方法(设置僵尸种类,总血量)、被打击失血、失去装备、死亡。

4、在main.m中创建普通僵尸对象,设置总血量50,每次失血量为 3,没有道具。

5、在main.m中创建路障僵尸对象,设置总血量80,每次失血量为 2,设置道具为路障。

6、在main.m中创建铁桶僵尸对象,设置总血量120,每次失血量为 1,设置道具为铁桶。

main.m文件

 

#import #import "CommonZombie.h"#import "BarrierZombie.h"#import "BucketZombie.h"int main(int argc, const char * argv[]){    @autoreleasepool {            //创建普通僵尸对象        CommonZombie *xiaoGuang = [[CommonZombie alloc] initWithKind:@"普通僵尸" totalBlood:50];        //设置每次失血量        [xiaoGuang setReduceBlood:3];                //创建路障僵尸        BarrierZombie *xiaoMeng = [[BarrierZombie alloc] initWithKind:@"路障僵尸" totalBlood:80];        //设置每次失血量        [xiaoMeng setReduceBlood:2];        //设置装备        [xiaoMeng setProp:@"路障"];                //创建铁桶僵尸        BucketZombie *xiaoCui = [[BucketZombie alloc] initWithKind:@"铁桶僵尸" totalBlood:120];        //设置每次失血量        [xiaoCui setReduceBlood:1];        //设置装备        [xiaoCui setProp:@"铁桶"];    }    return 0;}

 

普通僵尸CommonZombie.m文件

 

#import "CommonZombie.h"@implementation CommonZombie//customized init method- (id)initWithKind:(NSString *)kind totalBlood:(NSInteger)totalBlood{    _kind = kind;    _totalBlood = totalBlood;    return self;}//失血- (void)loseBlood{    NSLog(@"哎呀,哎呀,要死啦要死啦,掉了3滴血");    _totalBlood -= _reduceBlood;}//死亡- (void)death{    NSLog(@"哎呀,哎呀,死啦死啦,这次是真死啦");}//设置每次的失血量- (void)setReduceBlood:(NSInteger)reduceBlood{    _reduceBlood = reduceBlood;}@end

 

路障僵尸BarrierZombie.m


#import "BarrierZombie.h"@implementation BarrierZombie//customized init method- (id)initWithKind:(NSString *)kind totalBlood:(NSInteger)totalBlood{    _kind = kind;    _totalBlood = totalBlood;    return self;}//失血- (void)loseBlood{    NSLog(@"哎呀,哎呀,要死啦要死啦,掉了3滴血");    _totalBlood -= _reduceBlood;}//死亡- (void)death{    NSLog(@"哎呀,哎呀,死啦死啦,这次是真死啦");}//失去装备- (void)loseProp{    NSLog(@"哎呀,哎呀,要死啦,要死啦,装备没了");}//设置每次的失血量- (void)setReduceBlood:(NSInteger)reduceBlood{    _reduceBlood = reduceBlood;}//设置装备- (void)setProp:(NSString *)prop{    _prop = prop;}@end


铁桶僵尸BucketZombie.m

#import "BucketZombie.h"@implementation BucketZombie//customized init method- (id)initWithKind:(NSString *)kind totalBlood:(NSInteger)totalBlood{    _kind = kind;    _totalBlood = totalBlood;    return self;}//失血- (void)loseBlood{    NSLog(@"哎呀,哎呀,要死啦要死啦,掉了3滴血");    _totalBlood -= _reduceBlood;}//死亡- (void)death{    NSLog(@"哎呀,哎呀,死啦死啦,这次是真死啦");}//失去装备- (void)loseProp{    NSLog(@"哎呀,哎呀,要死啦,要死啦,装备没了");}//设置每次的失血量- (void)setReduceBlood:(NSInteger)reduceBlood{    _reduceBlood = reduceBlood;}//设置装备- (void)setProp:(NSString *)prop{    _prop = prop;}@end

转载地址:http://xubll.baihongyu.com/

你可能感兴趣的文章
FatMouse' Trade
查看>>
jQuery 选择器项目实例
查看>>
osg反走样
查看>>
java的三元运算符
查看>>
MySQL知识
查看>>
Mybatis中的关系映射及懒加载机制
查看>>
中断上半部与下半部
查看>>
About Me
查看>>
FluentNHibernate当数据库设置默认值时,使用插入操作,导致默认值没有写入问题...
查看>>
Uva 11183 - Teen Girl Squad (最小树形图)
查看>>
MySQL基础值 存储过程和函数
查看>>
IOS笔记-C语言中的指针
查看>>
jstack和线程dump分析
查看>>
移动端前端适配方案20170707
查看>>
dubbo开发前戏--ZooKeeper集群部署(3.4.6)
查看>>
淘宝网质量属性
查看>>
Silverlight DoubleClickHelper 双击事件模拟类
查看>>
函数进阶
查看>>
一个打开文件时可以改进的细节(window,linux都有这个问题)
查看>>
保护模式下的特权级转换总结
查看>>