java程序设计课程论文

合集下载

java面向对象程序设计—课程设计论文

java面向对象程序设计—课程设计论文

《Java面向对象程序设计》课程报告课程设计题目:计算器计算器一.设计的内容要求参考Windows附件中的计算器,使用Java语言设计并实现一个简单的计算器。

(界面使用AWT或SWING)二. 设计思想2.1根据图形用户界面设计方法设计计算器版面。

①容器类(窗口--Window类,面板--Panel类),框架类--Frame,Button类,Label类,TextField类等类的构造方法,菜单(菜单栏、菜单项)的建立于应用。

②事件处理机制:监听器类WinClose(),actionPerformed()。

2.2计算器计算功能实现,即按钮监听器的实现自定义变量:x,y为操作数,op为操作符。

根据单击按钮不同进行不同的操作,详见处理按钮单击事件方法actionPerformed(ActionEvent e)(计算功能算法)流程图。

三.详细设计3.1 calculator()函数(计算器版面设计)流程图:开始新建计算器窗口f新建菜单创建菜单项并添加至菜单新建并设置文本行textp新建并设置缓存区mcache新建并设置计算器上button并注册监听器新建面板p0 p1 p2 p3将textp添加至p0,并设置p0大小将”backspace””CE””C”添加至p1,并设置p1大小及布局将”MC””MR””MS””M+”添加至p2,并设置p2大小及布局将其他button添加至p3,并设置p3大小及布局将面板p0 p1 p2 p3添加至f3.2处理按钮单击事件方法actionPerformed (ActionEvent e )(计算器计算功能算法)流程图:开始 Textp.setText(“0” Str.setLength(0)YN单击”CE ” 单击”C ” Textp.setText(“0” Str.setLength(0) NY单击”+/-“ 将textp 中数据正负变号 单击”+” 将textp 中数据赋给x ,str.setLength (0)y=0,op=0N YN Y单击”-“ 将textp 中数据赋给x ,str.setLength (0)y=0,op=1将textp 中数据赋给x ,str.setLength (0)y=0,op=2单击”*” N YNY设置窗口f 的属性为f 注册事件监听器Winclose结束单击”%” NNNNY YY 将textp 中数据乘以0.01y=0 单击”1/x ”textp 中数据为0给textp 赋”除数不能为0”将textp 中数据取倒数str.setLength(0);y=0 单击”0”textp 中数据为0NNN YY Y在textp 中数据后加”0”,并赋值给y单击”backspace ”textp 中数据为0str 长度为1去掉textp 数据的最后一位,并将str 的长度减1将textp 赋0,str.setLen gth(0)NY第四部分运行效果图4.1运行初始图:4.2 计算功能测试图:-2+21.4 将textp中数据赋给yN Y单击”1”~”9”将单击数字插入到textp中数据后,并将textp中数据赋给y 将textp赋0,并str.stelength(0);结束五. 代码实现import java.awt.*;import java.awt.event.*;public class Mycounter{public static void main(String argn[]){new MyFrame().launchFrame();}}class MyFrame extends Frame{Button btn[];Button btn_add,btn_sub,btn_mul,btn_div,btn_dot,btn_cr,btn_as,btn_eq,btn_sq,btn_bs;TextField tf;Panel p;Boolean isDot,operated,equaled;double storedNumber;char lastOperator;public void launchFrame(){btn=new Button[10];for(int i=0;i<10;i++){btn[i]=new Button(""+i);}isDot=false;operated=false;equaled=false;storedNumber=0;lastOperator='?';btn_add=new Button("+");btn_sub=new Button("-");btn_mul=new Button("*");btn_div=new Button("/");btn_dot=new Button(".");btn_cr=new Button("cr");btn_as=new Button("±");btn_sq=new Button("√");btn_eq=new Button("=");btn_bs=new Button("←");p=new Panel();tf=new TextField(10);this.setLayout(new BorderLayout());this.add(tf,BorderLayout.NORTH);this.add(p,BorderLayout.CENTER);p.setLayout(new GridLayout(5,4,10,10));p.add(btn[1]);p.add(btn[2]);p.add(btn[3]);p.add(btn_add);p.add(btn[4]);p.add(btn[5]);p.add(btn[6]);p.add(btn_sub);p.add(btn[7]);p.add(btn[8]);p.add(btn[9]);p.add(btn_mul);p.add(btn_dot);p.add(btn[0]);p.add(btn_sq);p.add(btn_div);p.add(btn_eq);p.add(btn_as);p.add(btn_cr);p.add(btn_bs);this.setTitle("计算器");this.setSize(260,260);this.setVisible(true);for(int i=0;i<10;i++) {btn[i].addActionListener(new Monitor());} btn_add.addActionListener(new Monitor());btn_sub.addActionListener(new Monitor());btn_mul.addActionListener(new Monitor());btn_div.addActionListener(new Monitor());btn_dot.addActionListener(new Monitor());btn_sq.addActionListener(new Monitor());btn_eq.addActionListener(new Monitor());btn_as.addActionListener(new Monitor());btn_cr.addActionListener(new Monitor());btn_bs.addActionListener(new Monitor());this.addWindowListener(new WindowAdapter(){public void windowClosing(WindowEvent e){System.exit(0);}});}class Monitor implements ActionListener{public void actionPerformed(ActionEvent e){Button bn=(Button)e.getSource();if(bn==btn_cr){tf.setText("0");isDot=false;storedNumber=0;lastOperator='?';}else if(bn==btn_eq){operate('=');equaled=true;}else if(bn==btn_add){operate('+');equaled=false;}else if(bn==btn_sub){operate('-');equaled=false;}else if(bn==btn_mul){operate('*');equaled=false;}else if(bn==btn_div){operate('/');equaled=false;}else if(bn==btn_as){operate('a');operate('=');equaled=false;}else if(bn==btn_sq){operate('s');operate('=');equaled=true;}else if(bn==btn_bs){operate('b');operate('=');equaled=true;String s=tf.getText();tf.setText("");for(int i=0;i<s.length()-1;i++){char c=s.charAt(i);tf.setText(tf.getText()+c);}}else {if(equaled) storedNumber=0;for(int i=0;i<10;i++)if(bn==btn[i]){if(tf.getText().equals("0"))tf.setText(""+i);else if(!operated)tf.setText(tf.getText()+i);else{tf.setText(""+i);operated=false;}}if(bn==btn_dot&&!isDot){tf.setText(tf.getText()+".");isDot=true;}}}}private void operate(char operator){double currentNumber = Double.valueOf(tf.getText()).doubleValue();if (lastOperator == '?')storedNumber = currentNumber;else if (lastOperator == '+')storedNumber += currentNumber;else if (lastOperator == '-')storedNumber -= currentNumber;else if (lastOperator == '*')storedNumber *= currentNumber;else if (lastOperator == '/')storedNumber /= currentNumber;else if (lastOperator == 'a')storedNumber *= -1;else if(lastOperator=='b')storedNumber=currentNumber/10;第 11 页 共 12 页else if (lastOperator == 's')storedNumber = Math.sqrt(currentNumber);else if (lastOperator == '=' && equaled)storedNumber = currentNumber;tf.setText("" + storedNumber);operated = true;lastOperator = operator;}} 六. 心得与体会6.1 Java 是一门实践性很强的编程语言,每学习到一个新的知识点应当及时动手编写程序,提高动手能力,加深对语言的理解。

Java课程设计论文问题与讨论

Java课程设计论文问题与讨论

Java课程设计论文问题与讨论一、教学目标本课程的教学目标是使学生掌握Java编程语言的基本语法、编程技巧和相关概念,培养学生具备基本的编程能力和软件开发思维,使学生能够运用Java语言解决实际问题。

具体来说,知识目标包括:1.掌握Java语言的基本语法和数据结构;2.了解Java的面向对象编程思想;3.熟悉Java的常用类库和API;4.理解Java的异常处理和文件操作。

技能目标包括:1.能够编写简单的Java程序;2.能够运用Java语言进行面向对象的设计;3.能够运用Java类库和API解决实际问题;4.能够进行基本的Java程序调试和优化。

情感态度价值观目标包括:1.培养学生对编程语言的兴趣和热情;2.培养学生独立思考和解决问题的能力;3.培养学生团队协作和沟通交流的能力;4.培养学生具有良好的职业素养和道德观念。

二、教学内容本课程的教学内容主要包括Java语言的基本语法、数据结构、面向对象编程、常用类库和API、异常处理和文件操作。

具体安排如下:1.Java语言的基本语法和数据结构;2.Java的面向对象编程思想,包括类、对象、继承、多态和封装;3.Java的常用类库和API,如ng、java.util、java.awt等;4.Java的异常处理机制,包括异常的分类、捕获和处理;5.Java的文件操作,包括文件的读写、目录的操作等。

三、教学方法本课程的教学方法主要包括讲授法、讨论法、案例分析法和实验法。

1.讲授法:通过讲解Java语言的基本语法、数据结构、面向对象编程等概念,使学生掌握基本知识;2.讨论法:通过小组讨论,引导学生深入理解面向对象编程的思想,培养学生的思考和沟通能力;3.案例分析法:通过分析实际案例,使学生掌握Java常用类库和API的应用,培养学生解决实际问题的能力;4.实验法:通过上机实验,让学生动手编写Java程序,巩固所学知识,培养学生的动手能力。

四、教学资源本课程的教学资源包括教材、参考书、多媒体资料和实验设备。

JAVA程序设计论文

JAVA程序设计论文

JAVA程序设计论文课题名称:多文档编辑器(记事本)开发人员:***指导教师:**院系专业:计算机科学与技术专业提交日期:2010-12-18目录1 选题依据 (2)2 需求分析 (2)3 系统分析 (3)3.1 系统开发环境 (3)3.2 系统功能实现 (3)3.2.1 系统界面 (3)3.2.2 系统的非功能性需求 (4)3.2.3 系统的软件实现 (4)4 测试分析 (8)4.1 关于文件模块的操作测试 (8)4.2 关于编辑模块的操作测试 ........................... 错误!未定义书签。

4.3 关于其他模块的操作测试 (16)5 系统缺点 (18)6 个人总结 .....................................................................错误!未定义书签。

7 参考文献 .....................................................................错误!未定义书签。

附录……………………………………………………………………错误!未定义书签。

一:选题依据经过一个学期JA V A课程的学习,发现JA V A功能强大,应用也很广泛。

虽然之前已经学过一门面向对象语言——C++,但仅仅是皮毛,而且并没有真正领会到面向对象语言的思想和操作,所以想借这次期末论文设计好好深入学习JA V A的应用。

但是自己在计算机语言方面基础薄弱,这次基本算是从头学起,所以就想到从设计一个小型项目做起,当时软件工程代课老师建议我做个小型记事本即类似微软记事本的多文档编辑,并给予一些思路和建议,于是我便动手做了这个小项目。

本程序为JCreator开发的单机小程序,不需要网络环境的支持,结合了面向对象和软件工程的开发思路。

. 二:需求分析一个文档编辑器的基本模块一般就包含:文件,编辑,格式,查看等;基本功能无非是:新建,打开已有文件,保存,另存为,页面设置,复制粘贴,字体等。

大二Java课程设计论文

大二Java课程设计论文

大二Java课程设计论文一、课程目标知识目标:1. 掌握Java语言面向对象编程的基本原理,包括类、对象、继承、多态和接口等概念;2. 学会运用Java异常处理机制,提高程序的稳定性和可靠性;3. 理解Java集合框架的使用,能够灵活运用不同类型的集合存储和操作数据;4. 了解Java多线程编程的基本概念,掌握线程的创建、同步和通信方法。

技能目标:1. 能够独立设计和实现小型Java应用程序,具备基本的编程能力;2. 学会使用Java开发工具和调试技巧,提高编程效率;3. 培养良好的编程习惯,编写结构清晰、易于维护的代码;4. 能够分析并解决实际编程过程中遇到的问题,具备一定的故障排除能力。

情感态度价值观目标:1. 培养学生对Java编程的兴趣和热情,激发学习动力;2. 培养学生的团队合作意识,学会与他人共同解决问题;3. 强化学生的责任感和自律性,按时完成课程设计和作业;4. 培养学生勇于尝试、不断探索的精神,提高创新意识和实践能力。

课程性质:本课程为实践性较强的学科,以项目驱动的方式进行教学,要求学生动手实践,结合实际案例学习Java编程。

学生特点:大二学生已具备一定的编程基础,具有较强的学习能力和独立思考能力。

教学要求:教师应注重理论与实践相结合,引导学生主动参与课堂讨论,鼓励学生课后自主学习和实践。

同时,关注学生的学习进度,及时给予反馈和指导,确保学生达到课程目标。

通过本课程的学习,使学生能够具备扎实的Java 编程基础,为后续专业课程和实际工作打下坚实基础。

二、教学内容本课程教学内容主要包括以下四个部分,以确保学生能够达到课程目标:1. Java面向对象编程基础:- 类与对象- 继承与多态- 抽象类与接口- 包与访问权限2. Java异常处理机制:- 异常的概念与分类- try-catch语句- throws与throw关键字- 自定义异常3. Java集合框架:- 集合的分类与使用场景- List、Set、Map接口及其实现类- 集合的迭代器与增强for循环- 集合排序与查找4. Java多线程编程:- 线程的创建与启动- 线程的生命周期- 线程同步与死锁- 线程通信教学内容按照以下进度安排:1. 第1-4周:Java面向对象编程基础2. 第5-6周:Java异常处理机制3. 第7-8周:Java集合框架4. 第9-12周:Java多线程编程教材章节关联:1. 面向对象编程基础——《Java核心技术 卷I》第3-6章2. 异常处理机制——《Java核心技术 卷I》第7章3. 集合框架——《Java核心技术 卷I》第8章4. 多线程编程——《Java核心技术 卷I》第12章三、教学方法为了提高教学效果,激发学生的学习兴趣和主动性,本课程将采用以下多样化的教学方法:1. 讲授法:教师通过系统讲解Java编程的基本概念、原理和技术,使学生掌握必要的理论知识。

Java语言程序设计教学论文

Java语言程序设计教学论文

摘要针对语言教学中遇到的问题,如何更好地结合该课程的特点,在教学中充分调动学生的积极性,以案例制作来帮助学生理解抽象的理论知识,培养编程能力是亟待研究和解决的问题。

本文主要结合作者在语言程序设计中的教学实践,介绍案例教学的应用与实施方法。

关键词语言;案例教学;编程能力随着的迅速发展,作为一种面向对象的高级语言得到了越来越广泛的应用。

它既具有一般程序设计语言所具有的安全性、多线程等特点,同时又具有独特的平台无关性的优势。

为了适应社会的发展,培养更符合市场需求的计算机专业人才,很多高校都陆续开设了语言的相关课程。

但是在传统的语言教学过程中,课堂一般以教师为主导,首先按照教材章节顺序向学生灌输一个个抽象的概念、语法和算法,然后再去布置相关的实践任务让学生在机房实践操作。

这种先理论后实践、理论和实践完全割裂的教学方式忽视了学生的互动参与,导致课堂乏味,学生学习兴趣下降,教学内容单纯倚重课堂讲授,学生实训操作练习很少,而且学与做相脱离,不利于学生理解消化课程知识和锻炼编程能力,难以取得理想的教学效果。

针对这些问题,教师可以在该课程的教学中引入案例教学,以书本知识点为基础,以案例为依托,使学生在制作案例的过程中逐渐理解基本理论知识,在理解理论知识后不断提高语言的编程能力[1]。

一、案例教学法的实施意义案例教学法由美国哈佛商学院提出,通过在课堂教学中由教师围绕案例组织教学,将学生引入特定的情境之中,启发学生分析案例,探讨案例解决方案,实现课堂师生的双向互动和学生学习效果的及时反馈,激发学生学习的积极性,提高教学效果。

在语言程序设计课程教学中应用案例教学法就是通过实施一个完整的案例来组织教学活动,用典型案例把理论知识与实践教学有机地结合起来,把理论知识融入到案例制作之中。

教师通过案例实施完成教学过程,学生通过案例制作掌握的语言知识和编程技巧,使教学做有机融合,提高该课程的教学效果。

与传统教学方式相比,案例教学方法更能充分发掘学生的创造潜能,培养学生学习语言的兴趣,提高学生解决实际问题的综合能力[2]。

JAVA程序设计论文李伟

JAVA程序设计论文李伟

JAVA程序设计班级:09计算机网络技术姓名:李伟学号:04020901007E-mail:839826538@目录一、设计概要…………………………………………………………………二、设计说明………………………………………………………………..三、参考文献…………………………………………………………………摘要:该程序是一个图形界面的java文档编辑器,其界面主要采用了awt包,程序实现了文本编辑器的基本功能有:新建文件、打开文件、文件保存、文件另存为、剪切、复制、粘贴、删除、查找/替换、改变字体大小,另外还利用Time类的schedule方法实现了文件的定时自动更新功能,并创建备份文件,由于该编辑器是用的awt包,所以在技术上没有实现将Java的关键字以不同颜色显示功能。

关键字:java 编辑器一、概要设计Java程序编辑器是:图形界面、线程、流与文件等技术的综合应用。

图形界面的实现:考虑到简单、实用、高效等特点,就选择了A WT来完成实现,在选择组件上,文本编辑区就选用了TaxtArea作为主要的部件。

线程实现文件自动保存:在相关的参考书上查阅到在Time类中有一个schedule方法可以在后台自动完成一定的功能,而且调用起来相当简单,于是就用了Time类中的schedule方法来实现文件自动保存及备份功能。

文件操作的实现:利用了字符文件流FileReader和FileWriter类来实现。

由于Java的特性,可能用任何一个编辑器来编辑,于是就将Windows中的记事本作为模仿对象,根据实现情况删减了其中的一些功能,如自动换行,设置字体,打印等功能。

在设计类的时候,考虑到简单明了,就用了两个类,一个主类和一个默认属性类作为程序的整体框架,所有的对象和方法都是在默认属性类中创建和实现的,以及为各组件注册事件监听程序也是在默认属性类中实现的。

主类完成对象的实例化及显示。

这们设计的优点是:条理清晰,容易理解,容易修改。

java毕业论文范文5篇.doc

java毕业论文范文5篇.doc

java毕业论文范文5篇Java语言是编程语言史上的一个里程碑,在此基础上形成的Java Applet技术是综合了计算机图形学、多媒体技术、网络技术的新技术,近年来在很多领域得到了快速的发展和应用。

本文是我为大家整理的java的毕业论文范文,仅供参考。

java毕业论文范文篇一:学生姓名 _______ _学号 ___________专业 ____ 班级 ____ 指导教师200 年月1.Java语言的出现自从1946年世界上第一台电子计算机问世以来,计算模式的发展经历了三个阶段:集中计算模式、分散计算模式和网络计算模式。

Internet的出现,为在网络计算模式下的科学计算和信息处理提供了良好平台。

然而,要充分利用网络计算模式的功能与效益,平台的运行环境是个制约因素,而Java语言和Java 技术则是解决这一问题的最佳途径。

1991年,SUN公司的Jame Gosling,Bill Joe等人试图为电视、烤箱等家用电器开发一种交互式的软件系统,这种应用需要的是那种小而可靠的系统,它能够移植,并且实时性好,适用于网络分布环境。

流行的C++是自然的选择。

不过,开发过程中遇到的许多难以克服的困难使他们意识到必须彻底解决问题了,最终,开发成功了一个名为Oak的软件,此中蕴藏着Java的原型,当时,并未引起人们的注意。

1994年下半年,随着Internet 的迅猛发展,环球信息网WWW的快速增长,促进了Java语言研制的进展,使得它逐渐成为Internet上倍受欢迎的开发与编程语言。

1995年5月Java正式问世,一些著名的计算机公司纷纷购买了Java语言的使用权,如Microsoft、IBM、Netscape、Novell、Apple、DEC、SGI等。

因此,Java语言被美国著名杂志PC Magazine评为1995年十大优秀科技产品(计算机类仅此一项入选)之一,随之大量出现了用Java编写的软件产品,受到工业界的重视与好评,认为"Java是八十年代以来计算机界的一件大事"。

java课程论文

java课程论文

Java课程设计1设计报告(1)本程序的功能描述本程序似于Windows记事本(Notepad)的Java程序。

可以打开、新建、保存一个文本文件;对选中的文本进行各种编辑操作(设置字体、字号、字型、对齐方式、背景、前景色、复制、粘贴、剪切、查找、替换等);在文本中能够插入对象。

(2)程序设计思想本程序运用简单的文本书写方式开始延伸,结合了JFame窗口的设计,设计多级菜单组建来建立此程序,程序里面包括三级菜单组建,分别为JMenuBar菜单条、JMenu菜单栏、还有JMenuItem菜单项三项菜单,在每项菜单项下在设立相应的功能条,在对应每项功能做程序设计,最终完成此程序的一个基本设计,为了方便观看,可以用一个简单的图表来表达我这次设计的思路:(3)核心程序清单(应有必要说明)//创建菜单条JMenuBar bar = new JMenuBar();setJMenuBar( bar );// 设置文件菜单及其菜单项JMenu fileMenu = new JMenu( "文件" );// 设置新建菜单项JMenuItem newItem = new JMenuItem( "新建" ); fileMenu.add( newItem );newItem.addActionListener(new ActionListener() {public void actionPerformed( ActionEvent event ){displayText.setText(""); }});// 设置打开菜单项JMenuItem openItem = new JMenuItem( "打开" );fileMenu.add( openItem );openItem.addActionListener(new ActionListener() {public void actionPerformed( ActionEvent event ){fd.setTitle("打开"); //设置标题fd.show();if (fd.getFile() != null) {File file = new File(fd.getFile());用从fd中取得的文件建立新文件,即打开的文件displayText.setText( "");try {FileReader f = new FileReader(file);BufferedReader b = new BufferedReader(f);//按行读打开的文件,然后传入文本域String s;try {while ((s = b.readLine()) != null) {displayText.append(s + "\n");//将给定文本追加到文本域的当前文本(即把读的内容加入文本域)}f.close();b.close();} catch (IOException ex) {}} catch (FileNotFoundException ex) {}}else {return;} }// 设置保存菜单项JMenuItem saveItem = new JMenuItem( "保存" );fileMenu.add( saveItem );saveItem.addActionListener(new ActionListener() {public void actionPerformed( ActionEvent event ) // 设置另存为菜单项JMenuItem saveAsItem = new JMenuItem( "另存为" );fileMenu.add( saveAsItem );saveAsItem.addActionListener(new ActionListener()这两个保存和另存为的菜单项的新建的菜单项的方法相似// 设置退出菜单项JMenuItem exitItem = new JMenuItem( "退出" );fileMenu.add( exitItem );exitItem.addActionListener(new ActionListener() {public void actionPerformed( ActionEvent event ){ System.exit( 0 ); }} );JMenu editMenu = new JMenu( "编辑" );//剪切菜单选项JMenuItem cutItem = new JMenuItem( "剪切" );editMenu.add( cutItem );cutItem.addActionListener(new ActionListener(){public void actionPerformed( ActionEvent event ){selectText = displayText.getSelectedText();//取得选定的文本int start = displayText.getSelectionStart();//选定的文本的开始位置int end = displayText.getSelectionEnd();//选定的文本的结束位置displayText.replaceRange("", start, end);/*用指定替换文本替换指定开始位置与结束位置之间的文本。

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

j a v a程序设计课程论文Prepared on 21 November 2021成绩课程论文题目:学生信息管理系统界面设计课程名称: java程序设计学生姓名:刘文璐学生学号: 16系别:电子工程学院专业:通信工程年级: 2013级任课教师:窦飞电子工程学院制2015年12月学生信息管理系统界面设计学生:刘文璐指导教师:窦飞电子工程学院通信工程专业1、引言学生信息管理系统以计算机为工具,将管理人员从繁琐的数据计算中解脱出来,全面的提高了管理的效率和质量,使得管理更加的规范和严谨。

世界处于信息化时代,人类的生活随着科技的发展越来越好,特别是计算机的出现,更加丰富了多姿多彩的生活。

作为新时代的大学生,要随时掌握和利用信息,辅之以科学文化知识,来适应社会发展的要求,将来为祖国奉献自己的一份力。

计算机Java语言是一门理论与实践共存的课程,但是更侧重于实践,因此,我们要将实践教学与理论教学达到密切结合。

2、Eclipse的介绍Eclipse 是一个开放的、基于的可扩展开发平台。

就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。

幸运的是,Eclipse 附带了一个标准的插件集,包括Java(Java Development Kit,)。

Eclipse 还包括插件开发环境(Plug-in Development Environment,PDE),这个组件主要针对希望扩展 Eclipse 的软件开发人员,因为它允许他们构建与Eclipse 环境无缝集成的工具。

由于 Eclipse 中的每样东西都是插件,对于给Eclipse 提供插件,以及给用户提供一致和统一的集成开发环境而言,所有工具开发人员都具有同等的发挥场所。

3、学生信息管理系统界面设计方案制定系统总体设计方案有新生来报到,要逐个录入其信息,如:学生姓名,性别,,出生日期,国籍。

要求设计链表类来实现,并统计学生人数。

文本界面为:1.添加学生信息2.删除学生信息3.查询学生信息4.修改学生信息5.学生信息保存6.退出总体结构我们采取模块化方式进行程序设计,要求程序的功能设计、数据结构设计及整体结构设计合理。

系统以菜单界面方式进行,每一条记录包括一个学生的姓名、性别、出生日期、国籍。

同时,应具备以下功能:1、删除功能:对指定学生的信息进行删除。

2、修改功能:对指定学生的信息进行修改。

3、查询功能:选择某种方式并输入该信息查询符合条件的学生信息。

4、添加功能:添加新增学生信息。

5、退出主菜单。

模块设计增加学生信息判断**学生是否存在,若存在则错误,不存在则添加。

具体流程如下图所示:图1增加学生信息流程图删除学生信息删除学生的信息则必须对链表结点进行删除意味着将某个要删除结点前后的连续打断,去掉该结点,使前后指针变量重新连接,完成链表结点的删除任务图2删除学生信息流程图、查询学生信息 按学生学号查询图3查询学生信息流程图、总功能模块图:图4总功能模块图5、运行结果与分析图5 程序实现图查询学生信息图6查询学生信息界面图添加学生信息图7添加学生信息界面图6、总结及心得体会经过将近两个星期的设计和整理,课程设计也差不多弄好了。

在这段时间里,我们遇到了很多问题,学会了很多东西。

刚开始的时候,我们以为这个设计只是一个很实际的编程而已,但是,当自己真正动起手来编程的时候,我们才发现这个设计并没有想象中的那么简单。

做课程设计让我们对Java有了全新的认识,它不像原来我们以为的那么枯燥,反而变得很有趣,我们学到了很多在上课时见都没有见过的类和方法,这让我们对编程又有了许多新的想法和认识。

在这期末考试前期,学院给我们安排的课程设计周,总让我们觉的有些为难我们,这样一个复杂困难而又繁琐的作业,似乎弄得我们既没有时间也没有心情复习,我们曾一度地抱怨过学院,在完成它之后,我们发现我们错了,课程设计不仅让我们巩固了所学的知识,还使得我们学习到了更多平时所忽略的,最重要的是,它磨砺了我们,让我们在大学的下一个阶段能更好的成长。

7、参考文献[1] 王昆,张力生.Java Swing中的渲染器机制.重庆工学学院报,2008.[2] 吕校春,李玲莉.基于Swing的Java GUI组件开发[J].机械工程师,2008.[3] 陆维厅,邵燕.基于JAVA的SOCKET实现网上交谈.河海常州分校学报,2005.[4] 戴歆.JAVA Swing程序开发.软件导刊,2007.[5] 莫足琴.基于Java Socket多客户端并发通信聊天程序的设计与实现.十堰职业技术学博士论文,2008.[6] 王静,曲凤娟.基于Socket的多用户并发通信的设计[J].福建电脑,2007.[7] 赵文清,姜波.基于Socket的Java语言网络通讯机制和程序设计.信息技术,2006.[8] 温涛.工程概念.软件工程师,2006.[10] 朗波.JAVA语言程序设计.清华大学出版社,2005.8、附录import .*;import .*;import .*;.", "添加学生记录...", "删除已有的学生记录", "修改学生记录...","使您修改的学生记录生效...", "使您添加的学生记录生效...", "确认删除当前记录...", "退出本系统:)" };String id = new String();String name = new String();String sex = new String();String birthday = new String();String address = new String();String birth = new String();Connection conn;ResultSet rs;Statement st;PreparedStatement pst;public JLabel idL = new JLabel("学号:");public JLabel nameL = new JLabel("姓名:");public JLabel sexL = new JLabel("性别:");public JLabel jlbirth = new JLabel("出生年月:");public JLabel jladdr = new JLabel("籍贯:");public JTextField idT = new JTextField();public JTextField nameT = new JTextField();public JTextField sexT = new JTextField();public JTextField jtbirth = new JTextField();public JTextField jtaddr = new JTextField();public Frm_Main() {frame = new JFrame("学生信息管理系统");c = ();(null);menuBar = new JMenuBar();toolBar = new JToolBar();(false);(menuBar);(false);mainMenu1 = new JMenu("管理");String str1[] = { "添加用户", "删除用户", "查询用户", " ", "退出" };for (int i = 0; i < 5; i++) {if (i == 3)();else {subMenu1[i] = new JMenuItem(str1[i]);subMenu1[i].addActionListener(this);(subMenu1[i]);}}(mainMenu1);mainMenu2 = new JMenu("维护学生信息");String str2[] = { "查询记录", "添加记录", "删除记录", "修改记录", "提交修改", "提交添加","确认删除" };for (int i = 0; i < 7; i++) {subMenu2[i] = new JMenuItem(str2[i]);subMenu2[i].addActionListener(this);(subMenu2[i]);}(mainMenu2);mainMenu3 = new JMenu("帮助");String str3[] = { "帮助...", "关于..." };for (int i = 0; i < 2; i++) {subMenu3[i] = new JMenuItem(str3[i]);subMenu3[i].addActionListener(this);(subMenu3[i]);}(mainMenu3);String strToolBar[] = { "查询", "添加", "删除", "修改", "提交修改", "提交添加", "确认删除" };for (int i = 0; i < 7; i++) {toolBarButton[i] = new JButton(strToolBar[i]);toolBarButton[i].setToolTipText(strTip[i]);toolBarButton[i].addActionListener(this);(toolBarButton[i]);}(0, 0);(400, 30);(toolBar);(35, 40);(40, 20);rim()).equals("")|| ().trim()).equals("")|| ().trim()).equals("")|| ().trim()).equals("")|| ().trim()).equals(""))(null, "请输入信息再点击提交添加!");else {id = ();name = ();sex = ();birthday = ();address = ();String strSQL = "insert into student values(,,,,)";try {pst=(strSQL);(1, id);(2, name);(3, sex);(4, address);(5, birthday);();} catch (SQLException e1) {rim()).equals("")|| ().trim()).equals("")|| ().trim()).equals("")|| ().trim()).equals("")|| ().trim()).equals("")) {(null, "请输入信息再点击修改!");return;} else {id = ();name = ();sex = ();birthday = ();address = ();String strSQL = "update student set name=,sex=,address=,birthday= where id=";try {pst=(strSQL);(1, name);(2, sex);(3, address);(4, birthday);(5, id);();} catch (SQLException e1) {2004010123’rim()).equals("")|| ().trim()).equals("")|| ().trim()).equals("")|| ().trim()).equals("")|| ().trim()).equals("")) {(null, "请点击删除记录按钮!");return;} else {id = ();String strSQL = "delete from student where id=";try {pst=(strSQL);(1, id);();} catch (Exception exx) {(null, "出错了!");/** (""); (""); ("");* (""); ("");*/return;}(null, "删除成功!");}}}}。

相关文档
最新文档