首页编程java编程大二java课程设计小游戏,Java扫雷游戏设计

大二java课程设计小游戏,Java扫雷游戏设计

编程之家2026-05-24770次浏览

大家好,今天小编来为大家解答大二java课程设计小游戏这个问题,Java扫雷游戏设计很多人还不知道,现在让我们一起来看看吧!

大二java课程设计小游戏,Java扫雷游戏设计

java做一些小游戏需要学什么

Java做这些小游戏,可以使用下面几种Java自带的图形界面框架

Awt适合内存较小,配置较低的嵌入式系统等,组件较少,性能好,资源消耗低.

Swing适合PC等,组件较丰富,内存占用较大,但是跨平台性优越

JavaFX这个是比较强大的框架了,组件比Swing更丰富,比如添加了日期选择组件, WebView组件,还支持3D和动画.并且多多媒体支持良好.但是相关资料比Swing等少

既然学过Java Web那么对网页编程还是有了解吧, HTML+CSS+JS也可以开发出小游戏,浏览器可以显示,放入JavaFX的WebView组件也可以显示出来

推荐使用JavaFX或者 Web,因为这两者都很好做到了分离. JavaFX也可以分离出FXML文件,CSS文件,Java文件.当然也可以采用最稳妥的Swing来开发,毕竟Swing的图书教程很多.

大二java课程设计小游戏,Java扫雷游戏设计

推荐书籍

<Java 2D游戏编程入门><Java游戏编程原理与实践教程>

<JavaFX游戏程式设计第三版>

其实游戏算法都一样,在Swing上好了弄透彻了,也可以轻松移植到JavaFX或者网页上

java编程 设计如下图所示的窗口,完成猜数小游戏的设计。

界面不是完全一致,但是可行。

package ex1;

大二java课程设计小游戏,Java扫雷游戏设计

import java.util.Scanner;

import java.awt.*;

import java.awt.event.*;

import javax.swing.*;

class WindowButton extends JFrame implements ActionListener

{

private static final long serialVersionUID= 1L;

int number;

JTextField inputNumber;

JLabel feedBack;

JButton buttonGetNumber,buttonEnter;

WindowButton(String s)

{

super(s);

buttonGetNumber= new JButton("得到一个新的随机数");

feedBack= new JLabel("无反馈信息",JLabel.CENTER);

feedBack.setBackground(Color.red);

inputNumber= new JTextField("0",5);

buttonEnter= new JButton("确定");

buttonEnter.addActionListener(WindowButton.this);

//code 1:按钮buttonEnter增加ActionEvent事件监视器,监视器为当前窗口

buttonGetNumber.addActionListener(WindowButton.this);

//code 2:按钮buttonGetNumber增加ActionEvent事件监视器,监视器为当前窗口

Box boxH1= Box.createHorizontalBox();

boxH1.add(new JLabel("获取1-100之间的随机数:"));

boxH1.add(buttonGetNumber);

Box boxH2= Box.createHorizontalBox();

boxH2.add(new JLabel("输入您的猜测:"));

boxH2.add(inputNumber);

Box boxH3= Box.createHorizontalBox();

boxH3.add(new JLabel("单击确定按钮:"));

boxH3.add(buttonEnter);

Box boxH4= Box.createHorizontalBox();

boxH4.add(new JLabel("反馈信息:"));

boxH4.add(feedBack);

Box baseBox= Box.createVerticalBox();

baseBox.add(boxH1);

baseBox.add(boxH2);

baseBox.add(boxH3);

baseBox.add(boxH4);

Container con= getContentPane();

con.setLayout(new FlowLayout());

con.add(baseBox);

con.validate();

setBounds(230,225,400,200);

setVisible(true);

validate();

}

public void actionPerformed(ActionEvent e)

{

if(e.getSource()== buttonGetNumber)//code 3:判断事件是否是buttonGetNumber

number=(int)(Math.random()*100)+1;

else if(e.getSource()== buttonEnter)//code 4:判断事件是否是buttonEnter

{

int guess= 0;

try{

guess= Integer.parseInt(inputNumber.getText());

//code 5:返回inputNumber中的文本

if(guess== number)

{

feedBack.setText("猜对了~");

//code 6:feedBack设置提示文本:"猜对了"

}

else if(guess> number)

{

feedBack.setText("猜大了~");

inputNumber.setText(null);

}

else if(guess< number)

{

feedBack.setText("猜小了~");

inputNumber.setText(null);

}

}

catch(NumberFormatException event)

{

feedBack.setText("请输入数字字符");

//code 7:feedBack设置提示文本:"请输入数字字符"

}

}

}

}

