搜档网
当前位置:搜档网 › java自动取款机模拟程序报告含源代码

java自动取款机模拟程序报告含源代码

合肥学院

计算机科学与技术系

课程设计报告

2013~2014学年第一学期

课程面向对象课程设计

课程设计名称自动取款机模拟程序

学生姓名夏中雨

学号1204013021

专业班级12计本(3)

指导教师胡春玲、张贯虹

20 13年12月

一、前言 (3)

二、需求分析 (3)

1、功能需求 (3)

A、管理端方面 (3)

B、客户端方面 (3)

2、基本的安全控制机制。 (4)

3、性能需求: (4)

4、出错处理需求 (4)

三、设计理论和环境 (4)

1、系统设计理论 (4)

2、系统设计环境 (4)

四、系统数据库设计 (4)

1、数据库构建语句 (4)

2、表构建语句 (5)

五、总体设计 (5)

B、管理端界面 (6)

3、删除银行卡账户对话框: (8)

4、查询: (8)

5、显示全部: (9)

C、客户端界面 (10)

2、客户端操作界面 (11)

3、余额查询 (11)

4、修改密码 (12)

5、存款 (13)

6、取款 (13)

六、具体设计 (13)

1、各类主要功能及相互关系。 (13)

2、关键代码。 (14)

(2)、删除银行卡 (17)

(3)、验证客户登陆 (18)

(4)、余额查询 (21)

(5)、修改密码 (22)

(7)、取款 (27)

(8)、连接数据库 (30)

七、总结 (31)

八、参考文献 (31)

一、前言

基于进一步巩固、加深学生所学专业课程《JAVA语言教程》的基本理论知识,理论联系实际,进一步培养学生综合分析问题,解决问题的能力的考虑和全面考核学生所掌握的基本理论知识及其实际业务能力,从而达到提高学生素质的最终目的。学院进行了此项课程设计教学活动,此次课程设计的主要任务是为了训练同学们利用所学知识,开发小型应用系统,掌握运用JAVA语言编写调试应用系统程序,训练独立开发应用系统,进行数据处理的综合能力。

针对这次课程设计任务,我对于给定的题目,进行了详细分析,理清了思路,弄明白了应该分几步走,每一步应该怎么走。顺利完成了课程设计任务。

项目任务要求:

1、程序分为两部分:管理端和客户端。

2、管理端负责管理所有的银行卡,管理员(省略身份验证)可以增加和删除银行卡。

(1)每张银行卡由卡号唯一标识,卡号由12位阿拉伯数字组成;

(2)新增的银行卡密码均为“123456”,卡内金额均为0元;

(3)只有管理员增加的银行卡才能登陆客户端;

(4)删除后的银行卡将不能再登陆客户端。

3、客户端负责常见的取款机操作。

(1)客户端需要登陆,用户输入正确的银行卡号和密码,系统核对无误后才能进行操作;

(2)登陆后,用户可以进行查询余额、取款、存款和修改密码的操作;

(3)修改密码时,用户需输入两次新密码,确定无误后方可更改;

(4)取款和存款操作,有操作结果提示,如“操作成功”或“余额不足,操作失败”等。

4、界面尽可能模仿自动取款机的实际界面。

5、对于失败操作,尽可能采用异常捕捉的机制来完成。

二、需求分析

1、功能需求

自动取款机模拟程序需要实现的功能主要包括以下几个方面:

A、管理端方面

○1新增银行卡账户

○2删除银行卡账户

B、客户端方面

○1查询账户余额

○2修改密码

○3存款

○4取款

2、基本的安全控制机制。

○1客户从客户端登录时,需要进行身份,身份合法才能进入本系统

○2客户修改密码时,必须输入两次新密码,确保无误后方可修改且新密码必须与旧密码不同

○3取款和存款操作时,要有操作提示,确保客户对每一步的操作不存在疑惑和不解

3、性能需求:

通过分析,系统性能需求如下:

○1系统的高速性、稳定性、安全性。

○2系统人机界面友好,易学易用。

○3系统维护成本较低。

4、出错处理需求

当操作中出现了不正确的操作内容时需要停止该操作并给出提示。

三、设计理论和环境

1、系统设计理论

该程序使用JDBC-ODBC桥与数据库连接,主要定义:主类和操作类。主类的主要功能是提供等待用户的操作的主界面(菜单)。操作类中定义与数据库的连接、提供各种操作界面(增、删、改及统计等操作)。

2、系统设计环境

该系统程序设计在Eclipse、JDK1.5或JBuilder运行环境下实现。

四、系统数据库设计

本软件系统经过我详细分析,我认为所用到的数据库内仅需一张信息表,针对于此,我前期所做的构建数据库及信息表的数据库代码如下:

1、数据库构建语句

CREATE DATABASE Bank

ON

(NAME = Bank,

FILENAME=

‘C:\ProgramFiles\MicrosoftSQLServer\MSSQL.1\MSSQL\Data\Bank.mdf’, SIZE = 10MB,

MAXSIZE = 50MB,

FILEGROWTH = 5MB)

LOG ON

(NAME = Bank_log.ldf,

FILENAM=

‘C:\ProgramFiles\MicrosoftSQLServer\MSSQL.1\MSSQL\Data\Bank_log.ldf’, SIZE = 5MB,

MAXSIZE = 25MB,

FILEGROWTH = 5MB)

2、表构建语句

CREATE TABLE 信息(

卡号CHAR(12) PRIMARY KEY,

密码CHAR(6) NOT NULL,

余额MONEY NOT NULL)

五、总体设计

A、主登陆界面:

用户选择登陆端口选择管理端入口进入管理端,选择客户端入口进入客户端

类‘系统开始’实现此页面布局,点击“管理端入口”调用类‘管理端口’进入管理操作界面,点击“客户端入口”调用类‘客户端口’进入客户操作界面。

B、管理端界面

1、主界面:程序的主界面,实现基本的查询功能及响应各种动作按钮

类‘管理端口’和类‘管理界面’实现此页面布局,点击“添加”,调用类‘新建银行卡’进入新建银行卡界面;点击“删除”,删除选定的银行卡账户;点击“返回”,返回上一层界面。

2、增加银行卡账户界面:

新增银行卡,新用户可利用此账户的卡号和密码登陆修改账户信息

