Java程序设计基础教程(慕课版)

作者
丛书名
新一代信息技术“十三五”系列规划教材
出版社
人民邮电出版社
ISBN
9787115495143
简要
简介
内容简介 本书通过大量案例详细讲解了Java程序设计的基础知识,共12章,内容包括:Java基础知识,基本类型及运算符,控制执行流程,字符串,面向对象,集合和数组,文件及流,日期和时间,反射、异常及枚举,并发编程,网络编程及综合实训——简易网上自助银行系统。本书运用图、文、视频配合讲解,浅显易懂,代码注释详细,配全套慕课视频,资源丰富,贴近行业应用。 本书适合作为本科、高职高专、培训班Java基础课程的教材,也可供读者自学使用。
目录
第 1章 Java基础知识 1


1.1 Java简介 2


1.1.1 Java的诞生及发展历程 2


1.1.2 Java的语言特点 2


1.2 Java开发环境搭建 3


1.2.1 JDK、JRE与JVM 3


1.2.2 系统环境变量配置 4


1.3 Java开发工具的使用 11


1.3.1 Java比较流行的编辑工具简介 12


1.3.2 Eclipse的安装及使用 13


1.4 动手任务:使用Eclipse编写Hello World程序 14


1.5 动手任务:创建一个Java项目 18


1.6 本章小结 18


第 2章 基本数据类型及运算符 20


2.1 基本数据类型 21


2.1.1 基本数据类型分类 21


2.1.2 基本数据类型的拆装箱 22


案例2-1 常量和变量 23


案例2-2 基本数据类型的拆装箱 23


案例2-3 获取基本数据类型的范围值 24


案例2-4 包装类的转换方法 25


2.1.3 拓展:Integer的parse()和valueOf()使用 25


2.2 运算符 26


2.2.1 算术运算符 26


案例2-5 加减运算 27


案例2-6 乘除法运算 28


案例2-7 取余运算 28


案例2-8 自增自减 29


2.2.2 关系运算符和逻辑运算符 29


案例2-9 逻辑与运算与逻辑或运算 31


2.2.3 赋值运算符与条件运算符 32


2.2.4 运算符的优先级 33


案例2-10 二目运算求值顺序 34


2.3 动手任务:IP地址转换程序设计 35


2.4 本章小结 37


第3章 控制执行流程 38


3.1 选择结构语句 39


3.1.1 if条件语句 39


案例3-1 if-else初探 39


案例3-2 if-else嵌套语句 40


3.1.2 switch条件语句 40


案例3-3 switch实现阿拉伯数字转中文大写数字 41


案例3-4 当前月份距元旦天数 41


3.2 循环结构语句 42


3.2.1 while循环语句 42


案例3-5 循环输出1~10 42


3.2.2 do-while循环语句 43


案例3-6 while和do-while 43


3.2.3 for循环语句 44


案例3-7 for循环的使用 44


案例3-8 多变量for语句 45


3.2.4 break与continue 45


案例3-9 break和continue 45


3.3 动手任务:冒泡排序 46


案例3-10 数组冒泡排序 47


3.4 本章小结 48


第4章 字符串 49


4.1 String类及其常用API 50


案例4-1 字符串的初始化 50


4.1.1 字符串常量池 51


案例4-2 字符串不同创建方式耗时比较 51


4.1.2 字符串常用API 52


案例4-3 字符串非空判断与长度返回 53


案例4-4 字符串的查询操作 54


案例4-5 字符串的修改操作 55


案例4-6 字符串的分割操作 56


案例4-7 字符串的比较操作 57


4.1.3 拓展:不变的字符串 57


4.2 StringBuffer类 59


4.2.1 StringBuffer的应用 59


案例4-8 StringBuffer的字符串拼接插入 59


案例4-9 StringBuffer的常用操作方法 60


4.2.2 StringBuilder与StringBuffer的比较 61


案例4-10 StringBuilder的常用方法 61


4.3 常用的JavaAPI 62


4.3.1 System类 62


案例4-11 系统环境变量 62


案例4-12 系统当前时间 63


案例4-13 数组拷贝 64


4.3.2 Random类与Math类 64


案例4-14 Random随机生成随机数 64


案例4-15 数学类 66


4.4 动手任务:猜数字游戏 66


案例4-16 Scanner初识 67


案例4-17 猜数字游戏 68


4.5 本章小结 69


第5章 面向对象 70


5.1 面向对象概念 71


5.2 类的概念 72


5.2.1 什么是类 72


5.2.2 类的使用 72


案例5-1 类的声明 73


案例5-2 类的使用 74


案例5-3 方法调用及返回值 75


5.3 封装 76


案例5-4 方法封装 76


案例5-5 属性封装 77


5.4 继承 79


案例5-6 鱼的继承 80


案例5-7 抽象类的定义和使用 83


案例5-8 接口的使用 84


5.5 多态 86


5.5.1 多态的概念 86


5.5.2 重写与重载 87


案例5-9 方法的重载 87


案例5-10 方法的重写 88


5.5.3 内部类 89


案例5-11 内部类的创建及使用 89


案例5-12 嵌入类 91


案例5-13 内部成员类 92


案例5-14 本地类 93


案例5-15 内部类的相互访问 94


5.5.4 拓展:Object类 97


5.6 动手任务:多态的强大——间谍的变身技能 97


5.7 本章小结 100


第6章 集合和数组 102


6.1 集合初探 103


6.1.1 Collection 103


6.1.2 Map集合 104


案例6-1 Map的使用 104


案例6-2 HashMap及TreeMap的使用 106


6.1.3 List链表 107


案例6-3 顺序表 108


案例6-4 链表操作 111


6.1.4 Set集合 112


