技术教育社区
www.teccses.org

案例式JAVA语言程序设计

封面

作者:徐硕编著 著

页数:312

出版社:知识产权出版社

出版日期:2024

ISBN:9787513095235

电子书格式:pdf/epub/txt

网盘下载地址:下载案例式JAVA语言程序设计

内容简介

本书通过一个完整的案例将Java语言的基本特征、面向对象特征以及Java语言的高级特征有机融合在一起, 形成Java语言的核心知识体系, 让信息管理与信息系统相关专业的学生快速掌握Java语言的基本思想和基本技能, 培养学生正确应用面向对象的思维方法分析问题和解决问题的能力。Java语言的基本特征包括数据类型、数据与字符串、基本数据处理、数据输入/输出以及图形用户界面等。Java语言面向对象特征包括面向对象的基本概念与思想, 类与对象, 封装、继承与多态, 抽象类与接口等。

作者简介

徐硕,男,1979年出生。现为北京工业大学经济与管理学院教授,博士生导师,信息管理与信息系统专业负责人。主要研究方向为技术预见、产业分析和大数据挖掘等。获2013年度“中央国家机关青年岗位能手”荣誉称号,在中国图书馆学会“青年学术之星”荣誉称号,2019年“国际新兴技术预测竞赛”获第二名。先后主持国家科技支撑计划课题、国家自然科学基金项目(青年及面上)、北京市社科基金一般项目、北京市教最社科重点项目、广东省自然科学基金等多项国家级及省部级研究课题。近年来,在JAIST、JoI、TFSC、SCIM、JIS、PLoS ONE、情报学报、科研管理等重要期刊和学术会议上发表学术论文100余篇,授权发明专利6项(中国发明专利5项,韩国发明专利1项),撰写学术专著1部。

目录

第1章 绪论001

1.1 编程语言的发展 / 001

1.1.1 机器语言 / 002

1.1.2 汇编语言 / 003

1.1.3 面向过程的编程语言 / 004

1.1.4 面向对象的编程语言 / 005

1.1.5 面向对象的编程语言的发展历程 / 006

1.1.6 编程语言的流行度 / 006

1.2 编程语言Java / 008

1.2.1 Java语言的产生 / 008

1.2.2 Java语言的特点 / 009

1.3 Java程序的集成开发环境 / 013

1.4 Java虚拟机 / 014

本章习题 / 016

第2章 Java语言基础017

2.1 Java基本语法 / 017

2.1.1 标识符 / 017

2.1.2 关键字 / 018

2.1.3 Java中的特殊符号 / 019

2.2 原始数据类型 / 020

2.2.1 整数类型 / 020

2.2.2 字符数据类型 / 022

2.2.3 浮点类型 / 025

2.2.4 数据类型转换 / 026

2.3 String类型 / 027

2.4 运算符 / 028

2.4.1 算术运算符 / 029

2.4.2 移位运算符 / 029

2.4.3 位运算符 / 030

2.4.4 赋值运算符 / 031

2.4.5 关系运算符 / 031

2.4.6 逻辑运算符 / 032

2.4.7 运算符的优先级 / 033

2.5 常量及变量 / 034

2.5.1 常量 / 034

2.5.2 变量 / 034

2.6 语句 / 035

2.6.1 Java语言中的三种语句 / 035

2.6.2 程序控制流:条件语句 / 036

2.6.3 程序控制流:循环语句 / 040

2.6.4 程序控制流:控制循环语句 / 043

本章习题 / 045

第3章 类与对象046

3.1 面向过程与面向对象 / 046

3.1.1 面向过程与面向对象的区别 / 046

3.1.2 封装机制 / 048

3.1.3 面向过程与面向对象的优缺点 / 048

3.2 类与对象的概念 / 049

3.2.1 对象 / 049

3.2.2 类 / 050

3.2.3 类与对象的关系 / 050

3.2.4 类的声明 / 051

3.2.5 创建及使用对象 / 052

3.3 构造方法 / 056

3.4 类的严谨定义 / 057

3.4.1 访问权限修饰符 / 058

3.4.2 非访问权限修饰符 / 060

3.4.3 类修饰符使用注意事项 / 062

3.5 数据成员 / 062

3.5.1 访问权限修饰符 / 063

3.5.2 非访问权限修饰符 / 063

3.6 成员方法 / 066

3.6.1 成员方法的分类 / 066

3.6.2 成员方法的声明 / 066

3.6.3 方法体内的局部变量 / 067

3.6.4 成员方法的返回值 / 068

3.6.5 形式参数与实际参数 / 069

3.6.6 成员方法引用注意事项 / 070

3.6.7 成员方法的递归引用 / 071

3.6.8 static成员方法 / 071

3.6.9 final成员方法 / 072

本章习题 / 072

第4章 封装、继承与多态074

4.1 封装 / 074

4.1.1 封装的概念 / 074

