码迷,mamicode.com
首页 > 移动开发 > 详细

蓝懿 iOS 多态

时间:2015-12-25 21:07:12      阅读:179      评论:0      收藏:0      [点我收藏+]

标签:

今天上午讲了多态,多态主要讲了一个性质:父类生成的对象可以用子类来初始化,而子类声明的对象不能用父类来初始化,举个例子:person 为父类,man 和 woman为person的两个子类,woman可以来初始化person声名的对象,而person却不能初始化woman声明的对象,这是由于woman具有父类person具有的一切属性和方法,而person却不一定具有woman的特性与方法,所以不能初始化子类woman声明的对象;

    下午主要讲了数组的基本内容:
1、数组的声明:数组分为静态数组和动态数组,静态数组命名为:NSArray * as = [NSArray arrayWithObjects:@"张",@"王" ,@"李",@"赵",nil];
动态数组的命名为:NSMutableArray * bs= [NSMutableArray array];
2、数组的调用:数组中的每个对象都有相应的编号,从0开始一次递增,数组的调用有两种方式:[NSString * a = [as objectAtIndex:3  ];和 NSString * b = as[2];
3、数组的赋值:[bs addObject:@"孙"];
4、数组内容的删除: NSString * name = bs[1];  [bs removeObject:name];
5、数组的遍历:数组的遍历当需要数组的位置时用for ,不需要位置时用for  in  ,for in执行时刚开始就把要遍历的次数确定了,如果在遍历过程中把数组的内容更改了遍历将不能继续进行下去,系统报错;两种方法如下:

//遍历数组方法一

    for (int i = 0; i<<span >3; i++) {

        NSString * c = bs[i];

        NSLog(@"%@",c );

    }

    //遍历数组第二种方法

    for (NSString* d in bs) {

        NSLog(@"%@",d);

    }

奉上今天的作业,看看大家会做出来吗?

作业步骤:

1.创建一个父类僵尸Zomb 在父类僵尸中写换图片和移动僵尸的代码 把多种僵尸间不同的图片用一个变量来表示  把速度也用一个变量speed表示

2.创建子类僵尸ZombA-D  继承Zomb 在子类僵尸中给图片变量赋值 给speed赋值

 

3.界面中添加一个发射按钮  

4.点击按钮的时候创建一个子弹ImageView 添加到界面中并且添加到一个属性数组中 

5.在ViewDidLoad里面开启一个Timer 每隔一段时间去调用一个moveAction方法

6.在moveAction方法中遍历每一个子弹 并移动子弹

7.在ViewDidload方法中 开启一个添加僵尸的Timer 每隔1秒钟随机添加一个僵尸,并且把添加到界面的僵尸添加到一个属性数组中

8.在moveAction中 每移动完子弹  遍历数组中每一个僵尸和子弹数组中每一个子弹判断是否碰撞,如果碰撞 删除子弹和僵尸 并且从数组中删除 删除之后切记 return

9.碰撞到僵尸的时候根据不同的僵尸类型统计得分 用一个label展示出来

10.发射一发子弹 让记录子弹数量的label -1   如果打到僵尸 再让label+1  

 

11.每次发射子弹要判断 子弹数量是否大于0 大于0才允许发射

蓝懿 iOS 多态

标签:

原文地址:http://www.cnblogs.com/hahahahahaha/p/5076906.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!