点击“添加”时,连接数据库,执行相应的instert SQL语句实现新增银行卡账户功能,点击“取消”时,关闭此界面,调用类‘管理界面’,返回管理端主界面。

3、删除银行卡账户对话框:

删除选定的银行卡后,该银行卡用户将不能再利用该卡号和密码登陆客户端修改账户信息

点击“确定”,将删除选定的账户信息,点击“取消”,取消删除账户信息。

4、查询:

管理员可根据账户卡号来查询账户信息

点击操作主界面上“查询”按钮,显示卡号为输入卡号值的账户信息。

5、显示全部:

点击此按钮,管理员可一览所有帐户信息

点击操作主界面上“显示全部”按钮,显示所有账户信息。

C、客户端界面

1、客户端登陆界面:

用户通过输入用户名和密码验证登陆

类‘客户端口’实现此页面布局,用户输入卡号和密码,点击“确认”,系统验证用户输入的密码与输入的卡号相对应的密码是否相同,验证合法后调用类‘客户界面’,进入客户操作主界面。若非法,则关闭界面,拒绝用户登陆退出系统。

2、客户端操作界面

类‘客户界面’实现此页面布局,主要含有六个按钮“余额查询”,“存款”,“退卡”,“修改密码”,“取款”,“返回”六个按钮及相应的响应方法。当点击各种按钮时,调用相应的响应方法或相应的类,实现各种操作;

3、余额查询

点击余额查询,显示账户余额。

4、修改密码

设置用户修改密码界面布局,用户需两次输入新密码且两次输入相同,点击“确定”执行SQL语句,修改账户信息。点击“取消”,取消修改密码。

5、存款

用户输入存入的金额数点击“确定”执行SQL语句,修改账户信息。点击“取消”取消存款操作。

6、取款

用户点击金额按钮取出或输入与界面上金额不同的金额,点击“确定”执行SQL语句,修改账户信息。点击“回主菜单”,取消取款操作。

六、具体设计

1、各类主要功能及相互关系。

link:连接数据库,其余类若要连接数据库,需调用此类。

Main: 主类,软件运行入口。

系统开始:主登陆界面,根据选择的方式,分别调用类‘管理端口’或类‘客户端口’进入管理界面或客户界面。

管理端口:一个扩展JFrame的容器类,设置管理端主界面布局,包含一个管理界面类(扩展类)及分别实现添加、删除、返回等功能的按钮,包括相应的响应方法。

管理界面:一个扩展JPanel的容器类,包含一个DefaultTableModel的表用来显示账户信息及两个分别实现查询功能及显示全部账户信息功能的按钮,包括相应的响应方法。

新建银行卡:一个扩展JFrame的容器类,当在类‘管理界面’点击“添加”按钮时被调用。此类包含两个按钮,点击“添加”时,连接数据库,执行相应的instert SQL语句实现新增银行卡账户功能,点击“取消”时,关闭此界面,调用类‘管理界面’,返回管理端主界面。

客户端口:扩展JFrame类的容器类,设置客户端登陆界面布局,含有两个客户文本框,点击“确认”,系统验证用户输入的密码与输入的卡号相对应的密码是否相同,验证合法后调用类‘客户界面’,进入客户操作主界面。若非法,则关闭界面,拒绝用户登陆退出系统。

客户界面:扩展JFrame类,设置客户端操作主界面布局,主要含有六个按钮“余额查询”,“存款”,“退卡”,“修改密码”,“取款”,“返回”六个按钮及相应的响应方法。当点击各种按钮时,调用相应的响应方法,实现各种操作。

存款:扩展JFrame类,设置用户存款取款界面布局,用户输入存入的金额数点击“确定”执行SQL语句,修改账户信息。

取款:扩展JFrame类,设置用户取款取款界面布局,用户点击金额按钮取出或输入与界面上金额不同的金额,点击“确定”执行SQL语句,修改账户信息。修改密码:扩展JFrame类,设置用户修改密码界面布局,用户需两次输入新密码且两次输入相同,点击“确定”执行SQL语句,修改账户信息。

2、关键代码。

(1)、新建银行卡

