Java程序的设计实验报告

合集下载

java实训报告(通用7篇)

java实训报告(通用7篇)

java实训报告(通用7篇)在当下这个社会中,报告有着举足轻重的地位,写报告的时候要注意内容的完整。

我们应当如何写报告呢?下面是小编整理的java实训报告,供大家参考借鉴,希望可以帮助到有需要的朋友。

java实训报告1一、课程设计名称及主要内容:1、课程设计名称:时钟动画2、课程设计的主要内容:以下题目任选一个:(1)图形界面类,如科学计算器、绘图板、日历、游戏程序等。

(2)动画类,编制功能较复杂、效果较好的Applet动画程序。

(3)数据处理类,如学生学籍、课程成绩、图书编目、仓库货物等数据录入查询程序。

(4)其他类型,自选题目,须经指导老师同意。

我所选的题目是动画类的Applet动画程序,主要任务是用Java 程序设计一个时钟动画。

二、程序的设计思想和流程图:1、设计思想:现在的各种时钟花样百出,千奇百怪,功能亦是越来越先进了。

我很喜欢这些各式各样的时钟,所以希望自己也能设计出一个来。

于是,我希望自己能够用自己所学的Java知识设计出一个自己的时钟动画,即使是最简单的,但我相信这是暂时的。

只要我能够努力学好Java知识,将来一定能够设计出更好更完美的时钟动画。

2、流程图:三、程序介绍:1、设计方法及步骤:题目分析:根据《课程设计任务书》要求,分析题目,构造出程序的基本思路(算法设计)。

画出程序设计结构框图。

构造数据结构:根据程序结构框图和题目分析结果(采用算法),构造程序所用各项数据,各种窗体及他们之间的联系。

构造程序框架:在窗体确定之后,根据算法设计出所用各个窗体之间的调用关系。

程序设计:①画出程序功能框图和结构框图;②根据框图设计程序;③编译程序调试程序,使程序可以使用;④完备程序功能。

程序打包:所设计程序汇总,将程序分类归入相应子目录,完成程序所有设计要求。

2、完成情况:经过一系列的Java程序代码的设计,虽然过程中遇到了许多的问题,但是最终解决了所有的问题,准确的设计出了时钟动画,运行情况正常。

java类的设计实验报告

java类的设计实验报告

java类的设计实验报告Java 类的设计实验报告一、实验目的本次实验的主要目的是深入理解和掌握 Java 类的设计原则、方法和技巧,通过实际的编程实践,提高对面向对象编程思想的应用能力,培养良好的编程习惯和代码规范。

二、实验环境1、操作系统:Windows 102、开发工具:IntelliJ IDEA3、 JDK 版本:18三、实验内容1、设计一个简单的学生类(Student),包含学生的姓名(name)、年龄(age)、学号(studentId)等属性,并提供相应的构造方法、getter 和 setter 方法。

2、设计一个课程类(Course),包含课程名称(courseName)、课程编号(courseId)、授课教师(teacher)等属性,同样提供构造方法和相关的访问方法。

3、设计一个学生选课类(StudentCourse),用于关联学生和课程,包含学生对象(student)、课程对象(course)、选课时间(selectTime)等属性,并实现相应的方法来获取和设置这些属性。

四、实验步骤(一)学生类(Student)的设计```javapublic class Student {private String name;private int age;private String studentId;//无参构造方法public Student(){}//有参构造方法public Student(String name, int age, String studentId) {thisname = name;thisage = age;thisstudentId = studentId;}// getter 和 setter 方法public String getName(){return name;}public void setName(String name) {thisname = name;}public int getAge(){return age;}public void setAge(int age) {thisage = age;}public String getStudentId(){return studentId;}public void setStudentId(String studentId) {thisstudentId = studentId;}}```(二)课程类(Course)的设计```javapublic class Course {private String courseName;private String courseId;private String teacher;//无参构造方法public Course(){}//有参构造方法public Course(String courseName, String courseId, String teacher) {thiscourseName = courseName;thiscourseId = courseId;thisteacher = teacher;}// getter 和 setter 方法public String getCourseName(){return courseName;}public void setCourseName(String courseName) {thiscourseName = courseName;}public String getCourseId(){return courseId;}public void setCourseId(String courseId) {thiscourseId = courseId;}public String getTeacher(){return teacher;}public void setTeacher(String teacher) {thisteacher = teacher;}}```(三)学生选课类(StudentCourse)的设计```javapublic class StudentCourse {private Student student;private Course course;private String selectTime;//无参构造方法public StudentCourse(){}//有参构造方法public StudentCourse(Student student, Course course, String selectTime) {thisstudent = student;thiscourse = course;thisselectTime = selectTime;}// getter 和 setter 方法public Student getStudent(){return student;}public void setStudent(Student student) {thisstudent = student;}public Course getCourse(){return course;}public void setCourse(Course course) {thiscourse = course;}public String getSelectTime(){return selectTime;}public void setSelectTime(String selectTime) {thisselectTime = selectTime;}}```(四)测试类```javapublic class Test {public static void main(String args) {//创建学生对象Student student1 = new Student("张三", 20, "001");//创建课程对象Course course1 = new Course("Java 编程","001","李老师");//创建学生选课对象StudentCourse studentCourse1 = new StudentCourse(student1,course1, "2023-09-01");//输出学生选课信息Systemoutprintln("学生姓名:"+ studentCourse1getStudent()getName());Systemoutprintln("学生年龄:"+ studentCourse1getStudent()getAge());Systemoutprintln("学生学号:"+ studentCourse1getStudent()getStudentId());Systemoutprintln("课程名称:"+ studentCourse1getCourse()getCourseName());Systemoutprintln("课程编号:"+ studentCourse1getCourse()getCourseId());Systemoutprintln("授课教师:"+ studentCourse1getCourse()getTeacher());Systemoutprintln("选课时间:"+studentCourse1getSelectTime());}}```五、实验结果与分析通过运行测试类,成功输出了学生选课的相关信息,包括学生的姓名、年龄、学号,课程的名称、编号、授课教师以及选课时间。

java语言程序设计实验报告

java语言程序设计实验报告

java语言程序设计实验报告篇一:Java实验八报告《Java语言程序设计》实验报告学生姓名:郭倩班级:信息112学号:201152275208实验地点:经管实验中心证券实验室指导教师:赵利平实验日期:实验环境:Windows 2000+JDK1.61. 实验目的(1)理解子类派生的概念(2)学习创建子类对象(3)掌握方法覆盖的使用2.实验内容(1)设计三个类:完成实验教材P52页程序清单4-2;(2)通过编制一个程序来加深对嵌套类、内部类和局部类的理解:完成实验教材P56页程序清单4-3;2. 实验过程报告撰写具体要求:上述实验内容要求写出源代码及运行结果。