案例6-5 计算出现的次数 112


6.2 集合的遍历 113


6.2.1 Iterator接口 113


案例6-6 集合的迭代 113


6.2.2 增强型for循环 115


案例6-7 增强型for循环 115


6.3 动手任务:三人斗地主——洗牌发牌程序 116


6.4 数组 119


6.4.1 数组的定义及初始化 120


6.4.2 数组的使用 120


案例6-8 一维数组的使用 120


案例6-9 二维数组 122


6.5 动手任务: 数组排序 122


6.6 本章小结 125


第7章 文件及流 126


7.1 File类 127


7.1.1 File的常用API 127


案例7-1 文件的创建 127


案例7-2 文件的固有属性 128


案例7-3 文件的可变属性 129


7.1.2 文件遍历 130


案例7-4 获取子文件列表和 130


案例7-5 获取下的所有文本文件并打印输出 131


案例7-6 删除文件夹 132


7.2 输入输出流 133


7.2.1 输入输出流概念 134


7.2.2 字节流 134


案例7-7 文件输入输出流 135


案例7-8 文件的复制 137


案例7-9 RandomAccessFile操作文件 138


7.2.3 字符流 139


案例7-10 使用缓存字符流读取和写入数据 139


7.3 动手任务:文件系统 140


7.4 本章小结 146


第8章 日期和时间 147


8.1 Date类 148


8.1.1 计算机的时间 148


案例8-1 当前时间与计算机元年 148


8.1.2 Date类的应用 148


案例8-2 Date类的使用 149


8.2 Calendar类 149


8.2.1 什么是日历类型 149


8.2.2 日历类型的计算 149


案例8-3 日期的计算 149


案例8-4 万年历 151


8.3 动手任务:超市过期提醒及促销活动 152


8.4 本章小结 153


第9章 反射、异常及枚举 154


9.1 反射 155


9.1.1 什么是反射 155


案例9-1 类型自动识别 155


案例9-2 利用Class创建类对象 156


案例9-3 通过类名获取类信息 157


案例9-4 instanceof获取类型信息 158


案例9-5 Java的String类的反射 159


9.1.2 反射的应用 160


案例9-6 获取类的构造方法 160


案例9-7 使用反射创建一个类的


对象 161


案例9-8 获取类中的成员属性 162


案例9-9 改变成员变量的值 163


案例9-10 获取类的方法 164


案例9-11 执行类的方法 165


9.2 异常 167


9.2.1 概念 167


9.2.2 基本异常 168


案例9-12 数组下标越界异常 168


案例9-13 异常的捕获顺序 168


案例9-14 finally语句块 169


案例9-15 异常抛出 170


9.2.3 自定义异常 171


案例9-16 自定义异常 171


9.2.4 拓展:Error及Runtime


Exception 172


9.3 枚举 172


案例9-17 枚举的简单使用 173


案例9-18 向enum中添加新方法 173


案例9-19 Enum实现接口 174


9.4 动手任务:复制对象属性 175


9.5 本章小结 179


第 10章 并发编程 181


10.1 线程与进程 182


10.2 线程的创建 182


10.2.1 继承Thread类 182


案例10-1 Thread实现多线程 184


案例10-2 Thread的部分方法使用 185


案例10-3 start方法和run方法 185


10.2.2 实现Runnable接口 187


案例10-4 Runnable实现多线程 187


10.3 线程的调度 187


10.3.1 线程的生命周期 187


10.3.2 线程的优先级 188


案例10-5 线程优先级 188


10.3.3 线程插队 189


案例10-6 线程插队 190


10.3.4 线程休眠 191


案例10-7 线程休眠 191


10.3.5 同步与互斥 193


案例10-8 非同步接水 193


案例10-9 同步接水 194


案例10-10 线程互斥的计数器 195


案例10-11 生产者-消费者模型 195


10.3.6 死锁问题 197


案例10-12 线程死锁 198


10.4 多线程 199


10.4.1 线程池技术 199


案例10-13 缓存线程池 199


案例10-14 计划任务线程池 200


10.4.2 Callable和Future 200


案例10-15 Callable的用法 201


案例10-16 Future的用法 201


10.5 动手任务:多线程获取文件大小 202


10.6 本章小结 205


第 11章 网络编程 206


11.1 网络通信协议 207


11.1.1 TCP及UDP协议 207


案例11-1 URL和URLConnection的使用 207


11.1.2 IP地址及端口号 208


案例11-2 IP类的使用 208


11.2 TCP通信 209


11.2.1 Socket 209


11.2.2 ServerSocket 209


案例11-3 端到端通信 210


11.3 UDP通信 211


11.3.1 DatagramPacket 211


11.3.2 DatagramSocket 212


案例11-4 UDP通信模型 213


11.4 动手任务:通信程序设计(对点聊天室) 214


11.5 本章小结 218


第 12章 综合实训——简易网上自助银行系统 219


12.1 JDBC 220


12.1.1 JDBC的概念 220


12.1.2 JDBC通用API 221


案例12-1 DriverManager的使用 222


案例12-2 Statement的使用 224


案例12-3 PreparedStatement和ResultSet的使用 226


12.2 日志 228


12.3 测试 228


12.3.1 JUnit简介 228


12.3.2 功能测试及断言 229


案例12-4 简单的JUnit测试案例 229


案例12-5 JUnit的注解 230


12.4 事务 232


案例12-6 本地事务 233


12.5 简易网上银行系统 238


12.5.1 基础项目搭建 238


12.5.2 账户注册及登录 255


12.5.3 转账功能(事务) 260


12.6 本章小结 264




有问题微信扫码联系

推荐

Understand China
桂ICP备20004708号-4