1 总体需求分析
1.1 类
1、主类
2、我方飞机类
3、线程类
2.2 效果图

2 实现
2.1 飞机类 MyPlane
飞机类包括以下参数:
位置x、y
速度vx、vy
图片图标myicom:设置为飞机的图片
飞机类包括以下方法:
有参构造方法:初始化x、y,保证第一次绘制飞机能够有坐标
public MyPlane(int x, int y) { this.x = x; this.y = y; }
绘制飞机方法:用参数画笔g来绘制飞机,再更新vx和vy,
public void drawPlane(Graphics g) { g.drawImage(myicon.getImage(), x, y, null); x += vx; y += vy; }
代码:
package com.java8.planewarsV1;
import javax.swing.*;
import java.awt.*;
public class MyPlane {
private int x, y;
private int vx, vy;
private ImageIcon myicon = new ImageIcon(this.getClass().getResource("PaperPlane.png"));
/**
* 我方飞机的构造函数
* @param x:绘制坐标x
* @param y:绘制坐标y
*/
public MyPlane(int x, int y) {
this.x = x;
this.y = y;
}
/**
* 绘制飞机对象的函数,每次调用,则绘制一次飞机
* @param g:画笔
*/
public void drawPlane(Graphics g) {
g.drawImage(myicon.getImage(), x, y, null);
x += vx;
y += vy;
}
/**
* setVx
* setVy
* 用于在按键后,设置其每次移动的大小,并在释放的时候清0
* @param vx
*/
public void setVx(int vx) {
this.vx = vx;
}
public void setVy(in

本文档详细介绍了如何使用Java编程实现一个简单的飞机大战游戏。首先进行总体需求分析,包括主类、飞机类和线程类的设计。接着展示了飞机类的实现,包括飞机的位置、速度和图片图标等属性,以及绘制飞机的方法。然后,阐述了主界面类GameUI,包括界面创建、键盘监听器以及按空格键开始游戏和控制飞机运动的逻辑。最后,介绍了MyThread线程类,用于按一定频率绘制背景和飞机,使用缓冲技术解决画面闪烁问题。
最低0.47元/天 解锁文章
1137

被折叠的 条评论
为什么被折叠?