public void actionPerformed(ActionEvent e) {

if(e.getSource()==btnAdd){//点击确定按钮

try{

Long a;

String number = txtCard.getText();

String mm = "123456";//默认密码是123456

String ye = "0";//默认余额是0

a=Long.parseLong(number);//将输入卡号转换为长整形

String addDatas[] = new String[3];

addDatas[0]=number;

addDatas[1]=mm;

addDatas[2]=ye;

if(addDatas[0].length()==12){//判断卡号是否为12位

addEmployee(addDatas);//调用addEmployee方法

eface.showData("");

this.dispose();

}else

labCard2.setText("格式错,新建卡号必须为12位数字");

}catch(NumberFormatException g){

labCard2.setText("格式错误,新建卡号必须为12位数字"); }//若输入卡号转换为长整形出现异常将捕捉,判断输入是否由数字构成}

if(e.getSource()==btnCancel){

this.dispose();//点击取消,退出界面

}

}

private void addEmployee(String[] addDatas){

try {

String sql = "insert into 信息values('"+addDatas[0]+"',"; sql+="'"+addDatas[1]+"',";sql+="'"+addDatas[2]+"')";//插入link link1=new link();//连接数据库

this.stm=link1.stm;

this.conn=link1.conn;

stm.executeUpdate(sql);//执行SQL语句

} catch (Exception e) {

e.printStackTrace();

}finally{

try {

stm.close();

conn.close();

} catch (SQLException e) {

e.printStackTrace();

}

}

}

(2)、删除银行卡

if(e.getSource()==btnDel){

if(emp.updateKey!=null){

if(JOptionPane.showConfirmDialog(this,"if(e.getSource()==btnDel){

if(emp.updateKey!=null){

if(JOptionPane.showConfirmDialog(this,"确定删除记录吗?","员工删除",JOptionPane.WARNING_MESSAGE)==JOptionPane.YES_OPTION){

deleteData();

emp.updateKey = null;

String queryString="";

emp.showData(queryString);

}

//创建一个对话框

}",JOptionPane.WARNING_MESSAGE)==JOptionPane.YES_OPTION){ deleteData();//点击“确定”,调用方法deleteDate

emp.updateKey = null;

String queryString="";

emp.showData(queryString);//删除后,再次显示全部账号信息

}

}

private void deleteData() {

try {

String sql = "delete from 信息where 卡号='"+emp.updateKey+"'";//删除语句

link link1=new link();//连接数据库

this.stm=link1.stm;

this.conn=link1.conn;

stm.executeUpdate(sql);//执行删除SQL语句

} catch (Exception e) {

e.printStackTrace();

}finally{

try {

stm.close();

conn.close();

} catch (SQLException e) {

e.printStackTrace();

}

}

(3)、验证客户登陆

public void actionPerformed(ActionEvent e) {

if(e.getSource()==okey){//点击“确定”

String number = txtCard1.getText();//获取的卡号

String mm=txtCard2.getText();//获取的密码

String Datas[] = new String[2];

Datas[0]=number;

Datas[1]=mm;

yz(Datas);//调用方法yz

}

if(e.getSource()==cancel)

new系统开始();

this.dispose();//点击“取消”,关闭界面,返回上一层界面}

public void yz(String[] Datas){

try{

int a,b;

Long c;

a=Integer.parseInt(Datas[1]);

c=Long.parseLong(Datas[0]);

String sql="select * from 信息where 卡号='"+Datas[0]+"'";//检索与输入的卡号相对应的密码

link link1=new link();//连接数据库

this.conn=link1.conn;

this.stm=link1.stm;

rs=stm.executeQuery(sql);//执行SQL语句

while(rs.next()){

String mm=rs.getString(2);

b=Integer.parseInt(mm);

if(a==b){

new客户界面(Datas[0],Datas[1]);

this.dispose();

}

else

throw new Exception();

}

} catch (Exception e) {

this.dispose();

}finally{

try {

rs.close();

stm.close();

conn.close();

}catch(NullPointerException e){

this.dispose();

} catch (SQLException e) {

JAVA实现计算器课程设计

JAVA实现计算器课程设计 计算机科学系 计应0701班 指导老师:刘其昌 设计人员:陈秀桃 设计日期:2009年11月10日——2009年12月20日 计算器的设计 目录 第一章绪 论 ..................................................................... .. (2)

1.1 开发环 境 ..................................................................... . (2) 1.2 基本功能介 绍 ..................................................................... ......... 2 第二章系统设 计 ..................................................................... (3) 2.1 系统流程 图 ..................................................................... . (3) 2.2 系统功能框 图 ..................................................................... (3) 2.3 需求分 析 ..................................................................... ................ 4 第三章软件设 计 ..................................................................... (5) 3.1 界面设 计 ..................................................................... . (5) 3.2 代码设 计 .....................................................................

电气自动化认识实习报告

认识实习 报告 学院: 专业: 姓名: 学号: 指导老师:

首先作为一名还没毕业的大学生,我们该了解到社会实践应该是我们在大学生活中的一个重要环节。我们也该对自己的专业有一定深刻的认识,否则我们并不能从实习和实践中获取知识。 电气工程及其自动化是我所学的专业。其中涉及电力电子技术,计算机技术,电机电器技术信息与网络控制技术,机电一体化技术等诸多领域,是一门综合性较强的学科。起主要特点是强弱电结合,机电结合,软硬件结合。该专业培养具有工程技术基础知识和相应的电气工程专业知识,受过电工电子,系统控制及计算机技术方面的基本训练,具有解决电气工程技术分析与控制问题基本能力的高级工程技术人才。 而这个星期在学校的组织下,我们进行了专业认识实习,在3天的认识实习当中,我初步接触船舶设备的一些运作,积累了一定的知识,也对电气有更深的感官认识。 第一天我们先对自动化机舱做了一定认识。观看到了液压油泵,小型起重机,起锚机还有关于船舶启动的大型器件。而这些器件都是由使用几十年船舶上拆卸下来,可以说是“阅历相当丰富的工作人员”了。来说说液压油泵是由其他各类电动机或小部件组成,其中它也是遵循一个循环原理:有一边进油,必有一边出油,这样带动其他器件工作;小型起重机可以说是搬运货物而设,其后部有一个滚轮是用来收缩钢丝,使其上升下降。搬运臂的下面还有一个移动式的滚轮,可以通过它伸长缩短,以保证其可以为搬运远近的货物提供方便;还有我们常见船舶行驶停止用的起锚机,众所周知那是用来固定船舶。而船舶在大海上停泊,必然免不了由于潮涨潮落而有所颠簸,所以这次我们还了解到以前是人工调整起锚的绳子,现在则是根据机械和相关的数据信息来自动控制所拉绳子的松紧度还有根据船来制定绳子的粗细度等等。再来是船舶启动的大型器件,其是一个相当大的机器,需要多位工作人员相互配合,但是对于在其更深层的内部结构,我们并没有深究。相信以后会更近一步的认识。 第二天我们所了解的是控制船舱的有关电力系统的组成。船舶电力

电梯模拟程序(Java语言编写)

import java.awt.*; import javax.swing.*; import java.awt.event.*; import java.io.*; public class LiftMainTest { public static void main(String args[]) { new LiftTest("电梯测试"); } } //批量数据测试对话框 class Dialog extends JDialog implements ActionListener { int Message=0; JPanel DJPanel=new JPanel(); JTextField TestField[]=new JTextField[16]; JLabel TestLabel1=new JLabel("时间"); JLabel TestLabel2=new JLabel("人数"); JLabel TestLabel3=new JLabel("起始楼层"); JLabel TestLabel4=new JLabel("目标楼层"); JButton ok=new JButton("确定"); JButton cancel=new JButton("取消"); Dialog(JFrame f,String s,boolean b) { super(f,s,b); DJPanel.setLayout(new GridLayout(7,3)); for(int i=0;i<=15;i++) { TestField[i]=new JTextField(4); } DJPanel.add(TestLabel1); DJPanel.add(TestLabel2); DJPanel.add(TestLabel3); DJPanel.add(TestLabel4); DJPanel.add(TestField[0]); DJPanel.add(TestField[1]); DJPanel.add(TestField[2]); DJPanel.add(TestField[3]); DJPanel.add(TestField[4]); DJPanel.add(TestField[5]); DJPanel.add(TestField[6]); DJPanel.add(TestField[7]); DJPanel.add(TestField[8]);

用JAVA设计一个科学型计算器

题目:设计一个Windows计算器。 摘要 在当今这个网络的时代,我找了好多java的代码材料。修改后程序是一个图形界面的java计算器,其界面主要采用了awt包,程序实现了: (1)实现简单加、减、乘、除的运算。 (2)实现除了加、减、乘、除按钮外其他按钮功能。 (3)给软件添加一个编辑、查看、帮助的主菜单。 (4)在数据输入方面,提高程序代码的健壮性,增强其对非法输入数据的识别能力。 (5)科学型计算器与标准计算器之间的菜单切换。 关键字:java程序编辑器面向对象计算器 目录 第1章概要设计 (8) 1.标准型计算器界面设计 (8) 第2章程序整体设计说明 (10) 2.1程序中所用到的变量 (10) 2.2程序部分源代码及注释 (11) 3章程序运行效果 (22) 3.程序运行主界面 (22) 3.程序中各按钮运行界面 (24) 3.本章小节 (26) 作业结论 (26) 第1章概要设计 1.1标准型计算器界面设计 1.1.1 JAVA文件的建立 (1)建立一个名称为“java”Java工程, package文件包名称为 :scr;计算器主类:Calculator。 (2)界面的设计:

图1.1标准型计算器界面 图 1.2 图1.3 (3)保持代码简洁 复杂代码写后不易理解,在修改和重写上难度比较大,使工作更加复杂,所以编写代码时应保持代码的简洁易懂。 数字按钮字体和颜色设置 功能按钮字体和颜色设置

(4)功能实现 在整个设计中要保持完整性,能够实现计算器中最基本的功能,如加、减、乘、除等。 1.1.2明确任务 用java编写一个简单的计算器,使其能够实现最基本的功能,如简单的加、减、乘、除;平方根,倒数,余数,三角函数,多数连续运算,科学计数法等功能。 第2章程序整体设计说明 2.2 程序部分源代码及注释 (1)复制菜单的功能创建代码如下: (2)粘贴菜单的功能创建代码如下:

电气自动化实习报告6篇完整版

《电气自动化实习报告》 电气自动化实习报告(一): 一、实习目的及任务 1.1实习目的 ①透过电气自动化技术专业岗位实习,更广泛的直接接触社会,了解社会需要,加深对社会的认识,增强自身对社会的适应性,将自己融合到社会中去,培养自己的实践潜力,缩短我们从一名大学生到一名工作人员之间的观念与业务距离。为以后进一步走向社会打下坚实的基础; ②为了将自己所学电气自动化技术专业知识运用在社会实践中,在实践中巩固自己的理论知识,将学习的理论知识运用于实践当中,反过来检验书本上理论的正确性,锻炼自己的动手潜力,培养实际工作潜力和分析潜力,以到达学以致用的目的。透过电气自动化技术的专业实习,深化已经学过的理论知识,提高综合运用所学过的知识,并且培养自己发现问题、解决问题的潜力 ③透过实习,了解电气自动化技术专业岗位工作流程,从而确立自己在最擅长的工作岗位。为自己未来的职业生涯规划起到关键的指导作用。透过实习过程,获得更多与自己专业相关的知识,扩宽知识面,增加社会阅历。接触更多的人,在实践中锻炼胆量,提升自己的沟通潜力和其他社交潜力。培养更好的职业道德,树立好正确的职业道德观。 1.2实习任务要求 ①在实习过程,有严格的时间观念,不迟到不早退,虚心向有经验的同事请教,用心主动完成实习单位分配的任务,与单位同事和谐相处; ②在电气自动化技术岗位实习期间,严格遵守实习单位的规章制度,服从毕业实习专业指导老师的安排,做好实习笔记,注重理论与实践相结合,善于发现问题; ③每一天都认真总结当天的实习工作所遇到的问题和收获体会,做好工作反思,并按照校园毕业实习要求及时做好总结。 二、实习单位及岗位简介 2.1实习单位简介 xxxx科技有限公司,本公司是一家专业带给电气自动化领域解决方案的高科技公司,主要面向于污水、纯水、脱硫、脱硝、化工等行业,为客户带给专用控制器,变频器以及传感器等产品,并为客户带给完整的电气控制系统的解决方案。

java模拟试卷3与答案

复习题 3 一、选择题 1. JDK 提供的编译器是(B)。 (A ) java.exe(B ) javac.exe (C) javap.exe( D) javaw.exe 2.以下作为 Java 程序入口的 main 方法声明正确的( C)。 (A ) public void main(String args[]) (B ) public int main(String args[]) (C) public static void main(String args[]) (D ) public static int main(String args[]) 3.以下标识符错误的是( C )。 (A )Public( B)张三( C) class(D ) main 4.java 中定义字符串 String s= ”pzhu”,下面操作可以取得字符串长度的是( A )。 (A ) s.length()( B) s.length( C)s.size()( D) length(s) 5.如下定义数组,操作正确的是(D)。 int a[]={1,2,3}; (A ) a[3]=100(B ) a[0].length( C)a++( D) a.length 6.如下定义二维数组操作错误的是()。 int a[][]={{1,2},{3}}; (A ) a[0][1]=200( B) a[0].length( C) a[1][1]=100( D) a.length 7. 以下数据类型存储空间最大的是(B)。 (A ) byte( B) long(C) float(D ) char 8. 面向对象的三大特性,不包括如下( A)。 (A )异常( B)封装(C)继承(D )多态 9、关于类的定义以下说法错误(B)。 (A )类定义使用class 关键字( B)每个类中必须有一个main 方法 (C)一个包可以包含多个类( D) java 中所有类都是Object 类的子类 10. 关于构造方法以下说法错误的是(D)。 (A)构造方法名必须与类名一致(B)构造方法可以重载 (C)构造方法是通过new 来调用(D)每个类都必须编写构造方法代码 11.关于继承如下说法错误的是(C)。 (A) Java 是单继承的(B)通过extends 来定义继承 (C)所有父类方法都可以被override的(D)继承呈现的是 is a 的关系 12.以下代码执行的结果是 ( C )。 System.out.println(" 攀枝花学院 pzhu".length()); (A)编译错误(B)运行错误(C) 9(D) 14 13. 用来存储键值对的容器是 ()。 (A )ArrayList( B ) LinkedList(C) HashSet( D) HashMap 14、 java 中用来抛出异常的关键字是( C )。 (A) try(B) catch(C) throw(D) throws 15.关于 finally块中的代码,以下说法不正确的是(A)。 (A ) try 块中的 return 语句会中断finally 块中语句的执行 (B )无论 finally 块前的语句运行是否产生异常,其中的语句都会执行 (C) finally 块中的语句通常中用作资源的清理 - 1 -

科学计算器程序Java代码

科学计算器程序Java代码

MC:清除独立内存里的数字 MR:读出独立内存数字 MS:将显示数字保存到独立内存,并取代内存中原有数字 M+:将显示数字向独立内存累加 (独立内存是一个临时寄放数字的存储器,方便计算) CE:纠错键(CLEAR ERROR).输入数字有错,按它可以重新输入 C:表示清零,将计算器恢复到开机状态 功能举例: 源程序如下: import java.awt.BorderLayout;

import javax.swing.JRadioButtonMenuItem; import javax.swing.JTextField; public class Calucator extends JFrame { private JTextField tf; private JPanel panel1, panel2, panel3, panel4; private JMenuBar myBar; private JMenu menu1, menu2, menu3; private JMenuItem editItem1, editItem2, help1, help2, help3; private JRadioButtonMenuItem seeItem1, seeItem2;//单选框 private JCheckBoxMenuItem seeItem3;//复选框 private ButtonGroup bgb; private String back; private boolean IfResult = true, flag = false;

电气自动化实习报告3000字

三一文库(https://www.sodocs.net/doc/6c3678223.html,)/实习报告 电气自动化实习报告3000字 一、实习目的 生产实习是教学与生产实际相结合的重要实践性教学环节。在生产实习过程中,学校也以培养学生观察问题、解决问题和向生产实际学习的能力和方法为目标。培养我们的团结合作精神,牢固树立我们的群体意识,即个人智慧只有在融入集体之中才能限度地发挥作用。 通过这次生产实习,使我在生产实际中学习到了电气设备运行的技术管理知识、电气设备的制造过程知识及在学校无法学到的实践知识。在向工人学习时,培养了我们艰苦朴素的优良作风。在生产实践中体会到了严格地遵守纪律、统一组织及协调一致是现代化大生产的需要,也是我们当代大学生所必须的,从而近一步的提高了我们的组织观念。通过生产实习,对我们巩固和加深所学理论知识,培养我们的独立工作能力和加强劳动观点起了重要作用。 二、入厂以来的工作内容 自从xxxx年6月份我被录取到xx电信设备制造公司实习工作至今。工作的主要内容是组装、接线、制线和调试。组装、接

线和布线主要涉及PR2000CH-6S高阻直流配电屏、PR2000CH-6M 高阻直流配电屏、PRD100AC交流配电箱、PRS3004综合机架、PRTE500机架等;调试主要进行了SMPS1000、SMPS2000、SMPS3000、SMPS6300、SMPS0500、SMPS0704等系列模块的静态调试和高压测试等等。调试过程要严格按照电气调试步骤手册进行,一步步地发现问题并解决问题。此外,还做了焊接电路板,制作电线,组装模块和安装空插头的工作,主要涉及分压板、整流板、控制板、温度显示电路板和晶升限位等等。 三、我对技术工作的理解 我想在公司的企业文化中有一句话很好地概括了技术工作 的全部内容—“研究、试验、设计、制造、安装、使用、维修,七件大事技术人员要一竿子到底!”。我认为这里所说的“七件大事”就是技术工作。有些人认为只有研究和设计一些高科技含量的东西才是真正的技术性工作,而贬低看不起安装、使用和维修这些工作,认为技术含量低甚至没有技术含量。这种看法是片面的、错误的,从哲学的观点看,是一种唯心主义的观点。 实践是理论的基础,理论都是在实践中总结创造出来的,用于指导实践。而试验、制造、安装、使用、维修就是我们的实践工作。这就好比是一台计算机,要想使其正常运行,硬件和软件密不可分、缺一不可。硬件是软件的基础,软件是硬件的灵魂。毫无疑问,我作为一名刚刚走出校门参加工作的新员工,实践方面的经验还很缺乏,在学校中学到的是更多的理论知识。因此,

Java科学计算器程序代码

计算器布局显示: 功能举例: ①13+20=33 ②-7*14=-98:先输入7,再单击-/+将其变成负数,然后依次单击×号、14与= ③7!=5040 ④sin30°=0.5:先输入30,然后按下′″按钮转换成角度值,再按下sin即可显示结果 ⑤sqrt(4)=2:利用鼠标点击4后再点击sqrt按键即可显示结果 ⑥2*π=6.2832 …… 源程序如下: import java.awt.BorderLayout; import java.awt.Color; import java.awt.Dimension; import java.awt.Font; import java.awt.GridLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.text.DecimalFormat; import javax.swing.BorderFactory; import javax.swing.ButtonGroup; import javax.swing.JButton; import javax.swing.JCheckBoxMenuItem; import javax.swing.JFrame; import javax.swing.JMenu; import javax.swing.JMenuBar; import javax.swing.JMenuItem; import javax.swing.JPanel; import javax.swing.JRadioButtonMenuItem; import javax.swing.JTextField;

电气自动化专业毕业实习报告

电气自动化专业毕业实习报告 电气自动化专业毕业实习报告 电气自动化专业毕业实习报告 1公司简介珠江电信设备制造有限公司是专业生产高频开关电源及配套设备的高新技术企业,是目前中国最具实力的通信电源厂家之一。多年来,珠江公司专注于prtem 高频开关电源及配套产品的自主研发。具备了较强的技术研发能力,成为了《通信用离网型风光互补系统标准》,《通信用太阳能供电系统》、《通信用风能供电系统》及相关通信行业标准的制定者之一,并形成涵盖大、中、小容量的通信电源系统、电力操作电源、太阳能供电系统、风光互补供电系统、及各种规格的交、直流配电屏、直流变换器和逆变器及相关客户定制产品。 2、实习目的生产实习是教学与生产实际相结合的重要实践性教学环节。在生产实习过程中,学校也以培养学生观察问题、解决问题和向生产实际学习的能力和方法为目标。培养我们的团结合作精神,牢固树立我们的群体意识,即个人智慧只有在融入集体之中才能最大限度地发挥作用。通过这次生产实习,使我在生产实际中学习到了电气设备运行的技术管理知识、电气设备的制造过程知识及在学校无法学到的实践知识。在向工人学习时,培养了我们艰苦朴素的优良作风。在生产实践中体会到了严格地遵守纪律、统一组织及协调一致是现代化大生产的需要,也是我们当代大学生所必须的,从而近一步的提高了我们的组织观念。通过生产实习,对我们巩固和加深所学理论知识,培养我们的独立工作能力和加强劳动观点起了重要作用。

3、入厂以来的工作内容自从12年6月份我被录取到珠江电信设备制造公司实习工作至今。工作的主要内容是组装、接线、制线和调试。组装、接线和布线主要涉及prXXh-6s高阻直流配电屏、prXXh-6m 高阻直流配电屏、prd100a交流配电箱、prs3004综合机架、prte500 机架等;调试主要进行了smps1000、smpsXX 、smps3000、smps6300、smps0500、smps0704等系列模块的静态调试和高压测试等等。调试过程要严格按照电气调试步骤手册进行,一步步地发现问题并解决问题。此外,还做了焊接电路板,制作电线,组装模块和安装空插头的工作,主要涉及分压板、整流板、控制板、温度显示电路板和晶升限位等等。 4、我对技术工作的理解我想在公司的企业文化中有一句话很好地概括了技术工作的全部内容—“研究、试验、设计、制造、安装、使用、维修,七件大事技术人员要一竿子到底!”。我认为这里所说的“七件大事”就是技术工作。有些人认为只有研究和设计一些高科技含量的东西才是真正的技术性工作,而贬低看不起安装、使用和维修这些工作,认为技术含量低甚至没有技术含量。这种看法是片面的、错误的,从哲学的观点看,是一种唯心主义的观点。实践是理论的基础,理论都是在实践中总结创造出来的,用于指导实践。而试验、制造、安装、使用、维修就是我们的实践工作。这就好比是一台计算机,要想使其正常运行,硬件和软件密不可分、缺一不可。硬件是软件的基础,软件是硬件的灵魂。毫无疑问,我作为一名刚刚走出校门参加工作的新员工,实践方面的经验还很缺乏,在学校中学到的是更多的理论知识。因此,很荣幸上级领导给了我这次车间实习工作的机

Java程序设计预赛模拟题-2

一、单选题 1.Java JDK中调试器的命令是( )。 A. javac B. java C. jdb D. javah 2.运行jar文件中class文件需要在java命令后面加的参数为()。 A. -cp B. -g C. -d D. -verbose 3.下面哪项在java中是不合法的标识符?() A. $user B. point C. You&me D. _endline 4.下列哪一项不是Java保留字?() A. sizeof B. super C. abstract D. break 5.下列哪个布局管理器中的按钮位置有可能会根据Frame的大小改变而改变? () A. BorderLayout B. CardLayout C. GridLayout D. FlowLayout 6.下面哪些java语句会导致无限循环?( ) I. while (true) i = 0; II. while (false) i = 1; III. while (!false) i = 0; A. III only B. I and III only C. I only D. I, II and III 7.下面是Example.java文件的完整代码,请找出会产生编译错误的行()。 1) class BaseClass { 2) public String str; 3) public BaseClass(){ 4) System.out.println(“ok”);} 5) public BaseClass(String s){ 6) str=s;}} 7) class SubClass extends BaseClass{ 8) } 9) public class Example{ 10) public void method(){ 11) SubClass s=new SubClass(“hello”); 12) BaseClass b=new BaseClass(“world”); 13) } 14) } A. 7 B. 10 C. 11 D.12 8.可以在下面代码段point x处写入的是()。 //point x public class Interesting{ //do something } A. String str; B. static int PI=3.14; C. public class MyClass{//do other thing…} D. import java.awt.*; 9.下面关于事件监听的说明,哪一个语句是正确的?() A. 所有组件,都不允许附加多个监听器 B. 如果多个监听器加在一个组件上,那么事件只会触发一个监听器 C. 组件不允许附加多个监听器

