java基础语法_客户信息管理系统

本文档详述了一个基于文本界面的《客户信息管理软件》的实现,涵盖面向对象编程、数组操作、类结构和封装。软件包括CustomerView、CustomerList和Customer类,实现了添加、修改、删除和查看客户信息的功能。CMUtility类提供了键盘访问的辅助方法。
摘要由CSDN通过智能技术生成

目 标

模拟实现一个基于文本界面的《客户信息管理软件》  进一步掌握编程技巧和调试技巧,熟悉面向对象编程  主要涉及以下知识点:

类结构的使用:属性、方法及构造器

对象的创建与使用

类的封装性

声明和使用数组

数组的插入、删除和替换

关键字的使用:this

需求说明 

模拟实现基于文本界面的《客户信息管理软件》。 该软件能够实现对客户对象的插入、修改和删除(用数组实现),并能够打印客户明细表。 项目采用分级菜单方式。主菜单如下:

             -----------------客户信息管理软件-----------------

                                     1 添 加 客 户                        

                                     2 修 改 客 户                      

                                     3 删 除 客 户                    

                                     4 客 户 列 表                  

                                     5 退           出                    

                                    请选择(1-5):_ 

要求:

每个客户的信息被保存在Customer对象中。

以一个Customer类型的数组来记录当前所有的客户。

每次“添加客户”(菜单1)后,客户(Customer)对象被添加到数组中。

每次“修改客户”(菜单2)后,修改后的客户(Customer)对象替换数组中原对象。

每次“删除客户”(菜单3)后,客户(Customer)对象被从数组中清除。

执行“客户列表 ”(菜单4)时,将列出数组中所有客户的信息。

“添加客户”的界面及操作过程如下所示:

                ……            

       请选择(1-5):1

---------------------添加客户---------------------

姓名:佟刚

性别:男

年龄:35

电话:010-56253825

邮箱:tongtong@atguigu.com

---------------------添加完成---------------------

“修改客户”的界面及操作过程如下所示:

                ……            

       请选择(1-5):2

---------------------修改客户---------------------

请选择待修改客户编号(-1退出):1

姓名(佟刚):<直接回车表示不修改>

性别(男):

年龄(35): 电话(010-56253825):

邮箱(tongtong@atguigu.com):tongg@atguigu.com

---------------------修改完成---------------------

“删除客户”的界面及操作过程如下所示:   

             ……            

       请选择(1-5):3

---------------------删除客户---------------------

请选择待删除客户编号(-1退出):1

确认是否删除(Y/N):y

---------------------删除完成---------------------

“客户列表”的界面及操作过程如下所示:         

        ……                  请选择(1-5):4

---------------------------客户列表---------------------------

编号   姓名       性别    年龄         电话                   邮箱  

1        佟刚         男        45     010-56253825   tong@abc.com  

2        封捷         女        36     010-56253825   fengjie@ibm.com  

3        雷丰阳     男        32      010-56253825   leify@163.com

-------------------------客户列表完成-------------------------

软件设计结构

该软件由以下三个模块组成:

CustomerView为主模块,负责菜单的显示和处理用户操作

CustomerList为Customer对象的管理模块,内部用数组管理一组Customer对象,并提供相应的添加、修改、删除和遍历方法,供CustomerView调用

Customer为实体对象,用来封装客户信息

项目简图

 enterMainMenu()方法的活动图(主菜单)

 

键盘访问的实现

项目中提供了CMUtility.java类,可用来方便地实现键盘访问。

该类提供了以下静态方法:

public static char readMenuSelection()   

用途:该方法读取键盘,如果用户键入’1’-’5’中的任意字符,则方法返回。返回值为用户键入字符。

public static char readChar() 和 public static char readChar(char defaultValue)     

用途:这两个方法功能相同,均从键盘读取一个字符,并将其作为方法的返回值。      

参数: defaultValue — 如果用户不输入字符而直接回车,方法将以defaultValue 作为返回值。

(提示:此方法可在修改客户时调用)

public static int readInt() 和public static int readInt(int defaultValue)     

用途:这两个方法功能相同,均从键盘读取一个长度不超过2位的整数,并将其作为方法的返回值。      

参数: defaultValue — 如果用户不输入字符而直接回车,方法将以defaultValue 作为返回值。

public static String readString(int limit)  和     

public static String readString(int limit, String defaultValue)     

用途:这两个方法功能相同,均从键盘读取一个长度不超过limit的字符串,并将其作为方法的返回值。     

