注册 | 登录读书好,好读书,读好书!
读书网-DuShu.com
当前位置: 首页出版图书科学技术计算机/网络计算机科学理论与基础知识漫画Java编程

漫画Java编程

漫画Java编程

定 价:¥119.90

作 者: 孙卫琴 杜聚宾 著
出版社: 电子工业出版社
丛编项:
标 签: 暂缺

购买这本书可以去


ISBN: 9787121449635 出版时间: 2023-02-01 包装: 平装-胶订
开本: 16开 页数: 字数:  

内容简介

  本书结合大量典型生动的范例,深入浅出地讲解了Java编程的各种基本技术。本书的范例都基于最新的JDK 17版本。本书内容包括:创建和运行Java程序的基本方法、Java语言的基本语法、数据类型和变量、操作符、流程控制、继承、多态、访问控制级别、接口、内部类、异常处理、数组、集合、输入与输出、多线程、反射和注解。本书别具一格,以Java领域的两位大咖老师:杜聚宾和孙卫琴传授大力Java编程技术为线索,带领读者身临其境地进入Java技术之旅。本书加入了许多生动形象的漫画,以及贴近现实生活的有趣范例,大大增加了书的趣味性,帮助读者轻松地掌握Java语言的编程思想和种种运用技巧。本书主要面向所有的Java初学者,以及希望巩固Java面向对象编程思想和实用技巧的程序员。本书还可作为高校的Java课程教材,以及企业Java培训教材。

作者简介

  孙卫琴,知名IT作家和Java开发专家,毕业于上海交通大学,曾创办程序员技术网站,已经创作了近二十部软件开发领域的专著,多部作品曾在同类书籍中位居榜单前列。目前在Java培训界的行业巨头——动力节点就职,担任Java研究院首席主编。 杜聚宾,15年以上的软件研发及项目管理经验,曾先后就职于中讯、甲骨文、百度等国内大型软件公司,先后担任过Java高级工程师、CTO等职务,热衷于技术分享。制作的Java视频课程,通俗易懂,由浅入深,深受网友喜欢,在字母站上,“Java零基础视频”单套视频的播放量超千万次。目前在Java培训界的行业巨头——动力节点就职,担任Java教学总监。

图书目录

第1章 初识Java 编程
1.1 编写Java 源程序
1.1.1 创建一个Java 对象
1.1.2 程序入口main() 方法
1.1.3 面向对象的基本思想
1.2 Java 编译器和Java 虚拟机
1.3 编译和运行Java 程序
1.3.1 认识一下JDK
1.3.2 本范例的目录结构
1.3.3 编译Java 源程序
1.3.4 运行Java 程序
1.3.5 创建用于编译和运行Java 程序的批处理文件
1.4 使用Intellij IDEA 软件开发工具
1.5 编程实战:创建学生类和学生对象
1.5.1 编程提示:多个字符串用操作符“ ”进行拼接
1.5.2 编程拓展:读取命令行输入的参数
1.5.3 编程拓展:读取用户在控制台输入的数据
1.6 小结
 
第2章 基本语法
2.1 Java 源文件的结构
2.2 关键字
2.3 标识符
2.4 包声明语句
2.4.1 包的命名规范
2.4.2 JDK类库
2.5 包引入语句
2.6 方法的声明
2.7 注释语句
2.8 编程规范
2.9 JavaDoc 文档
2.10 直接用JDK 来编译和运行本章范例
2.11 用IDEA 开发本章范例
2.12 编程实战:建立学生和班主任老师的关联
2.12.1 编程提示:使用package和import 语句
2.12.2 编程拓展:给Java 程序打包
2.13 小结
 
第3章 数据类型
3.1 基本类型
3.1.1 boolean类型
3.1.2 byte、short、int和long类型
3.1.3 char类型与字符编码
3.1.4 float和double类型
3.2 引用类型
3.3 基本类型与引用类型的区别
3.4 数据类型和变量
3.5 直接数
3.5.1 直接数的类型
3.5.2 直接数的赋值
3.6 包装类
3.7 编程实战:建立图书的电子档案
3.7.1 编程提示:为变量设定合理的数据类型
3.7.2 编程拓展:创建表示日期的Date 对象
3.8 小结
 
第4章 变量的作用域和类型
4.1 变量的作用域
4.2 对象的默认引用:this
4.3 静态变量和实例变量
4.4 静态方法和实例方法
4.4.1 静态方法
4.4.2 实例方法
4.5 成员变量和局部变量同名
4.6 参数传递
4.7 编程实战:统计员工的信息
4.7.1 编程提示:定义静态变量
4.7.2 编程拓展:定义静态方法
4.8 小结
 