实验内容(1)://Polymorphism.abstract class Student{final static int CourseNo=3;String name;String type;int[] courses;String courseGrade;public Student(String name){=name;courses=new int[CourseNo];courseGrade=null;}public abstract void calculateGrade();public String getName(){return name;}public String getType(){return type;}public String getCourseGrade(){return courseGrade;}public int getCourseScore(int courseNumber){return courses[courseNumber];}public void setName(String name){=name;}public void setType(String type){this.type=type;}public void setCourseScore(int courseNumber,int courseScore){this.courses[courseNumber]=courseScore;}}class Undergraduate extends Student{public Undergraduate(String name){super(name);type="本科生";}public void calculateGrade(){int total=0;double average=0;for(int i=0;i<CourseNo;i++){total+=courses[i];};average=total/CourseNo;if(average>=80&&average<100) coursegrade="优秀" else="" average="">=70&&average<80) coursegrade="良好" else="" average="">=60&&average<70) coursegrade="一般" else="" average="">=50&&average<60) courseGrade="及格";else courseGrade="不及格";}}class Postgraduate extends Student{public Postgraduate(String name){super(name);type="研究生";}public void calculateGrade(){int total=0;double average=0;for(int i=0;i<CourseNo;i++){total+=courses[i];};average=total/CourseNo;if(average>=90&&average<100) coursegrade="优秀" else="" average="">=80&&average<90) coursegrade="良好"else="" average="">=70&&average<80) coursegrade="一般" else="" average="">=60&&average<70) courseGrade="及格";else courseGrade="不及格";}}public class Polymorphism{public static void main(String[] args){Student[] students=new Student[5];students[0]=new Undergraduate("陈建平");students[1]=new Undergraduate("鲁向东");students[2]=new Postgraduate("匡晓华");students[3]=new Undergraduate("周丽娜");students[4]=new Postgraduate("梁欣欣");for(int i=0;i<5;i++){students[i].setCourseScore(0,87);students[i].setCourseScore(1,90);students[i].setCourseScore(2,78);}for(int i=0;i<5;i++){students[i].calculateGrade();}System.out.println("姓名"+" 类型"+" 成绩");}}System.out.println("-------------------------"); for(int i=0;i<5;i++){ System.out.println(students[i].getName()+" "+students[i].getType()+" "+students[i].getCourseGrade()); }(1) 都有(2) Student[] students=new Student[5];(3) Student是抽象的,不能用new操作符创建抽象类的实例。

JAVA实验报告

JAVA实验报告

Java程序设计实验一、实验要求:实验要求为利用JDK设计一个简易计算器,要求功能与Windows操作系统中Calc程序功能类似。

因此可以基于AWT及Swing包构建GUI界面,并处理按钮消息按钮响应机制,最终实现通过单击按钮进行简单计算的功能。

二、需求分析及概要设计:图形界面基于Swing包中类进行构建,外部框架继承JFrame类,并且由于内部结构具有明显的网格特征,因此考虑采用GridLayout进行布局管理;按钮JButton类实现,而数码的显示采用两个边框消隐的JTextField类对象实现。

而具体的计算可以通过消息响应实现,其功能大致有四类:(1)内存变量处理:即计算器内部变量(MemV ar)的操作,其中MC (Memory Clear)为清空内存变量;MR(Memory Replace)为利用当前值(Current V alue)替换内存变量;MS(Memory Show)为显示内存变量;M+事实上执行的是Memory+=Current V alue;类似的,M-则执行的是Memory-=Current V alue。

(2)单操作数运算,包括“±”,取负操作;“√”,开根操作;“л”,将当前操作数替换为л,“1/x”,取倒数操作;“ln”,取自然对数。

(3)双操作数运算,即加减乘除和取余数。

(4)数字输入以及操作:0~9以及小数点的输入;“←”,删除一位数码;“C”,清空所有数码以及操作符;“CE”,清除当前操作数。

对于内存变量处理、数字操作以及单操作数运算都是即时显示的,而双操作数操作执行则需借助“=”的响应。

设计两个double型操作数ans以及opd,前者用于存放当前值,而后者单纯用于双操作运算;利用StringBuffer类来实现字符串处理,如追加/删除数码,小数点,(正)负号等等。

最后借助ActionListener接口实现消息响应机制。

关于界面的网格布局如下:整体采用4*1的网格布局,而按钮集采用2*5的布局用于放置Button。

《Java程序设计》实验报告 --实验3

