线程游戏-飞机大战

    xiaoxiao2021-03-25  105

    线程游戏-飞机大战 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

    转载请注明原文地址: https://ju.6miu.com/read-10059.html

    最新回复(0)