Java实验通讯录 实验报告
java学生通讯录管理系统实验报告
宁波大红鹰学院课程设计课程设计名称: Java学生姓名:学生学号:班级名称:指导教师:完成日期: 2011/01/7学生通讯录管理系统实验报告1、封面;2、目录;3、设计任务书;实验题目:用Java语言编写一个简单的学生通讯录程序,能实现通讯录的基本功能。
实验目的:详细设计:软件产品布局:使用了按钮与下拉菜单。
一个用来显示文件的文本区,一个用于输出信息的文本框。
在下拉菜单中,我选择了用户所需要的一些常用的条件功能:录入和显示。
文件显示区我们设置为可编辑,目的是方便用户进行任何形式的修改,在这里我们忽略了它所带来的不安全性。
在按钮中我们添加了这几个项:录入和显示。
实现方法(算法分析):在设计的时候,考虑到由于能力有限,只是使用了一些许的面向对象程序设计的设计方法,在软件的设计与实现的时候更多的是使用面向过程的设计方法,在软件中,我们提供了两个封装的方法函数:public void read() 和public void write().在这两个方法中,都使用了异常处理机制,当用户进行非法操作时,提供相应的异常(主要是显示出错信息)。
在两个基本点封装的方法中,并没有要求用户提供具体的参数,而是直接地去调用它们,具体的实现方式对用户来说是不可见的,在write方法中,其功能是获取用户所写入的字符串,并将它写入文件关键技术的应用:关键技术通讯录的设计要点有以下四个。
1、通讯录的存取功能主要是通过利用文件的读入与读出的性质来实现2、利用JOptionPane产生的对话框、信息框、确认框与用户进行信息交流3、用数组来存储每个人的信息主要是方便用户在执行查找、删除等较为具体的功能4、用read()和write()两个函数进行对文件的读取操作,主要是要达到更新快的目的,存储最新的信息,做到流通快5、利用Array.sort()方法根据元素的自然顺序对指定的对象数组按升序进行排序通讯录程序源代码:主体内容:1)设计分析;2)各模块的功能及程序说明;3)源程序;4)试验结果5)显示界面输入信息显示信息6)设计体会。
java个人通讯录课程设计报告
别山东交通学院面向对象课程设计个人通信录管理信息系统的设计与实现院(系)别信息科学与电气工程学院班级学号姓名指导教师时间 2014-08-25—2014-09-5课程设计任务书题目个人通讯录管理系统院 (部) 信息科学与电气工程学院专业计算机科学与技术班级学生姓名学号08 月 25 日至 09 月 5 日共 2 周指导教师(签字)院长(签字)年月日成绩评定表目录1课程设计概述.............................................................个人通讯录功能概述...................................................开发环境概述......................................................... 2个人通讯录系统总体设计...................................................个人通讯录总体设计思想...............................................总体设计流程图....................................................... 3个人通讯录系统详细设计................................................... 4程序测试.................................................................登陆界面.............................................................删除界面.............................................................添加界面.............................................................查找实现............................................................. 设计体会及今后的改进意见.....................................................课程设计概述本课程设计是java语言学习中很重要的实践性环节之一,是在学习完java课程后进行的一次全面的综合练习旨在巩固和加深我们对java语言的基本知识的理解和掌握,掌握java语言编程和程序调试的基本技能,利用java语言进行基本的软件设计,掌握书写程序设计说明文档的能力,提高运用java语言解决实际问题的能力2本次课程设计主要目的及要求:设计一个通讯录管理软件,要求如下:增加记录、删除记录、显示所有记录、查询记录、文件备份、退出。
手机通讯录实验报告及使用说明(附源代码)
手机通讯录实验报告及使用说明(附源代码)自查报告。
标题,手机通讯录实验报告及使用说明(附源代码)。
自查报告内容:在本次实验中,我使用了Java编程语言,开发了一个简单的手机通讯录应用程序。
该应用程序可以实现添加联系人、查找联系人、删除联系人等基本功能。
在开发过程中,我遵循了面向对象的编程思想,使用了类和对象的概念来组织和管理联系人信息。
在实验中,我首先设计了Contact类,用于表示一个联系人的信息,包括姓名、电话号码、邮箱等属性。
然后,我设计了AddressBook类,用于管理联系人信息,包括添加联系人、查找联系人、删除联系人等操作。
最后,我编写了一个简单的用户界面,用于与用户交互,实现对通讯录的操作。
在实验过程中,我遇到了一些问题,比如在删除联系人时没有进行足够的输入验证,导致程序出现了错误。
不过,通过调试和修改代码,我最终解决了这些问题,并且实现了一个稳定和可靠的手机通讯录应用程序。
使用说明:1. 添加联系人,在应用程序中选择“添加联系人”选项,然后输入联系人的姓名、电话号码、邮箱等信息,点击“确认”按钮即可完成添加。
2. 查找联系人,在应用程序中选择“查找联系人”选项,然后输入联系人的姓名或电话号码,点击“搜索”按钮即可查找到对应的联系人信息。
3. 删除联系人,在应用程序中选择“删除联系人”选项,然后输入要删除的联系人的姓名或电话号码,点击“确认”按钮即可删除该联系人。
4. 显示所有联系人,在应用程序中选择“显示所有联系人”选项,即可查看当前通讯录中的所有联系人信息。
源代码:```java。
public class Contact {。
private String name;private String phone;private String email;public Contact(String name, String phone, String email) {。
= name;this.phone = phone;this.email = email;}。
个人通信录实验报告
《Java Web程序设计》综合性实验报告实验题目:个人通信录专业班级: 2017级Java四班指导教师:汪加楠姓名学号: 174804356 郭志超成绩评定:一、实验目的1.掌握Java Web网站设计的全过程、熟悉JSP技术开发模型在应用开发中的运用。
2.进一步熟练Servlet技术、数据库、标签等一般java-web应用技术。
3.掌握整个java-web应用架构、目录结构以及服务器使用。
4.运用Java Web程序设计课程中所学理论知识转化为实战能力,进一步提高应用开发能力。
实现用户注册、登录,个人通讯录增、删、改、查的功能。
二、实验步骤1、需求分析21世纪信息时代大爆发,随着网络与信息技术的发展,很多陌生人之间都有了或多或少的联系。
本需求规约从用户对软件的需求出发,系统分析软件的功能以及实现过程所需要做的所有工作。
主要定义了手机通讯录管理工具的需求,由五大模块组成,具体功能分为:查询联系人,增/删/改联系人等。
本系统主要是为了更好的管理每个人的通讯录,给每个人提供一个井然有序的管理平台,防止手工管理混乱,造成不必要的麻烦。
开发一套通讯录管理系统很重要,可以加强人们之间的交流与合作,方便了人与人之间的通讯。
此需求分析说明书对通讯软件做了通讯录管理系统的用户需求分析,一定程度上明确所要开发的软件应具有的功能、性能与界面,使系统分析人员及软件开发人员能清楚地了解用户的需求,并在此基础上进一步提出概要设计和完成后续设计与开发工作。
2、数据库设计3、程序编码(写出所用技术及所有的类名)该项目主要用了DAO、Servlet、JSP等技术进行代码的编写,运用C3P0数据源进行数据库的连接。
主要类:.aynu.rjxy.Correspondence.utils包中包含JDBCUtils 类;cn.itcast.Correspondence.dao包中包含UserDAO类、PersonDAO 类;cn.itcast.Correspondence.javabean包中包含Person类、User 类;cn.itcast.Correspondence.services包中包含PersonService类、UserService类;cn.itcast.Correspondence.servlet包中包含PersonServlet类、LoginServlet类.4、运行结果(截屏)注册页面:注册成功界面:成功登陆界面:添加好友界面:查看好友界面:修改界面:结束界面:三、实验总结在编程代码中多次出现程序报错,根据错误提示信息自己百度进行修改,问同学老师,最终能够完整运行。
java课程设计实验报告通讯录导出.62
石河子大学信息学院数据库与Java课程设计报告专业:计算机科学与技术学生姓名:指导教师:余小平日期: 2021/1/2第一章引言 (2)第二章需求分析 (2)§2.1 信息要求 (2)通话记录 (2)通讯录 (3)§2.2 处理要求 (3)通话记录 (3)通讯录 (3)§2.3 平安性与完整性要求 (3)第三章概念结构设计 (4)§3.1 实体描述 (4)实体集及属性描述 (4)§3.2 E-R图 (5)E-R图及实体集属性的计算方法 (5)第四章逻辑结构设计 (6)§41 数据字典 (6)通话记录表 (6)通讯录表 (7)§4.2 工作流程及用户子模式设计 (7)用户工作流程及子模式设计 (7)第五章系统详细设计 (7)§ (7)通话记录表 (7)关系查询 (8)§ (11)查询模块 (11)结合源代码和操作界面详细分析 (11)第六章本人学习数据库和Java程序设计的心得体会 (17)参考文献 (18)<通话记录管理系统的设计与实现>第一章引言随着数据处理的不断进步和计算机网络的迅速开展,使数据库应用系统不仅在功能而且在结构上都有了深刻的变化,而且运用在生活的每一个方面。
通过学习关系代数,关系演算,函数依赖,关系模式分解,关系模式的标准化让我们建立了扎实的关系数据库理论根底。
而在掌握根本理论的根底上掌握关系数据库的设计方法,掌握现代信息系统的开发方法也显得尤为必要。
目前在关系数据库中用得最多的SQL数据库,开发数据库的语言工具。
所以对于计算机专业的学生来说掌握数据库应用的根本技术,熟悉编程语言与SQL数据库的结合运用是我们计算机专业学生之必备本领。
熟练掌握数据库的工作原理利用查询分析获得更多有用的信息,利用JDBC连接数据库与java,实现更多的功能。
第二章需求分析§2.1 信息要求通话记录通过电信,联通,移动官网下载用户通话记录,对于客户我们应该知道他的他的通话详单〔运营商、本机号码、对方号码、起始时间、通过时长、呼叫类型、通话地点、通话的费用等〕,在其中设置相应的属性。
JAVA通讯录(内含源代码)
JA V A课程设计实验报告学校:江西农业大学班级:软件1115班姓名:***学号:********课程:JA V A通讯录指导教师:***2012.12.29一、设计目的本课程设计是java语言学习中很重要的实践性环节之一,是在学习完java 课程后进行的一次全面的综合练习旨在巩固和加深我们对java语言的基本知识的理解和掌握,掌握java语言编程和程序调试的基本技能,利用java语言进行基本的软件设计,掌握书写程序设计说明文档的能力,提高运用java语言解决实际问题的能力。
1、掌握类的定义及应用方法2、掌握对象的创建方法,了解实例变量、实例方法和静态字段的特征3、体会java在中类和对象的面向对象的设计思想二、实验内容本次课程设计是开发一个简易的、小型的通讯录,我们命名为“通讯录”。
通讯录保存在计算机中,便于分组,还便于增加、修改、删除好友信息。
设计一个通讯录管理软件,要求如下:增加组、删除组、修改组、查询好友、添加好友、修改好友,删除好友,退出。
通讯录好友信息包括:姓名,电话,手机,住址,性别等。
(1)通讯录的每一条信息包括姓名,电话,电话;(2)输入功能:可以一次完成若干条信息的输入;(3)显示功能:完成全部通讯录信息的显示(可现实多个好友和好友分组);(4)查找功能:完成按姓名查找通讯信息;(5)删除功能:完成按姓名删除通讯信息;(6)应提供一个界面来调用各个功能,调用界面和各个功能的操作界面应尽可能清晰美观!三、实验要求1、对系统进行功能模块分析、功能模块分析正确;2、系统设计要有经济价值,要实用;3、编程简练,可用,功能全面,具有较好的健壮性;4、系统界面外观和布局,可个性化设计,总体原则是“界面简洁、操作便捷”;5、说明书、流程图要清楚;6、应用程序打包发布。
四,设计思路1程序设计总体思路通讯录的功能模块有:(1)提供显示主界面,方便用户操作,满足需求;(2)添加:可以添加通讯录好友分组和好哦与信息,依次输入姓名、性别、手机、固定电话、地址、组别、归属组等;(3)显示:可以显示输出所有通讯录里信息;(4)查询:可以用姓名查询;(5)修改:输入欲修改的那个人的名字后,再依次输入姓名、性别、电话、手机、地址、组别、可完成修改,也可以修改组名;(6)删除:可以直接删除好友分组及里面的好友,也可以单独删除好友;(7)帮助:可以在帮助里面;程序分为多个小模块,通过调用实现各种功能,增强了程序的可建设性。
实验五 Java标准类库实验报告_电话簿代码正确完整
实验五 Java标准类库一、实验目的掌握Java标准类库的使用及集合框架的使用,使学生具备利用Java进行数据处理的能力。
二、主要仪器及耗材连接网络的计算机一台三、实验内容与步骤利用映射接口,编写一个模拟电话簿的程序,实现对联系人电话的增删改查。
要求:创建Frame,设置Frame布局,在其中创建多个Button,分别实现增删改查功能;创建一个label,用来显示结果。
四、实验注意事项1、重点掌握集合接口和映射接口的灵活运用。
2、事件处理模型的熟练运用。
五、程序运行结果界面:错误添加:添加:添加后查找:修改:修改后查找:清空:删除:删除后查找:六、代码import javax.swing.JOptionPane;import javax.swing.JPanel;import javax.swing.JFrame;import javax.swing.JTextField;import javax.swing.SwingUtilities;import java.awt.Rectangle;import javax.swing.JLabel;import javax.swing.JButton;import java.awt.Point;import java.awt.Dimension;import java.util.HashMap;import java.util.Iterator;import java.util.Set;import java.util.Map.Entry;public class Two extends JFrame {public static HashMap<String,String> callBook=new HashMap<String,String>();private static final long serialVersionUID = 1L;private JPanel jContentPane = null;private JTextField jTextField = null;private JLabel jLabel = null;private JLabel jLabel1 = null;private JTextField jTextField1 = null;private JButton jButton = null;private JButton jButton1 = null;private JButton jButton2 = null;private JButton jButton3 = null;/*** This is the default constructor*/public Two() {super();initialize();}/*** This method initializes this** @return void*/private void initialize() {this.setContentPane(getJContentPane());this.setTitle("通讯录");this.setBounds(new Rectangle(450, 250, 305, 200));}/*** This method initializes jContentPane** @return javax.swing.JPanel*/private JPanel getJContentPane() {if (jContentPane == null) {jLabel1 = new JLabel();jLabel1.setBounds(new Rectangle(50, 120, 60, 25));jLabel1.setText("电话号码");jLabel = new JLabel();jLabel.setBounds(new Rectangle(50, 75, 60, 25));jLabel.setText("姓名");jContentPane = new JPanel();jContentPane.setLayout(null);jContentPane.add(getJTextField(), null);jContentPane.add(jLabel, null);jContentPane.add(jLabel1, null);jContentPane.add(getJTextField1(), null);jContentPane.add(getJButton(), null);jContentPane.add(getJButton1(), null);jContentPane.add(getJButton2(), null);jContentPane.add(getJButton3(), null);}return jContentPane;}/*** This method initializes jTextField** @return javax.swing.JTextField*/private JTextField getJTextField() {if (jTextField == null) {jTextField = new JTextField();jTextField.setBounds(new Rectangle(130, 75, 120, 25));}return jTextField;}/*** This method initializes jTextField1** @return javax.swing.JTextField*/private JTextField getJTextField1() {if (jTextField1 == null) {jTextField1 = new JTextField();jTextField1.setBounds(new Rectangle(130, 120, 120, 25));}return jTextField1;}/*** This method initializes jButton** @return javax.swing.JButton*/private JButton getJButton() {if (jButton == null) {jButton = new JButton();jButton.setText("查找");jButton.setSize(new Dimension(60, 25));jButton.setLocation(new Point(10, 20));jButton.addActionListener(new java.awt.event.ActionListener() {public void actionPerformed(java.awt.event.ActionEvent e) {if(jTextField.getText().equals(""))JOptionPane.showMessageDialog(null,"姓名不能为空!");else{String name=jTextField.getText();if(find(name)==null)JOptionPane.showMessageDialog(null,"该联系人不存在!");else{jTextField1.setText(find(name).getValue());JOptionPane.showMessageDialog(null,"查找成功");}}}});}return jButton;}/*** This method initializes jButton1** @return javax.swing.JButton*/private JButton getJButton1() {if (jButton1 == null) {jButton1 = new JButton();jButton1.setLocation(new Point(80, 20));jButton1.setText("保存");jButton1.setSize(new Dimension(60, 25));jButton1.addActionListener(newjava.awt.event.ActionListener() {public void actionPerformed(java.awt.event.ActionEvent e) {if(jTextField.getText().equals("")||jTextField1.getText().equals(""))JOptionPane.showMessageDialog(null,"姓名和电话号码不能为空!");else{String name=jTextField.getText();String telephone=jTextField1.getText();callBook.put(name,telephone);JOptionPane.showMessageDialog(null,"保存成功");jTextField.setText("");jTextField1.setText("");}}});}return jButton1;}/*** This method initializes jButton2** @return javax.swing.JButton*/private JButton getJButton2() {if (jButton2 == null) {jButton2 = new JButton();jButton2.setLocation(new Point(150, 20));jButton2.setText("删除");jButton2.setSize(new Dimension(60, 25));jButton2.addActionListener(newjava.awt.event.ActionListener() {public void actionPerformed(java.awt.event.ActionEvent e) {if(jTextField.getText().equals(""))JOptionPane.showMessageDialog(null,"姓名不能为空!");else{String name=jTextField.getText();if(!exist(name))JOptionPane.showMessageDialog(null,"该联系人不存在!");else{callBook.remove(name);JOptionPane.showMessageDialog(null,"删除成功");}jTextField.setText("");jTextField1.setText("");}}});}return jButton2;}/*** This method initializes jButton3** @return javax.swing.JButton*/private JButton getJButton3() {if (jButton3 == null) {jButton3 = new JButton();jButton3.setLocation(new Point(220, 20));jButton3.setText("清空");jButton3.setSize(new Dimension(60, 25));jButton3.addActionListener(newjava.awt.event.ActionListener() {public voidactionPerformed(java.awt.event.ActionEvent e) {jTextField.setText("");jTextField1.setText("");}});}return jButton3;}public static void main(String[] args){SwingUtilities.invokeLater(new Runnable() {public void run() {Two thisClass = new Two();thisClass.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);thisClass.setVisible(true);}});}private static boolean exist(String name) {Set<String> set = callBook.keySet();if (set.contains(name)) {return true;}return false;}private static Entry<String, String> find(String name) { Entry<String, String> entry1 = null;if (exist(name)) {Set<Entry<String, String>> entrySet = callBook.entrySet();Iterator<Entry<String, String>> iterator =entrySet.iterator();while (iterator.hasNext()) {Entry<String, String> entry2 = iterator.next();if (entry2.getKey().equals(name)) {entry1 = entry2;break;}}}elsereturn null;return entry1;}} // @jve:decl-index=0:visual-constraint="69,35"。
java通讯录课程设计报告
课程设计报告:Java通讯录一、引言本次课程设计是关于Java通讯录的开发,旨在让我们更深入地理解Java编程语言在现实生活中的应用。
通讯录是一种常见的应用程序,它可以帮助我们管理联系人信息,方便我们与朋友和家人保持联系。
二、需求分析本次课程设计的目标是根据用户需求,设计并实现一个功能齐全的Java通讯录应用程序。
具体需求如下:用户可以添加联系人信息,包括姓名、电话号码、电子邮件地址等。
用户可以删除联系人信息。
用户可以编辑联系人信息。
用户可以按姓名、电话号码或电子邮件地址搜索联系人信息。
用户可以查看所有联系人信息。
三、设计数据库设计为了存储联系人信息,我们选择使用Java内置的ArrayList类作为数据库。
ArrayList是一个动态数组,可以根据需要自动增长。
我们将使用ArrayList的add()方法添加联系人信息,使用get()方法获取联系人信息,使用remove()方法删除联系人信息。
界面设计我们使用Java Swing库来创建用户界面。
界面包括以下组件:JLabel:显示提示信息和标题。
JTextField:用于输入和编辑联系人信息。
JButton:用于触发添加、删除、编辑和搜索等操作。
JTable:用于显示所有联系人信息。
JComboBox:用于选择搜索条件。
四、实现添加联系人信息当用户点击“添加”按钮时,程序会创建一个新的联系人对象,并将用户输入的信息设置到该对象中。
然后,程序将该对象添加到ArrayList中。
删除联系人信息当用户选择要删除的联系人并点击“删除”按钮时,程序会从ArrayList中删除该联系人对象。
编辑联系人信息当用户选择要编辑的联系人并点击“编辑”按钮时,程序会将该联系人的信息显示在文本框中,以便用户进行修改。
修改完成后,程序会将修改后的信息保存到ArrayList中。
搜索联系人信息当用户选择搜索条件并输入搜索关键字时,程序会在ArrayList 中查找符合条件的联系人对象,并将其显示在表格中。
java手机通讯录实训报告
新乡学院计算机与信息工程学院项 目 实 训 报 告2015年 12月29日项目名称手机通讯录实训报告班 级 2012级计算机科学与技术1班 学 号 姓 名 指导教师目录第一章绪论 (1)1.1项目研究背景 (1)1.2项目研究的目的及意义 (1)1.3系统主要实现内容与实现方式 (2)1.3.1系统主要实现内容 (2)1.3.2安卓系统开发的方法 (2)1.3.3 系统的开发平台 (2)1.4系统开发需用到的技术支持 (3)1.4.1 Java语言 (3)1.4.2 Android (4)第二章系统分析 (4)2.1系统可行性分析 (4)2.1.1技术可行性 (4)2.1.2经济可行性 (5)2.1.3操作可行性 (5)2.2需求分析 (5)2.2.1 Android通讯录的使用意义 (5)2.2.2外部事件 (6)第三章系统概要设计 (7)3.1系统总体设计 (7)3.2处理流程设计 (7)3.3 数据库设计 (8)3.3.1 SQLite数据库简介 (8)3.3.2 SQLite特点 (9)第四章系统详细设计 (10)4.1联系人浏览模块 (13)4.2查看联系人模块 (15)4.3编辑联系人模块 (16)4.4查找联系人模块 (17)第五章系统测试与调试 (15)5.1测试目的 (15)5.2程序调试 (16)5.3 测试的主要内容 (16)第六章总结 (16)参考文献 (17)第一章绪论1.1项目研究背景Android是一套真正意义上的开放性移动设备综合平台,它包括操作系统、中间件和一些关键的平台应用。
Android的Java程序运行环境包含一组Java核心函数库及Dalvik虚拟机,它们有效地优化了Java程序的运行过程。
Android系统平台基于优化了的Linux内核,它提供诸如内存管理、进程管理、设备驱动等服务,同时也是手机软硬件的连接层。
Android最大特点在于它是一个开放的体系架构,具有非常好的开发和调试环境,而且还支持各种可扩展的用户体验,Android里面具有非常丰富的图形系统,对多媒体的支持功能和非常强大的浏览器。
通讯录管理系统课程设计报告Java
通讯录管理系统课程设计报告Java1. 简介通讯录管理系统是一种方便用户存储和管理联系人信息的工具。
本课程设计将使用Java语言开发一个简单的通讯录管理系统,实现对联系人信息的增删改查功能。
通过本项目的实践,学习者将掌握Java编程语言的基础知识和面向对象编程的技巧。
2. 功能需求通讯录管理系统应包含以下功能: - 添加联系人信息:用户可以输入联系人的姓名、电话号码、邮箱等信息添加到通讯录中。
- 显示所有联系人信息:系统能够展示所有已保存在通讯录中的联系人信息。
- 查找联系人信息:用户可以通过姓名或电话号码查找特定联系人的信息。
- 修改联系人信息:用户可以对已保存的联系人信息进行修改。
- 删除联系人信息:用户可以删除通讯录中的联系人信息。
实现以上功能需要设计相应的数据结构和算法,以及编写用户交互界面。
3. 技术实现3.1 数据结构在Java中,可以使用ArrayList或HashMap等数据结构来存储联系人信息。
ArrayList适用于有序的联系人列表,而HashMap适用于根据键值快速查找联系人信息。
3.2 用户交互界面用户交互界面可以通过Java的Swing或JavaFX等GUI工具包来实现。
设计一个简洁明了的界面,包含菜单栏、输入框、按钮等组件,以方便用户操作。
3.3 功能实现•添加联系人信息:用户输入信息后,将联系人信息添加到数据结构中。
•显示所有联系人信息:遍历数据结构,将所有联系人信息展示在界面上。
•查找联系人信息:根据用户输入的查询条件,在数据结构中查找对应的联系人信息。
•修改联系人信息:根据用户输入的修改信息,更新数据结构中相应的联系人信息。
•删除联系人信息:根据用户输入的删除条件,从数据结构中移除对应的联系人信息。
4. 总结通讯录管理系统是一个简单实用的应用程序,能够帮助用户有效管理联系人信息。
通过本课程设计,学习者将学习如何使用Java语言开发基本的应用程序,掌握面向对象编程的基本原理和技巧。
JAVA实验通讯录 实验报告
这次实验收获非常大对第六章的加深了理解更动手实践了有关事件监听器的操作这让本来在上课时听得懵懂的内容如事件监听器的响应等理解的更深刻了书上介绍的三种布局管理器也得到了实际的应用上课时没注意到的组件也应用到了实验中
集中上机实习报告
实验题目 用java实现简单功能的学生通讯录
实验题目
用java实现简单功能的学生通讯录;
这次实验收获非常大,对第六章的加深了理解,更动手实践了 有关事件监听器的操作,这让本来在上课时听得懵懂的内容如事件 监听器的响应等理解的更深刻了,书上介绍的三种布局管理器也得 到了实际的应用,上课时没注意到的组件也应用到了实验中。总体 来说,受益匪浅。
构造了
JFrame mainFrm 为主窗口,
JTextField name 为姓名输入框,
JTextField tel 为电话输入框,
JTextField add 为地址输入框,
JList dataList 为列表组建,
String[] ming 为姓名数组,
String[] phone 为电话数组,
String[] addr 为地址数组。
在实现过程中,定义 PhoneBook 类继承了 MouseAdapter 类与 ActionListener 接口,就可以用 Book 类来实现按钮命令监听器和鼠标事件监听 器。如果出现错误操作,会在控制台出现异常,且操作无效。
JAVA通讯录实训心得--菲律宾
这次的程序实设计实验是对我们学JA V A以来学习程序设计语言结果的一次大检验。
自己动手,自己发现和解决问题。
发现了自己的许多不足。
平时没有掌握好的知识在这次实验中彻底暴露出来,经过不断思考,不断查阅资料和上机运行,解决其中大部分问题,当然还存在一些问题没有解决。
我相信在以后的学习能够解决好它们。
但是,收获还是不小的,我不仅对Java的操作有了进一步的掌握,还了解到了程序设计的书写风格及其注释的格式。
经过几天的努力,本次课程设计已圆满完成。
经过一个多星期的课程实训,完成了对通讯录系统代码的设计,收获颇多。
也明白了自己在JA V A语言上存在的一些问题,尤其在用JA V A语言编程方面存在的缺点与不足。
经过课程实训使我明白做一个完整的系统要用到我们学到的很多方面的知识,一个完整的系统包含的JA V A语言知识很多,要有好强的综合运用能力才能开发一个完整的系统。
在程序操作过程中要有耐心,更要细心。
同时,也体会到学软件专业要有好强的动手能力,而实训操作完成小系统锻炼了我的动手能力,今后,在动手操作方面要加强,毕竟熟能生巧,练多了才能提高自己的编写程序的能力。
毕竟,对于软件专业的初学者来说,起初的编程还属于经验编程,靠自己的学习及动手操作获得经验,以便为今后开发出新的程序打下基础。
在这期间,我深深地感受到设计成功的喜悦,也体味到失败的痛苦。
好在前面的学习过程中,理论知识学得比较深刻,加之老师和同学的帮助,很快适应了软件开发的流程。
课程设计确实能够锻炼一个人在遇到一个不懂的问题时候,怎样去查阅资料,使一个个疑难问题迎刃而解。
这对我以后的工作有非常大的意义。
在这次的课程设计中不仅检验了我所学习的知识,也培养了我如何去把握一件事情,如何去做一件事情,又如何完成一件事情。
在设计过程中,和同学们相互探讨,相互学习。
学会了合作,学会了运筹帷幄,学会了宽容,学会了理解,也学会了做人与处世。
课程设计是我们专业课程知识综合应用的实践训练,着是我们迈向社会,从事职业工作前一个必不少的过程.”千里之行始于足下”,通过这次课程设计,我深深体会到这句千古名言的真正含义.我今天认真的进行课程设计,学会脚踏实地迈开这一步,就是为明天能稳健地在社会大潮中奔跑打下坚实的基础。
JAVA学生通讯录实验报告
河南教育学院 Java 课题研究报告
设计名称:
ቤተ መጻሕፍቲ ባይዱ
软件课程设计
设计题目:
学生通讯录管理系统
专业班级:
12 软件技术
学生姓名: 岳文娟 冯君 李晓宁
lphone = new JLabel("电话:"); lphone.setBounds(380, 50, 40, 20); frame.getContentPane().add(lphone);
tphone = new JTextField(); tphone.setBounds(420, 50, 100, 20); frame.getContentPane().add(tphone);
JButton btnNewButton = new JButton("登录"); btnNewButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) { String username=t_username.getText(); char[] password=t_password.getPassword(); if(username==null || "".equals(username)){ JOptionPane.showMessageDialog(null, "请输入 用户名", "
public JFrame frame; private JTextField t_username; private JPasswordField t_password; public Login() {
Java编写的通讯录设计报告
班级: 10软件工程班学号: 201001041194 姓名:孙茂玮指导教师:蔡朝辉时间: 2012-06-20—2012-06-26目录1 、需求分析 (1)1.1引言 (1)1.2编写目的 (1)1.3数据流程图 (2)2 、概要设计 (3)2.1系统层次图 (3)2.2E-R图 (3)2.3视图2.4触发器2.53、总体设计 (5)3.1个人通讯录件的功能模块有 (5)4、详细设计 (6)4.1登录界面 (4)4.2菜单界面 (6)4.3添加联系人界面 (7)4.4删除联系人界面 (7)4.5查找界面 (7)4.6简介界面 .................................................................................................................... 错误!未定义书签。
5、心得体会 (5)1 需求分析1.1引言随着网络与信息技术的发展,很多陌生人之间都有了或多或少的联系。
如何更好地管理这些信息是没跟人必须面临的问题,特别是那些很久没有联系的朋友,再次见面无法马上想起关于这个人的记忆,造成一些不必要的尴尬。
基于上述种种原因,开发一套通讯录管理系统很重要,我们结合这次课程设计开发以下的通讯录管理系统方案。
1.2编写目的本系统主要是为了更好的管理每个人的通讯录,给每个人提供一个井然有序的管理平台,防止手工管理混乱,造成不必要的麻烦。
功能需求通过对自己及朋友的通讯录的询问以及了解,一个完整的通讯录管理系统应该包括:数据集模块,登录窗体模块,系统管理模块,主窗体模块,通讯录数据管理模块,信息管理模块,登录信息查询模块。
本系统主要实现我们信息的管理,包括我们平时朋友信息的添加、修改、查询和删除,及一些辅助项目的管理,如登录系统用户管理和用户组管理。
1.3 数据流程图根据要求画出相应的数据流程图为:2 概要设计2.1系统层次图2.2 E-R图2.3视图在2张表上建立视图,用于包含所有person信息,方便对于信息的查询操作视图personCreate view person1As select *From personCreate view密码1As select 密码, 用户名From 密码2.4索引索引可以根据基本表关系中的主码进行索引,同时也可以让系统自动索引2.5存储过程Create procedure insert_ person _1(@ _1 int@手机char 10@姓名 Char 10@地址char 10@电子邮件 char 10)As insert into personValues(@手机 char 10@姓名 Char 10@地址char 1o@电子邮件 char 10)Go插入入住存储过程:Exec 插入’ 111115412’’dfgsg’’fgdss’’dfgsg’2.6触发器利用存储过程“插入入住存储过程的实现”的使用自动触发触发器“自动插入用户”,此触发器建立在用户信息表中,在对客户信息表中插入操作时引发触发器。
手机通讯录实验报告及使用说明(附源代码)
手机通讯录实验报告及使用说明(附源代码)自查报告。
标题,手机通讯录实验报告及使用说明(附源代码)。
自查报告:
在进行手机通讯录实验及使用说明的撰写过程中,我仔细阅读
了实验要求,并按照要求完成了实验报告的撰写和源代码的整理。
在此过程中,我遇到了一些困难,但通过查阅资料和请教老师同学,最终顺利完成了任务。
在实验报告中,我详细描述了手机通讯录的功能和使用方法,
包括添加联系人、查找联系人、编辑联系人信息、删除联系人等操作。
我还附上了源代码,并对关键部分进行了解释和注释,以便他
人能够理解和使用。
在整个实验过程中,我学习到了许多关于手机通讯录的知识,
包括数据库的设计和操作、用户界面的设计和实现等。
通过动手实践,我加深了对这些知识的理解,并提升了自己的编程能力。
在撰写实验报告的过程中,我也注意到了一些自己的不足之处,比如在代码注释和格式上还有待改进。
因此,我会继续努力学习,
不断提升自己的编程水平和文档撰写能力。
总的来说,通过这次实验和撰写实验报告,我收获颇丰,不仅
掌握了手机通讯录的设计和实现方法,还提升了自己的综合能力。
我会继续努力,为以后更多的实验和项目做好准备。
自查人,XXX。
日期,XXXX年XX月XX日。
java通讯录实训报告
JA V A课程设计报告题目:通讯录小系统学院:软件学院姓名:凌嘉俊学号:20112009专业:软件工程班级:软件 1115指导教师:邓泓职称:讲师二0一二年12 月摘要随着计算机的普及,将通讯方式保存在计算机内已代替了纸质的通讯录。
通讯录保存在计算机中,便于分组,还便于增加、修改、删除好友信息。
于是我用java语言编写了一个饥饿完成以上功能的通讯录。
是在jdk环境笑进行运行的。
因不会数据库所以在其中用的是数组存储的。
目录绪论 (4)2.需求分析 (4)2.1系统功能说明 (4)3.系统设计及说明 (12)3.1流程图 (12)4.总结 (15)致谢 (15)绪论本程序在jdk环境中运行,用Elicpse 编译。
达到增加组,修改组名,删除组,添加好友,删除好友,修改好友,查询好友。
且在主界面上可以显示组名,好友名,可以刷新。
2.需求分析2.1系统功能说明1.主界面模块能出现菜单,有组操作,好友操作,帮助。
以及一个不可编辑的文本域来显示组名和好友。
有刷新按钮和退出按钮。
2.组操作模块对组进行添加,删除,修改。
//添加成功分别添加:同学、家人组;c、删除组Eg:删除同学删除成功d、修改组名(增加了一个新同学组)将同学改为朋友修改成功3.好友操作对好友进行添加,删除,查询,修改等功能。
原界面分别每个组加两个个好友Eg:添加好友成功f、查询好友Eg:查询家人里面的张一原界面查询朋友里面的王二查询成功,两个好友的信息与添加一样。
g、修改好友Eg:修改家人组的张一原界面修改朋友组的王二修改后的好友信息界面与前面没有修改后的好友信息的界面相比。
修改成功。
h、删除好友 Eg:删除家人组的张二 删除朋友组的李四删除好友后的界面与原界面对比。
删除成功!注:以上界面:1.各个模块的功能及程序说明;2.实验结果;3.显示界面。
3.系统设计及说明3.1流程图1.主界面流程图2.增加组流程图3.删除组主界面模块组操作模块好友操作模块增加组删除组修改组名查询好友添加好友查询好友删除好友增加组开始输入数据存储数据点击增加按钮输入数据删除组开始4.修改组5.增加好友6存储数据点击删除按钮输入数据原组名新组名存储数据点击删除按钮修改组开始输入数据存储数据点击增加按钮增加好友开始删除好友开始7.查询好友8.修改好友输入数据存储数据点击删除按钮输入数据好友信息界面点击查询按钮查询好友开始输入数据好友信息界面点击查询按钮查询好友开始存储数据点击修改按钮3.2系统说明1.先添加组,才可以添加好友。
JAVA通讯录(内含源代码)
JA V A课程设计实验报告学校:农业大学班级:软件1115班:朱利斌学号:20111976课程:JA V A通讯录指导教师:邓老师2012.12.29一、设计目的本课程设计是java语言学习中很重要的实践性环节之一,是在学习完java 课程后进行的一次全面的综合练习旨在巩固和加深我们对java语言的基本知识的理解和掌握,掌握java语言编程和程序调试的基本技能,利用java语言进行基本的软件设计,掌握书写程序设计说明文档的能力,提高运用java语言解决实际问题的能力。
1、掌握类的定义及应用方法2、掌握对象的创建方法,了解实例变量、实例方法和静态字段的特征3、体会java在中类和对象的面向对象的设计思想二、实验容本次课程设计是开发一个简易的、小型的通讯录,我们命名为“通讯录”。
通讯录保存在计算机中,便于分组,还便于增加、修改、删除好友信息。
设计一个通讯录管理软件,要求如下:增加组、删除组、修改组、查询好友、添加好友、修改好友,删除好友,退出。
通讯录好友信息包括:,,手机,住址,性别等。
(1)通讯录的每一条信息包括,,;(2)输入功能:可以一次完成若干条信息的输入;(3)显示功能:完成全部通讯录信息的显示(可现实多个好友和好友分组);(4)查找功能:完成按查找通讯信息;(5)删除功能:完成按删除通讯信息;(6)应提供一个界面来调用各个功能,调用界面和各个功能的操作界面应尽可能清晰美观!三、实验要求1、对系统进行功能模块分析、功能模块分析正确;2、系统设计要有经济价值,要实用;3、编程简练,可用,功能全面,具有较好的健壮性;4、系统界面外观和布局,可个性化设计,总体原则是“界面简洁、操作便捷”;5、说明书、流程图要清楚;6、应用程序打包发布。
四,设计思路1程序设计总体思路通讯录的功能模块有:(1)提供显示主界面,方便用户操作,满足需求;(2)添加:可以添加通讯录好友分组和好哦与信息,依次输入、性别、手机、固定、地址、组别、归属组等;(3)显示:可以显示输出所有通讯录里信息;(4)查询:可以用查询;(5)修改:输入欲修改的那个人的名字后,再依次输入、性别、、手机、地址、组别、可完成修改,也可以修改组名;(6)删除:可以直接删除好友分组及里面的好友,也可以单独删除好友;(7)帮助:可以在帮助里面;程序分为多个小模块,通过调用实现各种功能,增强了程序的可建设性。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
集中上机实习报告实验题目用java实现简单功能的学生通讯录实验题目用java实现简单功能的学生通讯录;需求分析和系统设计需求分析要实现的功能分析:通过题目可知要设计一个学生通讯录,要求实现简单的通信录管理,能够输入通信录卡片(实现增、删、改等功能),能够分组,并能够实现按名字(或其他方式)查询功能;实现界面:可以是DOS界面,功能按提示方式输入实现;可以是Windows界面,功能用菜单形式,输入界面用对话框形式。
概要设计为了实现实现通讯录界面,需要完成对电话簿的添加,删除,修改功能,因此只需要完成对这三个按钮事件的处理。
这三个按钮同样可以用一个监听器类来实现事件的监听。
区分他们的方法同样是根据按钮标题的不同来区分,当鼠标单击列表组件时,显示不同人员的联系信息,所以需要为列表组件添加鼠标事件监听器。
算法分析在实现功能时只用了简单的面向对象的设计方法,在处理多个按钮事件时,区分按钮的关键是按钮的标题区分,我用了按钮命令事件处理,并用if else 来区分“添加”,“删除”,“修改”这三个按钮。
界面上放入一个列表主件,一个“姓名:”的标签和一个输入姓名的编辑框,一个“电话:”的标签和一个联系电话的编辑框,一个“地址:”的标签和一个地址的编辑框,还有“添加:”、“删除:”、“修改:”等按钮,及对mouseClicked 事件的监听类。
构造了JFrame mainFrm 为主窗口,JTextField name 为姓名输入框,JTextField tel 为电话输入框,JTextField add 为地址输入框,JList dataList 为列表组建,String[] ming 为姓名数组,String[] phone 为电话数组,String[] addr 为地址数组。
在实现过程中,定义PhoneBook类继承了MouseAdapter类与ActionListener接口,就可以用Book类来实现按钮命令监听器和鼠标事件监听器。
如果出现错误操作,会在控制台出现异常,且操作无效。
模块划分与说明学生表流程图1,进入通讯录后先在姓名输入框内输入姓名如xx,在电话输入框内输入联系电话,在地址输入框内输入地址;2,点击“添加”按钮,姓名xx出现在面板左侧的列表中;3,(1)继续1,2,步骤可向学生通讯录中添加更多学生信息如yy;(2)可对已添加的学生信息进行修改,如将xx的电话号改变:在列表中点击xx姓名,对xx信息进行修改,最后点击“修改”按钮,修改后的信息被保存;(3)可对已添加的学生信息进行删除操作,如将xx的信息删除:在列表中点击xx姓名,然后点击“删除”按钮,即可将学生信息删除;总体图:流程图:添加模块流程图:程序源代码package通讯录;import java.awt.*;import java.awt.event.*;import javax.swing.*;class Book extends MouseAdapter implements ActionListener {public static final int WIDTH=600;public static final int HIGTH=400;JFrame mainFrm;JTextField name;JTextField tel;JTextField add;JList dataList;String[] ming;String[] phone;String[] addr;int n=0;void book(){mainFrm=new JFrame();mainFrm.setTitle("学生通讯录");mainFrm.setSize(500,300);mainFrm.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); Container contentPane=mainFrm.getContentPane();ming=new String[10];phone=new String[10];addr=new String[10];dataList=new JList(ming);dataList.setSelectedIndex(1);dataList.getSelectedValue();JPanel P1=new JPanel();JPanel P2=new JPanel();JPanel P3=new JPanel();P1.setSize(400,200);contentPane.add(P1,BorderLayout.WEST); contentPane.add(P2,BorderLayout.CENTER); contentPane.add(P3,BorderLayout.NORTH);P1.add(dataList);P2.setLayout(new GridLayout(3,1));JLabel l1=new JLabel("姓名:");name=new JTextField();JLabel l2=new JLabel("电话:");tel=new JTextField();JLabel l3=new JLabel("地址:");add=new JTextField();P2.add(l1);P2.add(name);P2.add(l2);P2.add(tel);P2.add(l3);P2.add(add);JButton b=new JButton("添加");b.addActionListener(this);P3.add(b);b=new JButton("删除");b.addActionListener(this);P3.add(b);b=new JButton("修改");b.addActionListener(this);P3.add(b);dataList.addMouseListener(this);mainFrm.setVisible(true);}public void actionPerformed(ActionEvent e) {if(e.getActionCommand()=="添加"){n++;ming[n]=name.getText();phone[n]=tel.getText();addr[n]=add.getText();dataList.setListData(ming);}else if(e.getActionCommand()=="删除") {int t=dataList.getSelectedIndex();for(int i=t;i<=n;i++){ming[i]=ming[i+1];phone[i]=phone[i+1];addr[i]=addr[i+1];}n--;name.setText("");tel.setText("");add.setText("");dataList.setListData(ming);}else if(e.getActionCommand()=="修改"){int t=dataList.getSelectedIndex();ming[t]=name.getText();phone[t]=tel.getText();addr[t]=add.getText();dataList.setListData(ming);}}public void mouseClicked(MouseEvent e){int i=dataList.locationToIndex(e.getPoint());name.setText(ming[i]);tel.setText(phone[i]);add.setText(addr[i]);}}public class Tongxunlu {/*** @param args*/public static void main(String[] args) {Book h=new Book();h.book();}}结果截图初始窗口:添加:继续添加:删除:修改:实验心得Java布局管理是新学的内容,因为对窗口感兴趣,所以写代码的时候也不觉得烦躁,借鉴了书上的内容,构造框架窗口时使用了javaw.swing包,构造了主框架MainFrm;用JLabel(“”)设置了三个标签,分别为:“姓名”“电话”“地址”;并使用了JTextField进行单行文本输入;对“添加”“删除”“修改”这三个功能选项,则导入了java.awt包,与java.awt.event包,使用了JBonton进行按钮设置,并对这三个按钮进行addMouseListener监听,当发生mouseClicked事件时,事件监听器会传递给容器进行处理;列表我使用了列表框组件JList,并将学生姓名添加在列表中,本来想用组合框组件JComboBox,觉得这样比较节省空间,但想到这样不方便根据姓名查询,所以还是用了列表框组件。
我的总布局管理器使用的是边界布局管理器,在五个位置中,我选择了WEST,CENTER和NORTH这三个面板分别放了列表组件,输入面板与按钮面板。
输入面板使用了网格布局管理器GirdLayout(3,1)使输入呈三行一列;按钮面板则是用的流布局管理器(默认)依次为“添加”“删除”“修改”。
这次实验收获非常大,对第六章的加深了理解,更动手实践了有关事件监听器的操作,这让本来在上课时听得懵懂的内容如事件监听器的响应等理解的更深刻了,书上介绍的三种布局管理器也得到了实际的应用,上课时没注意到的组件也应用到了实验中。
总体来说,受益匪浅。