Java程序设计

-
【作 者】李素若
【I S B N 】978-7-5170-4874-9
【责任编辑】李炎
【适用读者群】本专通用
【出版时间】2016-12-09
【开 本】16开
【装帧信息】平装(光膜)
【版 次】第1版第1次印刷
【页 数】304
【千字数】462
【印 张】19
【定 价】¥39
【丛 书】普通高等教育“十三五”规划教材(计算机专业群)
【备注信息】
简介
本书特色
前言
章节列表
精彩阅读
下载资源
相关图书
本书针对当前Java软件工程师岗位的特点,全面创新教材结构体系,努力体现项目引领、任务驱动、“学和做”融为一体的课程特色。全书共10个项目,总体结构上分为三个部分:第一部分为项目1~项目3,介绍了Java语言概述、Java语言基础以及面向对象程序设计的基本概念和方法;第二部分为项目4~项目7,介绍Java常用类库、泛型与集合框架、输入输出处理以及图形界面编程;第三部分为项目8~项目10,介绍Java的实际应用,包括数据库编程、多线程以及网络编程开发技术。本书内容讲解详细,书中包含大量精心设计并调试通过的编程实例,方便初学者学习。
本书可以作为高等院校计算机及相关专业的学生使用的教材,也可供从事计算机工程与应用的科技工作者和其他希望学习Java的人员参考。
本书配有电子教案,读者可以从中国水利水电出版社网站和万水书苑免费下载,网址为:http://www.waterpub.com.cn/softdown/和http://www.wsbookshow.com。
本书针对当前Java软件工程师岗位的特点,全面创新教材结构体系,努力体现项目引领、任务驱动、“学和做”融为一体的课程特色。
本书可以作为高等院校计算机及相关专业的学生使用的教材,也可供从事计算机工程与应用的科技工作者和其他希望学习Java的人员参考。
Java语言作为新一代面向对象的程序设计语言,已经成为目前最为流行的程序设计语言之一,诸多优秀的特性使其成为被业界广泛认可和采用的工具,同时使得“Java程序设计”课程成为高校计算机专业一门主要的专业课。
本教材是作者经过多年“Java程序设计”课程的教学与实践经验的积累而编写的,其指导思想是针对应用型本科院校学生培养定位,既强调基本知识的理解,更注重基本技能和工程能力的培养,使学生能够掌握面向对象程序设计的技术和解决实际问题能力,同时融知识性和趣味性为一体,拓宽学生的知识面,激发学生的学习兴趣。
本教材本着“项目导向、任务驱动”的理念编写,筛选设计了10个工作项目,每个工作项目下设计了若干学习性工作任务。教材中,每个项目的开篇包含了“项目导读”和“项目目标(知识目标、能力目标)”;每个任务中按照知识点进行设计,循序渐进、逐步深入,将理论知识学习与实践能力训练融为一体,同步进行;每个任务的后面布置有习题,学生通过课后练习可进一步巩固学习的知识。全书共有10个项目,项目1主要讲述Java发展的历史,其特点和开发环境;项目2介绍了Java语言的基本语法,读者可以了解到Java程序的基本结构和结构化编程的方法;项目3介绍面向对象程序设计,包括类与对象概念、类的声明、对象的生成与销毁,类的继承与多态性,接口与内部类,Java的异常处理机制;项目4介绍了Java常用类库的功能及使用方法;项目5介绍Java泛型的定义和使用,以及基于泛型的集合框架的使用;项目6介绍了I/O流的概念,并以此详细介绍了Java字节流类、字符流类和文件类;项目7介绍Java图形用户界面设计的两种方法AWT和Swing,主要是组件的创建、布局、使用及事件处理方法;项目8对JDBC的基本概念、数据库的连接及访问进行详细的介绍;项目9对线程的基本概念、实现机制、线程的状态和控制以及线程的同步进行了介绍;项目10介绍了网络编程中的基本概念、网络编程类及Socket的TCP和UDP编程。
本书配套教材《Java程序设计习题集及上机指导》也同步出版,内含与主教材各章内容相配合的习题解答参考、模拟考试试题和精心设计的实验,每个实验均包括实验目的、实验内容、实验指导等。两本书配套使用可以更为全面地掌握“Java程序设计”这门课程。
本书项目1至项目5和项目7由李素若编写,项目6、8、9由张牧编写,项目10由陈万华编写,全书由李素若负责审核和统稿。参加本书编写大纲讨论的教师还有李冉、陶延涛、严永松、胡玉荣、游明坤等,蓝桥软件学院的范振虎、周海刚老师对本书编写大纲提出很多宝贵意见,在此,向他们表示感谢。
由于编者水平有限,加之时间仓促,书中难免有疏漏之处,敬请广大读者批评指正,以使本书质量得到进一步提高。
编 者
2016年9月
任务1 Java发展史与特点 1
1.1.1 Java的起源与发展 1
1.1.2 Java的特点 3
习题 4
任务2 Java程序工作原理 5
1.2.1 Java虚拟机 5
1.2.2 垃圾回收机制 6
习题 6
任务3 面向对象基础 6
1.3.1 什么是面向对象程序设计 6
1.3.2 面向对象的基本概念 7
1.3.3 面向对象编程的特征 10
习题 11
任务4 Java的开发和运行环境 11
1.4.1 JDK简介 11
1.4.2 JDK的安装 12
1.4.3 JDK配置 12
1.4.4 第一个Java程序 14
习题 15
项目总结 15
项目2 Java语言基础 16
任务1 Java语言的基本组成 16
2.1.1 标识符 16
2.1.2 关键字 17
2.1.3 变量和常量 17
2.1.4 运算符 18
2.1.5 分隔符 18
习题 19
任务2 Java基本数据类型 20
2.2.1 Java数据类型概述 20
2.2.2 整数类型 20
2.2.3 浮点类型 21
2.2.4 逻辑类型 21
2.2.5 字符类型 22
习题 22
任务3 Java运算符与表达式 24
2.3.1 算术运算符 24
2.3.2 赋值运算符与赋值表达式 25
2.3.3 关系运算符 25
2.3.4 逻辑运算符 26
2.3.5 位运算符 27
2.3.6 条件运算符 27
2.3.7 其他运算符 28
2.3.8 运算符的优先级 28
习题 29
任务4 Java语句和方法 30
2.4.1 语句 30
2.4.2 方法 31
习题 35
任务5 控制语句 35
2.5.1 选择语句 36
2.5.2 循环语句 38
2.5.3 跳转语句 41
习题 43
任务6 数组 45
2.6.1 一维数组 45
2.6.2 二维数组 47
习题 50
项目总结 50
项目3 Java面向对象程序设计 51
任务1 类与对象 51
3.1.1 类 51
3.1.2 对象 54
3.1.3 静态成员 58
3.1.4 final、this和null 61
3.1.5 包 64
3.1.6 访问属性控制 67
习题 71
任务2 类的继承和多态 73
3.2.1 类的继承 73
3.2.2 多态 82
3.2.3 抽象类 86
习题 87
任务3 接口与内部类 88
3.3.1 接口 88
3.3.2 回调 94
3.3.3 内部类 96
习题 101
任务4 Java异常处理 102
3.4.1 异常概述 102
3.4.2 异常分类 103
3.4.3 异常处理机制 104
3.4.4 自定义异常 107
习题 108
项目总结 110
项目4 Java API常用类库 111
任务1 Object与System 111
4.1.1 Object类 111
4.1.2 System类 113
习题 115
任务2 String与StringBuffer 115
4.2.1 String类 116
4.2.2 StringBuffer类 122
习题 124
任务3 Java包装类 125
4.3.1 基本数据类型与包装类型的转换 125
4.3.2 字符串与数值类型的相互转换 127
4.3.3 包装类自动装箱和拆箱 128
习题 129
任务4 Java数字处理类 129
4.4.1 Math类 129
4.4.2 Random类 130
4.4.3 大数操作类 131
习题 134
任务5 Java日期类 135
4.5.1 Date类和SimpleDateFormat类 135
4.5.2 Calendar类 137
习题 139
任务6 正则表达式 140
习题 142
项目总结 143
项目5 Java泛型与集合框架 144
任务1 泛型 144
5.1.1 泛型类 144
5.1.2 泛型方法 145
5.1.3 泛型接口 146
习题 147
任务2 泛型集合类 147
5.2.1 Collection
5.2.2 Set
5.2.3 List
5.2.4 Map
习题 154
任务3 工具类 154
5.3.1 Collections工具类 155
5.3.2 Arrays工具类 156
习题 158
项目总结 159
项目6 Java的I/O流和文件 160
任务1 I/O流类简介 160
6.1.1 流的基本概念 160
6.1.2 常用输入输出类 161
习题 161
任务2 File类 162
6.2.1 文件对象创建 162
6.2.2 文件和目录属性 163
6.2.3 文件和目录操作 164
6.2.4 可执行文件运行 166
习题 167
任务3 字节流与字符流 168
6.3.1 字节流 168
6.3.2 字符流 171
习题 174
任务4 随机访问流 175
6.4.1 RandomAccessFile类 175
6.4.2 随机读写应用 176
习题 177
任务5 其他流 178
6.5.1 缓冲流 178
6.5.2 数据流 180
6.5.3 字节流转换为字符流 181
习题 182
项目总结 183
项目7 图形用户界面设计 184
任务1 GUI简介 184
7.1.1 AWT简介 184
7.1.2 Swing简介 185
7.1.3 AWT和Swing的区别 185
习题 186
任务2 AWT组件 186
7.2.1 AWT概述 186
7.2.2 AWT常用组件 187
习题 195
任务3 布局管理 196
7.3.1 边界布局(BorderLayout) 196
7.3.2 流式布局(FlowLayout) 197
7.3.3 网格布局(GridLayout) 198
7.3.4 卡片布局(CardLayout) 200
习题 202
任务4 事件处理 202
7.4.1 事件处理机制概述 202
7.4.2 事件类和监听器接口 204
7.4.3 处理ActionEvent事件 206
7.4.4 处理KeyEvent事件 208
7.4.5 处理MouseEvent事件 209
7.4.6 处理WindowEvent事件 212
7.4.7 事件适配器 213
7.4.8 用内部类实现监听接口 214
习题 215
任务5 Swing组件 216
7.5.1 Swing概述 216
7.5.2 容器组件 217
7.5.3 标签和按钮 219
7.5.4 文本编辑组件 220
7.5.5 选择组件 223
7.5.6 菜单 229
习题 231
项目总结 232
项目8 JDBC数据库编程 233
任务1 JDBC介绍 233
8.1.1 JDBC结构 233
8.1.2 JDBC API 234
8.1.3 JDBC编程步骤 235
习题 236
任务2 JDBC连接数据库 236
8.2.1 加载数据库驱动程序 236
8.2.2 连接数据库 237
习题 239
任务3 JDBC操作数据库 239
8.3.1 Statement接口 239
8.3.2 ResultSet接口 241
8.3.3 PreparedStatement接口 243
习题 245
项目总结 246
项目9 Java多线程 247
任务1 线程的基本概念 247
9.1.1 什么是进程和线程 247
9.1.2 多线程的优缺点 248
习题 249
任务2 线程的创建和启动 249
9.2.1 Thread类 249
9.2.2 Runnable接口 251
9.2.3 两种创建线程方法比较 253
习题 256
任务3 线程的生命周期 256
9.3.1 新建就绪状态 257
9.3.2 运行和阻塞状态 258
9.3.3 线程死亡 258
习题 259
任务4 控制线程 260
9.4.1 联合线程 260
9.4.2 守护线程 262
9.4.3 线程让步 263
习题 264
任务5 线程的同步 264
9.5.1 线程同步问题 264
9.5.2 对象锁的实现 265
9.5.3 wait()和notify() 266
习题 268
项目总结 268
项目10 Java网络编程 269
任务1 网络基础知识 269
10.1.1 TCP/IP基本概念 269
10.1.2 TCP与UDP传输协议 270
习题 271
任务2 URL类和InetAddress类 271
10.2.1 URL基础知识 271
10.2.2 URL类 272
10.2.3 URLConnection类 274
10.2.4 InetAddress类 276
习题 277
任务3 Socket通信 278
10.3.1 Socket通信的结构 278
10.3.2 服务器端套接字 279
10.3.3 客户端套接字 279
10.3.4 Socket TCP编程 280
10.3.5 Socket多线程编程 283
10.3.6 Socket UDP编程 286
习题 291
项目总结 292
参考文献 293
- 零基础玩转国产大模型DeepSeek [徐永冰 张帅 编著]
- 网络工程师5天修炼(适配第6版考纲) [主编 朱小平 施游]
- 信息系统项目管理师考试32小时通关(适用第4版考纲) [薛大龙]
- 信息系统管理工程师考试32小时通关(适配第2版考纲) [薛大龙 刘伟]
- 土木工程材料检测实训 [洪晓江 达则晓丽 钱波]
- 科技信息检索与论文写作实用教程 [李振华]
- 传统山水画论解读与实践 [陈钠 著]
- Python数据库编程 [主编 殷树友 邢 翀]
- 计算机基础实训指导 [主编 袁春萍 朱妮]
- 嵌入式人工智能技术应用(数字教材) [主编 胡娜 杨国勇 晏廷荣]
- Vienna整流器技术 [桂存兵 著]
- 变频器与伺服应用 [陈刚 叶云飞]
- 物联网工程设计与实践 [汤琳 李敏]
- 炉边夜话——深入浅出话AI [汪建 著]
- 电商运营与管理 [钟肖英 陈潇]
- Java面向对象程序设计 [主编 姜春磊 陈虹洁]
- 信息技术基础(Windows 10+WPS Office)(微课版) [主编 石利平 田辉平 谢盛嘉]
- 人工智能应用 [主编 陈 萍 刘培培 陈孟军]
- 大学生职业发展与就业指导 [主编 刘志坚]
- 高级办公应用项目教程 [主编 屈晶 赵成丽]
- 微信小程序开发项目实战(微课版) [主编 黄龙泉 郭峰 朱倩]
- 企业档案工作实战宝典百问百答 [华俊 卢秀英 邵甜甜 著]
- 计算机网络原理及应用 [主编 唐继勇 叶坤 孙梦娜]
- 大学生创业基础 [主编 王丽莉 王 杨]
- 船舶辅机 [主编 王连海 于洋 姜淑翠]
- 大学生就业指导 [主编 王丽莉 董宴廷]
- 系统架构设计师章节习题与考点特训 [主编 薛大龙 邹月平]
- 高校学生工作探索与实践 [郭亮 著]
- 大学生情商管理 [方雄 著]
- 2023年长沙市会展业发展报告 [主编 周栋良]