Java课设 模拟科学计算器

Java课程设计 设计题目模拟科学计算器 班级计本1120班 姓名王XX 学号 1162042000

一、设计目的 《Java课程设计》是一门实践性很强的计算机专业基础课程,课程设计是学习完该课程后进行的一次较全面的综合练习。其目的在于通过实践加深学生对面向对象程序设计的理论、方法和基础知识的理解,掌握使用Java语言进行面向对象设计的基本方法,提高运用面向对象知识分析实际问题、解决实际问题的能力,提高自身的应用能力。 二、设计任务 模拟科学计算器 要求:界面模拟Windows中的计算器程序。 实现基本数学运算、函数等功能:加、减、乘、除、阶乘、正弦、余弦和指数运算。 实现要点:添加相关组件并进行按钮事件处理。 三、课题设计思想 对于此计算器程序,首先要设计其GUI界面,总体界面有一个文本框,22个按钮,总体界面用BorderLayout布局。 文本框放置在最north,然后0到9以及+,-,×,÷,.,!的按钮放置到一个面板Panel中,添加到整体布局的center,最后sin,cos,^,=的按钮放在最south,界面设计完成。 本项目用到了Java中的GUI界面和swing组件以及awt布局,所以简单易用,它能完成如下的几个小功能:点击按钮中的数字键和

