java实现飞机大战

准备工作

  1. 理解java中的面向对象
  2. 理解GUI编程
  3. 理解多线程的使用
  4. java中集合的使用

实体类

  • 背景类
public class BackGround {
   
    //设置背景图标的坐标和宽、高
    private int x;
    private int y;
    private int width;
    private int height;
    //获取背景图标
    private ImageIcon icon=new ImageIcon("src\\image\\bg.jpg");

    public BackGround(int x, int y) {
   
        this.x = x;
        this.y = y;
        //获取背景图标的固定宽度
        this.width = icon.getIconWidth();
        //获取背景图标的固定高度
        this.height = icon.getIconHeight();
    }

    public int getX() {
   
        return x;
    }

    public int getY() {
   
        return y;
    }

    public ImageIcon getIcon() {
   
        return icon;
    }

    //设置背景图标移动的方法(每次移动1像素)
    public void move(){
   
        this.y+=1;
    }
}
  • 爆炸类
public class Bomb {
   
    //设置爆炸的坐标
    private int x;
    private int y;
    //设置爆炸效果停留多长时间
    public int time;
    //获取爆炸图标
    private ImageIcon icon=new ImageIcon("src\\image\\bomb.png");

    public void setTime(int time) {
   
        this.time = time;
    }

    public Bomb(int x, int y, int time) {
   
        this.x = x;
        this.y = y;
        this.time=time;
    }

    public int getX() {
   
        return x;
    }

    public int getY() {
   
        return y;
    }


    public ImageIcon getIcon() {
   
        return icon;
    }

}
  • 子弹类
public class Bullet {
   
    //子弹的坐标和宽、高
    private int x;
    private int y;
    private int width;
    private int height;
    //获取子弹的图标
    private ImageIcon icon=new ImageIcon("src\\image\\bullet.png");

    public Bullet(int x, int y) {
   
        this.x = x;
        this.y = y;
        //获取子弹图标固定宽度
        this.width = icon.getIconWidth();
        //获取子弹图标的固定高度
        this.height = icon.getIconHeight();
    }

    public int getX() {
   
        return x;
    }

    public int getY() {
   
        return y;
    }

    public int getWidth() {
   
        return width;
    }

    public int getHeight() {
   
        return height;
    }

    public ImageIcon getIcon() {
   
        return icon;
    }
    //子弹移动的方法(每次向上移动3像素)
    public void move(){
   
        this.y-=3;
    }
}
  • 敌机类
public class Enemy {
   
    //敌机的坐标和宽、高
    private int x;
    private int y;
    private int width;
    private int height;
    //获取敌机图标
    private ImageIcon icon=new ImageIcon("src\\image\\enemy.png");

    public Enemy(int x, int y) {
   
        this.x = x;
        this.y = y;
        //获取敌机图标固定的宽度
        this.width = icon.getIconWidth();
        //获取敌机图标的固定高度
        this.height = icon.getIconHeight();
    }

    public int getX() {
   
        return x;
    }

    public int getY() {
   
        return y;
    }

    public int getWidth() {
   
        return width;
    }

    public int getHeight() {
   
        return height;
    }

    public ImageIcon getIcon() {
   
        return icon;
    }
    //敌机移动的方法(每次移动4像素)
    public void move(){
   
        this.y+=4;
    }
}
  • 英雄飞机摧毁类
public class HeroDestroy
  • 4
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值