201621123008《Java程序设计》第七周学习总结
1. 本周学习总结
1.1 思维导图:Java图形界面总结

2.书面作业
1. GUI中的事件处理
1.1 写出事件处理模型中最重要的几个关键词。
监听,事件源,事件,注册。
1.2 任意编写事件处理相关代码(程序中需要出现你的学号与姓名)并截图,以证明你理解了事件处理模型。
package GUI;
import javax.swing.*;
import java.awt.event.*;
/**
*
* @author 周文华
*
*/
public class SimpleGui1B implements ActionListener {
JButton button;
public void go() {
JFrame frame=new JFrame();
button=new JButton("click me");
button.addActionListener(this);
frame.getContentPane().add(button);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(300, 300);
frame.setVisible(true);
}
@Override
public void actionPerformed(ActionEvent e) {
button.setText("I've been clicked");
}
public static void main(String[] args) {
SimpleGui1B gui=new SimpleGui1B();
gui.go();
}
}


2. 大作业:使用图形界面改善你的购物车,考核点如下:
2.1 给出项目的分工表格与git地址
| 成员 | 负责任务 | git地址 |
|---|---|---|
| 周文华 | 商品搜索 | 购物车1.2 |
| 肖文婷 | 购物车展示 | 购物车1.2 |
2.2 尝试使用图形界面改写(截图你的程序,图形界面中需要出现你的姓名)





2.3 将基于控制台界面的程序改写为基于GUI的程序这个过程碰到什么问题?总结:以后编写方法时,应该遵循一些什么原则?
使用了netbeans之后感觉轻松了不少,编写的一般过程是:1.向事件源注册2.重写注册方法,方法与用户的行为对应。3.尽量使一些方法更具有适用性。
2.4 给出几个人在码云上同一项目的提交记录截图。如果某个人无提交记录,视为未完成。


3.其他:如果大作业实在搞不定,请完成实验任务书上的题目1、题目2、题目3。
3.1 运行界面截图,需要出现你的学号与姓名。
题目1:

题目2:




3.2 截图在NetBeans中出现的关键代码,不得将代码复制到其他编辑器。
关键代码:
题目二:
private void loginButtonActionPerformed(ActionEvent e) {
String id = idField.getText();
String password = passwordField.getText();
String[] result = isExist(id);
if (result == null) {
JOptionPane.showMessageDialog(null, "该帐号不存在");
} else {
if (result[0].equals(id) && result[1].equals(password)) {
JOptionPane.showMessageDialog(null, "登录成功");
} else {
JOptionPane.showMessageDialog(null, "登录失败,帐号密码不匹配");
}
}
}
private void registerButtonActionPerformed(ActionEvent e) {
String id = idField.getText();
String password = passwordField.getText();
String[] result = isExist(id);
if (result == null) {
writeFile(id, password);
JOptionPane.showMessageDialog(null, "注册成功");
} else {
JOptionPane.showMessageDialog(null, "注册失败,该帐号已存在");
}
}
private String[] isExist(String id) {
String[] strList = new String[2];
try {
File file = new File("user.txt");
Scanner in = new Scanner(file);
while (in.hasNextLine()) {
String line = in.nextLine();
strList = line.split(" ");
if (strList[0].equals(id)) {
return strList;
}
}
in.close();
} catch (FileNotFoundException ex) {
}
return null;
}
private void writeFile(String id, String password) {
String matching = id + " " + password;
try {
File file = new File("user.txt");
PrintWriter out = new PrintWriter(file);
out.println(matching);
out.close();
} catch (FileNotFoundException ex) {
ex.printStackTrace();
}
}
3.统计本周完成的代码量
需要将每周的代码统计情况融合到一张表中。