运算符键就能进行加、减、乘、除阶乘、正弦、余弦和指数运算。还能通过用户自己在文本框中输入数字,进行简单运算;如果输入有误时可以按Clear撤销后重新输入新数据。 四、设计内容 1.需求分析 本项目需要实现一个具有四则运算的计算器,能够实现基本的加、减、乘、除运算,以及其他的辅助功能(阶乘、正弦、余弦、指数运算);界面简洁实用,模拟Windows中的计算器程序,要提供主要的设计思路、类的设计。 2.总体设计 (1)包的描述 本程序导入了 java.awt.BorderLayout包, java.awt.Color包, java.awt.GridLayout包, java.awt.event.ActionEvent包, java.awt.event.ActionListener包, java.text.DecimalFormat包, javax.swing.JButton包, javax.swing.JFrame包, javax.swing.JPanel包, javax.swing.JTextField包

电气自动化实习报告

当前,在素质教育正在日新月异的发展,在高等教育改革不断深化的背景之下,专业生产实习作为教学与生产实际相结合的重要性变得更为突出。自我进入大学学习以来,特别是在进入大三后经过专业基础知识的学习,对电气工程及其自动化专业有了一定了解,但是总对自己以后能够从事的工作感到模糊,这就对我参加学院组织的专业生产实习有了强烈的渴望。在大三的暑期里,即在这个特殊的暑期里——大学最后一个暑期,参加学院组织的专业生产实习。对一名曾从朦胧状态到茫然的我,再从不断努力,到有着一定收获,享受成功的喜悦,在实习之中有了许许多多的感想和体会。就此以自己在实习过程中的所学所思所想写下这篇报告。 (一)实习目的与意义:专业生产实习是电气工程及其自动化专业的必修课程,安排在第三学年暑期短学期开设。该项实习是为了充分利用社会资源,增强电气工程及其自动化专业大学本科生的实践能力,实践的主要目的如下: ①专业生产实习是全面推进素质教育、培养学生创新精神和实践能力的一种重要手段,是学生理论联系实际的一个重要环节,是大学生择业就业之前接触社会、了解社会的一次重要机会。 ②通过专业生产实习,使学生认识电力生产的整个过程,了解电气工程及其自动化专业的主要内容和发展方向,掌握专业的基本常识,为专业课程学习奠定感性认识,形成对本专业的认同感、提高学生学习本专业的兴趣,激发学生的竞争意识、责任意识和开拓意识。 ③通过有组织的开放性专业生产实习活动。培养大学生自主管理、社会交往、互相帮助、独立完成任务等方面的综合能力。 ④学生参加生产实习时将所学理论知识和实际工作紧密联系,巩固已学的理论知识,积累一定的实际生产技术和管理知识,培养运用理论知识解决工程实际问题的能力,注重知识创新和能力培养,为适应社会工作和生活打下坚实的基础。 (二)实习地点: ①成都——西南交通大学。 ②成都——交大许继股份责任有限公司。 ③昆明——铁路局供电段。 ④昆明——云南变压器股份责任有限公司。 (三)实习时间安排与主要实践过程: ①7月14日下午14点在西南交通大学参加学院组织的实习安排、工作布置课程。

