java课程设计报告

合集下载

课程设计报告javaweb

课程设计报告javaweb

课程设计报告javaweb一、教学目标本课程旨在通过JavaWeb的学习,让学生掌握JavaWeb的基本概念、技术和应用,培养学生具备JavaWeb程序设计的能力。

具体的教学目标如下:1.理解JavaWeb的基本概念和架构。

2.掌握JavaWeb的核心技术,如HTML、CSS、JavaScript、Servlet、JSP等。

3.了解JavaWeb的应用领域和前景。

4.能够使用HTML、CSS、JavaScript编写网页。

5.能够使用Servlet、JSP技术进行Web应用程序的开发。

6.能够运用JavaWeb技术解决实际问题。

情感态度价值观目标:1.培养学生对JavaWeb技术的兴趣和热情,提高学生的学习积极性。

2.培养学生具备良好的团队合作意识和能力,提高学生的沟通协作能力。

3.培养学生具备创新精神和责任感,提高学生对社会、环境的责任意识。

二、教学内容根据课程目标,本课程的教学内容主要包括以下几个部分:1.JavaWeb基本概念:介绍JavaWeb的定义、发展历程、应用领域和基本架构。

2.HTML、CSS、JavaScript技术:讲解HTML标签、CSS样式、JavaScript脚本的使用方法和应用实例。

3.Servlet技术:讲解Servlet的概念、生命周期、运行原理以及如何编写和部署Servlet。

4.JSP技术:讲解JSP的概念、原理、基本语法以及如何使用JSP实现动态网页。

5.JavaWeb应用实例:分析并实现一些典型的JavaWeb应用案例,如在线、博客系统等。

三、教学方法为了提高教学效果,本课程将采用多种教学方法相结合的方式进行教学:1.讲授法:通过讲解JavaWeb的基本概念、技术和应用,使学生掌握相关知识。

2.案例分析法:分析并实现一些典型的JavaWeb应用案例,让学生学会将理论知识应用于实际问题。

3.实验法:安排实验室实践环节,让学生动手编写代码,培养学生的实际操作能力。

java课程设计记事本设计报告

java课程设计记事本设计报告

java课程设计记事本设计报告一、教学目标本课程旨在通过Java编程语言实现一个记事本应用程序,让学生掌握Java编程的基本概念和方法,培养学生的编程能力和解决问题的能力。

1.理解Java编程语言的基本语法和结构。

2.掌握Java编程中的数据类型、变量、运算符、控制语句等基本概念。

3.学习Java中的类和对象的概念,理解封装、继承和多态的原理。

4.熟悉Java中的常用类库和方法。

5.能够运用Java编程语言编写简单的程序。

6.能够使用Java编程语言实现一个记事本应用程序,包括文本的增删改查等功能。

7.能够分析并解决编程过程中遇到的问题。

情感态度价值观目标:1.培养学生的团队合作意识和沟通能力,通过小组合作完成项目。

2.培养学生的创新思维和解决问题的能力,鼓励学生进行自主学习和探索。

3.培养学生的学习兴趣和自信心,让学生感受到编程的乐趣和成就感。

二、教学内容本课程的教学内容主要包括Java编程语言的基本概念和方法,以及记事本应用程序的设计和实现。

1.Java编程语言的基本概念和方法:–数据类型、变量、运算符、控制语句等基本概念。

–类和对象的概念,封装、继承和多态的原理。

–常用类库和方法的使用。

2.记事本应用程序的设计和实现:–用户界面设计:创建文本框、按钮等控件,实现用户输入和显示功能。

–文件操作:实现文件的打开、保存、关闭等功能,使用文件读写技术。

–文本处理:实现文本的增删改查等功能,使用数据结构和算法进行文本管理。

三、教学方法本课程将采用多种教学方法,包括讲授法、讨论法、案例分析法和实验法等,以激发学生的学习兴趣和主动性。

1.讲授法:教师通过讲解Java编程语言的基本概念和方法,以及记事本应用程序的设计和实现,引导学生掌握相关知识。

2.讨论法:学生分组进行讨论,分享自己的理解和思路,互相学习和交流。

3.案例分析法:分析实际案例,让学生了解记事本应用程序的实际应用场景和设计思路。

4.实验法:学生通过编写代码和进行实验,实现记事本应用程序的功能,培养学生的实际编程能力和解决问题的能力。

java课程设计报告重点难点总结

java课程设计报告重点难点总结

java课程设计报告重点难点总结摘要:一、引言二、Java课程设计报告重点概述1.Java基础知识掌握2.面向对象编程应用3.数据结构与算法应用4.网络编程与数据库操作5.项目实战经验积累三、Java课程设计报告难点剖析1.代码优化与调试2.异常处理与日志记录3.高效算法与数据结构选择4.项目架构设计与模块划分5.团队协作与沟通技巧四、总结与展望正文:一、引言随着Java技术的不断普及和应用,越来越多的学生和开发者开始学习并运用Java进行软件开发。

为了帮助大家更好地掌握Java课程设计,本文将对Java课程设计报告的重点难点进行总结,以期为大家提供有益的参考。

二、Java课程设计报告重点概述1.Java基础知识掌握Java基础知识是课程设计的基础,包括数据类型、运算符、控制结构、方法、类与对象、继承、多态等。

掌握这些基础知识能够为后续的编程实践奠定坚实基础。

2.面向对象编程应用面向对象编程(OOP)是Java的核心思想,学会运用类、对象、封装、继承、多态等概念进行编程至关重要。

在课程设计中,应注重运用面向对象编程解决实际问题,提高代码的可维护性和可扩展性。

3.数据结构与算法应用数据结构与算法是编程的灵魂,学会使用数组、链表、栈、队列、树、图等基本数据结构,以及掌握常见排序、查找、图算法等,能够提高课程设计中解决问题的能力。

4.网络编程与数据库操作网络编程和数据库操作是实际项目开发中不可或缺的部分。

掌握Socket 编程、多线程、数据库连接、SQL语句编写等技能,能够为课程设计提供实际应用场景。

5.项目实战经验积累课程设计报告中应体现实际项目开发经验,包括需求分析、系统设计、编码实现、测试、部署等环节。

通过实际项目锻炼,提高自己的编程能力和团队协作能力。

三、Java课程设计报告难点剖析1.代码优化与调试编写高质量的代码和高效地调试程序是课程设计中的关键环节。

学会使用调试工具、编写单元测试、代码审查等方法,提高代码质量和稳定性。

《Java》课程设计》记事本

《Java》课程设计》记事本

《Java课程设计》记事本课程设计报告书目录一、设计课题二、设计目的三、操作环境四、设计场所(机房号、机器号或自己机器)五、设计过程(设计内容及主要程序模块)六、本次设计中用到的课程知识点(列出主要知识点)七、设计过程中遇到的问题及解决办法八、程序清单五、设计过程(设计内容及主要模块,不少于3000字)1.设计要求1)界面设计2)功能实现(1)文件菜单:新建、打开、保存、另存为、退出等。