《Java程序设计》实验报告 --实验3
}
else if(e.getSource()==buttontwo){//按键2操作
tf.setText(tf.getText()+"2");
flag1=Double.parseDouble(tf.getText());
}
else if(e.getSource()==buttonthree){//按键3操作
buttondevision=new JButton("/");
buttonsin=new JButton("sin");
buttontozero=new JButton(">0");
paneleast.setLayout(new GridLayout(3,1));//设置西边的布局为3行1列
//将操作按钮"+""-""*""/""sin"">0"添加到西边的面板中
JButton buttonplus,buttonminus,buttonmultiple,buttondevision,
buttonsin,buttontozero;//新建按钮"+""-""*""/""sin"和归零按钮
JButton buttonone,buttontwo,buttonthree,buttonfour,buttonfive,buttonsix,
panelcenter.add(buttonthree);
panelcenter.add(buttonfour);
panelcenter.add(buttonfive);

JAVA语言程序设计实验报告

JAVA语言程序设计实验报告

实验一、安装JDK并熟悉java的运行环境实验二、基本语法练习实验三、面向对象编程实验(4)实验四、异常处理实验实验五、小应用程序实验实验六、图形图像实验实验七、GUI(图形用户接口)实验(4)实验八、多线程实验实验九、输入输出流实验(4)实验十、数据库应用实验(4)实验一、安装JDK并熟悉java的运行环境一、实验目的熟悉JA V A的运行环境及学习简单的编程。

二、预习内容安装工具软件的基本方法。

三、实验设备与环境装有JA V A语言工具软件(Eclipse )的微机若干四、实验内容安装Eclipse及JA V A的核心编译程序J2SDK。

1、打开Eclipse的安装盘安装Eclipse。

2、在相同目录下安装J2SDK。

3、打开Eclipse软件对J2SDK文件进行配置。

4、编写一应用程序,在屏幕上显示“HELLO WORLD”和爱心标志。

Pulic class Hello{public static void main(String args[]){//在屏幕上显示“HELLO WORLD”和爱心标志}}5、编写一小程序实现上述功能:在屏幕上显示“HELLO WORLD”和爱心标志。

实验结果五、注意事项⒈认真填写实验报告⒉遵守实验室各项制度,服从实验指导教师的安排⒊按规定的时间完成实验六、说明本次实验建议学时数2学时七、实验总结与体会实验二、基本语法练习一、实验目的⒈熟悉Java的基本语法⒉编写应用程序接收命令行参数⒊编写应用程序接收用户从键盘的输入⒋掌握字符串与数组的基本方法二、预习内容java编程的基本结构三、实验设备与环境装有JA V A语言工具软件(Eclipse )的微机若干四、实验内容⒈编写一个应用程序求若干个数的平均数,原始数字要求从命令行输入。

应用程序中main方法的参数String类型的数组args能接受用户从命令行键入的参数。

(1)编辑A verage.java。

class A verage{public static void main(String args[ ]){double n,sun=0;for (int l=0;l<args.legth;l++){sum=sum+Double.valueOf(arg[l].doubleV alue();)}n=sum/args.length;System.out.println(“average=”+n);}}命令行参数:12.34 34.45 21212121注意:1)参数的个数可以利用args.length来取得。

Java程序设计实验报告

Java程序设计实验报告

(此文档为word格式,下载后您可任意编辑修改!)Java程序设计实验报告实验一 JDK开发环境和结构化程序设计实验学时:2 实验类型:综合性一、实验目的1.熟悉JDK开发环境。

2.熟悉UltraEditNotePad等编辑器编写、编译、运行Java程序。

3.掌握Java Application的程序结构和开发过程。

4.掌握Eclipse工具的使用。

5.结构化程序设计二、实验内容1.JDK开发环境(1)J2sdk开发环境安装。

假设JDK的安装路径为C:\JDK;(2)设置环境变量PATH和CLASSPATH(如果在autoexec.bat中没有进行设置)。

如SET PATH=C:\JDK\BIN;%PATH%SET CLASSPATH=.; %CLASSPATH%;d:\test_java (自己的工作目录) 2.UltraEditNotepad编辑器练习使用UltraeditNotepad创建Java源程序的方法。

3.掌握Java Application程序开发过程(1)编辑源程序,如下程序:import java.io.*;public class HelloWorld1{public static void main(String arg[]){System.out.println("Hello World!");}}(2)保存文件,(注意大小写)。

可将文件保存在“D:\test_java\”目录中,注意文件名为HelloWorld1.java。

(3)进入命令行(MS-DOS)方式,设定当前目录为“D:\test_java\”,运行Java 编译器:D:\test_java>javac HelloWorld1.java(4)如果输出错误信息,则根据错误信息提示的错误所在行返回EditPlus编辑器进行修改。

常见错误是类名与文件名不一致、当前目录中没有所需源程序、标点符号全角等。

JAVA实验研究报告一

JAVA实验研究报告一

Java语言程序设计实验报告一班级:姓名:学号:一、实验教案目的与基本要求Java程序设计的实验是Java程序设计课程重要的实践教案环节。

实验的目的不仅仅是验证理论知识,更重要的是通过上机加强学生的动手能力,掌握常用Java开发环境的使用方法,培养学生分析问题、解决问题、应用知识的能力和创新精神。

充分放手让学生自行设计、自主调试,真正培养学生的实践动手能力,全面提高学生的综合素质。

本课程是一门程序设计语言课程,通过本课程的学习,学生能够掌握Java语言程序的基本特点、基本编程方法和基本开发技巧,培养学生阅读、分析、设计和调试Java语言的能力,并具备一定的面向对象程序设计思想。

本课程的主要任务是在已学习的编程语言基础上,讲述Java语言的数据结构和语法规则;基本控制结构和编程技巧;Java语言面向对象的特点、编程方法和程序设计思路;Java语言的GUI程序和文件及I/O流的编程方法;能够正确配置Java开发环境,并使用相关的编辑、编译、调试、运行命令。

(1)掌握Java语言的编程技巧,能够独立进行面向对象的开发能力。

(2)具有根据编程需求独立查询Java类库文档及相关资料,完成系统的能力。

(3)具有分析、寻找和排除程序中常见问题的能力。

二、实验内容与收获(1)Java的安装与配置。

熟悉语言环境及简单程序设计的使用练习,正确配置Java开发环境(Eclipse 集成开发环境的安装、配置与使用)a)安装JDKSun公司为所有的Java程序员提供了一套免费的Java开发和运行环境。

可以通过IE或Netscape浏览器浏览网址:/j2se,根据提示可以下载支持Microsoft Windows操作系统的jdk-1_5_0-windows-i586.exe到本地硬盘。

安装的时候可以选择安装到任意的硬盘驱动器上,例如安装到D:\jdk1.5.0目录下,如图1-2。

正确安装后,在JDK目录下有bin、demo、lib、jre等子目录,如图1-3,其中bin目录保存了javac、java、appletviewer等命令文件,demo目录保存了许多java的例子,lib目录保存了Java的类库文件,jre目录保存的是Java的运行时环境(JRE)。

java程序设计实验报告

java程序设计实验报告

java程序设计实验报告
实验一:实现个人信息管理系统
实验目的:学习如何使用Java语言来完成一个简单的面向对象程序设计。

实验内容:
本次实验的任务是开发一个个人信息管理系统,可以完成一些基本的信息管理功能,如增加、删除、查询和修改个人信息等。

实验步骤:
1. 定义Person类并实现其属性和方法。

2. 在主类中实现简单的用户交互界面。

3. 实现文件持久化,将程序中的信息储存在文件中。

4. 实现增加、删除、查询和修改个人信息的功能。

实验结论:
通过本次实验,我学会了如何使用Java语言来实现一个简单的面向对象程序设计。

在开发过程中,我学会了如何定义类、实现属性和方法,如何进行用户交互界面的设计,以及如何将程序中的信息储存在文件中。

《JAVA程序设计》实验报告

《JAVA程序设计》实验报告
华北科技学院计算机学院综合性实验
实验报告
课程名称Java程序设计
实验学期2012至2013学年第1学期
学生所在系部计算机学院
年级2010专业班级计科B1XX
学生姓名XXXXX学号**********XX
任课教师白磊
实验成绩
计算机学院制
《Java程序设计》课程综合性实验报告
开课实验室:基础实验室2012年12月13日
打开功能,文件中可以打开新的文件,如下图所示:
另存为功能,可以对文件另存为,可以实现文件的另存功能,截图如下:
2.文件菜单中各项功能的实现
①新建功能设计
主窗口的实现:
//创建窗口对象,并设置相关属性
finalJFrame jf=newJFrame("记事本——JAVA的综合实验");
jf.setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);
实验题目
简易写字板软件设计
一、实验目的
通过编写Java的应用系统综合实例,通过编写程序来掌握Java语言编程技巧,将学习到的知识融会贯通,同时提高调试程序的能力,养成良好的编程习惯,并增强对程序设计整体思路的把握。
二、设备与环境
硬件:多媒体计算机
软件:Windows 2000以上的操作系统、JDK开发包、集成开发环境
具体界面如下图所示:
“文件”菜单:“编辑”菜单:
“格式”菜单:“帮助”菜单:
保存功能,当需要进行保存时,可以在点击文件中的保存,弹出保存对话框,进行文件的保存,如下图所示:
②编辑区设计(主要以文件菜单为例介绍)
“文件”菜单
新建功能,当写字板中有输入内容时,弹出保存现有信息的对话框。选择是或否之后,进入新建的页面。如下图所示:

JAVA简单画板程序设计实验报告

JAVA简单画板程序设计实验报告

J A V A简单画板程序设计实验报告As a person, we must have independent thoughts and personality.JAVA期末画板实验报告课程题目:运用JAVA语言编写一个画板程序,这个画板要有画图,特殊图形绘制,颜色改变,画笔大小改变等功能。

设计思想:1.进行界面设计2.进行算法实现3.运行调试4.总结问题设计过程:A.界面设计B.新建一个Jframe容器,然后定义一个panel( Panel convas2),convas2是工具栏。

用borderlayout布置容器的边框布局,将工具栏放在NORTH部分。

完成界面设计。

add(canvas2,;Panel canvas2 = new Panel();添加工具按键Panel canvas2 = new Panel();Button btn1 = new Button("直线");Button btn2 = new Button("椭圆");Button btn3 = new Button("矩形");Button btn4 = new Button("清除");Button btn5 = new Button("画笔");Button btn6 = new Button("橡皮");Choice choice = new Choice();Choice choice1 = new Choice();(choice);(choice1);(btn1);(btn2);(btn3);(btn4);(btn5);(btn6);在工具表中,有两个下拉菜单,分别收录画笔的大小和颜色。

1.画笔的大小:("1");("3");("5");("7");("9");2.画笔颜色("黑色");("蓝色");("红色");("黄色");("绿色");3展示画板C.算法实现运用画板,首先要对工具栏按键和鼠标进行监听,然后对监听进行响应。

Java程序设计实验报告_2

Java程序设计实验报告_2

Java程序设计实验报告姓名:学号:班级:课题名称(附程序名):JAVA计算器(Calculator.java)一、实验目的通过JAVA图形接口的应用,编写出一图形界面的科学计算器;熟悉JAVA程序开发的一般步骤,掌握事件驱动,并能掌握一定的Java 编程能力,在实践中能感受Java的奥秘!同时检验自己的学习成果。

二、实验任务具有加减乘除的计算器,可以延伸到开方等其他的一些计算。

三、开发工具与平台Microsoft Visual Studio 2005四、设计思路:1)界面设计2)逻辑设计首先明确该实验设计的要求实现的基本功能,其次设计布局,将空间划分为由行和列组成的网格单元,每个单元放一个组件,网格单元大小可以不同,尽量将相同属性的按钮放在一个区域,方便操作。