Java语言程序设计模拟题

Java语言程序设计模拟题(13) 一、选择题(每题2分,共40分) 1、C 2、D 3、C 4、B 5、D 6、B 7、B 8、C 9、A10、B 11、A12、B13、C14、C15、B16、D17、A18、A19、B20、B 1、指出正确的表达式() A、 byte=128; B、 Boolean=null; C、 long l=0xfffL; D、 double=0.9239d; 2、MAX_LENGTH是int型public成员变量, 变量值保持为常量100,用简短语句定义这个变量。() A、 public int MAX_LENGTH=100; B、 final int MAX_LENGTH=100; C、 final public MAX_LENGTH=100; D、public final int MAX_LENGTH=100; 3、哪个关键字可以抛出异常?() A、 transient B、 finally C、 throw D、 static 4、main()方法的返回类型是:() A、 int B、 void C、 boolean D、 static

5、System类在哪个包中? () A、 java.util B、 java.io C、 java.awt D、 https://www.sodocs.net/doc/6c3678223.html,ng 6、下面关于Applet的说法正确的是() A、 Applet也需要main方法 B、 Applet必须继承自 C、 Applet能访问本地文件 D、 Applet程序不需要编译 7、下面哪个单词是Java语言的关键字() A、Float B、this C、string D、unsigned 8、下面哪个修饰符修饰的方法只能被本类中的其他方法使用() A、protected B、static C、private D、public 9、下面哪个是对字符串String的正确定义() A、String s1=null; B、String s2=’null’ ; C、String s3=(String) ‘abc’ ; D、String s4=(String) ‘\uface’ 10、下面哪条语句不能定义一个float型的变量() A、float f1= -343 ; B、float f2=3.14 ; C、float f3=0x12345 ; D、float f4=2.8F ; 11、编译java程序时出现error: cannot read: aaa.java,则下列原因最正确的是() A、原因是执行的当前目录下没有找到aaa.java文件。 B、原因是没有安装JDK开发环境。 C、原因是java源文件名后缀一定是以 .txt 结尾。

