
正文
java小游戏代码窗口 java小游戏代码大全
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
求用java写一个简单的小游戏窗口的代码
分情况看:
(1)如果你没用非官方集成的开发环境的话,首先在你电脑上装个JDK,然后设置下电脑环境变量,里面有PATH和CLASSPATH这两个参数,具体怎么设置呢?就是把安装目录的地址拷贝到里面就好了,略有不同这两个参数的设置.安装完成后,把源代码文件的目录记下,源代码拷贝到记事本上,把后缀名改成".java";打开CMD窗口,先执行"javac 文件名.java"命令,在目录下会生成一个".class"的文件,那是编译生成的文件,如果顺利通过编译,说明源代码没错误,OK,你再执行"java 文件名.class"就执行程序了.
相关问答
Q1: 求一个简单又有趣的JAVA小游戏代码
具体如下java小游戏代码窗口:
连连看java小游戏代码窗口的小源码
package Lianliankan;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class lianliankan implements ActionListener
{
JFrame mainFrame; //主面板
Container thisContainer;
JPanel centerPanel,southPanel,northPanel; //子面板
JButton diamondsButton[][] = new JButton[6][5];//游戏按钮数组
JButton exitButton,resetButton,newlyButton; //退出java小游戏代码窗口,重列java小游戏代码窗口,重新开始按钮
JLabel fractionLable=new JLabel("0"); //分数标签
JButton firstButton,secondButton; //
分别记录两次62616964757a686964616fe59b9ee7ad9431333335326239被选中的按钮
int grid[][] = new int[8][7];//储存游戏按钮位置
static boolean pressInformation=false; //判断是否有按钮被选中
int x0=0,y0=0,x=0,y=0,fristMsg=0,secondMsg=0,validateLV; //游戏按钮的位置坐标
int i,j,k,n;//消除方法控制
代码(code)是程序员用开发工具所支持的语言写出来的源文件,是一组由字符、符号或信号码元以离散形式表示信息的明确的规则体系。
对于字符和Unicode数据的位模式的定义,此模式代表特定字母、数字或符号(例如 0x20 代表一个空格,而 0x74 代表字符“t”)。一些数据类型每个字符使用一个字节java小游戏代码窗口;每个字节可以具有 256 个不同的位模式中的一个模式。
在计算机中,字符由不同的位模式(ON 或 OFF)表示。每个字节有 8 位,这 8 位可以有 256 种不同的 ON 和 OFF 组合模式。对于使用 1 个字节存储每个字符的程序,通过给每个位模式指派字符可表示最多 256 个不同的字符。2 个字节有 16 位,这 16 位可以有 65,536 种唯一的 ON 和 OFF 组合模式。使用 2 个字节表示每个字符的程序可表示最多 65,536 个字符。
单字节代码页是字符定义,这些字符映射到每个字节可能有的 256 种位模式中的每一种。代码页定义大小写字符、数字、符号以及 !、@、#、% 等特殊字符的位模式。每种欧洲语言(如德语和西班牙语)都有各自的单字节代码页。
虽然用于表示 A 到 Z 拉丁字母表字符的位模式在所有的代码页中都相同,但用于表示重音字符(如"é"和"á")的位模式在不同的代码页中却不同。如果在运行不同代码页的计算机间交换数据,必须将所有字符数据由发送计算机的代码页转换为接收计算机的代码页。如果源数据中的扩展字符在接收计算机的代码页中未定义,那么数据将丢失。
如果某个数据库为来自许多不同国家的客户端提供服务,则很难为该数据库选择这样一种代码页,使其包括所有客户端计算机所需的全部扩展字符。而且,在代码页间不停地转换需要花费大量的处理时间。
Q2: 急求一个java的躲避弹球小游戏的代码
import java.awt.*;
import java.awt.event.*;
import java.util.Random;
import javax.swing.Timer;
public class PinBall
{
private final int TABLE_WIDTH = 300;//桌面宽度
private final int TABLE_HEIGHT = 400;//桌面高度
private final int RACKET_Y = 340;//球拍java小游戏代码窗口的垂直位置
private final int RACKET_HEIGHT = 20;//球拍高度
private final int RACKET_WIDTH = 60;//球拍宽度
private final int BALL_SIZE = 16;//球java小游戏代码窗口的大小
private Frame f = new Frame("弹球游戏");//实例化一个窗口
Random rand = new Random();//实例化一个随机数生成器
private int ySpeed = 10;//小球的纵向运动数度、
private double xyRate = rand.nextDouble() - 0.5;//返回一个-0.5到0.5之间的比率用控制小球运动方向
private int xSpeed = (int)(ySpeed*xyRate*2);//这个横向速度在-10到10之间,产生左右摆动运动效果
private int ballX = rand.nextInt(200)+20;//小球开始的横坐标位置,200表示产生0到100之间的随机数
private int ballY = rand.nextInt(10)+20;//小球开始的纵坐标位置
private int racketX = rand.nextInt(200);//球拍开始时的横坐标位置
private MyCanvas tableArea = new MyCanvas();//实力化一个画布工具,集成Canvas类
private String shape = "";//保存需要绘制图形的字符串属性
Timer timer;//声明一个时间变量
private boolean isLose = false;//表示游戏是否结束
public void init()
{
tableArea.setPreferredSize(new Dimension(TABLE_WIDTH,TABLE_HEIGHT));//定义画布大小
f.add(tableArea);//添加画布到窗口
KeyAdapter keyProcessor = new KeyAdapter()//实例化一个键盘监听事件适配器
{
public void keyPressed(KeyEvent ke)//重写适配器里面的按下某键盘方法
{
if(ke.getKeyCode()==KeyEvent.VK_LEFT)//按下键盘左键时
{
if(racketX 0)//球拍左边框不能出画布的左边框
racketX -=10;//按一左键次向左移动10个像素
}
if(ke.getKeyCode()==KeyEvent.VK_RIGHT)//按下键盘右键时
{
if(racketX TABLE_WIDTH - RACKET_WIDTH)//球拍右边框不能出画布的右边框
racketX +=10;//按一次右键移动向右移动10个像素
}
}
};
f.addKeyListener(keyProcessor);//给窗口添加键盘监听器
tableArea.addKeyListener(keyProcessor);//给画布添加键盘监听器
ActionListener taskPerformer = new ActionListener()//这里是实例化java小游戏代码窗口了一个监听接口,这个接口里面只有一个方法
{
public void actionPerformed(ActionEvent evt)//重写这个接口里面的方法,判断小球的位置
{
if(ballX=0 || ballX=TABLE_WIDTH-BALL_SIZE)//保证小球横向上在画布之内运动
{
xSpeed = -xSpeed;//触发反方向运动
}
if(ballY=RACKET_Y-BALL_SIZE(ballXracketX||ballXracketX+RACKET_WIDTH))//出了球拍的可击打范围
{
timer.stop();//停止对监听器的触发
isLose=true;//将标志isLose变量置为true
tableArea.repaint();//调用画布的重绘方法
}
else if(ballY=0||(ballY=RACKET_Y-BALL_SIZEballYracketXballX=racketX+RACKET_WIDTH))//小球在球拍之内,而其到达球拍的高度
{
ySpeed=-ySpeed;//上下方向改变,小球反弹
}
ballY+=ySpeed;//小球的坐标在纵向上增加
ballX+=xSpeed;//小球的坐标在横向上的增加
tableArea.repaint();//调用画布的重绘方法3
}
};
timer = new Timer(100,taskPerformer);//每隔0.1秒运行一次监听器
timer.start();//计时器开始运行
f.addWindowListener(new MyListener());//关闭窗口事件
f.pack();//设置窗口最佳大小
f.setVisible(true);//显示窗口
}
class MyListener extends WindowAdapter//关闭窗口的类
{
public void windowClosing(WindowEvent e)
{
System.exit(0);
}
}
public static void main(String[] args)//程序入口
{
new PinBall().init();//调用PinBall类里面的init()方法
}
class MyCanvas extends Canvas//建一个集成Canvas类的类
{
public void paint(Graphics g)//重写父类的绘图方法
{
if(isLose)//如果isLose为真,则在画布里打印“游戏已结束”
{
g.setColor(new Color(255,0,0));//当前颜色
g.setFont(new Font("黑体",Font.BOLD,30));//字体名称,样式,大小
g.drawString("游戏已结束!",50,200);//按坐标绘制文字图形
}
else//负责
{
g.setColor(new Color(240,240,80));//当前颜色
g.fillOval(ballX,ballY,BALL_SIZE,BALL_SIZE);//填充颜色,根据坐标和长宽填充圆形
g.setColor(new Color(80,80,200));//当前颜色
g.fillRect(racketX,RACKET_Y,RACKET_WIDTH,RACKET_HEIGHT);//填充颜色,根据坐标和长宽填充矩形
}
}
}
}
Q3: 紧急!!!用java做一个小游戏有窗口的。。
/*
将以下代码保存为MainFrame.java JDK1.6编译通过
保存我没有做,也不难。方法我已经空下了,你可以自己写写试试.
把txtGuessRecord.getText()的内容写到文件里就行了
*/
import java.awt.Dimension;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Locale;
import java.util.Random;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import java.util.regex.PatternSyntaxException;
import javax.swing.Box;
import javax.swing.BoxLayout;
import javax.swing.JButton;
import javax.swing.JComboBox;
import javax.swing.JFormattedTextField;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
import javax.swing.SwingUtilities;
import javax.swing.UIManager;
import javax.swing.text.DefaultFormatter;
public class MainFrame extends JFrame implements ActionListener {
/**
*
*/
private static final long serialVersionUID = 1L;
/**
* @param args
*/
private JLabel lblResult;
private JLabel lblInfo;
private JFormattedTextField txtInput;
private JTextArea txtGuessRecord;
private JButton btnGuess;
private JButton btnRestart;
private JButton btnClear;
private JButton btnSave;
private JComboBox cbType;
// 是否正确
private boolean isRight = false;
// 最大次数
private static final int MAX_TIME = 5;
// 当前猜测的次数
private static final int NUM = 0;
private static final int LETTER = 1;
private static int current_time = 0;
// 当前题目
private char current_puzzle = ' ';
// 用户回答
private char player_answer = ' ';
public MainFrame() {
initComponent();
setPreferredSize(new Dimension(450, 220));
pack();
setVisible(true);
setTitle("猜谜游戏");
setDefaultCloseOperation(DISPOSE_ON_CLOSE);
try {
UIManager
.setLookAndFeel(new com.sun.java.swing.plaf.windows.WindowsLookAndFeel());
SwingUtilities.updateComponentTreeUI(MainFrame.this);
} catch (Exception ex) {
}
}
// 初始化组件
private void initComponent() {
lblResult = new JLabel();
lblInfo = new JLabel("准备好了吗?", JLabel.LEFT);
txtGuessRecord = new JTextArea(5, 30);
btnGuess = new JButton("猜一下");
btnRestart = new JButton("开始");
btnClear = new JButton("清除");
btnSave = new JButton("保存");
String[] item = new String[] { "数字", "字母" };
cbType = new JComboBox(item);
cbType.setMaximumSize(new Dimension(70, 20));
String ps = "[a-zA-Z\\d]";
Pattern p = Pattern.compile(ps);
txtInput = new JFormattedTextField(new RegexFormatter(p));
txtInput.setMaximumSize(new Dimension(55, 20));
txtInput.setMinimumSize(new Dimension(55, 20));
btnRestart.addActionListener(this);
btnGuess.addActionListener(this);
btnClear.addActionListener(this);
btnGuess.setEnabled(false);
txtGuessRecord.setEditable(false);
setLayout(new BoxLayout(getContentPane(), BoxLayout.PAGE_AXIS));
Box mainBox = Box.createVerticalBox();
add(mainBox);
setText('?');
mainBox.add(lblResult);
Box box = Box.createHorizontalBox();
box.add(lblInfo);
mainBox.add(box);
Box b = Box.createHorizontalBox();
b.add(txtInput);
Box hBox = Box.createHorizontalBox();
hBox.add(b);
hBox.add(btnGuess);
hBox.add(Box.createHorizontalStrut(3));
hBox.add(btnRestart);
hBox.add(Box.createHorizontalStrut(3));
hBox.add(btnClear);
hBox.add(Box.createHorizontalStrut(3));
hBox.add(btnSave);
hBox.add(Box.createHorizontalStrut(3));
hBox.add(cbType);
mainBox.add(hBox);
JScrollPane scroll = new JScrollPane(txtGuessRecord);
mainBox.add(scroll);
}
@Override
public void actionPerformed(ActionEvent e) {
if (e.getSource() == btnRestart) {
// 重玩
restart();
} else if (e.getSource() == btnGuess)
// 猜
guess();
else if (e.getSource() == btnClear)
// 清除
clear();
else if (e.getSource() == btnSave)
save();
}
// 设置显示答案
private void setText(char c) {
StringBuilder sb = new StringBuilder();
sb.append("htmlfont size = 72 color = redcenter");
sb.append(c);
sb.append("/center/font/html");
lblResult.setText(sb.toString());
}
// 创建随机字符
private char createRandomChar(int type) {
Random rand = new Random();
int low = 0;
int range = 0;
switch (type) {
case NUM:
low = (int) '0';
range = (int) '9' - low + 1;
break;
case LETTER:
low = (int) 'A';
range = (int) 'Z' - low + 1;
break;
}
int i = rand.nextInt(range) + low;
char c = (char) i;
return c;
}
// 向记录框中输出时间
private void recordTime() {
Date date = new Date();
SimpleDateFormat formater = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss",
Locale.US);
String sd = formater.format(date);
txtGuessRecord.append(sd);
}
private void guess() {
if (txtInput.getValue() == null)
return;
// 用户的答案
player_answer = Character.toUpperCase(txtInput.getValue().toString()
.charAt(0));
// 判断答案
if (player_answer current_puzzle)
txtGuessRecord.append("小了\n");
else if (player_answer current_puzzle)
txtGuessRecord.append("大了\n");
else {
txtGuessRecord.append("正确\n");
isRight = true;
}
// 猜了一次
++current_time;
// 显示游戏信息
showInfo();
if (isRight || current_time = MAX_TIME)
stop();
}
// 重新开始
private void restart() {
// 记录时间
recordTime();
txtGuessRecord.append(" 游戏开始\n");
// 状态清零
current_time = 0;
btnGuess.setEnabled(true);
isRight = false;
current_puzzle = createRandomChar(cbType.getSelectedIndex());
setText('?');
showInfo();
}
// 停止游戏
private void stop() {
btnGuess.setEnabled(false);
setText(current_puzzle);
// 正确的情况
if (isRight) {
String info = String.format("你用了%d次猜对了\n", current_time);
txtGuessRecord.append(info);
} else
// 超过次数的情况
txtGuessRecord.append("你输了\n");
recordTime();
txtGuessRecord.append(" 游戏结束\n");
}
// 显示游戏信息
private void showInfo() {
String info = String.format("已经猜了%d次, 还剩 %d次 ", current_time,
MAX_TIME - current_time);
lblInfo.setText(info);
}
// 清空记录框
private void clear() {
txtGuessRecord.setText("");
}
private void save() {
// 尚未实现
}
public static void main(String[] args) {
// TODO Auto-generated method stub
SwingUtilities.invokeLater(new Runnable() {
public void run() {
new MainFrame();
}
});
}
// 正则格式类, 文本框匹配用
class RegexFormatter extends DefaultFormatter {
/**
*
*/
private static final long serialVersionUID = 1L;
private Pattern pattern;
private Matcher matcher;
public RegexFormatter() {
super();
}
public RegexFormatter(String pattern) throws PatternSyntaxException {
this();
setPattern(Pattern.compile(pattern));
}
public RegexFormatter(Pattern pattern) {
this();
setPattern(pattern);
}
public void setPattern(Pattern pattern) {
this.pattern = pattern;
}
public Pattern getPattern() {
return pattern;
}
protected void setMatcher(Matcher matcher) {
this.matcher = matcher;
}
protected Matcher getMatcher() {
return matcher;
}
public Object stringToValue(String text) throws ParseException {
Pattern pattern = getPattern();
if (pattern != null) {
Matcher matcher = pattern.matcher(text);
if (matcher.matches()) {
setMatcher(matcher);
return super.stringToValue(text);
}
throw new ParseException("Pattern did not match", 0);
}
return text;
}
}
}
Q4: java课程设计创意小游戏
① 求Java课程设计—小游戏(含源代码)
//hi./srxboys/item/8ce4743da1adc991c2cf29c4
Tank——坦克大战(简洁版)源代码-------(此文档是自己在韩顺平教程总结而来)
*功能:1.防止敌人的坦克重叠运动
*(决定把判断是否碰撞的函数写到EnemyTank类)
*2.可以分关
*2.1(做一个开始的Panel,它是一个空的)
*2.2开始字体闪烁
*3.可以在玩游戏的时候,暂停和继续
*3.1当用户点击暂停时,子弹的速度和坦克速度设为0,并让坦克的方向
*不要发生变化。
*4.可以记录玩家的成绩
*4.1用文件流的方式(小游戏)[大游戏是用的数据库cs,bs结构,三国]
*4.2单写一个记录类,完成对玩家的记录
*4.3先完成保存共击毁了多少辆敌人坦克的功能
*4.4存盘退出游戏,可以记录当时的敌人的坦克坐标,并可以恢复
*5.java如何操作声音文件
*/
② JAVA课程设计,求个能用eclipse实现小游戏或小程序的源代码。感激不尽
你自己来去下自载吧,这里面都有 //oschina/project/java
③ 用JAVA编写一个小游戏
前天写的猜数字游戏,yongi控制猜测次数,有详细解析,用黑窗口可以直接运行,
我试验过了,没问题
import javax.swing.Icon;
import javax.swing.JOptionPane;
public class CaiShuZi4JOptionPane {
/**
* @param args
*/
public static void main(String[] args) {
Icon icon = null;
boolean bl = false;
int put = 0;
int c = (int) (((Math.random())*100)+1); //获取一个1-100的随机数
System.out.println("你获取的随机数是:"+c); //打印你的随机数字
String str1 = (String) JOptionPane.showInputDialog(null,"请输入你的猜测数字(1-100): ","猜数字游戏",JOptionPane.PLAIN_MESSAGE,icon,null,"在这输入"); //第一次输入你的猜测数字
if(str1==null){
JOptionPane.showMessageDialog(null, "你已经取消了本次游戏"); //如果你点取消那么本次游戏结束
}else{
bl = num(str1); //判断是输入的是不是数字或者是整数
if(true==bl){ //如果是数字的话进入与随机数比较的程序
System.out.println("你输入的数字是:"+str1); //打印你输入的数字
put = Integer.valueOf(str1);
for(int i = 4;i 0;i--){ //i是你可以猜测的次数
if(put==c){
JOptionPane.showMessageDialog(null, "恭喜你猜对了,正确答案是:"+c+"。"); //如果你猜对了就直接结束循环
break;
}else if(putc){ //如果输大了就让你再次从新输入
str1 = (String) JOptionPane.showInputDialog(null,"你的输入过大。你还有"+i+"次机会,请重新输入: ","猜数字游戏",JOptionPane.PLAIN_MESSAGE,icon,null,"在这输入");
if(str1==null){
JOptionPane.showMessageDialog(null, "你已经取消了本次输入");
break;
}else{
bl =num(str1);
if(true==bl){
put = Integer.valueOf(str1);
}else{
JOptionPane.showMessageDialog(null, "你的输入不正确,请重新输入");
}
}
}else if(putc){ //如果你输小了也让你从新输入
str1 = (String) JOptionPane.showInputDialog(null,"你的输入过小。你还有"+i+"次机会,请重新输入: ","猜数字游戏",JOptionPane.PLAIN_MESSAGE,icon,null,"在这输入");
if(str1==null){
JOptionPane.showMessageDialog(null, "你已经取消了本次输入");
break;
}else{
bl =num(str1);
if(true==bl){
put = Integer.valueOf(str1);
}else{
JOptionPane.showMessageDialog(null, "你的输入不正确,请重新输入");
}
}
}
}
}else if(bl==false){ //这个 是你第一次如果填写的不是数字的话也会结束本次游戏
JOptionPane.showMessageDialog(null, "请您下次按要求填写。本次游戏结束");
}
if(true==bl c!=put){ //如果你i次都没猜对,那么就直接告诉你这个数十什么
JOptionPane.showMessageDialog(null, "很遗憾你没能猜对,这个数字是:"+c+".");
}
}
}
public static boolean num(String value){ //一个静态方法,判断你输入的是不是数字
try {
Integer.parseInt(value);
return true;
} catch (Exception e) {
return false;
}
}
}
④ 用java制作一个小游戏 教学
static Scanner in =new Scanner(System.in);
public static int aaa(){
int c = 0;
while(true){
try {
if(c999c10000){
break;
}else{
// System.out.println("请输入4位整数");
c= in.nextInt();
if(c999c10000){
break;
}else{
System.out.println("输入有误,请重新输入4位整数");
}
}
} catch (Exception e) {
System.out.println("请输入整数");
c= in.nextInt();
}
}
//in.close();
return c;
}
public static void cai(){
//Scanner sa =new Scanner(System.in);
int haoma=(int)(Math.random()*10000);
if(haoma999)
{
haoma = Integer.parseInt(String.valueOf(haoma)+"0");
}
System.out.println(haoma);
System.out.println("请输入一位4位整数");
int aa = 0;
while(true){
aa= aaa();
String pd=String.valueOf(aa);
if(pd.length()!=4){
aa = aaa();
}else{
break;
}
}
while(true){
if(aa==haoma){
System.out.println("你猜对了,可以去买彩票了");
}else{
System.out.println("抱歉 , 你猜错了");
}
System.out.println("是否继续1继续 其他结束");
try {
int ss = in.nextInt();
if(ss==1){
cai();
}else{
break;
}
} catch (Exception e) {
in.close();
break;
}
}
}
public static void main(String[] args) {
System.out.println("欢迎来到猜号小游戏");
cai();
System.out.println("over");
}
⑤ 想做一个java小游戏 谁能给几个创意啊 注意 是创意!!!!! 不是已有的有创意的小游戏
比如有东西扔过来,选择吃掉或者躲开,考反应吧。
⑥ 急求java课程设计,内容可以是小游戏的,如(迷宫,计算器,停车场之恋的),要能运行,谢谢
俄罗斯方块,贪吃蛇。推箱子。
⑦ 求JAVA期末课程设计,要那种开发的小项目软件。可以是像记事本那种,也可以是小游戏那种。
网上搜不到的一般是不可共享的资源,建议去图书馆找本专门针对课程设计的书,里面的资料很丰富,你可以照着做一下,并作功能上适当的增减,这样网上就很难找到了
java小游戏代码窗口的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java小游戏代码大全、java小游戏代码窗口的信息别忘了在本站进行查找喔。