3)软件调试与测试经过调试之后,能实现基本的四则运算,并能实现开方和消除错误的数。

4)软件设计优化该软件的界面应该更加流畅,同时我相信随着自己只是的日益丰富,开发软件的速度更快,效率更高,功能更加全面!5)实验总结不足:没有实现Mc,MR,MS,M+以及菜单栏几个功能,有待进一步完善。

这样才能够完成自己的第一个应用软件设计!优点:通过本次实验设计,大体了解了Java图形接口的应用,并在过程中增强了对程序的调试能力。

对JAVA有了更深一步的理解,学会如何解决问题,如何坚持对程序的调试,同时也增强了自己学习Java的信心。

五、附录源程序如下:import java.awt.BorderLayout;import java.awt.Container;import java.awt.GridBagConstraints;import java.awt.GridBagLayout;import java.awt.GridLayout;import java.awt.Insets;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.awt.event.MouseEvent;import java.awt.event.MouseListener;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JMenu;import javax.swing.JMenuBar;import javax.swing.JPanel;import javax.swing.JTextField;public class Calculator extends JFrame implements ActionListener { boolean init = true;boolean isMath = false;boolean clear = true;boolean clickable = true;double qian;String fuhao;int all = 0;JTextField text = new JTextField(25);JButton bM = new JButton();JButton bMC = new JButton("MC");JButton bMR = new JButton("MR");JButton bMS = new JButton("MS");JButton bMADD = new JButton("M+");JButton b0 = new JButton("0");JButton b1 = new JButton("1");JButton b2 = new JButton("2");JButton b3 = new JButton("3");JButton b4 = new JButton("4");JButton b5 = new JButton("5");JButton b6 = new JButton("6");JButton b7 = new JButton("7");JButton b8 = new JButton("8");JButton b9 = new JButton("9");JButton bNOP = new JButton("+/-");JButton bDot = new JButton(".");JButton bDiv = new JButton("/");JButton bMul = new JButton("*");JButton bSub = new JButton("-");JButton bAdd = new JButton("+");JButton bSprt = new JButton("sprt");JButton bMod = new JButton("%");JButton bDao = new JButton("1/x");JButton bEqual = new JButton("=");JButton bBackspace = new JButton("Backspace"); JButton bCE = new JButton("CE");JButton bC = new JButton("C");public Calculator() {this.setTitle("计算器");JMenuBar mainMenu = new JMenuBar();setJMenuBar(mainMenu);JMenu editMenu = new JMenu("编辑");JMenu viewMenu = new JMenu("查看");JMenu helpMenu = new JMenu("帮助");mainMenu.add(editMenu);mainMenu.add(viewMenu);mainMenu.add(helpMenu);JPanel jpDisplay = new JPanel();JPanel jpInput = new JPanel();JPanel jpLeft = new JPanel();JPanel jpRight = new JPanel();text.setText("0.");text.setHorizontalAlignment(JTextField.RIGHT); jpDisplay.add(text);bM.addActionListener(this);bMC.addActionListener(this);bMS.addActionListener(this);bMR.addActionListener(this);bMADD.addActionListener(this);jpLeft.setLayout(new GridLayout(5, 1)); jpLeft.add(bM);jpLeft.add(bMC);jpLeft.add(bMR);jpLeft.add(bMS);jpLeft.add(bMADD);JPanel jpInnerN = new JPanel();JPanel jpInnerS = new JPanel();bBackspace.addActionListener(this);bCE.addActionListener(this);bC.addActionListener(this);jpInnerN.setLayout(new GridLayout(1, 3)); jpInnerN.add(bBackspace);jpInnerN.add(bCE);jpInnerN.add(bC);b0.addActionListener(this);b1.addActionListener(this);b2.addActionListener(this);b3.addActionListener(this);b4.addActionListener(this);b5.addActionListener(this);b6.addActionListener(this);b7.addActionListener(this);b8.addActionListener(this);b9.addActionListener(this);bNOP.addActionListener(this);bDot.addActionListener(this);bDiv.addActionListener(this);bMul.addActionListener(this);bSub.addActionListener(this);bAdd.addActionListener(this);bSprt.addActionListener(this);bMod.addActionListener(this);bDao.addActionListener(this);bEqual.addActionListener(this);jpInnerS.setLayout(new GridLayout(4, 5));jpInnerS.add(b7);jpInnerS.add(b8);jpInnerS.add(b9);jpInnerS.add(bDiv);jpInnerS.add(bSprt);jpInnerS.add(b4);jpInnerS.add(b5);jpInnerS.add(b6);jpInnerS.add(bMul);jpInnerS.add(bMod);jpInnerS.add(b1);jpInnerS.add(b2);jpInnerS.add(b3);jpInnerS.add(bSub);jpInnerS.add(bDao);jpInnerS.add(b0);jpInnerS.add(bNOP);jpInnerS.add(bDot);jpInnerS.add(bAdd);jpInnerS.add(bEqual);jpRight.setLayout(new BorderLayout());jpRight.add(jpInnerN, BorderLayout.NORTH);jpRight.add(jpInnerS, BorderLayout.CENTER);jpInput.setLayout(new BorderLayout());jpInput.add(jpLeft, BorderLayout.WEST);jpInput.add(jpRight, BorderLayout.CENTER);Container pane = this.getContentPane();pane.setSize(333, 208);this.setLocation(300, 200);this.setLayout(new BorderLayout());pane.add(jpDisplay, BorderLayout.CENTER);pane.add(jpInput, BorderLayout.SOUTH);this.setDefaultCloseOperation(EXIT_ON_CLOSE);this.pack();this.setVisible(true);}public void actionPerformed(ActionEvent e) {if (init)this.text.setText("0.");init = false;Object source = e.getSource();if (source == bBackspace) {String s = text.getText();text.setText("");for (int i = 0; i < s.length() - 1; i++) { char a = s.charAt(i);text.setText(text.getText() + a);}System.out.println("backspace");}if (source == bCE) {text.setText("0.");clear = true;init = true;System.out.println("CE");}if (source == bC) {text.setText("0.");clear = true;init = true;System.out.println("C");}if (source == bM) {System.out.println("M");}if (source == bMC) {System.out.println("MC,功能末实现");}if (source == bMR) {System.out.println("MR,功能末实现");}if (source == bMS) {System.out.println("MS,功能末实现");}if (source == bMADD) {System.out.println("M+,功能末实现");}if (source == b0) {System.out.println("0");if (clear == false)// 判断是否点击了符号位text.setText("");text.setText(text.getText() + "0");}if (source == b1) {if (clear == false)text.setText("");text.setText(text.getText() + "1");clear = true;// 第二次不在清空(前二句)}if (source == b2) {System.out.println("2");if (clear == false)text.setText("");text.setText(text.getText() + "2");clear = true;}if (source == b3) {System.out.println("3");if (clear == false)text.setText("");text.setText(text.getText() + "3");clear = true;}if (source == b4) {System.out.println("4");if (clear == false)text.setText("");text.setText(text.getText() + "4");clear = true;}if (source == b5) {System.out.println("5");if (clear == false)text.setText("");text.setText(text.getText() + "5");clear = true;}if (source == b6) {System.out.println("6");if (clear == false)text.setText("");text.setText(text.getText() + "6");clear = true;}if (source == b7) {System.out.println("7");if (clear == false)text.setText("");text.setText(text.getText() + "7");clear = true;}if (source == b8) {System.out.println("8");if (clear == false)text.setText("");text.setText(text.getText() + "8");clear = true;}if (source == b9) {System.out.println("9");if (clear == false)text.setText("");text.setText(text.getText() + "9");clear = true;}try{if (source == bNOP) {System.out.println("+/-");boolean isNumber = true;String s = text.getText();for (int i = 0; i < s.length(); i++)if (!(s.charAt(i) >= '0' && s.charAt(i) <= '9'|| s.charAt(i) == '.' || s.charAt(i) == '-')) {isNumber = false;break;}if (isNumber == true) {// 如果当前字符串首字母有'-'号,代表现在是个负数,再按下时,则将首符号去掉if (s.charAt(0) == '-') {text.setText("");for (int i = 1; i < s.length(); i++) {char a = s.charAt(i);text.setText(text.getText() + a);}}// 如果当前字符串第一个字符不是符号,则添加一个符号在首字母处elsetext.setText('-' + s);}}if (source == bDot) {System.out.println(".");clickable = true;for (int i = 0; i < text.getText().length(); i++)if ('.' == text.getText().charAt(i)) {clickable = false;break;} // 第一层判断是否里面含有小数点;if (clickable == true)// 第二层判断text.setText(text.getText() + ".");}if (source == bDiv) {System.out.println("/");qian = Double.parseDouble(text.getText());fuhao = "/";clear = false;}if (source == bMul) {System.out.println("*");qian = Double.parseDouble(text.getText());fuhao = "*";clear = false;}if (source == bSub) {System.out.println("-");qian = Double.parseDouble(text.getText());fuhao = "-";clear = false;}if (source == bAdd) {System.out.println("+");qian = Double.parseDouble(text.getText());fuhao = "+";clear = false;}if (source == bSprt) {System.out.println("sprt");String s = text.getText();if (s.charAt(0) == '-') {text.setText("负数不能开根号");} elsetext.setText(Double.toString(ng.Math.sqrt(Double.parseDouble(text.getText()))));clear = false;}if (source == bMod) {System.out.println("%,功能末实现");}if (source == bDao) {System.out.println("1/x");if (text.getText().charAt(0) == '0'&& text.getText().length() == 1) {text.setText("除数不能为零");} else {boolean isDec = true;int i, j, k;String s= Double.toString(1 / Double.parseDouble(text.getText()));for (i = 0; i < s.length(); i++)if (s.charAt(i) == '.')break;for (j = i + 1; j < s.length(); j++)if (s.charAt(j) != '0') {isDec = false;break;}if (isDec == true) {String stemp = "";for (k = 0; k < i; k++)stemp += s.charAt(k);text.setText(stemp);} elsetext.setText(s);}clear = false;}if (source == bEqual) {System.out.println("=");Double ss=Double.parseDouble(text.getText());text.setText("");if (fuhao == "+")text.setText(qian + ss + "");if (fuhao == "-")text.setText(qian - ss + "");if (fuhao == "*")text.setText(qian * ss + "");if (fuhao == "/")text.setText(qian / ss + "");clear = false;// 要清空前一次的数据;}}catch (Exception ee) {System.out.println("请正确输入");text.setText("运算出错,给您带来不便,sorry");clear = false;}}public static void main(String[] args) {new Calculator();}}11。

Java程序设计实验报告

Java程序设计实验报告

学生学号实验课成绩武汉理工大学学生实验报告书实验课程名称 Java语言程序设计开课学院计算机科学与技术学院指导老师姓名付国江学生姓名学生专业班级软件工程09042011 — 2012 学年第一学期实验课程名称:实验项目名称JDK安装与配置、简单的程序编写实验成绩实验者专业班级组别同组者实验日期年月日第一部分:实验分析与设计(可加页)一、实验内容描述(问题域描述)实验目的:熟悉JDK的安装、配置和使用,掌握Java Application程序的基本结构。

实验内容:(1)安装JDK,并练习设置JAVA_HOME、path和classpath环境变量;(2)编写一个打印出”HelloWorld”的Java Application程序,并编译运行;二、实验基本原理与设计(包括实验方案设计,实验手段的确定,试验步骤等,用硬件逻辑或者算法描述)1.安装JDK:(1)安装JDK、JRE到磁盘中(2)配置JDK:在【系统属性】-【系统变量】选项区域-【新建】-输入变量名JAVA_HOME,变量值D:\Program Files\Java\jdk.1.7.0_01;-【新建】-输入变量名CLASSPATH,变量值 .;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar编辑变量Path,输入%JAVA_HOME%\bin;2.HelloWorld程序:(1)程序代码public class HelloWorld{public static void main(String []args){System.out.println("HelloWorld!");}}(2)编译:javac HelloWorld.java(3)运行:java HelloWorld三、主要仪器设备及耗材1.PC机2.Java Develop Kit3.Windows xp操作系统第二部分:实验调试与结果分析(可加页)一、调试过程(包括调试方法描述、实验数据记录,实验现象记录,实验过程发现的问题等)1.在Windows xp操作系统下配置Java开发环境;2.在DOS命令窗口输入path查看环境配置是否成功;3.编译、运行HelloWorld程序,观察程序运行状态和运行结果,做好相应的记录。

JAVA程序设计实验报告

JAVA程序设计实验报告

JAVA程序设计实验报告JAVA面向对象编程实验一、实验目的掌握接口的编写及使用理解继承、多态掌握包的编写以及如何使用包中的类二、预习内容java的基本语法知识实验设备与环境装有JAVA语言工具软件 (JCreator )的微机若干四、实验内容接口的编写(1) 编辑Interfaceclass.java,设保存在D:\myjava目录下。

interface Interfaceclass{int i=4;int k=5;void func1();int func2(int x);}(2) 编辑UseInterface.java,设保存在D:\myjava目录下。

class UseInterface implements Interfaceclass{int j;public void func1() //在使用接口的类中一定要实现接口中的所有抽象方法{System.out.println("func1="+1);}public int func2(int i){System.out.println("func2="+1);return i;}public static void main(String srgs[ ]){//Interfaceclass.class x=new Interfaceclass.class();不能对接口进行实例化 UseInterface x=new UseInterface();x.func1();x.func2(k);}}多态在工资系统中的应用下面给出一个根据雇员类型利用abstract方法和多态性完成工资单计算的程序。

Employee是抽象类,Employee的子类有Boss(每星期发给他固定工资,而不计工作时间)、CommissionWorker(除基本工资外还根据销售额发放浮动工资)、PieceWorker(按其生产的产品数发放工资)、HourlyWorker(根据工作时间长短发放工资)。

java实验报告-

java实验报告-

java实验报告-Java 实验报告一、实验目的本次 Java 实验的主要目的是通过实际编程操作,深入理解和掌握Java 语言的基本语法、面向对象编程的概念以及常用类库的使用方法。

同时,培养自己的编程思维和解决实际问题的能力。

二、实验环境操作系统:Windows 10开发工具:IntelliJ IDEAJDK 版本:18三、实验内容及步骤(一)实验题目 1:简单的 Java 程序设计1、题目描述编写一个 Java 程序,实现输出“Hello, World!”。

2、实验步骤(1)打开 IntelliJ IDEA 开发工具,创建一个新的 Java 项目。

(2)在项目中创建一个新的 Java 类,命名为“HelloWorld”。

(3)在“HelloWorld”类中编写以下代码:```javapublic class HelloWorld {public static void main(String args) {Systemoutprintln("Hello, World!");}}```(4)运行程序,查看控制台输出结果。

(二)实验题目 2:数据类型与变量1、题目描述定义不同数据类型的变量,并进行赋值和运算操作。

2、实验步骤(1)在同一个 Java 项目中创建一个新的 Java 类,命名为“DataTypeAndVariable”。

(2)在“DataTypeAndVariable”类中编写以下代码:```javapublic class DataTypeAndVariable {public static void main(String args) {int num1 = 10;int num2 = 20;int sum = num1 + num2;double price = 125;String name ="张三";boolean isTrue = true;Systemoutprintln("num1 + num2 ="+ sum);Systemoutprintln("价格:"+ price);Systemoutprintln("姓名:"+ name);Systemoutprintln("是否为真:"+ isTrue);}}```(3)运行程序,查看控制台输出结果。

java实验报告

java实验报告

java实验报告java实验报告在人们越来越注重自身素养的今天,报告的使用频率呈上升趋势,报告根据用途的不同也有着不同的类型。

那么,报告到底怎么写才合适呢?下面是小编帮大家整理的java实验报告,欢迎阅读,希望大家能够喜欢。

java实验报告1此次只实习了短短的三周。

虽说时间很短,但其中的每一天都使我收获很大、受益匪浅,它不但极大地加深了我对一些理论知识的理解,不仅使我在理论上对Java有了全新的认识,在实践能力上也得到了提高,真正地做到了学以致用,更学到了很多做人的道理,对我来说受益匪浅。

除此以外,我知道了什么叫团队,怎样和团队分工合作;同时我还学会了如何更好地与别人沟通,如何更好地去陈述自己的观点,如何说服别人认同自己的观点。

这也是第一次让我亲身感受到理论与实际的相结合,让我大开眼界。

也是对以前所学知识的一个初审吧!这次实习对于我以后学习、找工作也是受益匪浅的,在短短的三周中相信这些宝贵的经验会成为我今后成功的重要的基石;这对于我的学业,乃至我以后人生的影响无疑是极其深远的。

这次实习虽然是我们的第一次,不过同学们表现不错,由此看来,我们在进入大学的这几个月里学到了不少的专业知识,只是自己感觉不到而已。

对于所学专业,我们不能过于自卑和担忧,否则会妨碍自己学习。

实习是学习Java的重要环节,有利于我们巩固专业知识、掌握工作技能,提高就业筹码。

我把本次为期三周的实习看作是“理论与实践相结合的桥梁”。

通过这周的实习和学习,我知道了此次实习的目的,也清楚目前自己的不足,那就是缺乏相应的知识与经验,对所学的专业知识不能够很好地运用于实践操作。

正所谓“百闻不如一见”,经过这次自身的切身实践,我才深切地理会到了“走出课堂,投身实践”的必要性。

平时,我们只能在课堂上与老师一起纸上谈兵,思维的认识基本上只是局限于课本的范围之内,也许就是这个原因就导致我们对专业知识认识的片面性,使得我们只知所以然,而不知其之所以然!限制了我们网络知识水平的提高。

(完整版)Java程序设计实验报告

(完整版)Java程序设计实验报告

Java 程序设计实验报告实验一实验题目:从键盘上读入10 个字符串存入数组 a 中,而后输出这10个字符串中最大字符串和最小字符串。

实验代码:public class StrPro {public static void main(String[] args) {String str[] =new String[5];System. out .println("Please input 10 strings :" );int i;String max,min;for (i=0;i<5;i++){System. out .print( "Please input the " +(i+1)+ " string:" );Scanner sc = new Scanner(System. in );str[i] = sc.nextLine();}max = str[0];min = str[0];for (i=0;i<str.length ;i++){if (pareTo(str[i])<0){max = str[i];}if (pareTo(str[i])>0){min = str[i];}}System. out .println( System. out .println( " 最大的字符串为: " +max); " 最小的字符串为: " +min);}}实验结果:实验心得领会:掌握了 java 的基本语法,数组的定义与使用,做这个实验要了解字符串数组的定义及字符串数组的输入方法,还有比较字符串数组的大小的调用方法等。

实验二实验题目:自定义一个矩形类( Rectangle ),包括的属性有:长( length ),宽(width ),包括的方法有:对于属性的 setter 和 getter 方法,即 setLength ,getLength ,setWidth ,getWidth ,计算矩形面积的方法(g etArea )。

java实验报告

java实验报告

Java程序设计实验报告学号:名字:实验一 JAVA开发环境及基本语法一、实验目的:1、掌握常用的Java集成开发环境的使用,特别是Eclipse和NetBeans。

2、掌握Java基本语法,重点是面向对象的思想和语法。

3、掌握控制台下(应用程序)的输入输出方法,作为后续部分实验的基础。

二、实验内容:1、打开实验室计算机上的集成开发环境Eclipse或NetBeans(重点是Eclipse),掌握其基本使用方法。

了解开发软件的各个菜单功能。

会创建java项目(Project),会编辑和编译、运行项目代码。

2、验证和学习所给的几个例子程序及其讲解。

然后自己编写一个至少由一个类构成的Java程序,其功能是在运行后,能接收用户输入一个学生的姓名以及java课的成绩(百分制),并输出对该学生成绩是否达到60分的及格分的判断(可使用if语句)。

例如,输入学生姓名李明,然后输入成绩50,则输出“李明的成绩为不及格”。

3、编写一个程序来表示长方体的长宽高等数据并有计算体积的函数可供调用,长方体类从矩形类继承而来。

程序运行时能接受输入任意的3 个数作为长方体的长、宽和高,然后能够输出所输入的长宽高及所计算出的体积。

注意不能把代码全部写在main函数里面,不能直接输出长宽高的乘积。

三、设计过程预习实验指导书上的内容,并将实验指导书上的例子用Eclipse验证,分析例子的指导思想,然后根据例子的内容用java语言写出自己的程序。

实验中需要学会利用控制台输出信息,使用语句“System.out.println("**************"); ”即可。

而在控制台下接受用户输入数据的方法为:Scanner sc = new Scanner(System.in); // 定义一个Scanner对象,从System.in接受输入;str = sc.next(); // 等待用户输入任意一个字符串,它会被存到str中;在实验中还会使用if语句,这跟C++的用法差不多。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

信息科学与工程学院课程设计题目:图书管理系统姓名:晓雨颖学号: ************ ************ 班级: 13级本科四班物联网课程: Java程序设计任课教师梦琳2014年12月20日课程设计任务书及成绩评定目录1前言 (3)1.1设计目的 (4)1.2设计任务 (4)1.3运行环境 (4)2总体设计 (5)2.1设计原理............................................. 错误!未定义书签。

3详细设计实现.. (5)3.1 代码 (5)3.2 登陆后事件处理 (12)4心得体会................................................ 错误!未定义书签。

1前言Java的前身是Oak,它一开始只是被应用于消费性电子产品中。

后来它的开发者们发现它还可以被用于更大围的Internet上。

1995年,Java语言的名字从Oak编程了Java。

1997年J2SE1.1发布。

1998年J2SE1.2发布,标志Java2的诞生。

十多年来,Java编程语言及平台成功地运用在网络计算及移动等各个领域。

Java的体系结构由Java语言、Java class、Java API、Java虚拟机组成。

它具有简单、面向对象、健壮、安全、结构中立、可移植和高效能等众多优点。

Java支持多线程编程,Java运行时系统在多线程同步方面具有成熟的解决方案。

Java的平台标准有Java ME,Java SE和Java EE。

Java发展到今天,它的卓越成就及在业界的地位毋庸置疑。

目前在众多的支持Java的开发工具中主要的7有Java Development Kit,NetBeans,Jcreator,JBuilder,JDeveloper和Eclipse等。

其中Java Development Kit 简称JDK是大多开发工具的基础。

以上的每种开发工具都有优缺点,对于开发者来说,重要的是要根据自己的开发规模、开发容和软硬件环境等因素来选择一种合适的开发工具。

1.1设计目的为了方便学校图书管理,加强师生之间的信息共享,图书管理系统是必不可少的一环。

随着我国教育不断的发展知识不断的增多与多元化,图书信息处理日趋信息化,安全化。

若继续使用传统的手工方式进行图书的管理,工作不但繁琐复杂,而且效率低下缺乏科学性以及合理性。

随着计算机的应用的普及和深入,对图书进行统一管理,将成为管理学生的必要一环,也可以减少图书馆工作人员的工作量,真正实现图书管理的系统化、规化、自动化达到提高图书信息查询效率提高的目的。

充分利用计算机为辅助工具,实现从传统化向信息化的迈进,实现全面的办公自动化,为图书管理工作带来方便。

1.2设计任务制作一款图书管理系统,是图书借阅,管理信息等更加方便快捷,改变传统方式的繁琐效率低下的特点。

1.3运行环境环境是在个人笔记本上搭建的,根据运行情况得出本系统的运行环境至少为:硬件环境:Iterl(R) Core(TM)2 Duo CPU,主频2.31GHz;存3G;硬盘320G以上;1024×768显示分辨率软件环境: JDK6.0以上、eclipse 等2总体设计2.1设计原理利用Java语言及数据库知识,将JAVA与数据库,形成动态查询,便于对信息的进行更加清晰的查询。

3详细设计实现3.1代码其他代码由于数量原因省略此为main方法代码。

import java.awt.*;import java.awt.event.*;import javax.swing.*;public class MainWindow extends JFrame implements ActionListener{JPanel panel1;Container c;JMenuBar MenuB;JMenu SystemMenu,BookMGRMenu,BorrowBookMenu,ReturnBookMenu,InfoBrowseMenu,UserMGRMenu;JMenuItem UserLoginMenuItem,UserAddMenuItem,UserModifyMenuItem,UserDeleteMenuItem,ExitMenuItem,BookAddMenuItem,BookModifyMenuItem,BookDeleteM enuItem,BorrowBookMenuItem,BorrowInfoMenuItem,ReturnBookMenuItem,ReturnInfoMenuItem, BookListMenuItem,BorrowBookListMenuItem,UserListMenuItem;JLabel titleLabel,AuthorLabel,DateLabel;public MainWindow(){super("图书馆管理系统");//--系统管理菜单--MenuB=new JMenuBar();SystemMenu=new JMenu("系统管理");UserMGRMenu=new JMenu("用户管理");UserLoginMenuItem=new JMenuItem("用户登录");UserAddMenuItem=new JMenuItem("添加用户");UserModifyMenuItem=new JMenuItem("修改用户");UserDeleteMenuItem=new JMenuItem("删除用户");ExitMenuItem=new JMenuItem("退出");SystemMenu.add(UserLoginMenuItem);UserMGRMenu.add(UserAddMenuItem);UserMGRMenu.add(UserModifyMenuItem); UserMGRMenu.add(UserDeleteMenuItem);SystemMenu.add(UserMGRMenu);SystemMenu.add(ExitMenuItem);UserLoginMenuItem.addActionListener(this); UserAddMenuItem.addActionListener(this); UserModifyMenuItem.addActionListener(this); UserDeleteMenuItem.addActionListener(this); ExitMenuItem.addActionListener(this);MenuB.add(SystemMenu);//---书籍管理菜单--BookMGRMenu=new JMenu("书籍管理");BookAddMenuItem=new JMenuItem("添加书籍"); BookModifyMenuItem=new JMenuItem("修改书籍"); BookDeleteMenuItem=new JMenuItem("删除书籍"); BookMGRMenu.add(BookAddMenuItem);BookMGRMenu.add(BookModifyMenuItem); BookMGRMenu.add(BookDeleteMenuItem); BookAddMenuItem.addActionListener(this); BookModifyMenuItem.addActionListener(this); BookDeleteMenuItem.addActionListener(this);MenuB.add(BookMGRMenu);//--借书管理菜单--BorrowBookMenu=new JMenu("借书管理"); BorrowBookMenuItem=new JMenuItem("书籍出借"); BorrowInfoMenuItem=new JMenuItem("出借信息修改"); BorrowBookMenu.add(BorrowBookMenuItem); BorrowBookMenu.add(BorrowInfoMenuItem); BorrowBookMenuItem.addActionListener(this); BorrowInfoMenuItem.addActionListener(this);MenuB.add(BorrowBookMenu);//--还书管理菜单--ReturnBookMenu=new JMenu("还书管理"); ReturnBookMenuItem=new JMenuItem("书籍还入"); ReturnInfoMenuItem=new JMenuItem("书籍还入信息修改"); ReturnBookMenu.add(ReturnBookMenuItem); ReturnBookMenu.add(ReturnInfoMenuItem); ReturnBookMenuItem.addActionListener(this); ReturnInfoMenuItem.addActionListener(this);MenuB.add(ReturnBookMenu);//--信息一览菜单--InfoBrowseMenu=new JMenu("信息一览"); BookListMenuItem=new JMenuItem("书籍列表"); BorrowBookListMenuItem=new JMenuItem("借阅情况表");UserListMenuItem=new JMenuItem("用户列表");InfoBrowseMenu.add(BookListMenuItem);InfoBrowseMenu.add(BorrowBookListMenuItem);InfoBrowseMenu.add(UserListMenuItem);BookListMenuItem.addActionListener(this);BorrowBookListMenuItem.addActionListener(this);UserListMenuItem.addActionListener(this);MenuB.add(InfoBrowseMenu);//----------------------------------setJMenuBar(MenuB);titleLabel=new JLabel(new ImageIcon(".\\pic.jpg"));c=getContentPane();c.setLayout(new BorderLayout());panel1=new JPanel();panel1.setLayout(new BorderLayout());panel1.add(titleLabel,BorderLayout.CENTER);c.add(panel1,BorderLayout.CENTER);setBounds(100,50,400,300);show();//--设置初始功能:--UserMGRMenu.setEnabled(false);BookMGRMenu.setEnabled(false);BorrowBookMenu.setEnabled(false);ReturnBookMenu.setEnabled(false);InfoBrowseMenu.setEnabled(false);}//--设置每个菜单点击后出现的窗口和窗口显示的位置--public void actionPerformed(ActionEvent e){if(e.getActionCommand()=="用户登录"){UserLogin UserLoginFrame=new UserLogin(this);Dimension FrameSize=UserLoginFrame.getPreferredSize();Dimension MainFrameSize=getSize();Point loc=getLocation();UserLoginFrame.setLocation((MainFrameSize.width-FrameSize.width)/2+loc.x, (MainFrameSize.height-FrameSize.height)/2+loc.y);UserLoginFrame.pack();UserLoginFrame.show();}else if(e.getActionCommand()=="添加用户"){UserAdd UserAddFrame=new UserAdd();Dimension FrameSize=UserAddFrame.getPreferredSize();Dimension MainFrameSize=getSize();Point loc=getLocation();UserAddFrame.setLocation((MainFrameSize.width-FrameSize.width)/2+loc.x, (MainFrameSize.height-FrameSize.height)/2+loc.y);UserAddFrame.pack();UserAddFrame.show();}else if(e.getActionCommand()=="修改用户"){UserModify UserModifyFrame=new UserModify();Dimension FrameSize=UserModifyFrame.getPreferredSize();Dimension MainFrameSize=getSize();Point loc=getLocation();UserModifyFrame.setLocation((MainFrameSize.width-FrameSize.width)/2+loc.x, (MainFrameSize.height-FrameSize.height)/2+loc.y);UserModifyFrame.pack();UserModifyFrame.show();}else if(e.getActionCommand()=="删除用户"){UserDelete UserDeleteFrame=new UserDelete();Dimension FrameSize=UserDeleteFrame.getPreferredSize();Dimension MainFrameSize=getSize();Point loc=getLocation();UserDeleteFrame.setLocation((MainFrameSize.width-FrameSize.width)/2+loc.x, (MainFrameSize.height-FrameSize.height)/2+loc.y);UserDeleteFrame.pack();UserDeleteFrame.show();}else if(e.getActionCommand()=="添加书籍"){BookAdd BookAddFrame=new BookAdd();Dimension FrameSize=BookAddFrame.getPreferredSize();Dimension MainFrameSize=getSize();Point loc=getLocation();BookAddFrame.setLocation((MainFrameSize.width-FrameSize.width)/2+loc.x, (MainFrameSize.height-FrameSize.height)/2+loc.y);BookAddFrame.pack();BookAddFrame.show();}else if(e.getActionCommand()=="修改书籍"){BookModify BookModifyFrame=new BookModify();Dimension FrameSize=BookModifyFrame.getPreferredSize();Dimension MainFrameSize=getSize();Point loc=getLocation();BookModifyFrame.setLocation((MainFrameSize.width-FrameSize.width)/2+loc.x, (MainFrameSize.height-FrameSize.height)/2+loc.y);BookModifyFrame.pack();BookModifyFrame.show();}else if(e.getActionCommand()=="删除书籍"){BookDelete BookDeleteFrame=new BookDelete();Dimension FrameSize=BookDeleteFrame.getPreferredSize();Dimension MainFrameSize=getSize();Point loc=getLocation();BookDeleteFrame.setLocation((MainFrameSize.width-FrameSize.width)/2+loc.x, (MainFrameSize.height-FrameSize.height)/2+loc.y);BookDeleteFrame.pack();BookDeleteFrame.show();}else if(e.getActionCommand()=="书籍出借"){BorrowBook BorrowBookFrame=new BorrowBook();Dimension FrameSize=BorrowBookFrame.getPreferredSize();Dimension MainFrameSize=getSize();Point loc=getLocation();BorrowBookFrame.setLocation((MainFrameSize.width-FrameSize.width)/2+loc.x, (MainFrameSize.height-FrameSize.height)/2+loc.y);BorrowBookFrame.pack();BorrowBookFrame.show();}else if(e.getActionCommand()=="出借信息修改"){BorrowInfo BorrowInfoFrame=new BorrowInfo();Dimension FrameSize=BorrowInfoFrame.getPreferredSize();Dimension MainFrameSize=getSize();Point loc=getLocation();BorrowInfoFrame.setLocation((MainFrameSize.width-FrameSize.width)/2+loc.x, (MainFrameSize.height-FrameSize.height)/2+loc.y);BorrowInfoFrame.pack();BorrowInfoFrame.show();}else if(e.getActionCommand()=="书籍还入"){ReturnBook ReturnBookFrame=new ReturnBook();Dimension FrameSize=ReturnBookFrame.getPreferredSize();Dimension MainFrameSize=getSize();Point loc=getLocation();ReturnBookFrame.setLocation((MainFrameSize.width-FrameSize.width)/2+loc.x, (MainFrameSize.height-FrameSize.height)/2+loc.y);ReturnBookFrame.pack();ReturnBookFrame.show();}else if(e.getActionCommand()=="书籍还入信息修改"){ReturnInfo ReturnInfoFrame=new ReturnInfo();Dimension FrameSize=ReturnInfoFrame.getPreferredSize();Dimension MainFrameSize=getSize();Point loc=getLocation();ReturnInfoFrame.setLocation((MainFrameSize.width-FrameSize.width)/2+loc.x, (MainFrameSize.height-FrameSize.height)/2+loc.y);ReturnInfoFrame.pack();ReturnInfoFrame.show();}else if(e.getActionCommand()=="书籍列表"){BookList BookListFrame=new BookList();Dimension FrameSize=BookListFrame.getPreferredSize();Dimension MainFrameSize=getSize();Point loc=getLocation();BookListFrame.setLocation((MainFrameSize.width-FrameSize.width)/2+loc.x, (MainFrameSize.height-FrameSize.height)/2+loc.y);BookListFrame.pack();BookListFrame.show();}else if(e.getActionCommand()=="借阅情况表"){BorrowBookList BorrowBookListFrame=new BorrowBookList();Dimension FrameSize=BorrowBookListFrame.getPreferredSize();Dimension MainFrameSize=getSize();Point loc=getLocation();BorrowBookListFrame.setLocation((MainFrameSize.width-FrameSize.width)/2+loc.x, (MainFrameSize.height-FrameSize.height)/2+loc.y);BorrowBookListFrame.pack();BorrowBookListFrame.show();}else if(e.getActionCommand()=="用户列表"){UserList UserListFrame=new UserList();Dimension FrameSize=UserListFrame.getPreferredSize();Dimension MainFrameSize=getSize();Point loc=getLocation();UserListFrame.setLocation((MainFrameSize.width-FrameSize.width)/2+loc.x, (MainFrameSize.height-FrameSize.height)/2+loc.y);UserListFrame.pack();UserListFrame.show();}else if(e.getActionCommand()=="退出"){this.dispose();System.exit(0);}}//--设置登录用户的权限--public void setEnable(String powerType){if(powerType.trim().equals("系统管理员")){UserMGRMenu.setEnabled(true);BookMGRMenu.setEnabled(true);BorrowBookMenu.setEnabled(true);ReturnBookMenu.setEnabled(true);InfoBrowseMenu.setEnabled(true);UserListMenuItem.setEnabled(true);}else if(powerType.trim().equals("书籍管理员")){UserMGRMenu.setEnabled(false);BookMGRMenu.setEnabled(true);BorrowBookMenu.setEnabled(false);ReturnBookMenu.setEnabled(false);InfoBrowseMenu.setEnabled(true);UserListMenuItem.setEnabled(false);}else if(powerType.trim().equals("借阅管理员")){UserMGRMenu.setEnabled(false);BookMGRMenu.setEnabled(false);BorrowBookMenu.setEnabled(true);ReturnBookMenu.setEnabled(true);InfoBrowseMenu.setEnabled(true);UserListMenuItem.setEnabled(false);}else if(powerType.trim().equals("else")){UserMGRMenu.setEnabled(false);BookMGRMenu.setEnabled(false);BorrowBookMenu.setEnabled(false);ReturnBookMenu.setEnabled(false);InfoBrowseMenu.setEnabled(false);}}public static void main(String args[]){MainWindow mainFrame=new MainWindow();3.2界面显示(1)此为初始界面(2)admin登陆汉字变黑体为登陆成功,否则登录失败.(3)root登陆汉字中只有系统管理,书籍管理,和信息一览变黑为登陆成功否则失败。

相关文档
最新文档