计算机类教材 > 算法与程序设计

Java程序设计案例教程

书号:9787113265809 套系名称:普通高等院校计算机教育“十三五”规划教材

作者:朱薇 出版日期:2021-07-01

定价:39.80 页码 / 开本: /16

策划编辑:潘晨曦 责任编辑:汪敏 徐盼欣

适用专业:计算机教材 适用层次:本科

最新印刷时间:2023-01-16

资源下载
教学课件 教学素材
习题答案(暂无) 教学案例(暂无)
教学设计(暂无) 教学视频(暂无)
内容简介 前言 目录 作者介绍 图书特色
  • 本书是编者多年教学经验的总结。本书通过丰富的案例,由浅入深、循序渐进地介绍了采用Java进行案例开发的方法,从而帮助读者快速掌握Java开发技术,并将其应用于实际项目中。
    
    本书共11章,从Java历史、部署、开发环境讲起,详细讲述了字符串、编程基础语法、控制语句、类与对象、集合、数组、继承和多态、接口、异常,同时结合每章的知识点介绍相关的案例,加深对知识点的理解。在练习题中设计举一反三的实验操作题,结合各章案例进行更加深入和透彻的应用。在第11章,使用了新技术JavaFX的开发方式,对图形、UI控件、事件处理等进行综合设计,使读者深刻体会GUI开发的各个环节,提高综合开发能力和实际动手能力。
    
    本书适合作为高等院校相关专业的教材,也可作为软件设计从业人员的参考用书。
    
    
    
  • 本书受厦门理工学院资助,属厦门理工学院教材建设基金资助项目的校企共建教材,编写过程中结合校企双方特长,相互协作完成书中的各个章节与案例设计。同时受厦门理工学院2019年教育教学改革研究项目JG2019048“基于OBE理念与智慧教学的细粒度符合应用人才培养模式探究”的支持。
    
    本书根据学生学习Java过程进行设计,修改常规教学章节,将字符串章节提前学习,将集合放置在数组之前,旨在便于后续代码的理解,前后章节能够有顺序性和延续性。本书案例设计源自实际生活,易于阅读与理解。针对每个案例精心设计涉及的知识点,在知识点上做详尽分析及陷阱知识设计,练习题中的实验操作题贴近章节内容,举一反三,有助于思维拓展。引入JavaFX进行GUI设计,前沿性强,案例拓展性好。
    
    本书共分为11章:第1章主要从Java历史、部署、开发环境讲起,由浅入深、详细讲述Java程序的基本概念和使用;第2章从4个不同维度的字符串案例展开,讲解了字符串的多个知识点及知识陷阱;第3章详细讲述数据类型、变量、表达式等基本语法的应用;第4章主要讲述了选择、循环、中断3种控制语句的使用;第5章详细讲述了类与对象的知识,并通过案例介绍两者的关系;第6章讲述了常用集合,并设计了相应案例;第7章对数组和二维数组做了详细介绍,设计相关案例深入理解;第8章重点介绍了继承和多态的关系,案例设计中偏向继承中的权限调取;第9章详细介绍接口与多态的关系,重点使用Comparable和Comparator设计了不同的排序案例;第10章重点阐述异常类、异常传播方式和异常处理机制;第11章使用了新技术JavaFX的开发方式,从图形到UI控件、事件处理等方面进行案例设计。
    
    本书建议学时为64学时,理论与实验1∶1安排,第1章建议4学时,第2章至第11章建议每章各6学时。
    
    本书涉及的所有案例均可在JDK 1.8以上版本和Eclipse或IDEA开发环境中开发。
    
    本书由朱薇担任主编,负责拟定编写大纲、组织协调并定稿;由郑晓东担任副主编。具体编写分工如下:第1章至第8章由朱薇编写,第9章至第11章由郑晓东编写。在本书的编写过程中得到了厦门理工学院、厦门鑫微思科技有限公司的大力支持和帮助,公司成员宁庆彬协助设计案例,同时感谢厦门理工学院软件工程学院副院长肖伟东、副书记薛彬及多位教师所提出的宝贵意见和建议,另外感谢集美大学郑如滨给予的悉心指导和帮助,感谢龙岩学院余少勇对全书统稿工作进行的指导,在此一并表示衷心的感谢。
    
    由于编者水平有限,加之时间仓促书中疏漏与不妥之处在所难免,恳请读者批评指正。
    
     
    
    编  者   
    
    2021年3月
    
  • 第1章  Java开发入门························· 1
    
    1.1  Java概述··· 1
    
    1.1.1  Java的定义··· 1
    
    1.1.2  Java的特点··· 2
    
    1.1.3  Java开发环境··· 2
    
    1.2  案例··· 6
    
    1.2.1  Hello Gosling!··· 6
    
    1.2.2  难看的程序··· 8
    
    小结··· 10
    
    练习题··· 10
    
    第2章  字符串··································· 13
    
    2.1  String类··· 13
    
    2.2  案例··· 14
    
    2.2.1  Dreams· 14
    
    2.2.2  编辑工作··· 16
    
    2.2.3  马拉松··· 17
    
    2.2.4  比一比··· 19
    
    小结··· 23
    
    练习题··· 23
    
    第3章  Java编程基础······················· 26
    
    3.1  标识符与关键字··· 26
    
    3.1.1  标识符··· 26
    
    3.1.2  关键字··· 27
    
    3.2  数据类型··· 27
    
    3.2.1  整型类型··· 28
    
    3.2.2  浮点数类型··· 28
    
    3.2.3  字符类型··· 29
    
    3.2.4  布尔类型··· 29
    
    3.3  变量与常量··· 30
    
    3.3.1  变量··· 30
    
    3.3.2  常量··· 32
    
    3.4  表达式··· 32
    
    3.4.1  运算符与表达式··· 33
    
    3.4.2  优先级··· 36
    
    3.5  案例··· 36
    
    3.5.1  精算师··· 36
    
    3.5.2 任意圆··· 41
    
    小结··· 42
    
    练习题··· 43
    
    第4章  控制语句······························· 46
    
    4.1  选择结构··· 46
    
    4.1.1  if语句··· 46
    
    4.1.2  if-else语句··· 47
    
    4.1.3  switch语句··· 48
    
    4.2  循环结构··· 50
    
    4.2.1  while循环··· 50
    
    4.2.2  do-while循环··· 51
    
    4.2.3  for循环··· 53
    
    4.2.4  for-each循环··· 54
    
    4.3  中断语句··· 54
    
    4.3.1  return语句··· 54
    
    4.3.2  break语句··· 56
    
    4.3.3  continue语句··· 56
    
    4.4  案例··· 57
    
    4.4.1  评委··· 57
    
    4.4.2  金字塔··· 58
    
    4.4.3  常胜将军··· 59
    
    小结··· 61
    
    练习题··· 61
    
    第5章  类与对象······························· 63
    
    5.1  初识面向对象程序··· 63
    
    5.1.1  面向对象的程序设计··· 63
    
    5.1.2  面向对象的特征··· 64
    
    5.2  类··· 65
    
    5.2.1  类的定义··· 65
    
    5.2.2  变量类型··· 66
    
    5.2.3  可见性修饰符··· 67
    
    5.2.4  封装··· 67
    
    5.2.5  访问器和修改器··· 67
    
    5.3  对象··· 68
    
    5.3.1  对象引用变量··· 68
    
    5.3.2  new语句··· 69
    
    5.3.3  构造函数··· 70
    
    5.3.4  toString()方法··· 71
    
    5.4  案例··· 71
    
    5.4.1  年龄换算··· 71
    
    5.4.2  抛硬币游戏··· 73
    
    小结··· 75
    
    练习题··· 75
    
    第6章  集合······································· 79
    
    6.1  集合的基本概念··· 79
    
    6.1.1  集合和数组的区别··· 79
    
    6.1.2  集合分类··· 80
    
    6.2  Iterator 80
    
    6.3  常用集合类··· 81
    
    6.3.1  ArrayList 81
    
    6.3.2  HashSet 84
    
    6.3.3  HashMap· 85
    
    6.4  案例··· 86
    
    6.4.1  双色球(集合)··· 86
    
    6.4.2  英文词典··· 87
    
    小结··· 89
    
    练习题··· 89
    
    第7章  数组······································· 91
    
    7.1  数组的概念··· 91
    
    7.1.1  数组的声明··· 91
    
    7.1.2  数组引用··· 92
    
    7.1.3  边界检查··· 92
    
    7.1.4  对象数组··· 93
    
    7.1.5  数组参数··· 93
    
    7.2  二维数组··· 97
    
    7.2.1  二维数组的创建··· 97
    
    7.2.2  二维数组的使用··· 97
    
    7.3  案例··· 98
    
    7.3.1  双色球(数组)··· 98
    
    7.3.2  范围与次数··· 100
    
    7.3.3  约瑟夫环··· 102
    
    小结··· 103
    
    练习题··· 103
    
    第8章  继承与多态·························· 107
    
    8.1  继承概述··· 107
    
    8.1.1  继承的定义··· 107
    
    8.1.2  继承的层次结构··· 108
    
    8.1.3  继承中的可见性··· 109
    
    8.1.4  重写和影子变量··· 109
    
    8.1.5  super调用··· 110
    
    8.2  抽象类与限制继承··· 115
    
    8.2.1  抽象类··· 115
    
    8.2.2  限制继承··· 119
    
    8.3  继承与多态··· 119
    
    8.3.1  多态概述··· 119
    
    8.3.2  多态的应用··· 119
    
    8.4  案例··· 121
    
    小结··· 127
    
    练习题··· 127
    
    第9章  接口····································· 130
    
    9.1  接口概述··· 130
    
    9.1.1  接口声明与继承··· 131
    
    9.1.2  接口的实现与区别
    抽象类··· 132
    
    9.1.3  接口与多态··· 134
    
    9.2  Comparable接口··· 135
    
    9.3  Comparator的用法··· 137
    
    9.4  案例··· 139
    
    9.4.1  用户信息排序
    (Comparable)··· 139
    
    9.4.2  用户信息排序
    (Comparator)··· 141
    
    9.4.3  蓝牙设备··· 143
    
    小结··· 146
    
    练习题··· 147
    
    第10章  异常··································· 149
    
    10.1  异常概述··· 149
    
    10.1.1  异常栈轨迹信息··· 150
    
    10.1.2  异常处理机制··· 151
    
    10.2  异常的传播··· 156
    
    10.3  异常层次结构··· 157
    
    10.3.1  可检测异常与不检测
    异常··· 158
    
    10.3.2  自定义异常类··· 159
    
    10.3.3  异常类的使用··· 160
    
    10.4  案例··· 161
    
    10.4.1  考勤统计··· 161
    
    10.4.2  一盔一带··· 163
    
    小结··· 166
    
    练习题··· 166
    
    第11章  GUI设计····························· 169
    
    11.1  初识JavaFX·· 169
    
    11.2  图形··· 171
    
    11.2.1  坐标系统··· 171
    
    11.2.2  颜色与字体··· 171
    
    
    11.2.3  形状··· 172
    
    11.3  UI 179
    
    11.3.1  常用UI控件··· 179
    
    11.3.2  布局··· 180
    
    11.3.3  事件··· 181
    
    11.4  案例··· 183
    
    11.4.1  随机圆··· 183
    
    11.4.2  打靶图··· 185
    
    11.4.3  学分占比饼图··· 186
    
    11.4.4  厦门美食··· 188
    
    11.4.5  送你一朵小红花··· 192
    
    小结··· 194
    
    练习题··· 194
    
    附录  练习题参考答案······················· 196
    
    参考文献············································ 219
    
    ​
  • 朱薇教育经历 学历硕士 厦门大学 软件工程专业 毕业时间2011年6月工作经历2008年-至今 厦门理工学院软件学院任教出版书籍:《Flash 8.0动画制作案例教程》主编 出版社:中国铁道出版社 书号:978-7-113-09489-8 主持项目:1) 自动化节能监控监测集成管理系统 (横向)2) 移动应急电源车的远程监测控制 (市级项目)3)基于无线网络环境下信息熵的异常发现方法研究 (市级项目)
  • 本书案例设计源自实际生活,易于阅读与理解。针对每个案例精心设计涉及的知识点,在知识点上做详尽分析及陷阱知识设计,练习题中的实验操作题贴近章节内容,举一反三,有助于思维拓展。引入JavaFX进行GUI设计,前沿性强,案例拓展性好。