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

Java程序设计应用开发

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

作者:张西广 夏敏捷 罗菁 出版日期:2023-01-01

定价:49.80 页码 / 开本:无 /16

策划编辑:韩从付 责任编辑:贾星 徐盼欣

适用专业:计算机基础教育 适用层次:高等教育

最新印刷时间:

资源下载
教学课件 教学素材
习题答案(暂无) 教学案例(暂无)
教学设计(暂无) 教学视频(暂无)
内容简介 前言 目录 作者介绍 图书特色
  • 本书主要介绍Java程序设计应用开发知识,内容包括Java概述、Java编程基础、Java面向对象基础、Java面向对象高级特性、Java异常处理、Java常用类、Java集合、图形用户界面开发、多线程、Java网络程序设计、I/O(输入/输出)和JDBC技术,读者通过学习可以掌握Java语言的基本知识内容和程序编写方法。本书从基本的程序设计思想入手,逐步展开Java语言教学。对每个知识点,通过多个实用例子进行描述和说明,例子选取贴近生活,增加读者对知识点的理解。本书注重程序设计能力的培养和项目实践,同时纳入了Java的新功能,增强了实用性,使读者掌握Java的精髓。
    
    本书适合作为普通高等院校计算机类专业 Java 课程教材,也可作为程序设计人员和 Java语言学习者的参考书。
  • Java语言迎合了人们对应用程序跨平台运行的需求,已成为软件设计开发者应当掌握的一门基础语言,很多新的技术领域都涉及了Java语言。目前无论是高等院校的计算机专业还是IT培训学校都将Java语言作为主要的教学内容之一,这对于培养学生的计算机应用能力具有重要的意义,掌握Java语言已经成为人们的共识。经过多年的发展,Java已经集动画、多媒体集成、人机交互、网络通信、数据处理等功能于一身。目前学习和关注Java语言的人越来越多,Java语言已是目前世界上最为流行的程序开发语言之一。由于具有功能丰富、表达能力强、使用方便灵活、执行效率高、跨平台、可移植性好等优点,Java成为编程学习的首选语言之一。
    
    编著者长期从事Java教学与应用开发,在工作学习中积累了丰富的经验和教训,能够了解在学习编程的时候需要什么样的书才能提高 Java 开发能力,如何能以最少的时间投入得到最快的实际应用。
    
    本书最大的特色在于以开发案例为导向,让读者对 Java 语言学习充满乐趣,在案例设计开发过程中,不知不觉地学会这些技术;通过学习本书,读者将学会 Java编程技术和技巧,学会面向对象的设计技术,了解程序设计的相关知识。本书部分案例如酒店客房管理、网络五子棋游戏、Java图形处理、JDBC应用案例,由于篇幅限制进行数字化处理,读者可扫二维码阅读设计思路和相关代码。
    
    需要说明的是,学习编程是一个实践的过程,而不仅仅是看书、看资料的过程,动手编写、调试程序才是至关重要的。通过实际的编程以及积极思考,读者可以很快掌握编程技术,在编程过程中能够积累许多宝贵的实践经验,这对编程人员来说尤为重要。
    
    本书是中原工学院2021年度校级教材建设立项项目之一。本书的出版得到了“中原工学院2021年度校级教材建设项目立项”的支持,其立项名单见中原工学院通知公告“关于2021年度校级教材建设项目结果的公示项目6”。本书由张西广(中原工学院)、夏敏捷(中原工学院)和罗菁(中原工学院)编著,参与编写的有黄蓉(国家知识产权局专利局审查协作河南中心)、窦桂琴(中原工学院)、潘惠勇(中原工学院)和尚展垒(郑州轻工业大学)。具体编写分工如下:张西广编写第1、2章,夏敏捷编写第3章,窦桂琴编写第4章,潘惠勇编写第5章,黄蓉编写第6、7章,尚展垒编写第8~11章,罗菁编写第12章。在本书的编写过程中,为确保内容的正确性,参阅了很多资料,在此向其作者表示感谢;得到了资深Java程序员的支持,在此谨向他们表示衷心的感谢。
    
    由于编著者水平有限,书中难免存在疏漏之处,敬请广大读者批语指正,在此表示感谢。
    
    欢迎与作者进行交流,作者电子邮件:xmj@zut.edu.cn。
    
     
    
    编著者      
    
    2022年7月
  • 第1章  Java概述 1
    
    1.1  认识Java. 1
    
    1.1.1  Java简介 1
    
    1.1.2  Java语言的特点 3
    
    1.1.3  Java语言的应用 4
    
    1.2  JDK的使用 5
    
    1.2.1  JDK的安装 5
    
    1.2.2  Java程序运行机制 8
    
    1.2.3  Java程序开发过程 9
    
    1.3  Java语言的集成开发环境 10
    
    1.3.1  Eclipse. 10
    
    1.3.2  NetBeans. 15
    
    1.3.3  IntelliJ IDEA. 15
    
    习题 15
    
    第2章  Java编程基础 16
    
    2.1  关键字标识符与数据类型 16
    
    2.1.1  关键字 16
    
    2.1.2  标识符 16
    
    2.1.3  数据类型 17
    
    2.2  常量与变量 18
    
    2.2.1  常量 18
    
    2.2.2  变量 20
    
    2.3  运算符和表达式 21
    
    2.3.1  算术运算符和算术表达式 22
    
    2.3.2  赋值运算符和赋值表达式 23
    
    2.3.3  关系运算符和关系表达式 24
    
    2.3.4  逻辑运算符和逻辑表达式 25
    
    2.3.5  位运算符和位运算表达式 25
    
    2.3.6  条件运算符和条件表达式 28
    
    2.3.7  运算符优先级 28
    
    2.3.8  类型转换 29
    
    2.3.9  打印语句 30
    
    2.3.10  Java语言注释 31
    
    2.4  逻辑控制语句 31
    
    2.4.1  选择结构语句 31
    
    2.4.2  循环结构语句 35
    
    2.4.3  循环的嵌套 39
    
    2.4.4  跳转语句 40
    
    2.4.5  三种循环的比较 42
    
    2.5  Java数组和应用 43
    
    2.5.1  Java数组定义和创建 43
    
    2.5.2  使用数组 46
    
    2.5.3  多维数组 49
    
    2.5.4  Arrays类 52
    
    2.6  Java方法 54
    
    2.6.1  方法简介 54
    
    2.6.2  方法的重载 55
    
    习题 56
    
    第3章  Java面向对象基础 58
    
    3.1  面向对象程序设计的思想和概念 58
    
    3.1.1  类和对象的概念 58
    
    3.1.2  面向对象的三大特性 59
    
    3.1.3  面向对象和面向过程的区别 60
    
    3.2  Java语言的类和对象 63
    
    3.2.1  类的定义 63
    
    3.2.2  对象的创建与使用 64
    
    3.3  构造方法 67
    
    3.4  this关键字 70
    
    3.4.1  使用this关键字访问成员变量 71
    
    3.4.2  使用this关键字调用构造方法 71
    
    3.5  static关键字 72
    
    3.5.1  静态成员变量 72
    
    3.5.2  静态方法 74
    
    3.5.3  静态代码块 74
    
    3.6  包 75
    
    3.7  应用案例—模拟猜拳游戏 76
    
    习题 80
    
    第4章  Java面向对象高级特性 81
    
    4.1  继承 81
    
    4.1.1  继承的基本概念 81
    
    4.1.2  继承的实现 83
    
    4.1.3  子类的构成 85
    
    4.1.4  成员的访问权限控制 87
    
    4.1.5  方法的重写 90
    
    4.1.6  子类对象的构造 91
    
    4.2  final关键字 93
    
    4.2.1  final类 93
    
    4.2.2  final方法 93
    
    4.2.3  final关键字修饰变量 94
    
    4.3  多态 94
    
    4.3.1  多态性的概念 94
    
    4.3.2  对象类型的转换 96
    
    4.3.3  instanceof关键字 97
    
    4.3.4  多态的好处 98
    
    4.4  抽象类和接口 99
    
    4.4.1  抽象类和抽象方法 99
    
    4.4.2  接口 101
    
    4.4.3  接口的用法 102
    
    4.5  Object类 105
    
    4.5.1  toString( )方法 106
    
    4.5.2  equals( )方法 107
    
    4.6  内部类 108
    
    4.6.1  成员内部类 108
    
    4.6.2  方法内部类 109
    
    4.6.3  匿名内部类 110
    
    4.7  应用案例—学生和教师信息管理程序 111
    
    习题 114
    
    第5章  Java异常处理. 115
    
    5.1  异常概述 115
    
    5.2  Java异常类介绍 116
    
    5.2.1  Java异常类层次结构 116
    
    5.2.2  常用异常类 117
    
    5.3  Java捕获异常 118
    
    5.3.1  trycatch语句捕获异常 119
    
    5.3.2  trycatchfinally语句捕获异常 119
    
    5.3.3  多catch语句捕获异常 120
    
    5.3.4  try语句嵌套捕获异常 121
    
    5.4  Java抛出异常 122
    
    5.4.1  throws抛出异常 122
    
    5.4.2  throw抛出异常 123
    
    5.5  Java自定义异常 124
    
    习题 125
    
    第6章  Java常用类.. 126
    
    6.1  字符串类 126
    
    6.1.1  String类的初始化 126
    
    6.1.2  String类的常见操作 127
    
    6.1.3  StringBuffer类 132
    
    6.1.4  StringBuilder类 134
    
    6.2  Math类与Random类 135
    
    6.2.1  用Math类实现数值运算 135
    
    6.2.2  用Random类实现随机数 136
    
    6.3  包装类 137
    
    6.3.1  认识包装类 138
    
    6.3.2  通过包装类进行数据转换 138
    
    6.4  常用系统类 140
    
    6.4.1  System类 140
    
    6.4.2  Runtime类 141
    
    6.5  日期类 143
    
    6.5.1  Date类 143
    
    6.5.2  Calendar类 144
    
    6.5.3  SimpleDateFormat类 146
    
    6.6  查看Java API文档 147
    
    6.7  应用案例—猜单词游戏 147
    
    习题 149
    
    第7章  Java集合. 150
    
    7.1  集合概述 150
    
    7.2  List集合 151
    
    7.2.1  ArrayList 152
    
    7.2.2  LinkedList 155
    
    7.2.3  Vector 156
    
    7.2.4  遍历集合 158
    
    7.3  Set集合 160
    
    7.3.1  HashSet 160
    
    7.3.2  TreeSet 163
    
    7.4  Map集合 165
    
    7.4.1  HashMap. 166
    
    7.4.2  TreeMap. 168
    
    7.5  泛型简化集合操作 168
    
    7.5.1  泛型的意义 168
    
    7.5.2  泛型的使用 169
    
    7.6  使用Collections类对集合进行处理 171
    
    7.7  应用案例—教学课程管理 172
    
    习题 173
    
    第8章  图形用户界面开发.. 175
    
    8.1  AWT和Swing简介 175
    
    8.1.1  AWT简介 175
    
    8.1.2  Swing基础 176
    
    8.2  创建窗口 177
    
    8.2.1  用JFrame框架类开发窗口 177
    
    8.2.2  用JDialog对话框类开发窗口 179
    
    8.3  Swing组件 181
    
    8.3.1  按钮(JButton) 181
    
    8.3.2  单选按钮(JRadioButton) 181
    
    8.3.3  复选框(JCheckBox) 183
    
    8.3.4  组合框(JComboBox) 184
    
    8.3.5  列表框(JList) 185
    
    8.3.6  文本框(JTextField和JPasswordField)和标签(JLabel) 187
    
    8.3.7  面板(JPanel) 188
    
    8.3.8  消息提示框(JOptionPane) 189
    
    8.3.9  菜单 191
    
    8.4  布局管理器 192
    
    8.4.1  布局管理器概述 192
    
    8.4.2  流布局管理器FlowLayout 193
    
    8.4.3  边界布局BorderLayout 194
    
    8.4.4  网格布局管理器GridLayout 195
    
    8.4.5  卡片布局管理器CardLayout 196
    
    8.4.6  空布局管理器(绝对布局) 196
    
    8.5  常用事件处理 197
    
    8.5.1  事件处理机制 197
    
    8.5.2  鼠标事件处理 199
    
    8.5.3  键盘事件处理 201
    
    8.5.4  动作事件处理 203
    
    8.5.5  选项事件处理 204
    
    8.6  应用案例—用户管理系统的登录和用户注册 206
    
    习题 210
    
    第9章  多线程. 211
    
    9.1  多线程的概念 211
    
    9.1.1  进程 211
    
    9.1.2  多线程概述 212
    
    9.2  线程的创建 213
    
    9.2.1  继承Thread类创建线程 214
    
    9.2.2  实现Runnable接口创建线程 217
    
    9.2.3  创建线程的两种方法的比较 219
    
    9.3  线程的调度与线程控制 219
    
    9.3.1  线程优先级与线程调度策略 219
    
    9.3.2  线程的基本控制 221
    
    9.4  线程同步 222
    
    9.4.1  多线程并发操作中的问题 222
    
    9.4.2  对象锁及其操作 223
    
    9.4.3  同步方法 225
    
    9.5  应用案例—使用多线程模拟龟兔赛跑 226
    
    习题 228
    
    第10章  Java网络程序设计. 229
    
    10.1  网络编程基础 229
    
    10.1.1  互联网TCP/IP. 229
    
    10.1.2  IP. 230
    
    10.1.3  TCP和UDP. 230
    
    10.1.4  端口 230
    
    10.1.5  Socket 230
    
    10.2  UDP编程 232
    
    10.2.1  UDP简介 232
    
    10.2.2  DatagramPacket类 233
    
    10.2.3  DatagramSocket类 234
    
    10.3  TCP编程 236
    
    10.3.1  流套接字 236
    
    10.3.2  InetAddress类简介 236
    
    10.3.3  ServerSocket类 238
    
    10.3.4  Socket类 240
    
    习题 242
    
    第11章  I/O(输入/输出).. 243
    
    11.1  认识I/O(输入/输出)操作 243
    
    11.2  File类 244
    
    11.2.1  创建File对象 244
    
    11.2.2  File类的常用方法 244
    
    11.3  文件操作 248
    
    11.3.1  字节流 248
    
    11.3.2  FileInputStream读文件 250
    
    11.3.3  FileOutputStream写文件 252
    
    11.3.4  DataInputStream和DataOutputStream.. 253
    
    11.3.5  字符流 254
    
    11.3.6  FileReader和FileWriter 256
    
    11.3.7  缓冲流 258
    
    11.4  应用案例—查单词软件 259
    
    习题 260
    
    第12章  JDBC技术.. 262
    
    12.1  数据库概述 262
    
    12.1.1  MySQL数据库 262
    
    12.1.2  MySQL安装配置 263
    
    12.1.3  安装可视化工具 264
    
    12.1.4  创建数据库 265
    
    12.2  SQL语法 265
    
    12.3  JDBC简介 267
    
    12.3.1  JDBC体系结构 267
    
    12.3.2  JDBC驱动程序的实现方式 268
    
    12.4  JDBC连接数据库 268
    
    12.4.1  JDBC API的主要类和接口 269
    
    12.4.2  连接数据库 270
    
    12.5  JDBC访问数据库 271
    
    12.5.1  Statement对象 272
    
    12.5.2  PreParedStatement对象 273
    
    12.5.3  管理结果集 277
    
    习题 280
    
    参考文献   
    
  • 张西广,男,副教授,中原彼得堡航空学院软件工程专业负责人。2005年7月硕士毕业于北京理工大学软件工程专业,主要从事软件工程及应用、计算机网络新技术应用研究等。主讲软件工程、数据结构、Java程序设计、JavaEE项目开发等课程。主持或参与科研项目10多项,参与编写教材6本,获得国家发明专利3项;发表论文20多篇,其中核心论文和检索论文10多篇;指导学生获得省级以上专业竞赛奖励10多项,其中国家级二等奖1项,省级一等奖3项。
    ?
    夏敏捷,男,副教授,硕士研究生,现任中原工学院计算机基础教研部副主任。主要研究方向为电子文件、可视化、数据挖掘。1996年开始任教,主要讲授高级语言C++程序设计、数据库、VB.NET程序设计、计算机网络、Flash动画设计等课程,主编教材30余部。曾主持郑州市科技厅1项,教育厅2项科研项目。
    
    罗菁,女,中原工学院讲师。1999年9月至今从事一线教学工作,计算机学院软件发开类课程组成员。主讲高级程序设计、Java程序设计、Web程序设计、软件工程、软件项目管理等等课程。主持参与了多项省级科研项目,获得省级科技进步三等奖;主编参与多本教材编写,其中包括国家级规划教材和省级规划教材。
  • ①以开发案例为导向,让读者对枯燥的Java语言学习充满乐趣 。全书安排了8个综合性应用案例,如猜单词游戏、查单词软件、酒店客房管理、多线程模拟龟兔赛跑等。
    
    ②配套资源丰富,方便教学和自学:微课+课件+源代码。