java课程设计计算器3科学计算器

import javax.swing.*;// 把 javax包里面的swing包里面的所有东西引进来 import java.awt.*;// 导入awt包里的所有java类 import java.awt.event.*;//导入包event import java.text.DecimalFormat;// 处理文本、日期、数字和消息的类和接口 import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; import java.util.GregorianCalendar; import java.awt.BasicStroke; import java.awt.BorderLayout; import java.awt.Color; import java.awt.Dimension; import java.awt.Font; import java.awt.Graphics; import java.awt.Graphics2D; import java.awt.GridLayout; import java.awt.Image; import java.awt.Toolkit; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.geom.Ellipse2D; import java.awt.geom.Line2D; import java.awt.geom.Point2D; public class biaozhunjisuanqi extends JFrame implements ActionListener {// public代表该类公有 //class声明一个类 // biaozhunjisuanqi为类名 // extends 是继承类 //implements代表实现接口 //窗体名称biaozhunjisuanqi继承JFrame类和ActionListener接口,并实现public void actionPerformed(ActionEvent e){}方法 private static final long serialVersionUID = 1L;// serialVersionUID相当于java类的身份证, 默认为1L, serialVersionUID作用是序列化时保持版本的兼容性,即在版本升级时反序列化仍保持对象的唯一性 private JPanel jContentPane = null; // 创建面板对象, null代表为这些变量赋初值为空,即不分配内存空间,变量不指向任何地址。private是访问控制符,代表这些变量的访问级别为私有,私有级别只能在当前类中进行访问, 这些(JPanel 、JTextArea 、JPanel、 JButton )是java中AWT(包)中的类,用能进行桌面级应用程序的开发,就像平时用的word,上面有各种文本框,菜单栏,工具栏按钮等等,这些都是对象 private JPanel jPanel= null; //JPanel 作为一个容器,可以包容一些组件,然后将这个 JPanel

电气自动化专业实习报告

