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程序设计》实验报告5

《JAVA程序设计》实验报告5

《JAVA程序设计》实验报告5实验单元五Java 类的应用、继承实验六Java类的应用实验时间: 4.4【实验目的】1、定义自己的Java类。

2、能够应用类。

【实验环境】JDK、Eclipse【实验内容】1.定义一个学生类,包括属性:学号、姓名、年龄(取值介于0-100之间)、成绩(取值介于0-100之间),定义一个方法显示学生信息。

并测试该类。

2.定义一个长方形类,有长、宽属性,并给出计算面积及周长的方法。

并测试该类。

3.设计一个人类Person,包含姓名,年龄,性别基本信息,修饰为私有的设计一个人类Person,包含姓名,年龄,性别基本信息,修饰为私有的;定义构造方法,用来初始化基本信息;定义方法show,用来显示基本信息值。

测试该类。

4.建立一个名叫Cat的类:属性:姓名、毛色、年龄行为:显示姓名、喊叫请编写主类:创建一个对象猫,姓名为“妮妮”,毛色为“灰色”,年龄为2岁,在屏幕上输出该对象的毛色和年龄,让该对象调用显示姓名和喊叫两个方法。

5.类的成员变量请定义一个交通工具(Vehicle)的类其中有: 属性速度(speed)体积(size)等等方法移动(move())设置速度(setSpeed(int speed))加速speedUp(),减速speedDown()等等. 最后在测试类Vehicle中的main()中实例化一个交通工具对象并通过方法给它初始化speed,size的值并且通过打印出来。

另外调用加速减速的方法对速度进行改变。

【详细分析】(此项由学生自己完成)【实验源码】(此项由学生自己完成)1.定义一个学生类,包括属性:学号、姓名、年龄(取值介于0-100之间)、成绩(取值介于0-100之间),定义一个方法显示学生信息。

并测试该类。

