计算机类教材 > 算法与程序设计
Java程序设计基础与应用
书号:9787113308810 套系名称:”十四五”高等职业教育新形态一体化教材
作者:黄振业 曲欣欣 出版日期:2024-01-01
定价:56.00 页码 / 开本: /16
策划编辑:侯伟 责任编辑:包宁
适用专业:计算机类 适用层次:高职教育
最新印刷时间:2024-01-01
资源下载
教学课件
教学素材(暂无)
习题答案(暂无)
教学案例(暂无)
教学设计(暂无)
教学视频(暂无)
内容简介
前言
目录
作者介绍
图书特色
本书为“十四五”高等职业教育新形态一体化教材之一,通过简明生动的语言和丰富的案例,以行业流行的 Eclipse 开发工具作为开发平台,有针对性地引导学生“在做中学”,培养学生分析问题和解决问题的能力,把提高学生的动手能力和综合素质作为首要任务。 本书包括 Java 语言基础和图形用户界面设计与开发两部分,具有由浅入深、循序渐进、案例典型、轻松易学、应用实践、随时随练的特色。Java 语言基础部分包括 Java 语言概述、Java 语言基础、Java程序流程控制、数组、字符串、面向对象程序基础与进阶、常用类和异常处理等内容;图形用户界面设计与开发部分包括图形用户界面设计、图形用户界面应用开发、数据库操作和多线程等内容。 本书适合作为高职高专院校计算机及相关专业的教材,也可作为职业培训的教材或自学者的参考书。
程序设计是高等院校重要的计算机基础课程,本书的培养目标是希望学生通过这门课程的学习,不仅掌握高级程序设计语言的基本知识,更重要的是在解决实际问题的过程中逐步掌握程序设计的思想,培养学生分析问题和解决问题的能力。 Java 语言是 Sun 公司(已被甲骨文公司收购)推出的能够跨平台的面向对象的编程语言。自推出以来,Java 语言凭借其易学易用、功能强大的特点得到了广泛应用。作为一门面向对象的编程语言,Java 语言不仅吸收了 C++ 语言的各种优点,还摒弃了 C++ 中难以理解的多继承、指针等概念。Java 语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许用户以优雅的思维方式进行复杂的编程。 本书以程序设计为主线,以项目应用为驱动,通过案例和问题引入内容,重点分析讲解程序设计的思想和方法,再通过综合实践加深巩固。全书共 13 章,主要包括 Java 语言基础和图形用户界面设计与开发两部分内容。其中 Java 语言基础部分为第 1 章至第 9 章,内容包括 Java 语言概述、Java 语言基础、Java 程序流程控制、数组、字符串、面向对象程序基础与进阶、常用类和异常处理;图形用户界面设计与开发部分为第 10 章至第 13 章,内容包括图形用户界面设计、图形用户界面应用开发、数据库操作和多线程。 本书是一线教师长期教学和软件开发实践的经验积累,也是根据学生的认知规律精心组织编写的项目化教程。本书具有以下特色: (1)由浅入深,循序渐进:本书以高职高专学生为主要对象,先从 Java 语言基础学起,再学习面向对象程序设计,然后学习图形用户界面设计与开发,结合数据库相关知识,最后学习开发一个较完整的项目。 (2)案例典型,轻松易学:本书由具体案例引出,学习对应的知识点,通过“一个知识点、一个案例、一段分析、一个综合实践”模式,透彻详尽地讲述实际开发中所需的各类知识。 (3)应用实践,随时练习:本书每章都提供了“综合实践”和“习题”,使学生能够通过对问题的解答重新回顾、熟悉所学知识,举一反三,为进一步学习做好充分的准备。 总体来说,本书的体系结构和内容组织较好地体现了新的教学设计思想,注重理论联系实际,融知识学习和能力培养为一体。 本书的目标:学生完成本课程的学习之后,能够理解并熟练掌握 Java 语言的基本语法,掌握面向对象程序设计的编程思想,运用 GUI 设计、事件处理、异常处理和 JDBC 等技术,处理并解决实际中遇到的问题,培养和提高学生分析问题和解决问题的能力。 本书由浙江金融职业学院黄振业、曲欣欣主编,由浙江金融职业学院张震、杭州平治信息技术股份有限公司余可曼任副主编。在编写过程中,我们参考了大量的相关资料,吸取了许多同仁的宝贵经验。在此,一并向以上所有为本书做出贡献的人员表示衷心的感谢! 由于作者水平有限,书中难免存在疏漏与不足之处,敬请读者提出宝贵的意见和建议。 编 者 2023 年 11 月
第 1 章 Java 语言概述.................1 1.1 Java 语言简介 .....................................1 1.1.1 Java 特性 ..........................................1 1.1.2 Java 版本 ..........................................2 1.1.3 Java 虚拟机 ......................................2 1.1.4 Java API 文档 ...................................3 1.2 Java 开发环境搭建 .............................3 1.2.1 JDK 下载 ..........................................3 1.2.2 Windows 系统环境配置 ..................4 1.3 Eclipse 开发工具 ................................6 1.3.1 Eclipse 下载 ......................................6 1.3.2 Eclipse 汉化 ......................................7 1.3.3 Eclipse 配置与启动 ..........................8 1.3.4 Eclipse 工作台 ..................................9 习题 ............................................................11 第 2 章Java 语言基础.............................12 2.1 案例 2-1:第一个 Java 程序 ............12 2.2 Java 主类结构 ...................................15 2.2.1 Java 应用程序的主类结构 ............15 2.2.2 标识符和关键字 ............................15 2.2.3 代码的注释 ....................................16 2.3 案例 2-2:计算圆的面积和周长 .....16 2.4 基本数据类型 ...................................17 2.4.1 数值型数据 ....................................18 2.4.2 字符型数据 ....................................18 2.4.3 布尔型数据 ....................................18 2.5 常量与变量 .......................................18 2.5.1 变量 ................................................19 2.5.2 常量 ................................................20 2.6 数据类型之间的类型转换 ...............21 2.6.1 隐式类型转换 ................................21 2.6.2 强制类型转换 ................................21 2.6.3 字符串类型与数值类型的转换 ....22 2.7 运算符和表达式 ...............................23 2.7.1 运算符与表达式类型 ....................23 2.7.2 运算符的优先级和结合性 ............25 2.8 程序与用户交互的简单方法 ...........26 2.8.1 从命令行输入数据 ........................26 2.8.2 在控制台输入 / 输出数据 .............27 2.8.3 利用对话框输入 / 输出数据 .........27 2.9 综合实践 ...........................................28 习题 ............................................................28 第 3 章Java 程序流程控制............................31 3.1 案例 3-1:整数的奇偶性 .................31 3.2 分支语句 ...........................................32 3.2.1 if 语句 .............................................32 3.2.2 switch 语句 .....................................34 3.3 案例 3-2:序列求和 .........................36 3.4 循环语句 ...........................................37 3.4.1 for 循环语句 ...................................37 3.4.2 while 循环语句 ...............................38 3.4.3 do…while 循环语句 .......................39 3.4.4 多重循环语句 ................................39 3.4.5 跳转语句 ........................................40 3.5 综合实践 ...........................................41 习题 ............................................................41 第 4 章 数组 ..................................47 4.1 数组的基本概念 ...............................47 4.2 案例 4-1:数组求和 .........................47 4.3 数组的声明与创建 ...........................48 4.3.1 一维数组的声明与创建 ................48 4.3.2 二维数组的声明与创建 ................49 4.4 数组的初始化 ...................................49 4.5 数组的访问 .......................................50 4.6 数组的基本操作 ...............................50 4.6.1 遍历数组 ........................................51 4.6.2 替换数组元素 ................................52 4.6.3 数组的排序 ....................................52 4.6.4 数组的复制 ....................................53 4.7 数组的排序算法 ...............................53 4.7.1 冒泡排序 ........................................54 4.7.2 选择排序 ........................................55 4.8 综合实践 ...........................................56 习题 ............................................................56 第 5 章 字符串.................................58 5.1 案例 5-1:统计数字出现的次数 ...................................................58 5.2 字符串的创建与操作 .......................59 5.2.1 字符串的创建 ................................59 5.2.2 字符串操作 ....................................59 5.3 字符串生成器 StringBuilder ............66 5.4 正则表达式 .......................................68 5.5 格式化字符串 ...................................70 5.5.1 日期字符串格式化 ........................70 5.5.2 时间字符串格式化 ........................71 5.5.3 SimpleDateFormat ..........................71 5.5.4 常规类型格式化 ............................72 5.6 综合实践 ...........................................72 习题 ............................................................73 第 6 章 面向对象基础....................................76 6.1 面向对象程序设计 ...........................76 6.2 案例 6-1:动物类 .............................76 6.3 类与对象 ...........................................78 6.3.1 类的定义 ........................................79 6.3.2 对象的创建和使用 ........................80 6.3.3 再识变量 ........................................82 6.4 类的方法 ...........................................84 6.4.1 成员方法 ........................................84 6.4.2 构造方法 ........................................86 6.4.3 方法的重载 ....................................88 6.5 this 关键字 ........................................92 6.6 案例 6-2:动物类的封装 .................93 6.7 类的封装 ...........................................95 6.7.1 封装的概念 ....................................96 6.7.2 访问控制符 ....................................96 6.7.3 封装的实现 ....................................96 6.8 static 修饰符 ......................................98 6.8.1 静态常量 ........................................98 6.8.2 静态方法 ........................................99 6.8.3 静态初始化块 ................................99 6.9 包与类的导入 .................................100 6.9.1 包 ..................................................100 6.9.2 类的导入 ......................................101 6.9.3 Java 的常用包 ..............................101 6.10 综合实践 .......................................102 习题 ..........................................................102 第 7 章 面向对象进阶................................107 7.1 案例 7-1:动物的继承关系 ...........107 7.2 类的继承 .........................................109 7.2.1 继承的实现 ..................................109 7.2.2 方法的重写 ..................................110 7.2.3 super 关键字 .................................110 7.2.4 调用父类的构造方法 .................. 111 7.2.5 根类 Object ................................... 111 7.3 final 修饰符 .....................................115 7.3.1 final 修饰类 ..................................115 7.3.2 final 修饰方法 ..............................115 7.3.3 final 修饰变量 ..............................116 7.4 多态 .................................................116 7.4.1 多态的概念 ..................................116 7.4.2 instanceof 运算符 .........................117 7.5 抽象类 .............................................118 7.6 接口 .................................................119 7.6.1 接口的定义 ..................................119 7.6.2 接口的实现 ..................................120 7.6.3 接口的继承 ..................................120 7.6.4 接口和抽象类 ..............................120 7.7 内部类 .............................................121 7.7.1 成员内部类 ..................................121 7.7.2 静态内部类 ..................................122 7.7.3 局部内部类 ..................................123 7.7.4 匿名内部类 ..................................124 7.8 综合实践 .........................................124 习题 ..........................................................125 第 8 章 常用类介绍........................129 8.1 案例 8-1:统计整数个数 ...............129 8.2 包装类 .............................................130 8.2.1 Integer 类 ......................................130 8.2.2 Double 类与 Float 类 ...................132 8.2.3 Character 类 ..................................133 8.2.4 Boolean 类 ....................................133 8.2.5 Number 类 ....................................134 8.3 数字处理类 .....................................134 8.3.1 Math 类 .........................................134 8.3.2 Random 类 ....................................135 8.3.3 BigInteger 类 ................................136 8.3.4 BigDecimal 类 ..............................136 8.3.5 数字格式化 ..................................137 8.4 集合类 .............................................139 8.4.1 Collection 接口 .............................139 8.4.2 List 集合 .......................................139 8.4.3 Set 集合 ........................................141 8.4.4 Map 集合 ......................................142 8.4.5 迭代 ..............................................143 8.4.6 比较 ..............................................144 8.5 综合实践 .........................................145 习题 ..........................................................145 第 9 章 异常处理............................147 9.1 案例 9-1:除 0 异常捕获 ...............147 9.2 异常的概念 .....................................148 9.3 异常处理机制 .................................149 9.4 异常的分类 .....................................150 9.4.1 可控式异常 ..................................151 9.4.2 运行时异常 ..................................151 9.5 获取异常信息 .................................152 9.6 抛出异常 .........................................153 9.6.1 throws 语句 ...................................153 9.6.2 throw 语句 ....................................154 9.7 自定义异常 .....................................155 9.7.1 创建自定义异常类 ......................155 9.7.2 使用自定义异常类 ......................155 9.8 综合实践 .........................................155 习题 ..........................................................156 第 10 章 图形用户界面设计.......................................157 10.1 案例 10-1:计算器(一) ...........157 10.2 Swing 程序设计概述 ....................159 10.3 常用组件 .......................................161 10.3.1 窗体 ............................................161 10.3.2 面板 ............................................163 10.3.3 标签 ............................................163 10.3.4 按钮 ............................................164 10.3.5 文本框 ........................................165 10.4 案例 10-2:计算器(二) ...........166 10.5 常用布局管理器 ...........................169 10.5.1 流布局 FlowLayout ....................169 10.5.2 边界布局 BorderLayout .............171 10.5.3 网格布局 GridLayout .................172 10.5.4 绝对布局 ....................................173 10.6 事件处理机制 ...............................173 10.6.1 事件监听器 ................................174 10.6.2 ActionListener 接口与 ActionEvent 类 ......................175 10.7 案例 10-3:学生食堂问卷调查 ...177 10.8 选择类组件及选项事件 ...............180 10.8.1 单选按钮 JRadioButton .............180 10.8.2 复选框 JCheckBox .....................182 10.8.3 组合框 JComboBox ...................182 10.8.4 选项事件 ItemEvent ...................184 10.8.5 列表框 JList ................................185 10.9 综合实践 .......................................189 习题 ..........................................................189 第 11 章 图形用户界面应用开发..........................193 11.1?案例 11-1:记事本(一) ...........193 11.2 下拉式菜单的制作 .......................197 11.3 键盘事件 .......................................201 11.4 鼠标事件 .......................................203 11.5 创建弹出式菜单 ...........................205 11.6 案例 11-2:记事本(二) ...........206 11.7 对话框的使用 ...............................209 11.7.1 JOptionPane 类 ...........................209 11.7.2 JFileChooser 类...........................214 11.7.3 自定义对话框 .............................216 11.8 输入和输出 ...................................218 11.8.1 File 类 .........................................218 11.8.2 字节流 .........................................220 11.8.3 字符流 .........................................223 11.9 工具栏的制作 ...............................226 11.10 AWT 绘图 ....................................227 11.10.1 Graphics ....................................227 11.10.2 Graphics2D ...............................229 11.10.3 Canvas 类 ..................................231 11.10.4 绘制图片 ...................................232 11.11 综合实践 .....................................234 习题 ..........................................................235 第 12 章 数据库操作...........................237 12.1 数据库基础知识 ...........................237 12.1.1 基本概念 ....................................237 12.1.2 关系型数据库 ............................238 12.1.3 SQL .............................................240 12.2 案例 12-1:访问学生数据库 .......241 12.3 JDBC .............................................243 12.3.1 JDBC 驱动程序 ..........................244 12.3.2 JDBC 中常用的类和接口 ..........244 12.4 JTable 组件 ....................................251 12.4.1 表格的创建 ................................252 12.4.2 表格的显示 ................................253 12.4.3 表格的常用方法 ........................254 12.4.4 表格模型 ....................................256 12.5 综合实践 .......................................261 习题 ..........................................................261 第 13 章 多线程.......................................263 13.1 案例 13-1:走动的时钟 ...............263 13.2 创建多线程 ...................................265 13.2.1 继承 Thread 类 ...........................265 13.2.2 实现 Runnable 接口 ...................266 13.3 线程的生命周期 ...........................267 13.4 线程的同步 ...................................269 13.5 综合实践 .......................................272 习题 ..........................................................273 参考文献.............................................274
黄振业,副教授,浙江大学计算机科学与工程学系硕士,2004年工作以来先后承担C语言、Visual C#、Java语言、Python语言等程序设计相关课程的教学工作,有着丰富的程序设计类课程教学经验。同时还担任学校ACM程序设计竞赛总教练,多次指导学生获得浙江省大学生程序设计竞赛专科组金牌,蓝桥杯C/C++专科组国赛一等奖、团体程序设计天梯赛高校金牌。 曲欣欣,讲师,湖南大学计算机科学与技术专业硕士,2015年以来一直承担Java相关课程的教学工作,教学经验丰富,曾多次指导学生参加各类程序设计竞赛获得优异的成绩。
本书适合作为高职高专院校计算机及相关专业的教材,也可作为职业培训的教材或自学者的参考书。