第5章 变量的生命周期
5.1 局部变量和方法参数的生命周期
5.2 类和静态变量的生命周期
5.3 对象和实例变量的生命周期
5.3.1 用new 关键字创建对象
5.3.2 隐含的默认构造方法
5.3.3 对象的垃圾回收
5.4 变量的初始化及默认值
5.4.1 成员变量的默认初始化
5.4.2 静态变量的显式初始化
5.4.3 实例变量的显式初始化
5.4.4 局部变量的初始化
5.5 编程实战:电饭锅的内存之旅
5.5.1 编程提示:善用各种类型的变量
5.5.2 编程拓展:程序剧本在内存舞台上的演绎
5.6 小结
 
第6章 操作符
6.1 操作符的分类
6.2 算术操作符
6.2.1 一元算术操作符
6.2.2 二元算术操作符
6.2.3 算术运算中的数据类型转换
6.2.4 复合算术赋值操作符
6.3 比较操作符
6.4 逻辑操作符
6.4.1 与操作符
6.4.2 或操作符
6.4.3 短路操作符和非短路操作符
6.4.4 非操作符
6.5 三元条件操作符“?:”
6.6 赋值操作符
6.7 编程实战:求随机数
6.7.1 编程提示:自定义的生成随机数的算法
6.7.2 编程拓展:Math类的random() 方法
6.8 小结
 
第7章 流程控制
7.1 分支语句
7.1.1 if-else 语句
7.1.2 switch 语句
7.2 循环语句
7.2.1 while 语句
7.2.2 do-while 语句
7.2.3 for 语句
7.2.4 多重循环
7.3 流程跳转语句
7.4 编程实战:求一个正整数的阶乘
7.4.1 编程提示:使用循环语句
7.4.2 编程拓展:使用递归
7.5 小结
 
第8章 继承
8.1 继承的基本语法
8.2 Object 祖先类
8.3 成员方法的重载
8.4 构造方法的重载
8.5 成员方法的覆盖
8.6 子类访问父类的同名成员变量和方法
8.7 final 修饰符
8.7.1 final类
8.7.2 final 方法
8.7.3 final 变量
8.8 abstract 修饰符
8.8.1 abstract 修饰符的修饰内容
8.8.2 abstract 修饰符的语法规则
8.9 调用父类的构造方法
8.10 编程实战:覆盖和重载Object类的方法
8.10.1 编程提示:覆盖equals() 方法
8.10.2 编程拓展:重载toString() 方法
8.11 小结
 
第9章 多态
9.1 实例方法的动态绑定
9.2 静态方法和成员变量的静态绑定
9.3 引用类型操作符
9.4 操作符“==”
9.5 引用变量的赋值和类型转换
9.6 instanceof 操作符
9.7 编程实战:饲养员给动物喂食
9.7.1 编程提示:动物的多态
9.7.2 编程拓展:创建食物工厂
9.7.3 编程拓展:运用反射机制创建Food 对象
9.7.4 编程拓展:运用泛型避免ClassCastException
9.8 小结
 
第10章 访问控制级别
10.1 封装类的部分属性和方法
10.2 封装的概念与作用
10.3 封装类的构造方法
10.4 四种访问控制级别
10.5 编程实战:模拟电风扇
10.5.1 编程提示:封装实现细节
10.5.2 编程拓展:运用线程模拟扇叶旋转
10.6 小结
 
第11章 接口
11.1 接口的定义和基本用法
11.2 接口的成员变量
11.3 接口的方法
11.4 接口的继承
11.5 一个类实现多个接口
11.6 比较抽象类与接口
11.7 编程实战:创建适配器
11.7.1 编程提示:通过继承实现适配器
11.7.2 编程拓展:通过组合实现适配器
11.8 小结
 
第12章 内部类
12.1 内部类的种类
12.2 成员内部类
12.2.1 实例内部类
12.2.2 静态内部类
12.3 局部内部类
12.4 匿名类的定义和特点
12.5 匿名类的作用
12.6 用Lambda 表达式代替匿名类
12.7 编程实战:巧用内部类
12.7.1 编程提示:内部类回调外部类
12.7.2 编程拓展:内部类作为外部类的静态工厂
12.8 小结
 
