线程游戏-飞机大战

来源:互联网 发布:彩虹自动发卡源码 编辑:程序博客网 时间:2024/06/10 15:14
线程游戏-飞机大战
1.运用ArrayList或者数组存放对象,在此用到了ArrayList存放对象。开辟新线程用于定时生成新的对象存放在ArrayList中,在主线程中循环取出ArrayList中的元素,达到并发效果
    private ArrayList<Bullet> mybulletlist = new ArrayList<Bullet>();            用于存放我方飞机的子弹
private ArrayList<Plane> enemyplanelist = new ArrayList<Plane>();    用于存放敌方飞机
private ArrayList<Bullet> enemybulletlist = new ArrayList<Bullet>();     用于存放敌方飞机子弹
private ArrayList<Bullet> bossbulletlist = new ArrayList<Bullet>();         用于存放boss子弹
private ArrayList<Rank> ranklist = new ArrayList<Rank>();                     用于存放排行榜中的数据

2.运用函数的重载提升代码的重用性,提高程序可读性,节省类似类的重复定义。
    在本程序中将敌机,我机,和boss飞机定义在同一个类的构造函数中,使用不同参数区分

public Plane(JPanel p,Graphics g){                //我方飞机构造方法
}
public Plane(Graphics g,JPanel p){   // boss飞机构造方法
}
public Plane(JPanel p){                                  // 敌人飞机构造方法
}
     我方子弹、敌方子弹、boss子弹在Bullet中用构造函数重载区别

public Bullet(int x,int y){                   //我方子弹的构造函数
}
public Bullet(ArrayList<Plane> enemyplanelist,ArrayList<Bullet> enemybulletlist){   //敌方子弹的构造函数
}
public Bullet(Plane bossplane){                   //Boss子弹的构造函数
}


3.IO流的使用,在java中,数据随着程序的关闭而销毁,若想保存数据这需要用到数据库或文件流存储,在此用到了文件流。
    使用到了原始流FileInputStream、FileOutputStream

                    处理流DataInputStream、DataOutputStream


0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 小孩在校被学生打家长该怎么办? 8岁儿童好动上课不注意听课怎么办 怀孕第一个月喝了啤酒怎么办 不知道自己怀孕喝了酒怎么办 怀孕一个月不知道喝酒了怎么办 老师说孩子上课不专心听讲怎么办 二年级孩子上课不认真听讲怎么办 二年级的孩子浮躁上课不认真怎么办 三年级的小孩上课不认真听讲怎么办 大班孩子上课不专心听讲玩怎么办 老师跟家长说小孩上课讲话怎么办 别的家长动手打自己的孩子怎么办? 一岁3个月宝宝骨龄偏小怎么办 宝宝9个月了越来越粘人怎么办? 孩子突然说话结巴口吃了怎么办啊 很久不说话了不敢说话了怎么办 宝宝2岁了还不会说话怎么办 2岁的宝宝还不会说话怎么办 小宝宝有四个月了母乳不够吃怎么办 一个月的宝宝吐奶厉害怎么办 新生儿吐奶吐一次吐的特别多怎么办 把孩子打了一次现在说话结巴怎么办 宝宝五岁了口吃越来越严重了怎么办 幼儿把自己的舌头扣破皮了怎么办 6岁宝贝烧到39度怎么办 2岁半的宝宝说话结巴怎么办 2周3宝宝不会说话胆小怎么办 宝宝我2岁多了说话有点结巴怎么办 两岁宝宝说话突然结巴了怎么办 两岁3宝宝叫她名字不理人怎么办 九个月的宝宝身高不达标怎么办 3岁宝宝又吐又拉怎么办 宝宝发烧39度怎么办手脚很烫 两岁宝宝吃什么吐什么怎么办 7岁宝宝吃多了吐怎么办 7个月的宝宝大便干燥怎么办 10个月宝宝便秘大便干燥怎么办 一岁半宝宝老是拉糊糊状大便怎么办 外阴部长了一个疙瘩有点痒怎么办 小孩打架被另一个小孩家人告怎么办 德保豆浆机有电但不工作怎么办