201521123110 java课程设计
一、需求分析
功能要求:计算机产生随机数,猜中即胜,猜不中,提示是大了还是小了,继续猜,直至猜到,给出所用时间和评语。保留用户测试成绩,做出成绩排行榜。排行榜存放到文件中。
二、本组课题及本人任务
•码云截图:

•本人任务: 编写开始以及操作界面代码,以及完成开始和操作界面。
三、总体设计(概要设计)
猜数游戏主界面应该分为三个,开始,退出,以及排行榜模块。开始游戏后要有输入和输出界面。当猜中游戏后应该录入玩家名称,同时获得所用的时间,并且对所用时间进行升序排列,输出前三名。在排行榜界面后应该还有退出按钮。
四、本人负责的主要功能展示与代码分析
1.使用netbeans进行软件界面的设计,再进行界面间的切换以及联系。

2.对生成随机比较数以及输入输出数据功能代码进行编写。



package game;
import java.io
.FileNotFoundException;
import java.util.Random;
public class GNB extends javax.swing.JFrame {
public GNB() {
initComponents();
}
private void initComponents() {
start = new javax.swing.JToggleButton();
exit = new javax.swing.JToggleButton();
paihangbang = new javax.swing.JToggleButton();
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
start.setText("开始");
start.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
startActionPerformed(evt);
}
});
exit.setText("退出");
exit.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
exitActionPerformed(evt);
}
});
paihangbang.setText("排行榜");
paihangbang.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
try {
paihangbangActionPerformed(evt);
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
});
private void startActionPerformed(java.awt.event.ActionEvent evt) {// GEN-FIRST:event_startActionPerformed
work w = new work();
w.setVisible(true);
setVisible(false);
}// GEN-LAST:event_startActionPerformed
private void exitActionPerformed(java.awt.event.ActionEvent evt) {// GEN-FIRST:event_exitActionPerformed
System.exit(0);
}// GEN-LAST:event_exitActionPerformed
private void paihangbangActionPerformed(java.awt.event.ActionEvent evt) throws FileNotFoundException {// GEN-FIRST:event_paihangbangActionPerformed
paihang p = new paihang();
p.setVisible(true);
setVisible(false);
}// GEN-LAST:event_paihangbangActionPerformed
public static void main(String args[]) {
try {
for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) {
if ("Nimbus".equals(info.getName())) {
javax.swing.UIManager.setLookAndFeel(info.getClassName());
break;
}
}
} catch (ClassNotFoundException ex) {
java.util.logging.Logger.getLogger(GNB.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
} catch (InstantiationException ex) {
java.util.logging.Logger.getLogger(GNB.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
} catch (IllegalAccessException ex) {
java.util.logging.Logger.getLogger(GNB.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
} catch (javax.swing.UnsupportedLookAndFeelException ex) {
java.util.logging.Logger.getLogger(GNB.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
}
// </editor-fold>
/* Create and display the form */
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new GNB().setVisible(true);
}
});
}
// Variables declaration - do not modify//GEN-BEGIN:variables
private javax.swing.JToggleButton exit;
private javax.swing.JToggleButton paihangbang;
private javax.swing.JToggleButton start;
}
package game;
import java.awt.FlowLayout;
import java.awt.Label;
import java.io
.File;
import java.io
.FileOutputStream;
import java.io
.FileWriter;
import java.io
.IOException;
import java.io
.PrintWriter;
import java.sql.Date;
import java.util.Random;
import javax.swing.JButton;
import javax.swing.JDialog;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JTextField;
public class work extends javax.swing.JFrame {
class MyDialog extends JDialog {
// 文本框,用于输入字符串
JTextField field;
// “确定”按钮
JButton setButton;
MyDialog() {
// 调用父类的构造函数,
// 第三个参数用false表示允许激活其他窗体。为true表示不能够激活其他窗体
super();
// 添加Label和输入文本框
JPanel p1 = new JPanel();
JLabel label = new JLabel("<html>恭喜,游戏成功<br>请输入用户名</html>");
p1.add(label);
field = new JTextField(30);
p1.add(field);
getContentPane().add("Center", p1);
// 添加确定和取消按钮
JPanel p2 = new JPanel();
p2.setLayout(new FlowLayout(FlowLayout.RIGHT));
setButton = new JButton("确 定");
setButton.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
try {
setActionPerformed(evt);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
});
p2.add(setButton);
getContentPane().add("South", p2);
// 调整对话框布局大小
pack();
}
private void setActionPerformed(java.awt.event.ActionEventevt) throws IOException {// GEN-FIRST:event_startActionPerformed
String username = field.getText();
long diffSec = diff / (1000);
File datafile = new File("D: \\data.txt");
FileWriter fileWriter = new FileWriter(datafile, true);
//打开文件
PrintWriter printWriter = new PrintWriter(fileWriter);
printWriter.println(new User(username, diffSec));
printWriter.close();
this.dispose();
work w = new work();
w.setVisible(true);
}
五、课程设计感想
在小组中虽然是进行分配任务工作,但是遇到困难时,也可以进行有效的沟通交流,当一步步要将设计的程序完工时,是十分开心的。让我明白,要多学多问,遇到困难时,先查阅资料,再去询问他人,能让我们记忆的更深刻。
201521123110 java课程设计的更多相关文章
- java(课程设计之记事本界面部分代码公布)
代码:涉及记事本的一些界面......!! /* *java课程设计之记事本(coder @Gxjun) * 编写一个记事本程序 * 要求: * 用图形用户界面实现. * 能实现编辑.保存.另存为.查 ...
- java课程设计(计算器)
JAVA课程 设 计 报 告 1206401-18 瞿杰 一.设计时间 2013年6月 24日-----6月28日 二.设计地点 湖南城市学院实验楼计算机506机房 三.设计目的 1.巩固学习VB ...
- Java课程设计——博客作业教学数据分析系统(201521123084 林正晟)
#课程设计--博客作业教学数据分析系统(201521123084 林正晟) 1.团队课程设计博客链接 博客作业教学数据分析系统 2.个人负责模块或任务说明 学生登陆界面的前端实现和与数据库的连接 学生 ...
- Java课程设计——博客作业教学数据分析系统(201521123082 黄华林)
Java课程设计--博客作业教学数据分析系统(201521123082 黄华林) 一.团队课程设计博客链接 博客作业教学数据分析系统(From:网络五条狗) 二.个人负责模块或任务说明 1.网络爬虫 ...
- java课程设计--We Talk(201521123061)
java课程设计--We Talk(201521123061) 团队博客链接:http://www.cnblogs.com/slickghost/ 数据库 一.通过Dao模式建立与数据库的连接 1.数 ...
- Java 课程设计 "Give it up"小游戏(团队)
JAVA课程设计 "永不言弃"小游戏(From :Niverse) 通过Swing技术创建游戏的登陆注册界面,使用mySQL数据库技术完成用户的各项信息保存和游戏完成后的成绩保存. ...
- Java课程设计----仿Windows标准型计算器
JAVA课程设计 仿Windows标准型计算器(By Yanboooooooo) 一.团队介绍: 连燕波[组长]:网络1513学生. 张文博[组员]:网络1513学生. 二.项目git地址 码云项目地 ...
- Java课程设计—象棋
1. 团队名称.团队成员介绍 团队名称:WY 团队成员: 吴慧婷[组长] 201521123094 网络1514 姚佳希 201521123042 网络1512 2 项目git地址 Java课程设计 ...
- Java课程设计——猜数游戏(201521123111 陈伟泽)
Java课程设计--猜数游戏(201521123111 陈伟泽) 1.团队课程设计博客链接 博客作业--猜数游戏 2.个人负责模块或任务说明 Answer:一些基础界面的构造,排行榜的构造,用文件录入 ...
随机推荐
- python 如何在一个for循环中遍历两个列表
是我在看<笨方法学python>过程中发现有一行代码看不懂--" for sentence in snippet, phrase:",所以研究了半天,感觉挺有收获的.所 ...
- Entity Framework入门教程:Oracle数据源访问
由于System.Data.OracleClient.dll从.NET Framework4.0之后已被弃用,所以我们无法在.NET Framework高版本中使用.一番搜索之后,发现好多文章提到.N ...
- 接口测试之soapUI(WebService)
一.WebService介绍 WebService是一种跨编程语言和跨操作系统平台的远程调用技术,XML+XSD,SOAP和WSDL就是构成WebService平台的三大技术. 1)XML+X ...
- php基本函数
//1.随机数和时间 //echo rand(); 随机数生成器,生成随机数 //echo rand(a,b); 生成a~b之间的随机数 //echo time(); 生成当前的Unix时间戳 //e ...
- jquery 获取及设置input各种类型的值 (转)
jQuery操作input值总结 获取选中的值 获取一组radio被选中项的值 var item = $("input[@name=items]:checked").val(); ...
- 20个开发人员非常有用的Java功能代码
本文将为大家介绍20个对开发人员非常有用的Java功能代码.这20段代码,可以成为大家在今后的开发过程中,Java编程手册的重要部分. 1. 把Strings转换成int和把int转换成String ...
- 50个Java多线程面试题(上)
Java 语言一个重要的特点就是内置了对并发的支持,让 Java 大受企业和程序员的欢迎.大多数待遇丰厚的 Java 开发职位都要求开发者精通多线程技术并且有丰富的 Java 程序开发.调试.优化经验 ...
- Sql Server数据库使用触发器和sqlbulkcopy大批量数据插入更新
需要了解的知识 1.触发器 2.sqlbulkcopy 我的用途 开发数据库同步的工具,需要大批量数据插入和数据更新. 方式 使用SqlBulkCopy类对数据进行数据批量复制,将需要同步数据的表新建 ...
- selenium+BeautifulSoup实现强大的爬虫功能
sublime下运行 1 下载并安装必要的插件 BeautifulSoup selenium phantomjs 采用方式可以下载后安装,本文采用pip pip install BeautifulSo ...
- VMware Workstation 12 Pro 之安装林耐斯-LinuxMint-系统
VMware Workstation 12 Pro 之安装林耐斯-LinuxMint-系统... ---------------------- ---------------------------- ...