参数:limit — 指定字符串的最大长度                   

defaultValue — 如果用户不输入字符而直接回车,方法将以defaultValue 作为返回值。

public static char readConfirmSelection()     

用途:从键盘读取‘Y’或’N’,并将其作为方法的返回值。

工具类CMUtility.java类,代码区:

(注意,如果认为自己有能力的,可以尝试自己编写工具类,然后应用于其他类中。

建议初学者,在看不懂具体内容的时候,只尝试应用方法就行,在逐渐学习中,会慢慢

D大调奏鸣曲_第七序章_
关注 关注
  • 3
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
Java基础项目——客户信息管理软件
weixin_45676761的博客
08-08 1714
本文主要介绍Java基础项目——客户信息管理软件(附完整源代码)。本项目是为了让初学者进一步掌握编程技巧和调试技巧,初步体会面向对象编程的好处,同时对前面所学的数组及其他基础知识进行巩固。
客户信息管理系统项目实现(面向对象之前所有内容总结)
fool_Java的博客
07-28 450
面向对象前面的三分之一的知识,加上面向对象之前学的结合一起写的,不会就多写几遍就行,用心思考
GDB使用教程
蓬莱道人的博客
03-07 7830
1、GDB介绍 2、debug和release的区别(参考) 3、基本使用hello world(参考) 4、GDB调试命令总结(参考) 5、在cmake中使用GDB 1、GDB介绍 GDB是GNU开源组织发布的一个强大的UNIX下的程序调试工具。或许,各位比较喜欢那种图形界面方式的,像VC、BCB等IDE的调试,但如果你是在UNIX平台下做软件,你会发现GDB这个调试工具有比...
Java-客户信息管理系统(入门项目)
ssigin的博客
06-12 1403
面向对象的简单应用
项目:客户信息管理系统
m0_47599156的博客
04-06 562
项目:客户信息管理系统
Java-design-code.rar_java 学籍管理 系统_学生 学籍 信息 管理 系统_学生信息管理系统 JAVA_
09-23
通过这个学生学籍管理系统,初学者不仅可以学习到基本的Java语法和面向对象编程,还能深入了解数据库管理、GUI编程、文件操作、设计模式等多方面的知识。同时,实际项目的开发经验有助于提升解决实际问题的能力和...
教务管理系统demo-java.zip_java 教务_java教务管理_教务 java_教务系统_管理系统
09-20
【标签】中涉及的关键词包括"java_教务"、"java教务管理"、"教务_java"、"教务系统"和"管理系统",这些标签进一步强调了系统的语言基础和功能特点。Java是一种多平台的、面向对象的编程语言,因其稳定性和跨平台性而...
SRS.rar_java 学生管理系统_java 数据库 学生_srs_学生管理_学生管理系统
09-20
这涉及到JAVA基础语法、面向对象编程、异常处理、多线程以及集合框架等知识。 接着,我们关注"数据库_学生"这一标签。数据库是存储和管理数据的关键组件,对于学生管理系统来说,通常会选择关系型数据库如MySQL、...
java_database.rar_java 学生管理系统_学生管理系统_学生管理系统 Java_数据库 代码 java_管理系
09-23
在这个项目中,开发者可能使用了Java基础语法、类、对象、异常处理等概念来编写程序。 2. **数据库操作**:系统可能使用了SQL(Structured Query Language)来与数据库交互,包括创建、读取、更新和删除数据...
JAVA图书馆书库管理系统论文_java管理系统_java图书馆_JAVA图书馆书库管理系统论文_管理系统java_图书管理系统
10-04
通过以上技术的综合运用,一个完善的Java图书馆书库管理系统可以实现图书馆资源的有效管理和高效服务,同时为用户提供便捷的信息获取途径。在实际开发过程中,开发者还需要根据具体需求进行功能定制和系统扩展,以...
JAVA基础学习笔记(5):客户信息管理系统
LeavingBook的博客
06-21 1226
本周根据之前学习的一些知识,仿照视频中的内容,完成了一个客户信息管理系统。(未连接数据库,只支持单次使用) 1 功能展示 1.1 添加用户与客户列表 1.2 修改用户 1.3 删除用户 1.4 退出 2 类的设计 项目中主要设计三个类。 Customer客户的实体,用来封装客户的信息。 CustomerList为Customer对象的管理类,内部是通过一个对象数组对其中的Customer对象进行管理。 CustomerView负责视图部分,调用CustomerList来进行增删改查的操作。
第9章 Java异常处理
MObaiYUhai的博客
09-17 534
5、把键盘输入工具类TSUtility添加到项目中 直接将提供的TSUtility.java文件拷贝到com.atguigu.util包中,发现需要修改包名。 第二发现出现乱码,因为提供的文件是UTF-8格式的,如果你默认的项目字符编码为GBK的话,就会乱码,解决办法可以用记事本打开TSUtility.java文件,把代码复制到eclipse中。或者修改项目的字符编码为UTF-8,不过设置项目...
Java基础练习项目(三)开发团队人员调度软件
weixin_45685225的博客
05-09 917
Java基础练习项目,模拟实现一个基于文本界面的《开发团队人员调度软件》,熟悉Java面向对象的高级特性。
Java学习笔记(六)
weixin_40683302的博客
12-01 711
Java学习笔记(六) 最近写了一个关于家庭记账的程序,从中遇到了一些问题,在这里总结一下。 记账的两个最核心的指标: 1.余额随着每次的支出或者收入在变化; 2.输出明细要记录每一次的支出和收入,并且列出来。 第一个问题好解决,用一个int变量进行迭代就行。 第二个问题就很难解决了,因为没有想到用String类型的变量自加,主要一个原因就是一开始就没考虑过把所有明细赋给一个变量; 下面附上代码与...
尚学堂 实战java程序设计 第3、4章课后题答案
AlanLee97的博客
10-14 4482
尚学堂 实战java程序设计 第3、4章课后题答案 第3章 一、选择题 1.A 2.BD 解析:switch的的判断表达式的数据类型:byte short int char 3.A 解析:0+3+5=8 4.BD 解析:函数重载时对返回数据类型不做检查,但形参数量或类型必须变化,B和原函数是同一函数,D中形参数据个数和类型和原函数相同 5.B 解析:非静态变量,形参并不影响实参. 二、简答...
简单的客户管理java项目(可以让初学者得到快乐的项目,简单好玩)
全宇宙超级无敌月光霹雳老少女
06-14 284
第一个类是输入输出的工具类: package com.hy.object.customerMessageManagement; import java.util.*; public class CMUtility { private static Scanner scanner = new Scanner(System.in); public static char readMenuSelection() { char c; for (; ; ) .
JAVA基础小项目1
修电脑的猫的博客
06-04 486
客户信息管理系统 1.Customer 构造器和get,set方法 public class Customer { private String nameString; private char gender; private int age; private String phone; private String email; public String getNameString() { return nameString; } public void setNameString(
java复习笔记 day03
qq_30657195的博客
09-21 359
1. API的使用: Myeclipse环境下,按住Ctrl键,左双击方法名,可跳转至JDK库。 2. 数组对象: 对象名称:Arrays ,所在包:java.util.Arrays; 3.数组常见异常: 下标越界。ArrayIndexOutOfBoundsException 空指针异常。NullPointerException 4.对象的内存解析; 对象名:存在栈里面。 对象的属性:存在堆里面。...
第三周总结
cencen666的博客
03-21 140
2021.3.14-2021.3.21总结 目录 一、java学习 继承性 方法重写 java版管理系统 二、算法 A - Crossing River B - Oil Deposits 一、java学习 1.继承性 (1)好处: 1.减少代码的冗余,提高代码复用性 2. 便于功能展示 3. 为以后多态性的学习提供前提 (2)格式: class A extends B{ } A : 子类、派生类、subclass; B : 父类、超类、基类、superclass ps: 体现:一旦子类A
Java Swing实现学生信息管理系统教程与源码
资源摘要信息:"基于java+swing学生信息管理系统是一个使用Java语言结合Swing图形用户界面库开发的学生信息管理应用。Swing是Java的一部分,提供了一套丰富的GUI组件,可用来构建跨平台的图形用户界面。该系统包含了...
写文章

热门文章

  • java IO流 83841
  • java_反射_ 29966
  • 【数据结构】_树与二叉树 23587
  • java__《集合》 17280
  • java项目三——图书馆管理系统(数据库mysql版本) 12083

分类专栏

  • javaSE 29篇
  • JavaWeb 11篇
  • 数据库 7篇
  • java框架 4篇
  • 设计模式 6篇
  • 数据结构 1篇

最新评论

  • java IO流

    ice___Cpu: 大佬的文章让我对这领域的技术问题有了更深入的了解,尤其是大佬提到的那些“坑点”,我相信能够在实际应用中避免或解决很多问题。谢谢大佬的分享,期待大佬的更多精彩文章,让我们共同学习、进步。

  • java项目三——图书馆管理系统(数据库mysql版本)

    就叫鸮鸮吧: rose

  • java IO流

    goyeer(工蚁): 伏阁受读,获益匪浅。盼君移步至鄙人之博客,斧正我这菜鸟的粗鄙之言,班门弄斧之技。

  • Java_Mybatis(Dao层_框架)

    秋名山小白: 大佬 持久层框架是什么意思

  • javaSE_《图书馆管理系统》_

    a20020416: 可以再求一个链接吗博主

大家在看

  • 真题练习30-Excel电子表格-全国计算机等级考试一级计算机基础及MS Office应用考试【汪老师的个人课堂】 155
  • 掌握Windows管理利器:WMI命令实战
  • 自定义类型:结构体【下】 944
  • 智能农业气象站
  • string类,难吗?这不简简单单! 1199

最新文章

  • _整合SSM框架_
  • Java_SpringMVC_(web层 框架)
  • Java_Spring(Service层、Dao层 框架)
2022年17篇
2021年42篇

目录

目录

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值

玻璃钢生产厂家玻璃钢雕塑加工公司哪家好建邺商场新春美陈金华景观玻璃钢雕塑河南节庆商场美陈怎么样许昌玻璃钢动物雕塑生产厂家通用玻璃钢雕塑摆件定制苏州蛋型玻璃钢花盆广州玻璃钢抽象人物雕塑价格宣城玻璃钢雕塑浮雕厂家石家庄学校玻璃钢雕塑公司玻璃钢雕塑张家口上海商场美陈门头鹤壁佛像玻璃钢雕塑厂家湖州商场美陈费用黔西南商场美陈道具设计玻璃钢鹿雕塑免费咨询南阳玻璃钢广场雕塑曲阳玻璃钢动物雕塑厂家推荐商场双旦美陈布置图片梅州主题玻璃钢雕塑定制价格湛江古代玻璃钢雕塑超市商场美陈生产厂家现货玻璃钢雕塑玻璃钢雕塑加工厂多少钱玻璃钢九尾狐雕塑山东商业商场美陈有哪些綦江玻璃钢雕塑贵州仿铜玻璃钢雕塑设计四川中庭商场美陈报价河南景区玻璃钢雕塑联系方式香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声单亲妈妈陷入热恋 14岁儿子报警汪小菲曝离婚始末遭遇山火的松茸之乡雅江山火三名扑火人员牺牲系谣言何赛飞追着代拍打萧美琴窜访捷克 外交部回应卫健委通报少年有偿捐血浆16次猝死手机成瘾是影响睡眠质量重要因素高校汽车撞人致3死16伤 司机系学生315晚会后胖东来又人满为患了小米汽车超级工厂正式揭幕中国拥有亿元资产的家庭达13.3万户周杰伦一审败诉网易男孩8年未见母亲被告知被遗忘许家印被限制高消费饲养员用铁锨驱打大熊猫被辞退男子被猫抓伤后确诊“猫抓病”特朗普无法缴纳4.54亿美元罚金倪萍分享减重40斤方法联合利华开始重组张家界的山上“长”满了韩国人?张立群任西安交通大学校长杨倩无缘巴黎奥运“重生之我在北大当嫡校长”黑马情侣提车了专访95后高颜值猪保姆考生莫言也上北大硕士复试名单了网友洛杉矶偶遇贾玲专家建议不必谈骨泥色变沉迷短剧的人就像掉进了杀猪盘奥巴马现身唐宁街 黑色着装引猜测七年后宇文玥被薅头发捞上岸事业单位女子向同事水杯投不明物质凯特王妃现身!外出购物视频曝光河南驻马店通报西平中学跳楼事件王树国卸任西安交大校长 师生送别恒大被罚41.75亿到底怎么缴男子被流浪猫绊倒 投喂者赔24万房客欠租失踪 房东直发愁西双版纳热带植物园回应蜉蝣大爆发钱人豪晒法院裁定实锤抄袭外国人感慨凌晨的中国很安全胖东来员工每周单休无小长假白宫:哈马斯三号人物被杀测试车高速逃费 小米:已补缴老人退休金被冒领16年 金额超20万

玻璃钢生产厂家 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化