代码:package ch5;public class Student {public int no;public String name;public int age;public int cg;public void setNo(int no){this.no=no;}public void setName(String name){=name;}public void setAge(int age){this.age=age;if(age>0&&age<=100);elseSystem.out.println("请输入合法的年龄值:");}public void setCg(int cg){this.cg=cg;if(cg>0&&cg<=100);elseSystem.out.println("请输入合法的成绩值:");}}package ch5;public class StudentText {public static void main(String[] args) {// TODO Auto-generated method stubStudent stu=new Student();stu.setNo(12);System.out.println("学号:"+stu.no);stu.setName("lihua");System.out.println("姓名:"+);stu.setAge(18);System.out.println("年龄:"+stu.age);stu.setCg(21);System.out.println("成绩:"+stu.cg);}}2.定义一个长方形类,有长、宽属性,并给出计算面积及周长的方法。

《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实验报告

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

同时,培养自己解决实际问题的能力,提高编程的熟练程度和代码质量。

二、实验环境操作系统:Windows 10开发工具:EclipseJDK 版本:18三、实验内容及步骤(一)基本语法练习1、数据类型与变量定义不同类型的变量,如整数型(int)、浮点数型(float、double)、字符型(char)和字符串型(String),并进行赋值和输出操作。

了解不同数据类型的取值范围和精度,以及在实际编程中的应用场景。

2、控制结构编写使用 ifelse 语句、switch 语句进行条件判断的程序。

运用 for 循环、while 循环和 dowhile 循环实现重复执行的操作。

3、数组与字符串声明和初始化一维数组和二维数组,对数组元素进行访问和操作。

进行字符串的拼接、截取、查找等常见操作。

(二)面向对象编程实践1、类与对象定义一个简单的类,包含属性和方法。

创建该类的对象,并调用对象的方法来操作属性。

2、继承与多态建立父类和子类,实现继承关系。

在子类中重写父类的方法,展示多态性。

3、封装与抽象将类的属性设置为私有,并提供公共的访问方法(getter 和 setter),实现封装。

定义抽象类和抽象方法,体会抽象的概念和作用。

(三)常用类库的使用1、 Java 输入输出(IO)使用 Scanner 类实现从控制台读取用户输入的数据。

运用 File 类和相关的输入输出流类,实现文件的读取和写入操作。

2、集合框架熟悉 ArrayList、LinkedList 等线性集合的使用方法。

了解 HashSet、TreeSet 等集合的特点和应用场景。

3、异常处理在程序中加入可能引发异常的代码段,并使用 trycatch 语句捕获和处理异常。

四、实验结果与分析(一)基本语法练习1、数据类型与变量成功定义了各种数据类型的变量,并正确进行了赋值和输出。

《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实训报告(8篇)

java实训报告(8篇)

java实训报告java实训报告(8篇)在当下这个社会中,越来越多的事务都会使用到报告,报告根据用途的不同也有着不同的类型。

那么一般报告是怎么写的呢?下面是小编收集整理的java实训报告,欢迎大家借鉴与参考,希望对大家有所帮助。

java实训报告1一、实训目的1.熟练掌握Java面向对象程序设计的基础知识。

2.熟练掌握Java中常用的Swing组件的使用方法。

3.熟练掌握Java程序中图形用户界面设计的方法。

4.熟练掌握使用JDBC操作数据库的方法。

5.通过实训,培养学生分析和解决实际问题的能力,提高调试和分析应用程序的能力,并为后续Java高级编程等专业课程的学习奠定良好的基础。

二、课程设计报告内容2.1 实训内容本课程设计的题目是设计一个简化的仓库管理系统。

该系统从仓库管理人员的角度出发,实现对货物信息、生产商信息的浏览、添加、删除和查询,同时还可以对货物出货、入货进行操作和控制。

设计内容主要包括系统分析、数据库、数据表的创建、系统各个窗体的布局及其编码实现。

系统功能分析是在系统开发的总体任务的基础上完成的。

该管理系统需要完成的基本功能主要有:用户管理:主要包括用户的添加、修改和删除。

供应商管理:主要包括供应商的添加、删除和修改。

产品管理:主要包括产品的添加、删除和进货、出货。

产品视图管理:主要包括产品查询、数据文件的导入、查询结果集的.导出。

2.2 实训设备或软、硬件硬件:PⅣ及以上性能的PC机;软件:Windows 20xx或Windows XP系统;JDK工具;JCreator4.0环境2.3 功能设计及思想本次实训设计采用选择结构化开发方法,即用系统工程的思想和工程化的方法,按照用户至上的原则,自顶向下整体分析与设计和自底向上逐步实施的系统开发过程。

是组织、管理和控制信息系统开发过程的一种基本框架。

其基本思想:在系统分析时,采用自顶向下、逐层分解,由抽象到具体的逐步认识问题的过程;在系统设计的时候,先考虑系统整体的优化,再考虑局部的优化问题;在系统实施的时候,则坚持自底向上,先局部后整体,通过标准化模块的连接形成完整的系统。

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程序设计实验报告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++的用法差不多。

java程序设计实验报告

java程序设计实验报告

Java程序设计实验报告学号:姓名:座位号:实验日期:【实验名称】:JDK配置与开发工具的使用【实验目的】:1.熟悉JDK开发环境。

2.熟悉EditPlus编辑器或Eclipse等开发环境的使用。

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

【实验内容及要求】:1.JDK安装。

2.设置环境变量。

3.分别运用EditPlus和Eclipse编写并运行一个简单的“Hello World!”应用程序。

【程序输出结果与结果分析】:Helloworld【自评分及理由,自己的体会和收获】:主要是熟悉jdk的开发环境,环境变量的设置。

Editplus需要设置环境变量,eclipse不用Path的环境变量设置C:\EditPlus\jdk1.6.0\binClasspath的环境变量的设置.;C:\EditPlus\jdk1.6.0\bin【程序代码】:Editplus:class Helloworld{public static void main(String[] args){System.out.println("Helloworld");}}Eclipse:public class HelloWorld {public static void main(String[] args){System.out.println("Helloworld");}}Java程序设计实验报告学号:姓名:座位号:实验日期:【实验名称】:类和对象的应用【实验目的】:1.掌握各种数据类型及其使用方法。

2.掌握分支语句if、switch和循环语句for、while、do-while的应用。

3.掌握类的声明和对象的创建。

4.掌握方法的定义、调用和构造器的使用。

【实验内容及要求】:1.分别使用if-else-if语句和switch语句编程,确定某一月在哪个季节。

2.分别使用while、do-while和for语句编程,求1~100的和。

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

信息科学与工程学院课程设计题目:图书管理系统姓名:李晓雨刘颖学号:201312140115 201312140120班级:13 级本科四班物联网课程:Java 程序设计任课教师刘梦琳2014 年12 月20 日课程设计任务书及成绩评定题目图书管理系统课程设计的任务及要求任务:设计一个功能齐全,实用的XXX 软件。

软件设计合理、界面设计美观。

具体要求:写明该软件完成了哪些功能课程设计所需的软件、硬件等硬件环境:Iterl(R) Core(TM)2 Duo CPU ,主频 2.31GHz ;内存3G;硬盘320G 以上;1024×768 显示分辨率软件环境:JDK6.0 以上、eclipse 等设计报告:1、设计目的和任务2、总体设计:包括程序设计组成框图、流程图。

3、详细设计:包括模块功能说明:函数功能、入口及出口参数说明,函数调用关系描述等。

4、调试与测试:包括调试方法,测试结果分析与讨论,测试过程中遇到的主要问题及采取的解决措施。

5、源程序清单和执行结果:清单中应有足够的注释。

任课教师评语成绩:教师签名:日期:目录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.4设计目的为了方便学校图书管理,加强师生之间的信息共享,图书管理系统是必不可少的一环。

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

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

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

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

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

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

3 详细设计实现1.7代码其他代码由于数量原因省略此为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 , BookModifyMenuIte m, BookDeleteMenuItem ,BorrowBookMenuItem , BorrowInfoMenuItem , ReturnBookMenuItem , ReturnIn foMenuItem ,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. wi dth )/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();1.8界面显示(1)此为初始界面(2)admin登陆汉字变黑体为登陆成功,否则登录失败.(3)root登陆汉字中只有系统管理,书籍管理,和信息一览变黑为登陆成功否则失败。

相关文档
最新文档