新書推薦:

《
一切都还来得及
》
售價:NT$
305.0

《
终于想起来爱自己
》
售價:NT$
305.0

《
班级经营:创意型班级的营造
》
售價:NT$
398.0

《
经纬度丛书:临安之变:绍兴体制与南宋中兴
》
售價:NT$
347.0

《
财务自由之路 7年内赚到你的第一个1000万
》
售價:NT$
230.0

《
你不必着急成为一个大人(马家辉和张家瑜的亲情散文之书。原来大家都在偷偷装大人,愿你所有的快乐都不是假装)
》
售價:NT$
305.0

《
古代人的梦与死 近观系列(探索古代中国人的精神世界)
》
售價:NT$
347.0

《
墓地中的军营:越南的军事化景观
》
售價:NT$
454.0
|
內容簡介: |
本书通过一个完整的案例将Java语言的基本特征、面向对象特征以及Java语言的高级特征有机融合在一起,形成Java语言的核心知识体系,让信息管理与信息系统相关专业的学生快速掌握Java语言的基本思想和基本技能,培养学生正确应用面向对象的思维方法分析问题和解决问题的能力。Java语言的基本特征包括数据类型,数据与字符串,基本数据处理,数据输入输出以及图形用户界面等。Java语言面向对象特征包括面向对象的基本概念与思想,类与对象,封装、继承与多态,抽象类与接口等。Java语言的高级特征包括集合类,异常处理,输入输出以及基于JDBC的数据库应用开发等。同时,为强化学生对所学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语言程序设计使学生所学理论知识不再是无源之水、无本之木,可以极大地激发其学习兴趣与热情。
全书共分10章。第1章绪论介绍Java语言的特点和JVM的体系结构,第2章为Java语言基础,第3章为类与对象,第4章为封装、继承与多态,第5章为数组与字符串,第6章为集合类(List、Set和Map接口),第7章和第8章分别为初级和高级图形用户界面设计,第9章为异常处理,第10章为输入与输出。全书内容涵盖了Java语言的基本特征(数据类型、数据与字符串、基本数据处理、数据输入/输出以及图形用户界面等)、面向对象特征(面向对象的基本概念与思想,类与对象,封装、继承与多态,抽象类与接口等)以及高级特征(集合类、异常处理,以及输入/输出等)。
在本书的编写过程中,笔者参考了许多相关书籍和网站,得到了许多同仁和同事的支持与帮助,在此一并表示感谢。首先,感谢支持和参与本课程教学的北京工业大学的学生们,正是他们活跃的思维和永无止境的求知欲激励笔者将自编讲义和课件整理成书,鞭策笔者不断改进与完善书稿。其次,特别感谢北京工业大学对本科教材建设的重视,本书有幸获得北京工业大学本科重点建设教材课题(ID:KT2021NE017)和2021年度北京高等教育本科教学改革创新项目的资助。此外,还要衷心感谢知识产权出版社编辑的认真审阅。正是由于他们的大力支持,才使得本书与广大读者见面。
尽管书稿几经修改,但由于作者水平所限,书中难免有疏漏之处,热诚地欢迎各位同行和广大读者批评指正。
|
|