4.1.2 封装的特征 / 075

4.2 继承 / 077

4.2.1 继承的概念 / 077

4.2.2 访问修饰符 / 080

4.2.3 成员方法覆盖 / 084

4.2.4 数据成员隐藏 / 086

4.2.5 关键字super / 087

4.2.6 子类的构造过程 / 088

4.3 多态 / 088

4.4 抽象类与抽象方法 / 092

4.5 接口 / 096

4.5.1 接口的声明 / 096

4.5.2 接口与抽象类的异同 / 102

本章习题 / 103

第5章 数组与字符串104

5.1 数组的概念 / 104

5.2 一维数组 / 105

5.2.1 一维数组的声明 / 105

5.2.2 一维数组的初始化 / 105

5.2.3 数组的增长原理 / 109

5.2.4 数组的赋值及参数传递 / 110

5.2.5 对象数组 / 112

5.3 二维数组 / 115

5.3.1 二维数组的声明 / 115

5.3.2 二维数组的初始化 / 115

5.3.3 二维数组的本质 / 117

5.4 字符串 / 121

5.4.1 String类 / 121

5.4.2 StringBuffer类和StringBuilder类 / 126

本章习题 / 128

第6章 集合类130

6.1 集合和集合框架 / 130

6.1.1 集合 / 130

6.1.2 集合框架 / 131

6.1.3 迭代器 / 132

6.2 List接口和实现类 / 133

6.2.1 ArrayList实现类 / 134

6.2.2 List的排序 / 137

6.2.3 自定义泛型类 / 139

6.2.4 Vector类 / 142

6.2.5 LinkedList类 / 143

6.3 Set接口 / 146

6.3.1 HashSet类 / 148

6.3.2 SortedSet接口和TreeSet类 / 151

6.3.3 匿名类 / 154

6.4 Map接口 / 157

6.4.1 单文档词频统计 / 160

6.4.2 多文档词频统计 / 161

本章习题 / 162

第7章 初级图形用户界面设计163

7.1 GUI概述 / 163

7.1.1 Java的图形设计包 / 164

7.1.2 用户界面三要素 / 164

7.1.3 awt和swing的特点 / 165

7.1.4 构建GUI应用的步骤 / 166

7.2 容器的分类及常用方法 / 166

7.2.1 容器的分类 / 166

7.2.2 容器的方法 / 167

7.3 WindowBuilder插件 / 169

7.4 布局管理器 / 170

7.4.1 FlowLayout(流式布局) / 172

7.4.2 BorderLayout(边界布局) / 174

7.4.3 GridLayout(网格布局) / 180

7.4.4 CardLayout(卡片布局) / 182

7.4.5 BoxLayout(箱式布局) / 186

7.4.6 GridBagLayout(网格包布局) / 190

本章习题 / 195

第8章 高级图形用户界面设计196

8.1 事件响应原理 / 196

8.1.1 事件与事件源 / 196

8.1.2 事件监听器 / 197

8.1.3 委托事件模型 / 197

8.2 事件适配器 / 198

8.3 KeyEvent事件及其响应 / 199

8.4 MouseEvent事件及其响应 / 204

8.5 JScrollBar组件 / 210

8.6 JTabbedPane容器 / 216

8.7 菜单设计 / 219

8.8 对话框设计 / 226

8.8.1 JDialog类 / 226

8.8.2 JOptionPane类 / 227

本章习题 / 237

第9章 异常处理238

9.1 异常 / 238

9.1.1 异常的产生与传递 / 240

9.1.2 运行时异常处理 / 240

9.2 异常处理方法 / 241

9.2.1 throws处理方法 / 242

9.2.2 try-catch处理方法 / 244

9.3 异常处理机制 / 247

9.3.1 多重异常捕获 / 248

9.3.2 隐式的finally语句块 / 249

9.3.3 嵌套try-catch结构 / 249

9.3.4 有异常的方法覆盖 / 250

9.4 异常处理的原则和技巧 / 252

9.5 自定义异常 / 252

本章习题 / 255

第10章 输入与输出256

10.1 Java的输入与输出 / 256

10.2 字节流与字符流 / 257

10.2.1 InputStream类 / 257

10.2.2 OutputStream类 / 259

10.2.3 Reader类与Writer类 / 263

10.3 文件的输入与输出 / 269

10.3.1 File类 / 269

10.3.2 FileInputStream类与FileOutputStream类 / 272

10.3.3 FileReader类和FileWriter类 / 274

10.4 对象的序列化 / 276

10.4.1 序列化的概念 / 276

10.4.2 ObjectInputStream和ObjectOutputStream中的

对象序列化 / 276

10.4.3 序列化对象注意事项与应用 / 279

本章习题 / 280

附 录281

附录A JDK的安装 / 281

附录B Eclipse的安装 / 287

附录C WindowBuilder的安装 / 290

插图目录