(2)其中新建菜单项可以新建一个记事本程序;打开菜单项可以打开一个用户指定的文本文件,并将其内容显示在记事本的文本区域;保存和另存为菜单项可分别实现文件的保存和另存为3)编辑菜单:复制、剪切和粘贴等4)帮助菜单:软件版本信5)右键弹出快捷菜单2.总体设计1)功能模块图:图一功能模块图2)功能描述1、打开记事本。

首先是标准型的记事本,拥有文件、编辑。

格式和帮助。

如图1所示:图1标准型记事本界面2、在标准型的记事本界面中,进行的新建一个本件名字叫新记事本。

如图2记事本文件帮助新建打开保存另存为退出复制剪切粘贴编辑关于记事本右键快捷格式字体颜色图2新建记事本功能3、用打开文件打开刚刚新建的新记事本。

如图三所示。

图3—打开文件4、点击退出即可退出,如图4所示:图4—退出记事本5、点击帮助可以看到有关记事本的相关信息,其中有作者名、版本、许可条款、隐私声明等必要信息。

如图5所示:图5—帮助相关信息6、右键可实现复制、粘贴、剪切、清除等常用功能,方便用户可以快捷方便的使用记事本。

如图6所示:图6—右键功能7、编辑也可实现制、粘贴、剪切、清除等常用功能,方便用户选择自己适合的方式,自由选择方便的快捷方式使用。