public class GuessNumberGame{

public static void main(String[] args){

new WindowButton("猜数子小游戏");

}

}

java小游戏

按照题目要求,人拿完火柴后计算机自动拿火柴,判断胜利者。鼠标点击ok或者键盘按enter键即可提交人拿的火柴个数。图形界面如下,

import java.awt.*;

import java.awt.event.ActionListener;

import java.awt.event.MouseAdapter;

import java.awt.event.MouseEvent;

import java.sql.PreparedStatement;

import java.sql.ResultSet;

import java.util.Random;

import javax.swing.JOptionPane;

import javax.swing.JFrame;

import javax.swing.JButton;

import javax.swing.JLabel;

import javax.swing.JOptionPane;

import javax.swing.JPanel;

import javax.swing.JTextField;

import javax.swing.JPasswordField;

public class game extends javax.swing.JFrame implements ActionListener{

private JPanel frame;

private JTextField pwd;

private JTextField jLabel1;

private JTextField jLabel2;

private JButton bntOk;

private JLabel l1;

private JLabel l2;

private JLabel l3;

int total;

public static void main(String[] args)

{

game ff=new game();

}

public game(){

initGUI();

Random r=new Random();

total=r.nextInt(51);

while(total<20){

total=r.nextInt(51);

}

jLabel2.setText(String.valueOf(total));

this.setSize(500, 500);

this.setLocation(300, 400);

this.setLocationRelativeTo(null);

this.setVisible(true);

this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

getRootPane().setDefaultButton(bntOk);

bntOk.addActionListener(this);

}

public void actionPerformed(java.awt.event.ActionEvent evt)

{

int a=Integer.parseInt(jLabel1.getText());

if((a>3)||(a==0)){

JOptionPane.showMessageDialog(game.this,"输入错误

请重新输入");

return;

}

total=total-a;

jLabel2.setText(String.valueOf(total));

if(total<=0){

JOptionPane.showMessageDialog(game.this,"恭喜你,胜利了!");

return;

}

Random r=new Random();

int b=r.nextInt(4);

while(b==0)

b=r.nextInt(4);

pwd.setText(String.valueOf(b));

total=total-b;

jLabel2.setText(String.valueOf(total));

if(total<=0){

JOptionPane.showMessageDialog(game.this,"很遗憾,你输了!");

}

}

private void initGUI(){

frame=new JPanel();

getContentPane().add(frame, BorderLayout.CENTER);

frame.setLayout(null);

bntOk=new JButton();

bntOk.setText("OK");

bntOk.setBounds(150, 200, 66, 30);

frame.add(bntOk);

jLabel2= new JTextField();

jLabel2.setBounds(150, 50, 100, 50);

frame.add(jLabel2);

l1=new JLabel();

l1.setText("火柴数量");

l1.setBounds(90, 50, 100, 50);

frame.add(l1);

jLabel1= new JTextField();

jLabel1.setText("");

jLabel1.setBounds(200,149, 77, 22);

frame.add(jLabel1);

l2=new JLabel();

l2.setText("我拿火柴");

l2.setBounds(100, 149, 77, 22);

frame.add(l2);

l3=new JLabel();

l3.setText("对方拿火柴");

l3.setBounds(100, 249, 77, 22);

frame.add(l3);

pwd= new JTextField();

pwd.setBounds(200, 249, 77, 22);

frame.add(pwd);

bntOk.addMouseListener(new MouseAdapter()

{

@Override

public void mouseClicked(MouseEvent e1){

int a=Integer.parseInt(jLabel1.getText());

if((a>3)||(a==0)){

JOptionPane.showMessageDialog(game.this,"输入错误

请重新输入");

return;

}

total=total-a;

jLabel2.setText(String.valueOf(total));

if(total<=0){

jLabel2.setText("0");

JOptionPane.showMessageDialog(game.this,"恭喜你,胜利了!");

return;

}

Random r=new Random();

int b=r.nextInt(4);

while(b==0)

b=r.nextInt(4);

pwd.setText(String.valueOf(b));

total=total-b;

jLabel2.setText(String.valueOf(total));

if(total<=0){

JOptionPane.showMessageDialog(game.this,"很遗憾,你输了!");

}

}

}

);

}

}

好了,关于大二java课程设计小游戏和Java扫雷游戏设计的问题到这里结束啦,希望可以解决您的问题哈!

ai人工智能软件哪个好用 哪个ai软件比较好用php开发网站(网站开发php有哪些)