1.实习目的 毕业实习的质量关系到了毕业设计的好坏,作为大学期间最重要的实习之一,我们必须认真参与。通过最后一次实习,让学生进一步了解生产现场,把在校期间的学习和生产结合起来,发现自己的不足,温顾已学过的知识。在做毕业设计期间认真改进,为将来快速融入工作打下坚实的基础。 2.实习内容 2.1 工厂简介 这次我实习的地方是许继集团下属的许继电源有限公司。它立于1994年3月,是许继集团核心子公司之一。目前许继集团拥有1家上市公司、两家行业归口研究所、两家国家级产品检测中心、8家中外合资公司。是我国电力装备行业的大型骨干和龙头企业,国家认定的520家重大技术装备国产化基地、国家级企业技术中心、企业博士后工作站。产品覆盖发电、输电、配用电等电力系统各环节,横跨一次及二次装备、交流及直流装备领域。 现在许继电源共有员工500余人,其中博士两名,硕士23名,本科132名,大专168名,专科以上学历占总人数的69%。许继电源有限公司的主要产品领域涵盖电力电源、电动汽车充电设施、电能质量控制设备和军用特种电源产品。 电力电源产品:电力电源在电力市场的占有率全国第一。主要生产交直流电源屏,为电厂和变电站提供稳定可靠的操作电源。已经取得的主要业绩有:秦山核电站2*660MW机组;国家电网公司高岭500KV换流站;国家电网公司三门峡500KV换流站;南方电网公司500KV深圳换流站;上海超高压局数字化变电站等。 充电设施产品:电动汽车作为国家新能源领域的重点项目,相应的充电设施有着广阔的市场前景,许继电源两年前就参与了智能电网中相关产品和充电站建设项目的研究、并在此新领域取得可喜的成果。主要业绩:上海世博园区电动大巴充电站――9kW和30kW非车载充电机;V2G技术在世博智能电网中的应用展示――30kW双向充放电装置;上海漕溪公共示范充电站――MW级电池储能系统150kW双向变流器及80kW非车载充电机;郑州日产电动汽车充电站――交流充电桩和30kW非车载充电机;甘肃兰州充电站等。

java课程设计_ATM柜员机模拟程序文件

课程设计(大作业)报告 课程名称:面向对象程序设计课程设计设计题目:ATM柜员机模拟程序 院系:信息技术学院 班级: 设计者: 学号: 指导教师: 设计时间:2016-1-4-2016-1-8 信息技术学院 学院课程设计(大作业)任务书

课程设计(大作业)报告 一、题目分析 1.系统需求分析 (1)设计目标:随着市场经济的繁荣发展,人们的物质生活得到极大的提高,手中的剩余资金也日益增多。受传统观念影响,绝大多数人喜欢把资金投进银行,而在需要使用现金的时候再到银行提取现金。这就导致银行业务的急剧增加。虽然银行网点越来越多,银行的工作效率也随着信息化有较明显的增长,但是依旧不能满足广大用户的需要。而一味的增加营业网点,从理论上虽然能稍微的缓解银行的压力,但是治标不治本,而且每增加一个网点,不仅要付出昂贵的资金成本,还需要长期投入人力资本,成本非常之昂贵。这时候就迫切的需要一种自动的,易于普及的,低成本的设备来解决这一问题。于是ATM机系统应运而生了。 自动柜员机,即ATM,是指银行在不同地点设置一种小型机器,利用一信用卡大小的胶卡上的磁带记录客户的基本户口资料(通常就是银行卡),让客户可以透过机器进行提款、存款、转账等银行柜台服务,大多数客户都把这种自助机器称为自动提款机。 本文正是通过设计一个ATM模拟模拟程序来实现ATM机系统的基本功能,充分运用自己所学的Java知识进行设计编程。 (2)题目设计要求:本ATM柜员机的主要功能如下所述: 要求使用图形用户界面。当输入给定的卡号和密码(初始卡号和密码为123456)时,系统能登录ATM柜员机系统,用户可以按照以下规则进行: ●查询余额:初始余额为10000元。 ●ATM取款:每次取款金额为100的倍数,总额不超过5000元,支取金额不允许透 支。 ●ATM存款:不能出现负存款。 ●修改密码:新密码长度不小于6位,不允许出现6位完全相同的情况,只有旧密 码正确,新密码符合要求,且两次输入相同的情况下才可以成功修改密码。 2.ATM模拟系统总体设计结构 (1)设计思想:通过程序要求,我们可以清楚的知道本次设计的ATM柜员模拟程序需

最新电气自动化实习报告2020

最新电气自动化实习报告2020 通过电气自动化实习,了解到供配电系统,了解到变电所的组成及运行过程,为电力网设计、建筑供配电系统课程设计奠定基础?下面给大家分享一下关于电气自动化实习报告,希望对大家有帮助 电气自动化实习报告1 经过了大学三年电气自动化技术专业的理论进修,使我们电气自动化技术专业的基础知识有了根本掌握.我们即将离开大学校园,作为大学毕业生,心中想得更多的是如何去做好自己专业发展、如何更好的去完成以后工作中每一个任务. 因此,我作为一名电气自动化技术专业的学生,有幸参加了为期近三个月的毕业实习.刚进入实习单位的时候我有些担心,在大学学习电气自动化技术专业知识与实习岗位所需的知识有些脱节,但在经历了儿天的适应过程之后,我慢慢调整观念,正确认识了实习单位和个人的岗位以及发展方向.以下是我的实习报告. 一、实习概况 随着社会的快速发展,用人单位对大学生的要求越来越高,对于即将毕业的电气自动化技术专业在校生而言,为了能更好的适应严峻的就业形势,毕业后能够尽快的融入到社会,同时能够为自己步入社会打下坚实的基础,毕业实习是必不可少的阶段.毕业实习能够使我们在实践中了解社会,让我们学到了很多在电气自动化技术专业课堂上根本就学不到的知识,受益匪浅,也打开了视野,增长了见识,使我认识到将所学的知识具体应用到工作中去,为以后进一步走向社会打下坚实的基础,只有在实习期间尽快调整好自己的学习方式,适应社会,才能被这个社会所接纳,进而生存发展. 二、实习目的 为了将自己所学电气自动化技术专业知识运用在社会实践中,在实践中巩固自己的理论知识,将学习的理论知识运用于实践当中,反过来检验书本上理论的正确性,锻炼自己的动手能力,培养实际工作能力和分析能力,以达到学以致用的LI的.通过电气自动化技术的专业实习,深化已经学过的理论知识,提高综合运用所学过的知识,并且培养自己发现问题、解决问题的能力. 通过电气自动化技术专业岗位实习,更广泛的直接接触社会,了解社会需要, 加深对社会的认识,增强自身对社会的适应性,将自己融合到社会中去,培养自己的实践能力,缩短我们从一名大学生到一名工作人员之间的观念与业务距离?为以后进一步

相关主题