第13章 异常处理
13.1 Java 异常处理机制概述
13.2 Java 异常处理的语法
13.2.1 抛出异常和捕获异常
13.2.2 finally 语句:任何情况下必须执行的代码
13.3 Java 异常类
13.3.1 运行时异常
13.3.2 受检查异常
13.3.3 区分受检查异常和运行时异常
13.4 自定义异常类
13.5 编程实战:处理电梯运行中的异常
13.5.1 编程提示:根据实际需求处理异常
13.5.2 编程拓展:异常链
13.6 小结
 
第14章 数组
14.1 数组简介
14.1.1 数组变量的声明
14.1.2 创建数组对象
14.1.3 访问数组的元素和数组的长度
14.1.4 数组的初始化
14.1.5 遍历数组
14.2 数组排序
14.3 多维数组
14.4 用符号“…”声明数目可变参数
14.5 编程实战:创建会自动排序的数据结构
14.5.1 编程提示:创建包装了数组的Java类
14.5.2 编程拓展:创建容量会自动增长的数据结构
14.6 小结
 
第15章 集合
15.1 Java 集合的类框架
15.2 集合的基本用法
15.2.1 包装类的自动装箱和拆箱
15.2.2 集合的静态of() 方法
15.3 Set
15.3.1 Set 的一般用法
15.3.2 HashSet类
15.3.3 TreeSet类
15.4 List
15.5 Queue
15.6 Map
15.7 用Lambda 表达式指定遍历集合的具体行为
15.8 编程实战:报数游戏
15.8.1 向列表添加和删除元素
15.8.2 运用递归遍历列表
15.9 小结
 
第16章 输入与输出
16.1 输入流和输出流概述
16.2 输入流InputStream类
16.3 过滤输入流:FilterInputStream
16.3.1 BufferedInputStream类
16.3.2 DataInputStream类
16.4 输出流OutputStream类
16.5 过滤输出流:FilterOutputStream
16.5.1 BufferedOutputStream
16.5.2 PrintStream类
16.6 Reader/Writer 概述
16.7 Reader类
16.7.1 InputStreamReader类
16.7.2 BufferedReader类
16.8 Writer类
16.8.1 OutputStreamWriter类
16.8.2 PrintWriter类
16.9 读写文本文件的范例
16.10 File类
16.11 用java.nio.file 包中的类操纵文件系统
16.12 编程实战:遍历目录树
16.12.1 编程提示:使用Files类的walkFileTree() 方法
16.12.2 编程拓展:查看ZIP压缩文件
16.13 小结
 
第17章 多线程的并发运行
17.1 进程和线程的概念
17.2 Java 线程的运行机制
17.3 线程的创建和启动
17.3.1 扩展java.lang.Thread类
17.3.2 实现java.lang.Runnable 接口
17.4 线程的状态转换
17.4.1 新建状态(New)
17.4.2 就绪状态(Runnable)
17.4.3 运行状态(Running)
17.4.4 阻塞状态(Blocked)
17.4.5 等待状态(Waiting)
17.4.6 死亡状态(Terminated)
17.4.7 线程状态转换举例
17.5 线程调度
17.6 线程睡眠
17.7 获得当前线程对象的引用
17.8 后台线程
17.9 编程实战:定时执行任务
17.9.1 编程提示:线程并发访问同一个对象
17.9.2 编程拓展:使用定时器类
17.10 小结
 
第18章 多线程的同步和通信
18.1 线程的同步
18.1.1 同步代码块的语法
18.1.2 线程同步的特征
18.2 线程的通信
18.2.1 线程通信的流程
18.2.2 对象的锁池和等待池
18.3 编程实战:秒针、分针和时针的通信
18.3.1 编程提示:明确线程等待的条件
18.3.2 编程拓展:使用外部锁
18.4 小结
 
第19章 反射机制
19.1 Java 反射API 简介
19.2 动态创建对象
19.3 动态访问对象的属性
19.4 动态访问对象的方法
19.5 动态创建和访问数组
19.6 编程实战:复制对象
19.6.1 编程提示:动态调用JavaBean 的get和set 方法
19.6.2 编程拓展:创建动态代理
19.7 小结
 
第20章 注解
20.1 自定义注解
20.2 对自定义注解的限定
20.3 在类的源代码中使用注解
20.4 在程序中运用反射机制读取类的注解
20.5 基本内置注解
20.6 编程实战:把Java类映射成数据库表
20.6.1 编程提示:定义和使用@Table等注解
20.6.2 编程拓展:识别和处理@Table等注解
20.7 小结

本目录推荐