资源简介
运用JAVA制作的小程序,是个赛车游戏。简单易懂,适合初学JAVA的同学,代码不长。
代码片段和文件信息
import java.awt.*;
import java.applet.*;
import java.awt.event.*;
import java.awt.image.*;
import java.awt.geom.*;
import java.util.*;
class Car{
Image img;
int x y;
Dimension dim;
Car(Image img){
this.img=img;
}
Car(Image img int x int y){
this.img=img; this.x=x; this.y=y;
}
Car(Image img int x int y Dimension dim){
this(img x y);
this.dim=dim;
}
void draw(Graphics g ImageObserver observer){
g.drawImage(img x y observer);
}
int getX(){ return x;}
int getY(){ return y;}
void setX(int x){this.x=x;}
void setY(int y){this.y=y;}
void setLocation(int x int y){
this.x=x; this.y=y;
}
int getWidth(){ return img.getWidth(null);}
int getHeight(){ return img.getHeight(null);}
Rectangle2D getRectangle(){
return new Rectangle2D.Float(x y getWidth() getHeight());
}
void move(int dx int dy){
x+=dx;
y+=dy;
if(dim!=null){
if(x<0)x=0;
if(x+getWidth()>dim.getWidth())
x=(int)dim.getWidth()-getWidth();
}
}
boolean intersects(Car car){
return getRectangle().intersects(car.getRectangle());
}
boolean intersects(int x int y){
return getRectangle().intersects(x y getWidth() getHeight());
}
}
public class CarRace extends applet implements KeyListener Runnable{
Image buff;
Canvas screen;
Graphics2D gs gb;
Car redCar;
Car[] enemy=new Car[20];
Button bStart;
Thread game;
boolean loop=true;
Dimension dim=new Dimension(200 300);
int road;
Random rnd=new Random();
public void init(){
prepareResource();
setBackground(Color.blue);
initScreen();
add(screen);
bStart=new Button(“开始游戏“);
add(bStart);
bStart.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent ae){
screen.requestFocus();
if(!game.isAlive())
game.start();
}
});
}
void prepareResource(){
Image imgRed=getImage(getCodebase()“images/red_car.gif“);
Image imgBlue=getImage(getCodebase()“images/blue_car.gif“);
Image imgGreen=getImage(getCodebase()“images/green_car.gif“);
MediaTracker mt=new MediaTracker(this);
try{
mt.addImage(imgRed 0);
mt.addImage(imgBlue 1);
mt.addImage(imgGreen 2);
mt.waitForAll();
}catch(Exception e){}
buff=createImage((int)dim.getWidth() (int)dim.getHeight());
gb=(Graphics2D)buff.getGraphics();
redCar=new Car(imgRed 80250 dim);
for(int i=0;i<10;i++){
enemy[i]=new Car(imgBlue 0 0);
}
for(int i=10;i enemy[i]=new Car(imgGreen 0 0);
}
for(int i=0;i setEnemy(i);
}
game=new Thread(this);
}
public void stop(){
loop=false;
}
public void run(){
while(loop){
drawScreen();
try{ Thread.sleep(50);}catch(Exception e){}
}
}
voi
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 4865 2009-12-15 16:13 CarRace.java
文件 1449 2002-10-03 03:53 images\Green_Car.gif
文件 1401 2002-10-03 02:50 images\Red_Car.gif
文件 1446 2002-10-03 03:08 images\Blue_Car.gif
文件 130 2002-10-03 05:26 CarRace.htm
目录 0 2009-12-15 16:15 images
----------- --------- ---------- ----- ----
9291 6
相关资源
- JSP+JavaBean+Servlet实现分页技术
- 剑指Java面试-Offer直通车.txt
- (java).doc
- Java读取json文件并对json数据进行读取
- Compiler_mean3.rar
- Delphi与JAVA互加解密AES算法
- java面试题 IBM交通银行等一些外包的
- 小区物业管理系统JAVA+sqlserver
- Java泛型三篇文章,让你彻底理解泛型
- 用Java程序编写一个记事本程序的设计
- 把java项目安装为window服务
- 基于JavaSocket多客户端并发通信聊天程
- 五子棋(java)
- java程序设计实用教程_(第3版)_课后
- java实现分治法寻找最近点对
- java网上oa办公系统原码
- Java生成二维码
- jstl_standard的jar包
- 纯JAVA不用数据库的,用数组对数据增
- 用Java实现的Delaunay三角网和Voronoi图源
- 剑指offerjava版
- web开发工程师java简历模板
- 淘宝图片搜索基于Java语言实现的相似
- 疯狂Java讲义(第3版)PDF扫描版[304M
- java自动组卷系统
- java访问https网址文件
- 乙醇老师的57页详细讲解—webdriver实用
- 忽略字段的首字母大小写,将json字符
- JavaEE开发的颠覆者 Spring Boot实战 完整
- java写的学生信息管理系统
评论
共有 条评论