图1-1 计算机语言与自然语言之间的鸿沟变化 002

图1-2 机器语言代码示例 003

图1-3 汇编语言代码示例 004

图1-4 按TIOBE指数排名前15的编程语言 007

图1-5 按PYPL指数排名前15的编程语言 007

图1-6 传统语言与Java语言程序的运行机制 010

图1-7 JVM的内部体系结构 015

图2-1 ASCII字符编码 024

图2-2 单分支if语句执行流程图 036

图2-3 双分支if-else语句执行流程图 037

图3-1 封装机制示意图 048

图3-2 类与对象的关系 051

图3-3 类的图形表示 052

图3-4 声明对象的内存分配 053

图3-5 建立对象的内存分配 054

图3-6 简单变量的栈内存分配示例 055

图3-7 静态数据成员内存变化情况 064

图3-8 静态常量数据成员内存变化情况 066

图4-1 Circle1和Circle2类的图形表示 077

图4-2 运输工具继承树示意图 079

图4-3 借记卡类(DebitCard)和信用卡类(CreditCard)的图形表示 081

图4-4 银行卡父类(Card)、借记卡子类(DebitCard)和信用卡子类(CreditCard)的图形表示 081

图4-5 Object类的图形表示 088

图4-6 抽象Shape父类、Circle子类、Rectangle子类和Triangle子类的图形表示 093

图4-7 类、接口及其关系示意图 098

图4-8 抽象Animal父类、Runnable接口、Flyable接口、Dog子类和Pigeon子类的图形表示 098

图5-1 声明时数组对象的内存分配 105

图5-2 数组对象a及其引用的数组内容 106

图5-3 初始化后数组对象的内存分配 106

图5-4 用关键字new初始化后的整型(int)数组 107

图5-5 用关键字new初始化后的String类型数组 107

图5-6 数组增长原理示意图 109

图5-7 赋值语句执行前后数组的指向情况 111

图5-8 规整型arra数组的各元素值 116

图5-9 不规整型arra数组的各元素值 117

图5-10 二维数组在Java语言中的实现 118

图5-11 str关联字符串对象示意图 121

图5-12 两种创建字符串对象方式的差异示意图 123

图5-13 字符串连接操作实例 125

图6-1 核心集合接口及其关系 131

图6-2 核心集合接口及主要实现类 132

图6-3 分组主要思想示意图 140

图6-4 双向链表与双向循环链表示意图 143

图6-5 栈(stack)结构示意图 144

图6-6 Set过滤重复元素的过程 148

图6-7 Map与数据库中的表(table)对比 157

图7-1 FlowLayout示例程序运行界面 174

图7-2 BorderLayout布局管理器的窗格安排 175

图7-3 BorderLayout示例程序运行界面 177

图7-4 BorderLayout和FlowLayout联合使用示例程序运行界面 179

图7-5 计算器示例程序运行界面 182

图7-6 CardLayout示例程序运行界面 186

图7-7 BoxLayout示例程序运行界面 190

图7-8 复杂网络布局示意图 191

图7-9 GridBagLayout示例程序运行界面 194

图8-1 文本拷贝示例程序运行界面 204

图8-2 MouseEvent事件及其响应示例程序运行界面 210
…..

前言

Java作为数智时代的通行语言,已经成为许多项目的首选语言,Storm、Kafka、Spark以及许多大语言模型(LLM)都可以在Java虚拟机(JVM)上平稳运行。因此,“Java语言”作为信息管理与信息系统、大数据管理与应用、计算机科学与技术等专业的学科基础课程,在教学改革中担负着本科人才赋能大数据分析的重要使命,这对该课程在不同的点或面上展示价值塑造、能力培养和知识传授三位一体的育人目标提出了更高要求。
本书通过对小型专利文献大数据分析平台的剖析,将整个平台分解为多个模块,根据每个模块所涉及的知识点将其嵌入相应章节中。本书聚焦于课程案例实训的具体过程和方法,突出寓价值观引导于Java语言编程知识传授和大数据分析能力培养之中的特点。随着每个章节教学活动的开展,完成相应模块的代码编写,在课程教学结束后,学生将能够像搭积木一样完成小型信息系统的开发。通过完整的案例将Java语言的基本特征、面向对象特征以及Java语言的高级特征有机融合在一起,形成Java语言的核心知识体系,让相关专业的学生快速掌握Java语言的基本思想和基本技能,培养学生正确应用面向对象的思维方法分析问题和解决问题的能力。同时,为了强化学生对所学Java语言知识的理解和灵活运用,每章均会附一定数量的编程作业习题。案例式Java语言程序设计使学生所学理论知识不再是无源之水、无本之木,可以极大地激发其学习兴趣与热情。

赞助用户下载地址

立即下载

(解压密码:www.teccses.org)

Article Title:《案例式JAVA语言程序设计》
Article link:https://www.teccses.org/33818.html