| 周次 | 总代码量 | 新增文件代码量 | 总文件数 | 新增文件数 |
|---|---|---|---|---|
| 1 | 665 | 20 | 20 | 20 |
| 2 | 1705 | 23 | 23 | 23 |
| 3 | 1834 | 30 | 30 | 30 |
| 4 | 1073 | 1073 | 17 | 17 |
| 5 | 1073 | 1073 | 17 | 17 |
| 6 | 2207 | 1134 | 44 | 27 |
| 7 | 3292 | 1085 | 59 | 15 |
| 8 | 3505 | 213 | 62 | 3 |
201621123008《Java程序设计》第七周学习总结的更多相关文章
- 201521123027 <java程序设计>第七周学习总结
1.本周学习总结 2.书面作业 Q1.ArrayList代码分析 1.1 解释ArrayList的contains源代码 答: 源代码: //contains()方法 public boolean c ...
- 201871010106-丁宣元 《面向对象程序设计(java)》第七周学习总结
201871010106-丁宣元 <面向对象程序设计(java)>第七周学习总结 正文开头: 项目 内容 这个作业属于哪个课程 https://home.cnblogs.com/u/nwn ...
- 20145213《Java程序设计》第九周学习总结
20145213<Java程序设计>第九周学习总结 教材学习总结 "五一"假期过得太快,就像龙卷风.没有一点点防备,就与Java博客撞个满怀.在这个普天同庆的节日里,根 ...
- 21045308刘昊阳 《Java程序设计》第九周学习总结
21045308刘昊阳 <Java程序设计>第九周学习总结 教材学习内容总结 第16章 整合数据库 16.1 JDBC入门 16.1.1 JDBC简介 数据库本身是个独立运行的应用程序 撰 ...
- 20145236 《Java程序设计》第九周学习总结
20145236 <Java程序设计>第九周学习总结 教材学习内容总结 第十六章 整合数据库 JDBC简介 1.JDBC是java联机数据库的标准规范.它定义了一组标准类与接口,标准API ...
- 20155304田宜楠2006-2007-2 《Java程序设计》第一周学习总结
20155304田宜楠2006-2007-2 <Java程序设计>第一周学习总结 教材学习内容总结 - 浏览教材,根据自己的理解每章提出一个问题 第一章 除了书上提到的开发工具还有什么适合 ...
- 20155303 2016-2017-2 《Java程序设计》第二周学习总结
20155303 2016-2017-2 <Java程序设计>第二周学习总结 教材学习内容总结 『注意』 "//"为单行批注符: "/*"与&quo ...
- 20145237 《Java程序设计》第九周学习总结
20145237 <Java程序设计>第九周学习总结 教材学习内容总结 第十六章 整合数据库 JDBC入门 ·数据库本身是个独立运行的应用程序 ·撰写应用程序是利用通信协议对数据库进行指令 ...
- 20175209 《Java程序设计》第九周学习总结
20175209 <Java程序设计>第九周学习总结 一.教材知识点总结 有关数据库下载中存在可能出现的问题已经在博客<数据库安装和使用过程中出现的一些问题>给出了相应的解决办 ...
- 20175317 《Java程序设计》第九周学习总结
20175317 <Java程序设计>第九周学习总结 学前准备 首先下载XAMPP,下载完成后打开: 将前两个选项打开 在IDEA中配置驱动mysql-connector-java-5.1 ...
随机推荐
- 2018-2019-2 《网络对抗技术》Exp4 恶意代码分析 Week6 20165233
Exp4 恶意代码分析 实验内容 一.基础问题 1.如果在工作中怀疑一台主机上有恶意代码,但只是猜想,所有想监控下系统一天天的到底在干些什么.请设计下你想监控的操作有哪些,用什么方法来监控. 使用wi ...
- python之Web服务器案例
HTTP协议简介 1. 使用谷歌/火狐浏览器分析 在Web应用中,服务器把网页传给浏览器,实际上就是把网页的HTML代码发送给浏览器,让浏览器显示出来.而浏览器和服务器之间的传输协议是HTTP,所以: ...
- hbase命名空间
在HBase中,namespace命名空间指对一组表的逻辑分组,类似于数据库,便于对表在业务上划分 HBase系统默认定义了两个缺省的namespace hbase:系统内建表,包括namespace ...
- 加密算法之AES算法(转)
转载http://www.mamicode.com/info-detail-514466.html 0 AES简介 美国国家标准技术研究所在2001年发布了高级加密标准(AES).AES是一个对称分组 ...
- Overriding managed version XX for YY
在警告部分,添加<!--$NO-MVN-MAN-VER$-->. <build> <plugins> <plugin> <groupId>o ...
- 机器学习入门-交叉验证选择参数(数据切分)train_test_split(under_x, under_y, test_size, random_state), (交叉验证的数据切分)KFold, recall_score(召回率)
1. train_test_split(under_x, under_y, test_size=0.3, random_state=0) # under_x, under_y 表示输入数据, tes ...
- 前端开发-5-HTML-总结
1.总体 资源:https://www.processon.com/view/link/5ad1c2d0e4b0b74a6dd64f3c html head标签 title 显示网站的标题 meta ...
- sqlserver还原数据库
该方法只针对同等级数据库,不能跨级 比如sqlserver2012还原到sqlserver2008会报错 用数据库日志文件对数据库进行还原一 将日志文件.mdf文件和.ldf文件copy放置在sq ...
- Axure8 实现移动端页面上下滑动效果
目前,很多Axure新人都在问如何实现界面上下滑动效果,网上相关的教程也不少,各有各的方法,但是很少有教程对滑动界限设置做出比较详细的说明,其实在工作过程中,个人发现练好Axure是很有意提升逼格的, ...
- pyplot文本显示
pyplot文本显示 pyplot中文字符显示 pyplot默认不支持中文字符,因为默认字体是sans-serif,英文字体不能显示中文 方法1,修改需要输出中文字符的地方 在有中文输出的地方,添加属 ...