如图7:图7—编辑八、程序清单package test;import java.io.File;import java.io.*;import java.awt.event.*;import java.awt.Toolkit;import java.awt.*;import javax.swing.*;import javax.swing.filechooser.*;public class Notebook extends JFrame implements ActionListener,ItemListener{ //组件创建JButton b_save,b_close; //按钮JTextArea textArea; //文本框File tempFile; //文件JPanel jp; //面板JMenu file,edit,style,help; //菜单JMenuItemf_new,f_open,f_save,f_close,f_saveas,e_copy, e_paste,e_cut,e_clear,e_selectAll,e_find,e_rep lace,s_font,s_color,h_editor,h_help; //菜单条JMenuBar jmb;JScrollPane jsp; //滚动面板JPopupMenu popUpMenu = new JPopupMenu(); //右键弹出式菜单JLabel stateBar;//标签JLabel jl,jj;JFileChooser jfc = new JFileChooser(); //文件选择JMenuItemje_copy,je_paste,je_cut,je_clear,je_selectAll,je _find,je_replace; //弹出式菜单条public Notebook(){jfc.addChoosableFileFilter(new FileNameExtensionFilter("文本文件(*.txt)","txt"));jmb = new JMenuBar();textArea = new JTextArea();jsp = new JScrollPane(textArea);file = new JMenu("文件");edit = new JMenu("编辑");style = new JMenu("格式");help = new JMenu("帮助");je_copy = new JMenuItem("复制(C) ");je_paste = new JMenuItem("粘贴(P) ");je_cut = new JMenuItem("剪切(X) ");je_clear = new JMenuItem("清除(D) ");je_selectAll = new JMenuItem("全选(A) ");je_find = new JMenuItem("查找(F) ");je_replace = new JMenuItem("替换(R) ");je_copy.addActionListener(this); //给弹窗式的各组件添加监听器je_paste.addActionListener(this);je_cut.addActionListener(this);je_clear.addActionListener(this);je_selectAll.addActionListener(this);je_find.addActionListener(this);je_replace.addActionListener(this);//给界面上方的菜单条添加监听器f_new = new JMenuItem("新建(N)");f_new.setAccelerator(KeyStroke.getKeyS troke('N',InputEvent.CTRL_MASK,false)); //设置带修饰符快捷键f_new.addActionListener(this);f_open = new JMenuItem("打开(O)");f_open.setAccelerator(KeyStroke.getKey Stroke('O',InputEvent.CTRL_MASK,false));f_open.addActionListener(this);f_save = new JMenuItem("保存(S)");f_save.setAccelerator(KeyStroke.getKey Stroke('S',InputEvent.CTRL_MASK,false));f_save.addActionListener(this);f_saveas = new JMenuItem("另存为");f_saveas.setAccelerator(KeyStroke.getKe yStroke(KeyEvent.VK_S,InputEvent.CTRL_ MASK|InputEvent.SHIFT_MASK));f_saveas.addActionListener(this);f_close = new JMenuItem("退出(W)");f_close.setAccelerator(KeyStroke.getKey Stroke('W',InputEvent.CTRL_MASK,false));f_close.addActionListener(this);e_copy = new JMenuItem("复制(C)");e_copy.setAccelerator(KeyStroke.getKey Stroke('C',InputEvent.CTRL_MASK,false));e_copy.addActionListener(this);e_paste = new JMenuItem("粘贴(V)");e_paste.setAccelerator(KeyStroke.getKeyStro ke('V',InputEvent.CTRL_MASK,false));e_paste.addActionListener(this);e_cut = new JMenuItem("剪切(X)"); e_cut.setAccelerator(KeyStroke.getKeyStroke ('X',InputEvent.CTRL_MASK,false));e_cut.addActionListener(this);e_clear = new JMenuItem("清除(D)");e_clear.setAccelerator(KeyStroke.getKeyStrok e('D',InputEvent.CTRL_MASK,false));e_clear.addActionListener(this);e_selectAll = new JMenuItem("全选(A)");e_selectAll.setAccelerator(KeyStroke.getKey Stroke('A',InputEvent.CTRL_MASK,false));e_selectAll.addActionListener(this);e_find = new JMenuItem("查找(F)");e_find.setAccelerator(KeyStroke.getKeyStrok e('F',InputEvent.CTRL_MASK,false));e_copy.addActionListener(this);e_replace = new JMenuItem("替换(R)");e_replace.setAccelerator(KeyStroke.getK eyStroke('R',InputEvent.CTRL_MASK,false)) ;e_replace.addActionListener(this);s_font = new JMenuItem("字体(T)");s_font.setAccelerator(KeyStroke.getKeyStrok e('T',InputEvent.CTRL_MASK,false));s_font.addActionListener(this);s_color = new JMenuItem("颜色(C)...");s_color.setAccelerator(KeyStroke.getKeyStro ke(KeyEvent.VK_C,InputEvent.CTRL_MAS K | InputEvent.SHIFT_MASK));s_color.addActionListener(this);h_editor = new JMenuItem("关于记事本");h_editor.setAccelerator(KeyStroke.getKeyStro ke(KeyEvent.VK_E,InputEvent.CTRL_MAS K));h_editor.addActionListener(this);h_help = new JMenuItem("帮助信息(H)");h_help.setAccelerator(KeyStroke.getKeyStrok e(KeyEvent.VK_I,InputEvent.CTRL_MASK) );h_help.addActionListener(this);//添加右键弹出式菜单popUpMenu.add(je_copy);popUpMenu.add(je_paste);popUpMenu.add(je_cut);popUpMenu.add(je_clear);popUpMenu.addSeparator();popUpMenu.add(je_selectAll);popUpMenu.add(je_find);popUpMenu.add(je_replace);//编辑区鼠标事件,点击右键弹出"编辑"菜单textArea.addMouseListener(new MouseAdapter(){public void mouseReleased(MouseEvent e) {if(e.getButton() == MouseEvent.BUTTON3)popUpMenu.show(e.getComponent(), e.getX(), e.getY());} //e.getComponent()和textArea具有同等效果public void mouseClicked(MouseEvent e){if(e.getButton() == MouseEvent.BUTTON1)popUpMenu.setVisible(false);}});this.setJMenuBar(jmb);this.setTitle("记事本程序");file.add(f_new); //添加文件菜单组件file.add(f_open);file.addSeparator(); //加分隔线file.add(f_save);file.add(f_saveas);file.addSeparator();file.add(f_close);edit.add(e_copy); //添加编辑菜单组件edit.add(e_paste);edit.add(e_cut);edit.add(e_clear);edit.addSeparator();edit.add(e_selectAll);edit.add(e_find);edit.add(e_replace);style.addSeparator();style.add(s_font);style.add(s_color);jmb.add(file); //添加格式菜单组件jmb.add(edit);jmb.add(style);jmb.add(help);help.add(h_editor); //添加帮助菜单组件help.add(h_help);//textArea.setWrapStyleWord(true); //设置在单词过长的时候是否要把长单词移到下一行。

java课程设计报告

java课程设计报告

java课程设计报告Java课程设计报告。

一、引言。

Java作为一种跨平台的编程语言,具有广泛的应用领域和强大的功能,因此在计算机专业课程中占据着重要的地位。

本次课程设计旨在通过对Java语言的学习和实践,提高学生对于面向对象程序设计的理解和应用能力,同时锻炼学生的编程实践能力和团队协作能力。

二、课程设计内容。

1. 课程设计主题。

本次课程设计的主题为“学生成绩管理系统的设计与实现”。

通过该主题的设计,旨在让学生通过实际的项目开发,掌握Java语言的基本语法和面向对象的编程思想,同时对软件开发的整个流程有一个清晰的认识。

2. 课程设计目标。

(1)掌握Java语言的基本语法和面向对象的编程思想;(2)了解软件开发的整个流程,包括需求分析、设计、编码、测试和维护;(3)培养学生的团队协作能力和解决问题的能力;(4)通过实际项目的开发,提高学生的编程实践能力。

三、课程设计过程。

1. 需求分析。

首先,团队成员对学生成绩管理系统的功能需求进行了详细的分析和讨论,确定了系统的基本功能模块,包括学生信息管理、课程信息管理、成绩管理等。

通过需求分析,明确了系统的功能和性能需求,为后续的设计和编码工作奠定了基础。

2. 系统设计。

在需求分析的基础上,团队成员进行了系统的整体设计和模块设计。

通过UML建模工具,绘制了系统的用例图、类图、时序图等,明确了各个模块之间的关系和交互流程。

同时,团队成员还对数据库的设计进行了详细的讨论和设计,确定了数据库的表结构和字段。

3. 编码实现。

在系统设计完成后,团队成员按照设计文档进行了编码实现工作。

在编码的过程中,严格按照Java语言的规范进行编码,同时注重代码的可读性和可维护性。

通过团队的协作和沟通,确保了各个模块的功能实现和整体功能的完整性。

4. 测试与调试。

在编码实现完成后,团队成员进行了系统的测试与调试工作。

通过单元测试、集成测试和系统测试,发现并修复了系统中存在的各种问题和bug。

java课程设计及实验报告

java课程设计及实验报告

java课程设计及实验报告一、教学目标本课程旨在通过Java编程语言的学习,让学生掌握Java编程的基本语法、面向对象编程思想以及常用的数据结构与算法。

通过课程的学习,使学生能够独立完成简单的Java程序,培养学生的编程能力和逻辑思维能力。

具体的教学目标如下:1.知识目标:–掌握Java基本语法和编程规范;–理解面向对象编程的基本概念和方法;–熟悉常用的数据结构(如数组、链表、栈、队列等)和算法(如排序、查找等)。

2.技能目标:–能够使用Java编写简单的程序,解决实际问题;–能够运用面向对象编程思想进行程序设计;–能够运用常用的数据结构与算法解决编程问题。

3.情感态度价值观目标:–培养学生的团队合作意识和沟通能力;–培养学生的创新精神和解决问题的能力;–培养学生的自主学习能力和持续学习的兴趣。

二、教学内容根据教学目标,本课程的教学内容主要包括以下几个方面:1.Java基本语法和编程规范;2.面向对象编程思想,包括类与对象、继承与多态、封装等;3.常用的数据结构与算法,包括数组、链表、栈、队列、排序、查找等;4.Java标准库的使用,包括字符串、数学运算、输入输出等;5.简单的Java编程实例和实战项目。

教学内容的安排和进度如下:•第1-2周:Java基本语法和编程规范;•第3-4周:面向对象编程思想;•第5-6周:常用的数据结构与算法;•第7-8周:Java标准库的使用;•第9-10周:简单的Java编程实例和实战项目。

三、教学方法为了达到教学目标,本课程将采用多种教学方法,包括:1.讲授法:讲解Java基本语法、面向对象编程思想和常用的数据结构与算法;2.案例分析法:分析实际的编程案例,让学生更好地理解和运用Java编程知识;3.实验法:让学生通过动手实践,巩固所学知识和技能;4.讨论法:学生进行小组讨论,培养学生的团队合作意识和沟通能力。

四、教学资源为了支持教学内容和教学方法的实施,丰富学生的学习体验,我们将准备以下教学资源:1.教材:《Java编程思想》;2.参考书:《Java核心技术》、《Head First Java》;3.多媒体资料:教学PPT、视频教程、在线编程练习题等;4.实验设备:计算机、网络环境、编程开发环境(如Eclipse、IntelliJIDEA等)。

java课程设计报告重点难点总结

java课程设计报告重点难点总结

java课程设计报告重点难点总结在Java课程设计中,学生可能会遇到各种挑战和困难。

以下是一些可能遇到的难点和重点,以及如何解决和掌握它们的建议:重点:1.面向对象编程(OOP)概念的理解与应用:Java是一种面向对象的编程语言,理解并能够应用OOP的概念(如封装、继承、多态等)是使用Java进行编程的基础。

学生需要理解这些概念,并在自己的程序中应用它们。

2.异常处理:Java的异常处理是程序健壮性的重要保障。

学生需要理解如何使用try-catch语句来处理可能会抛出异常的代码,以及如何使用throws和throw关键字来声明和抛出异常。

3.GUI编程:如果课程设计包含GUI编程,那么Swing或JavaFX 等GUI库的学习和应用就是重点。

学生需要理解如何创建和布局界面元素,如何处理用户输入,以及如何更新界面元素。

难点:1.复杂问题的抽象和建模:在面对复杂的问题时,如何将其抽象化,并将其分解为Java可以处理的对象和类可能会是一个挑战。

学生需要培养自己的问题解决和编程思维能力。

2.内存管理和垃圾收集:Java有自动内存管理和垃圾收集机制,这可以减少内存泄漏的风险,但理解这个机制如何工作,以及如何在必要时手动管理内存可能会有些困难。

3.并发编程:如果课程设计涉及到多线程或并发编程,那么理解和应用线程的生命周期,以及如何同步线程之间的数据可能会是一个挑战。

总结:对于这些重点和难点,关键是实践和反思。

学生应该尝试编写自己的程序,并在编写和调试过程中不断思考和理解这些问题。

此外,寻求同学、老师或在线社区的帮助也是解决困难的重要方式。

最后,不要忘记,学习编程是一个渐进的过程,需要耐心和坚持。

java课程设计成果

java课程设计成果

java课程设计成果一、教学目标本节课的目标是让学生掌握Java编程的基础知识,包括数据类型、变量、运算符等。

学生应能够理解并运用这些知识编写简单的Java程序。

此外,学生还应掌握基本的编程技巧,如控制流程、函数定义等。

通过本节课的学习,学生应能够独立完成简单的Java程序设计任务,培养编程兴趣和自信心。

二、教学内容本节课的教学内容主要包括Java编程的基本概念、数据类型、变量、运算符、控制流程和函数定义等。

具体包括以下几个部分:1.Java编程的基本概念:介绍Java编程语言的背景、特点和应用领域。

2.数据类型:讲解Java中的基本数据类型,如整数类型、浮点类型、字符类型等。

3.变量:介绍变量的概念、声明和使用方法。

4.运算符:讲解Java中的算术运算符、关系运算符、逻辑运算符等。

5.控制流程:介绍条件语句、循环语句等控制流程的用法。

6.函数定义:讲解函数的声明、定义和调用。

三、教学方法本节课采用讲授法、案例分析法和实验法相结合的教学方法。

1.讲授法:教师通过讲解Java编程的基本概念、语法和编程技巧,引导学生掌握编程知识。

2.案例分析法:教师通过分析典型的Java程序案例,让学生理解并运用所学知识解决实际问题。

3.实验法:学生通过动手编写Java程序,巩固所学知识,培养编程能力。

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

1.教材:选用权威、实用的Java编程教材,如《Java核心技术》等。

2.多媒体资料:制作精美的PPT课件,为学生提供直观、生动的学习资源。

3.实验设备:为学生提供充足的计算机设备,确保每个学生都能动手实践。

五、教学评估本节课的评估方式包括平时表现、作业和考试三个部分。

平时表现主要评估学生在课堂上的参与程度、提问回答等情况,占总评的30%。

作业主要包括编程练习和小论文,占总评的40%。

考试为闭卷考试,内容涵盖本节课的全部知识点,占总评的30%。

评估方式客观、公正,能全面反映学生的学习成果。

JAVA课程设计报告_完整版

JAVA课程设计报告_完整版

《JAVA面向对象程序设计》课程设计报告(2011-2012学年第2学期)系别:厦门理工学院计算机科学与技术系专业名称:10级网络工程1班课程设计科目:《JAVA面向对象程序设计》课程设计学生姓名:学号:指导教师:***成绩:完成时间:2012年7月6日题目JAVA程序课程设计任务一手机号码检测器(一)设计任务与目标任务:手机号码是由11位数字构成,用户在输入手机号码时经常混乱输入若干位数字或字母,要求你编写一个程序检测用户所输入的手机号码是否符合规则。

要求目标:检测所输入的手机号码是否是11位检测每一位是否都为数字。

分析论证:本题目要求对用户输入的手机号码进行检测,判断输入的正确性。

曾经有做过类似字符比较的题目,可以借鉴。

将字符的比较运用进来,把用户的输入字符和正确的进行比较。

但是必须满足多次输入和错误提醒。

同时还可以添加提示错误的位置和错误字符是什么。

程序正确运行时可以满足以上功能,基本可以达到题目要求了。

(二)方案设计与论证为了满足多次输入的要求,将提示和输入的操作放在一个循环体中,我采用了do_whiele()循环。

每次输入结束后提示是否继续输入。

在循环中逐步对输入的号码位数和字符类型进行检测。

位数可以分超出和不足,并均给出错误提示。

如果位数满足要求后对手机号码类型进行检测。

一般手机号在0~9之间,所以不满足的字符将报错。

通过将输入的整个字符串调用charAt(int i)方法对字符串逐位比较。

本程序的特点在于可以满足了多次输入和错误字符的显示(内容和位置)。

在程序的调试过程中,有过多次输入正确的号码也会报错(还会报错0位错误),这是因为记录错误位子的变量放在错误条件下并且未在循环体中初始化为0。

最终解决了此问题。

(三)程序框图或流程图,程序清单与调用关系(四)程序运行的测试与分析实现了多次输入和错误提示,可以判断输入的号码的错误位置及字符,错误类型,满足了设计构思要求。

最终结果如下图:实验结果截图:(五)结论心得实验过程中对于判断条件的选择出现了问题,开始时觉得要对输入的字符一个一个的比较,这样增加了难度也不方便实现。

java课程设计实验报告

java课程设计实验报告

java课程设计实验报告Java课程设计实验报告。

一、实验目的。

本次实验旨在通过设计一个简单的Java程序,加深对Java语言的理解和应用,同时锻炼学生的编程能力和解决问题的能力。

二、实验内容。

本次实验要求设计一个简单的学生成绩管理系统,实现对学生成绩的录入、查询、修改和删除等功能。

具体要求如下:1. 设计一个学生类,包括学生的基本信息(学号、姓名、性别等)和成绩信息(语文、数学、英语等科目成绩)。

2. 实现学生成绩的录入功能,可以一次性录入多个学生的成绩信息。

3. 实现学生成绩的查询功能,可以根据学号或姓名查询学生的成绩信息。

4. 实现学生成绩的修改功能,可以修改指定学生的成绩信息。

5. 实现学生成绩的删除功能,可以删除指定学生的成绩信息。

三、实验设计。

在本次实验中,我首先设计了一个学生类,包括学号、姓名、性别和成绩等属性,并提供了相应的构造方法和get、set方法。

然后,我设计了一个学生成绩管理系统的主类,其中包括录入、查询、修改和删除等功能的实现。

在录入功能中,我使用Scanner类实现了从控制台输入学生信息的功能,并将学生信息保存到一个ArrayList中。

在查询功能中,我通过学号或姓名遍历ArrayList,找到相应的学生信息并输出。

在修改功能中,我同样通过遍历ArrayList找到指定学生信息,并提供修改选项,用户可以选择要修改的成绩信息进行修改。

在删除功能中,我也是通过遍历ArrayList找到指定学生信息,并进行删除操作。

四、实验结果。

经过一系列的调试和测试,我成功实现了学生成绩管理系统的设计要求。

用户可以通过简单的命令行界面,实现学生成绩的录入、查询、修改和删除等功能。

系统运行稳定,操作简单,符合设计要求。

五、实验总结。

通过本次实验,我对Java语言的面向对象编程有了更深入的理解,掌握了ArrayList的使用方法,提高了编程能力和问题解决能力。

同时,通过设计一个实用的学生成绩管理系统,我也加深了对Java语言的应用和实践,为以后的学习和工作打下了坚实的基础。

《JAVA程序设计》课程设计五篇

《JAVA程序设计》课程设计五篇

《JAVA程序设计》课程设计五篇第一篇:《JAVA程序设计》课程设计JAVA程序设计》课程设计------Chatter即时聊天工具班级:姓名:学号:指导老师:日期:《目录1.引言.....................................................................................3 2.功能简介..............................................................................3 3.开发环境..............................................................................3 4.课程设计目的.......................................................................3 5.使用手册..............................................................................3 6.程序源代码...........................................................................4 4.1 serverJFrame.java (4)4.2 clientJFrame.java...............................................................9 7.程序运行效果图. (14)8.心得体会 (16)1.引言相信大家一想到基于TCP/IP协议的通信,都会想到利用Socket 类对象建立一条可靠的连接,这样就客户机/服务器就在这条连接上可靠地传输数据。

JAVA课程设计报告书捕鱼达人

JAVA课程设计报告书捕鱼达人

JAVA课程设计报告书■捕鱼达人一、项目概述本课程设计项目名为“捕鱼达人”,是一款基于Java语言开发的休闲小游戏。

游戏的玩法类似于传统的电子捕鱼游戏,玩家需要控制一个炮台发射炮弹,捕获游泳在屏幕上的鱼类,从而获取积分。

游戏采用图形界面展示,通过键盘操作进行操作。

二、项目功能本项目实现了以下主要功能:1.游戏开始界面:展示游戏名称、游戏说明和开始游戏按钮。

2.游戏主界面:展示玩家得分、可发射的炮弹数量、当前关卡和剩余时间。

3.炮台操作:玩家可以使用键盘左右箭头键控制炮台的旋转角度,空格键发射炮弹。

4.游戏关卡:游戏包含多个关卡,每个关卡有不同游泳速度和分数的鱼类。

5.鱼类生成和移动:游戏会随机生成游泳在屏幕上的鱼类,玩家需要通过炮弹捕获鱼类。

6.炮弹碰撞检测:当炮弹与鱼类碰撞时,计算得分并移除鱼类和炮弹。

7.时间限制:游戏设有时间限制,到达时间上限后游戏结束。

8.游戏结束界面:展示玩家得分、最高分和重新开始游戏按钮。

三、游戏开发过程本项目基于JaVa语言开发,采用面向对象的编程思想。

以下是项目的开发过程和关键步骤:1.游戏框架搭建:使用JavaSwing库创建游戏窗口,定义游戏主界面和游戏开始界面。

2.炮台操作:使用键盘监听器,监听左右箭头键的按F事件,实现炮台的旋转操作。

3.炮弹发射:使用键盘监听器,监听空格键的按下事件,发射炮弹。

创建炮弹类,并定义炮弹的弹道和移动速度。

4.鱼类生成和移动:使用线程控制鱼类的生成和移动。

创建鱼类类,并定义鱼类的游泳速度和移动路径。

5.碰撞检测:使用碰撞检测算法,判断炮弹与鱼类是否发生碰撞。

如果发生碰撞,计算得分并移除鱼类和炮弹。

6.游戏计时:使用定时器控制游戏时间的倒计时,到达时间上限后游戏结束。

7.界面设计:美化游戏界面,添加游戏结束界面,并显ZΓ⅞71家得分和最高分。

四.项目总结本项目旨在通过实践应用Java编程知识,提高学生对Java面向对象编程的理解和掌握程度。

JAVA课程设计报告模板11

JAVA课程设计报告模板11

一、设计分析题目: 日历记事本系统将日历和记事本结合在一起,可以方便地保存、查看日志, 即在任何日期记载下有关内容或查看某个日期记载的内容, 要求如下:(1)显示信息:用户可以向前翻页查询前一个月的日期, 也可以向后翻页查询下一个月的日期。

(2)定时提醒:用户可以针对某一天来添加, 删除和编辑这一天的日程提醒信息, 当系统时间和提醒时间相吻合时, 给出具有提示信息的对话框。

(3)查询信息: 用户可以查询到某个月的所有的提示信息。

分析:可以将整个程序分为三个模块: 日历模块、记事本模块、闹铃模块。

日历模块负责显示信息功能。

定义一个日历实体类, 用于保存某年某月下的一个月的日期信息。

然后在视图中用个JPanel用于存放日历的视图和一些相关按钮。

然后将相关功能实现后, 建立按钮的监听事件, 以在按钮被按下的时候响应。

记事本模块负责查询信息以及定时提醒中的添加、删除和编辑某一天的日程提醒信息的功能。

定义一个提示信息实体类, 用于保存提示信息。

定义一个提示信息的工具类, 用于对提示信息进行各项操作, 如:增加、删除、查询等。

在视图中, 用个JList与提示信息实体类关联, 用于显示提示信息的列表, 并且可以选中后对提示信息的具体内容修改。

然后提示信息中的具体内容用一个JTextArea来读取、显示和保存。

闹铃模块负责定时提醒中的提醒功能。

定义一个闹钟类, 用于启动后一直检索当前提示信息, 看有没有需要提示的。

由于本闹钟会有声音提示, 所以需要定义一个音乐播放类负责声音提示。

然后将声音播放类和闹钟类关联, 主要负责闹铃模块的是闹钟类。

二、程序结构三、各模块的功能及程序说明日历模块:选定年份与月份后, 会显示该年该月的日期排布。

然后该模块具有向前/向后调整一年、向前/向后调整一月的按钮, 点击按钮可以实现相应的功能。

并且, 利用JCombox提供可以直接选择的年份列表、月份列表, 选中后会相应刷新日历视图。

记事本模块:该模块有添加、删除、修改、查询日程提示信息的功能。

java课程设计报告.doc

java课程设计报告.doc

java课程设计报告.doc一、教学目标本课程旨在通过Java编程语言的学习,让学生掌握Java编程的基本语法、流程控制、数据结构、面向对象编程等知识,培养学生编写简单Java应用程序的能力,提高学生解决实际问题的实践能力。

1.掌握Java基本语法和常用数据类型。

2.理解面向对象编程的基本概念,如封装、继承、多态。

3.熟悉Java常用类库和API。

4.掌握Java程序的调试和运行方法。

5.能够使用Java编写简单的应用程序。

6.能够运用面向对象编程思想解决实际问题。

7.具备基本的Java程序调试和优化能力。

情感态度价值观目标:1.培养学生的团队合作意识和沟通能力。

2.培养学生热爱编程、积极探索的精神。

3.增强学生对计算机科学的兴趣和自信心。

二、教学内容本课程的教学内容主要包括Java基本语法、流程控制、数据结构、面向对象编程等。

具体安排如下:1.Java基本语法:变量、数据类型、运算符、表达式、语句等。

2.流程控制:顺序结构、选择结构、循环结构等。

3.数据结构:数组、链表、栈、队列、树等。

4.面向对象编程:类、对象、封装、继承、多态等。

5.Java常用类库和API:String类、数学类、日期类等。

6.综合实践:编写简单的Java应用程序,如计算器、通讯录等。

三、教学方法本课程采用讲授法、案例分析法、实验法等多种教学方法相结合,以激发学生的学习兴趣和主动性。

1.讲授法:通过讲解Java编程的基本概念和知识点,使学生掌握相关知识。

2.案例分析法:分析实际案例,让学生了解Java编程在实际应用中的优势和特点。

3.实验法:引导学生动手实践,培养学生的编程能力和实际问题解决能力。

四、教学资源1.教材:《Java编程思想》、《Java核心技术》等。

2.参考书:《Java编程指南》、《Java并发编程》等。

3.多媒体资料:PPT、教学视频、在线教程等。

4.实验设备:计算机、网络环境、编程软件等。

五、教学评估本课程的评估方式包括平时表现、作业、考试等,以全面、客观、公正地评价学生的学习成果。

学生选课系统JAVA课程设计完整

学生选课系统JAVA课程设计完整

学生选课系统JAVA课程设计完整一、引言在当今信息技术快速发展的时代,学生选课系统作为学校教务管理的重要组成部分,起着承上启下的重要作用。

本文将介绍一个基于JAVA语言开发的学生选课系统的设计与实现,旨在实现学生线上选课、退课等功能,提高教务管理效率和学生服务质量。

二、系统架构1. 模块划分•学生模块:包括学生注册、登录、选课、查看已选课程等功能。

•教师模块:包括教师登录、课程管理等功能。

•管理员模块:包括管理员登录、学生管理、教师管理、课程管理等功能。

2. 技术实现•后端采用JAVA语言,搭建基于Spring框架的后台服务。

•前端使用HTML、CSS和JavaScript实现网页交互。

•数据库采用MySQL,存储学生、教师、课程等信息。

三、功能设计1. 学生功能•学生注册:学生填写个人信息进行注册。

•学生登录:学生使用注册账号密码登录系统。

•选课功能:学生浏览可选课程列表并进行选课。

•课程退选:学生可以自由退选已选课程。

2. 教师功能•教师登录:教师使用工号和密码登录系统。

•课程管理:教师可以新增、修改、删除课程信息。

•查看选课学生:教师可以查看选了自己课程的学生名单。

3. 管理员功能•管理员登录:管理员使用特定账号密码登录系统。

•学生管理:管理员可以添加、删除、修改学生信息。

•教师管理:管理员可以添加、删除、修改教师信息。

•课程管理:管理员可以添加、删除、修改课程信息。

四、实现步骤1. 数据库设计•创建学生表、教师表、课程表等关联表。

2. 后端开发•实现学生、教师、管理员的登录验证逻辑。

•实现选课、退课功能的后台逻辑。

3. 前端开发•设计学生选课页面、教师管理页面、管理员后台页面。

•实现与后台数据交互的前端逻辑。

五、测试与部署1. 单元测试•对学生登录、选课功能进行单元测试。

•对教师课程管理功能进行单元测试。

2. 集成测试•对整个系统进行集成测试,检验各个功能之间的协同工作是否正常。

3. 部署上线•将系统部署到服务器上,供学生、教师和管理员线上使用。

java课程设计走迷宫报告

java课程设计走迷宫报告

java课程设计走迷宫报告一、教学目标本节课的教学目标是让学生掌握Java编程的基本语法和流程控制,学会使用Java编写简单的程序,培养学生的编程思维和解决问题的能力。

具体包括以下三个方面的目标:1.知识目标:使学生了解Java编程语言的基本语法、数据类型、变量、运算符、流程控制语句等基本概念。

2.技能目标:培养学生能够使用Java编写简单的程序,如计算器、猜数字游戏等,提高学生的编程实践能力。

3.情感态度价值观目标:培养学生对编程的兴趣,激发学生的创新意识,培养学生的团队合作精神和自主学习能力。

二、教学内容本节课的教学内容主要包括以下几个部分:1.Java编程语言的基本语法和数据类型。

2.变量的声明、赋值和类型转换。

3.运算符的使用和运算规则。

4.流程控制语句(条件语句、循环语句)的编写和运用。

5.实例分析:编写简单的Java程序,如计算器、猜数字游戏等。

三、教学方法为了达到本节课的教学目标,我们将采用以下几种教学方法:1.讲授法:讲解Java编程语言的基本语法、数据类型、变量、运算符、流程控制语句等概念。

2.案例分析法:分析实例程序,使学生了解如何使用Java编写简单的程序。

3.实验法:让学生动手编写Java程序,培养学生的编程实践能力。

4.讨论法:学生进行小组讨论,分享学习心得,提高学生的团队合作精神。

四、教学资源为了支持本节课的教学内容和教学方法的实施,我们将准备以下教学资源:1.教材:选用权威、实用的Java编程教材,为学生提供系统的学习资料。

2.参考书:提供相关的Java编程参考书籍,丰富学生的知识体系。

3.多媒体资料:制作精美的PPT,直观地展示Java编程的概念和实例。

4.实验设备:为学生提供电脑、编程环境等实验设备,方便学生进行编程实践。

五、教学评估本节课的教学评估将采用多元化的评估方式,以全面、客观、公正地评价学生的学习成果。

具体包括以下几个方面:1.平时表现:评估学生在课堂上的参与度、提问回答、小组讨论等,以考察学生的学习态度和积极性。

java课程设计设计实验报告

java课程设计设计实验报告

java课程设计设计实验报告一、教学目标本课程旨在通过Java编程语言的学习,让学生掌握Java编程的基本语法、流程控制、数据结构、面向对象编程等基本知识,培养学生运用Java语言解决实际问题的能力。

具体目标如下:1.知识目标:(1)理解Java编程语言的基本语法和编程规范;(2)掌握Java中的基本数据类型、运算符、表达式;(3)了解Java的流程控制语句,如if、for、while等;(4)熟悉Java数组、字符串、集合等数据结构的使用;(5)理解面向对象编程的基本概念,如类、对象、封装、继承、多态等;(6)掌握Java异常处理机制和文件操作。

2.技能目标:(1)能够使用Java编写简单的程序,实现基本的功能;(2)能够运用面向对象编程思想,设计并实现具有一定复杂度的程序;(3)具备阅读Java代码的能力,能够理解并修改他人编写的程序;(4)掌握使用Java开发工具,如Eclipse、IntelliJ IDEA等;(5)了解Java程序的调试和性能优化方法。

3.情感态度价值观目标:(1)培养学生对编程语言的兴趣,激发学生主动学习的动力;(2)培养学生团队合作精神,提高学生沟通协作能力;(3)培养学生面对挑战、解决问题的信心和勇气;(4)培养学生具有良好的代码规范和编程习惯。

二、教学内容本课程的教学内容主要包括Java编程语言的基本语法、流程控制、数据结构、面向对象编程等。

具体安排如下:1.第一章:Java入门,介绍Java编程语言的基本概念、环境搭建和基本语法;2.第二章:基本数据类型和运算符,学习Java中的整数、浮点数、字符、布尔等数据类型以及运算符;3.第三章:流程控制语句,学习if、for、while等流程控制语句的使用;4.第四章:数组和字符串,学习数组的声明、初始化和使用,字符串的创建、操作和转换;5.第五章:集合框架,学习List、Set、Map等集合接口及其实现类的使用;6.第六章:面向对象编程,学习类、对象、封装、继承、多态等概念及应用;7.第七章:异常处理和文件操作,学习Java异常处理机制和文件读写方法;8.第八章:Java编程实践,通过案例分析法和实验法,巩固所学知识,提高实际编程能力。

图书管理系统java课程设计报告

图书管理系统java课程设计报告

图书管理系统java课程设计报告一、课程目标知识目标:1. 掌握Java语言面向对象编程的基本原理,包括类的定义、对象的创建、继承和多态;2. 学会使用Java集合框架,如List、Set等,进行数据存储和管理;3. 理解数据库连接和SQL语句执行过程,掌握JDBC操作数据库的基本方法;4. 了解图书管理系统的业务需求,能运用所学知识分析并实现系统功能。

技能目标:1. 培养学生运用面向对象思想进行问题分析和解决的能力;2. 提高学生使用Java语言编写程序、调试代码和解决问题的实践能力;3. 培养学生运用JDBC技术操作数据库,实现数据增删改查等基本功能;4. 培养学生团队协作、沟通表达和项目组织管理的能力。

情感态度价值观目标:1. 激发学生对计算机编程的兴趣,培养其主动学习和探究的精神;2. 培养学生严谨、踏实的学术态度,注重代码规范和编程习惯;3. 引导学生关注实际应用,体会所学知识在解决实际问题中的价值;4. 培养学生的团队协作意识,使其认识到团队合作的重要性。

本课程针对高年级学生,结合学科特点和教学要求,旨在通过图书管理系统Java课程设计,使学生在掌握Java编程基础和数据库操作技能的同时,培养其实际项目开发和团队协作能力。

课程目标具体、可衡量,为后续教学设计和评估提供明确依据。

二、教学内容1. Java面向对象编程基础:- 类的定义、属性、方法- 对象的创建、使用- 继承、多态、封装- 抽象类、接口2. Java集合框架:- List、Set、Map接口及其实现类- 集合的增删改查操作- 集合的迭代器、增强型for循环遍历3. 数据库基础与JDBC操作:- 数据库概念、SQL语言基础- JDBC驱动加载、数据库连接- PreparedStatement对象执行SQL语句- 结果集处理、事务管理4. 图书管理系统功能实现:- 系统需求分析- 类的设计与实现- 数据库表结构设计- 系统功能模块划分及实现教学内容按照课程目标进行选择和组织,确保科学性和系统性。

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

Java课程设计报告专业:计算机科学与技术班级:0820542 学号:姓名:用Java 设计文本编辑器MyTxt内容提要:在本文构造实现了一个文本编辑器MyTxt,主要内容包括:MyTxt的功能需求分析;MyTxt的基本设计思路和类的划分;MyTxtr 的具体实现。

关键字:Java、文本编辑器MyTxt引言:设计实现一个Java 应用程序的过程如下:(1)功能需求分析。

(2)设计和类划分。

(3)代码编写实现。

本文就按照这个步骤来实现文本编辑器MyTxt 的制作。

正文:1、MyTxt 功能需求分析作为文本编辑器,至少应该具备以下几种功能:(1)所见即所得的文本输入。

(2)方便的选中文本、复制文本、删除文本、插入文本的功能。

(3)方便的查找指定文字、替换文字的功能。

(4)打印功能。

(5)简单的排版功能,如设置字体、字号等。

另外,还要求MyTxt 实现一个称为“经典视图Classic View”的功能,用以使用经典仿Terminal形式的界面。

2、MyTxt 基本设计思路和类划分基于第1 节中提出对于MyTxt 功能需求的分析,对这个应用程序设计划分类如下:(1)MyTxt:这个类作为主类,实现主要功能,并实现图形用户界面。

(2)MenuColor:这个类用来实现文字颜色的编辑功能。

(3)MenuFont:这个类用来实现文字字体、字号的编辑功能。

(4)PrintableTextArea:这个类将实现TextArea 的功能,并使得文字可以打印输出。

3、MyTxt 的具体实现3.1、MyTxt 类的设计MyTxt 类实现整体功能,包括窗体的初始化、各种用户事件监听和响应(编辑、保存、打开等等)。

1. 父类和主要接口设计MyTxt 整个窗体特性继承自JFrame 类。

为了对用户命令做出响应(如保存文件),MyTxt 类必须能够监听到用户的命令,因此设计MyTxt 类实现ActionListener 接口。

为了对用户的键盘操作(即编辑输入事件)做出响应,MyTxt 类必须能够监听到键盘敲击事件,因此设计MyTxt 类实现KeyListener 接口。

MyTxt 还将实现一个状态显示栏。

此外为了提供一个可以撤消的操作,为MyTxt 添加一个类本身实现接口。

2. 主要方法下面以表格的形式列出MyTxt 类至少应该具有的方法和各自的功能描述(如表1 所示)。

表1 MyTxt 类的主要方法方法功能描述static void main(String args[]) MyTxt 应用程序的入口重载ActionListener 接口中的方法,用于对用户命令进行响应,用户命令包括“保存”、“打开”、“关闭”、“打印”void keyTyped(KeyEvent e) 重载KeyListener 接口中的方法,用于对用户键盘按下操作进行响应,写入相应的字符到编辑器3. 基本效果图1 为MyTxt 的基本效果图。

图1 MyTxt 的基本效果图4. 代码分析import java.awt.*;import java.awt.event.*;import javax.swing.*;import javax.swing.event.*;import java.io.*;import java.awt.font.*;import javax.swing.undo.UndoManager;public class MyTxt{public static void main(String[] args){Aframe frame = new Aframe();frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.show();}}class Aframe extends JFrame{public Aframe(){setTitle("记事本");setSize(WIDTH, HEIGHT);Container contentPane = getContentPane();JPanel txtPanel = new JPanel();JPanel comboxPanel = new JPanel();JPanel textPanel = new JPanel();txtArea=new JTextArea("",17,40);JScrollPane scrollPane =new JScrollPane(txtArea);txtPanel.add(scrollPane);contentPane.add(comboxPanel,BorderLayout.NORTH);contentPane.add(txtPanel);contentPane.add(textPanel,BorderLayout.SOUTH);//Caidan lan:添加主菜单并设置快捷键JMenuBar menuBar =new JMenuBar();setJMenuBar(menuBar);fileMenu=new JMenu("文件(F)");editMenu=new JMenu("编辑(E)");typeMenu=new JMenu("格式(O)");viewMenu=new JMenu("查看(V)");helpMenu=new JMenu("帮助(H)");aboutMenu=new JMenu("关于(A)");fileMenu.setMnemonic('F');editMenu.setMnemonic('E');typeMenu.setMnemonic('O');viewMenu.setMnemonic('V');helpMenu.setMnemonic('H');aboutMenu.setMnemonic('A');menuBar.add(fileMenu);menuBar.add(editMenu);menuBar.add(typeMenu);menuBar.add(viewMenu);menuBar.add(aboutMenu);menuBar.add(helpMenu);//wenjian“文件”菜单的子菜单添加以及设置加速器,监听器aa=fileMenu.add(new ShowAction("新建"));aa.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_N,InputEvent.CTRL_MASK)); ab=fileMenu.add(new ShowAction("打开"));ab.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_O,InputEvent.CTRL_MASK)); ac=fileMenu.add(new ShowAction("保存"));ac.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_S,InputEvent.CTRL_MASK)); ad=fileMenu.add(new ShowAction("另存为"));ad.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_A,InputEvent.CTRL_MASK)); fileMenu.addSeparator();ae=fileMenu.add(new ShowAction("页面设置"));ae.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_U,InputEvent.CTRL_MASK)); af=fileMenu.add(new ShowAction("打印"));af.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_P,InputEvent.CTRL_MASK)); fileMenu.addSeparator();//分割线ag=fileMenu.add(new ShowAction("退出"));ag.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_X,InputEvent.CTRL_MASK)); //bianji“编辑”菜单的子菜单添加以及设置加速器,监听器ah=editMenu.add(new ShowAction("撤消"));editMenu.addSeparator();ah.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_Z,InputEvent.CTRL_MASK)); ai=editMenu.add(new ShowAction("剪切"));ai.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_X,InputEvent.CTRL_MASK)); aj=editMenu.add(new ShowAction("复制"));aj.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_C,InputEvent.CTRL_MASK)); an=editMenu.add(new ShowAction("粘贴"));an.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_V,InputEvent.CTRL_MASK)); ak=editMenu.add(new ShowAction("删除"));ak.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_L,InputEvent.CTRL_MASK)); editMenu.addSeparator();al=editMenu.add(new ShowAction("查找"));al.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_F,InputEvent.CTRL_MASK)); am=editMenu.add(new ShowAction("全选"));am.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_A,InputEvent.CTRL_MASK)); //geshi“格式”菜单的子菜单添加以及设置加速器,监听器zdhh=new JMenu("自动换行(L)");zdhh.setMnemonic('L');typeMenu.add(zdhh);ButtonGroup group =new ButtonGroup();xz=new JRadioButtonMenuItem("选择");xz.addActionListener(new ShowAction("选择"));xz.setSelected(true);qxxz=new JRadioButtonMenuItem("取消");qxxz.addActionListener(new ShowAction("取消"));qxxz.setSelected(true);group.add(xz);group.add(qxxz);zdhh.add(xz);zdhh.add(qxxz);bj=typeMenu.add(new ShowAction("背景颜色"));bj.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_C,InputEvent.CTRL_MASK));zt=typeMenu.add(new ShowAction("字体"));zt.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_F,InputEvent.CTRL_MASK));//字体弹出框中的“确定”按钮que=new Button("确定");que.addActionListener(new boxlistener());//chakan“查看”菜单的子菜单添加以及设置加速器,监听器ztl=viewMenu.add(new ShowAction("状态栏"));ztl.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_S,InputEvent.CTRL_MASK)); //guanyu“关于”菜单的子菜单添加以及设置加速器,监听器zzxx=aboutMenu.add(new ShowAction("作者信息"));zzxx.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_N,InputEvent.CTRL_MASK)); bq=aboutMenu.add(new ShowAction("版权"));bq.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_B,InputEvent.CTRL_MASK)); sm=aboutMenu.add(new ShowAction("声明"));sm.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_S,InputEvent.CTRL_MASK)); //bangzhu“帮助”菜单的子菜单添加以及设置加速器,监听器shm=helpMenu.add(new ShowAction("说明"));shm.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_S,InputEvent.CTRL_MASK)); //文本框底部工具栏的设置toolbar2=new JToolBar();textPanel.add(toolbar2);text1=new JTextField("就绪",10);text2=new JTextField("欢迎使用该记事本!",10);text3=new JTextField("",10);text4=new JTextField("",10);textPanel.setLayout(new GridLayout(1, 4));toolbar2.add(text1);toolbar2.add(text2);toolbar2.add(text3);toolbar2.add(text4);text1.setEditable(false);text2.setEditable(false);text3.setEditable(false);text4.setEditable(false);//组合框的设置//字体zitiLabel=new JLabel("字体");comboxPanel.add(zitiLabel);String zit[]={"宋体","华文行楷","楷体","黑体","幼圆","华文琥珀"};zitibox=new JComboBox(zit);comboxPanel.add(zitibox);//颜色yanseLabel=new JLabel("颜色");comboxPanel.add(yanseLabel);String yans[]={"黑色","蓝色","绿色","红色","黄色","蓝绿色","浅灰色","白色"};yansebox=new JComboBox(yans);comboxPanel.add(yansebox);//大小daxiaoLabel=new JLabel("大小");comboxPanel.add(daxiaoLabel);String dax[]={"15","10","5","20","25","30","35","40","..."};daxiaobox=new JComboBox(dax);comboxPanel.add(daxiaobox);zitibox.setEditable(true);yansebox.setEditable(true);daxiaobox.setEditable(true);comboxPanel.setLayout(new FlowLayout(FlowLayout.LEFT));//靠左排列//组合框注册监听器yansebox.addActionListener(new boxlistener());zitibox.addActionListener(new boxlistener());daxiaobox.addActionListener(new boxlistener());txtPanel.setLayout(new GridLayout(1, 1));//实例化“撤销”um= new UndoManager ();txtArea.getDocument().addUndoableEditListener(um);}//菜单栏的接口实现private class ShowAction extends AbstractAction{public ShowAction(String name){super(name);}public void actionPerformed(ActionEvent e){Object s=e.getSource();//新建if(s==aa){if(txtArea.getText().equals("")){txtArea.setText("");}else{int n=JOptionPane.showConfirmDialog(Aframe.this, "无标题记事本已改变。

相关文档
最新文档