图书介绍
零基础学Java 第3版PDF|Epub|txt|kindle电子书版本网盘下载
![零基础学Java 第3版](https://www.shukui.net/cover/31/33416532.jpg)
- 常建功等编著 著
- 出版社: 北京:机械工业出版社
- ISBN:9787111372370
- 出版时间:2012
- 标注页数:584页
- 文件大小:150MB
- 文件页数:607页
- 主题词:JAVA语言-程序设计
PDF下载
下载说明
零基础学Java 第3版PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
第一篇Java语言语法基础——面向过程知识1
第1章Java技术概览1
1.1 Java技术1
1.1.1 Java编程语言1
1.1.2 Java语言平台2
1.1.3 Java语言的功能3
1.1.4 Java语言的优点3
1.2 Windows下的“HelloWorld”应用程序4
1.2.1创建应用程序的软件环境4
1.2.2创建“HelloWorld”应用程序的步骤5
1.3深入探讨“HelloWorld”应用程序7
1.3.1注释源代码7
1.3.2实现类定义7
1.3.3详解main方法8
1.4常见疑难问题解答8
1.4.1环境变量设置错误8
1.4.2语法错误9
1.4.3语义错误9
1.4.4运行时错误9
1.5小结10
1.6实践题11
第2章Java开发工具及环境设置12
2.1 Java开发工具简介12
2.1.1下载并安装JDK12
2.1.2设定环境变量15
2.1.3验证JDK环境是否配置成功15
2.2 JDK内置工具16
2.2.1 JDK常用工具16
2.2.2 JDK常用工具实例16
2.2.3应用程序发布工具17
2.3一个简单的Java应用程序18
2.4一个简单的Java Applet应用程序19
2.4.1编写一个Applet19
2.4.2编写承载Applet Java程序的HTML文件19
2.4.3 Applet的运行过程20
2.5注释及内嵌式文档20
2.6常见疑难问题解答21
2.6.1 JDK和J2SDK的区别21
2.6.2 Java文件扩展名是否区分大小写22
2.7小结22
2.8实践题22
第3章Java语言中的数据与运算符23
3.1数制23
3.1.1基本概念23
3.1.2 Java语言中的数制表现形式23
3.2数据类型24
3.2.1整型24
3.2.2字符型27
3.2.3浮点型27
3.2.4布尔型29
3.3变量30
3.3.1变量的声明30
3.3.2变量的含义30
3.3.3变量的分类30
3.4变量如何初始化32
3.5常量34
3.6运算符35
3.6.1算术运算符35
3.6.2关系运算符39
3.6.3逻辑运算符40
3.6.4位运算符42
3.6.5移位运算符44
3.6.6赋值运算符45
3.6.7三元运算符46
3.6.8逗号运算符47
3.6.9转型运算符47
3.6.10运算符的优先级别48
3.7常见疑难解答48
3.7.1如何将十进制转换成二进制48
3.7.2转型运算符会引起精度问题,为什么还要使用它48
3.8小结48
3.9实践题49
第4章 程序设计中的流程控制50
4.1编程风格50
4.2条件语句51
4.2.1条件语句的种类52
4.2.2如何使用好条件语句56
4.3循环语句57
4.3.1 for循环语句57
4.3.2 while循环60
4.3.3 do…while语句63
4.4中断与继续语句64
4.4.1中断控制语句64
4.4.2继续语句66
4.5分支语句67
4.6返回语句70
4.7常见疑难解答71
4.7.1普通循环是使用for语句还是while语句71
4.7.2一般的程序可否用分支语句来代替条件语句71
4.8 小结71
4.9实践题71
第5章 数组73
5.1数组概念的引入73
5.1.1实例的引入73
5.1.2数组的概念73
5.1.3用实例说明数组的用处74
5.2基本数据类型的数组74
5.2.1基本类型数组的声明74
5.2.2基本类型数组的初始化75
5.3由实例引出不同数组种类及其使用76
5.3.1由实例引出一维数组及其使用76
5.3.2由实例引出二维数组及其使用79
5.4数组的综合实例80
5.5常见疑难解答84
5.5.1声明数组需要注意什么84
5.5.2数组在平时的程序代码中使用是否频繁84
5.6小结84
5.7实践题84
第6章 字符串的处理85
6.1字符串的基本概念85
6.2字符串处理的类库种类86
6.2.1字符串的赋值86
6.2.2字符串的处理类——String86
6.2.3字符串处理的方法89
6.2.4缓冲字符串处理类——StringBuffer97
6.2.5缓冲字符串StringBuffer类的构造器97
6.2.6缓冲字符串处理的方法98
6.2.7缓冲字符串类的特点102
6.3用实例演示如何处理字符串102
6.4如何格式化输出103
6.5常见疑难解答104
6.5.1 “equals”和“==”的区别104
6.5.2 String类为何被定义成final约束104
6.5.3 char类型如何转换成int类型,int类型如何转换成字符串104
6.6小结105
6.7实践题105
第二篇Java语言语法进阶——面向对象知识107
第7章类107
7.1 JDK相关版本特性107
7.1.1什么是JDK107
7.1.2 JDK 5的特点107
7.1.3 JDK 6的特点108
7.1.4 JDK 7的特点108
7.1.5各种JDK版本的比较109
7.2用比较法阐述类的概念109
7.3 Java中已有的类109
7.3.1 Java的数学运算处理类Math110
7.3.2测试时间和日期的类Date112
7.3.3测试日历的类GregorianCalendar113
7.3.4日历处理的实例解析114
7.4用实例分析设计一个类的流程116
7.4.1如何在现实程序设计中提取一个类116
7.4.2设置器和访问器123
7.4.3总结124
7.5常见疑难解答124
7.5.1类在程序语言中起到了什么作用124
7.5.2设置器和访问器的作用124
7.6小结125
7.7实践题125
第8章 对象和包126
8.1对象126
8.1.1什么是对象126
8.1.2操作对象127
8.1.3初始化对象127
8.2对象家族中的成员128
8.2.1对象的成员方法128
8.2.2对象的成员变量133
8.3对象中访问控制符的重要性133
8.3.1什么是访问控制符133
8.3.2如何使用访问控制符及其重要性136
8.4重载137
8.4.1什么是重载137
8.4.2用实例来说明重载的意义138
8.5包139
8.5.1什么是Java中的包140
8.5.2如何实现包140
8.5.3什么是类路径和默认包141
8.5.4包的作用域141
8.5.5静态导入142
8.6注释及嵌入文档143
8.6.1如何添加注释143
8.6.2类、方法、字段等注释的方法143
8.7常见疑难解答144
8.7.1包在实际编程中究竟有什么作用144
8.7.2访问控制符在实际开发有什么作用144
8.7.3一个文件中定义了两个class类是否生成一个.class文件144
8.8小结144
8.9实践题145
第9章 继承146
9.1什么是继承146
9.1.1继承的引出146
9.1.2继承的概念146
9.2如何实现继承148
9.3构造函数的使用149
9.3.1什么是构造函数150
9.3.2继承中构造函数的初始化150
9.3.3替代父类和本身的方式151
9.3.4 Java中的单继承性152
9.4继承中的覆盖现象152
9.5类之间的关系153
9.5.1依赖153
9.5.2聚合154
9.5.3继承154
9.6继承层次图154
9.7如何设计好继承155
9.8常见疑难解答155
9.8.1 Java不支持多继承,如何处理一个类继承多个父类的情况155
9.8.2如果出现了带参数的构造函数,可否不在代码中写出来155
9.9小结155
9.10实践题155
第10章 多态157
10.1多态的产生157
10.2多态的概念158
10.2.1使用多态编写程序159
10.2.2覆盖的应用160
10.2.3重载与覆盖的实例对比161
10.2.4覆盖的多态性162
10.2.5传值引用和传址引用163
10.3通过实例熟悉多态用法165
10.4绑定167
10.4.1静态绑定167
10.4.2动态绑定167
10.5超类167
10.5.1什么是超类167
10.5.2 equals方法的使用168
10.5.3通用编程168
10.6常见疑难解答168
10.6.1动态和静态编译是什么168
10.6.2绑定与多态的联系是什么168
10.6.3多态与重载的区别是什么169
10.7小结169
10.8实践题169
第11章 接口与内部类172
11.1接口172
11.1.1接口概念的引入172
11.1.2接口的概念172
11.1.3接口的声明173
11.1.4接口的实现173
11.1.5接口的多重实现178
11.1.6接口的属性184
11.1.7接口的继承184
11.1.8接口意义189
11.2内部类189
11.2.1使用内部类来访问对象190
11.2.2局部内部类192
11.2.3静态内部类195
11.2.4匿名内部类196
11.3常见疑难解答196
11.3.1匿名类如何在程序中使用196
11.3.2接口与继承有什么区别196
11.4小结196
11.5实践题196
第12章 抽象198
12.1抽象的概念198
12.1.1什么是抽象198
12.1.2抽象的综合实例199
12.2抽象类201
12.2.1什么是抽象类202
12.2.2抽象类的实例202
12.3抽象与接口的区别207
12.4枚举207
12.4.1关于枚举的实现原理207
12.4.2枚举的简单应用209
12.4.3关于枚举的高级特性210
12.5反射(Reflection)212
12.5.1关于反射的基石——Class类212
12.5.2关于反射的基本应用214
12.5.3关于反射的高级应用219
12.6标注221
12.6.1标注的简单使用222
12.6.2关于JDK的内置标注223
12.7泛型225
12.7.1为什么要使用泛型225
12.7.2关于泛型的一些特性228
12.7.3关于泛型的通配符230
12.8类加载器232
12.8.1什么是类加载器232
12.8.2什么是类加载器的委派模型233
12.9动态代理235
12.9.1什么是代理235
12.9.2关于动态代理基础类236
12.9.3关于InvocationHandler接口240
12.9.4动态代理类的设计模式243
12.10常见疑难解答244
12.10.1抽象类和接口在概念上有什么区别244
12.10.2如何从设计理念上看待抽象类和接口245
12.11小结247
12.12实践题247
第三篇Java语言编程主题249
第13章 线程249
13.1线程的基本概念249
13.1.1进程及其使用环境249
13.1.2线程及其使用环境249
13.2线程创建250
13.2.1如何创建线程250
13.2.2通过实例熟悉如何创建线程253
13.3线程的使用257
13.3.1线程的优先级257
13.3.2线程的休眠与唤醒259
13.3.3线程让步263
13.3.4线程同步264
13.3.5同步块266
13.3.6同步化方法269
13.4实例分析270
13.4.1生产者与消费者的程序设计及分析270
13.4.2多消费者的程序设计及分析273
13.4.3多生产者的程序设计及分析276
13.5常见疑难解答281
13.5.1 Java中线程与线程之间怎么通信281
13.5.2什么是进程的死锁和饥饿281
13.5.3什么时候会涉及线程程序282
13.6小结282
13.7实践题282
第14章 封装283
14.1封装的介绍283
14.2在程序设计中为什么要使用封装286
14.3结合实例讲述如何设计封装287
14.4在程序设计中设计封装的注意点292
14.5常见疑难解答293
14.5.1封装在现实开发中给程序员带来什么启发293
14.5.2封装在实际开发中的应用有哪些294
14.6小结294
14.7实践题294
第15章Java输入与输出(I/O)295
15.1输入与输出的重要性295
15.2 Java重要的输入输出类295
15.3文件或目录信息的处理296
15.3.1 File常用的操作方法296
15.3.2文件处理方法的应用297
15.3.3文件和目录的完全处理297
15.4读取数据的媒介之一——流(Stream)300
15.4.1什么是流300
15.4.2什么是输入流和输出流300
15.4.3字节输入流及输出流300
15.4.4使用文件字节输入流读取文件301
15.4.5使用文件字节输出流输出文件302
15.5多字节数据读取类——Filter类304
15.5.1 Filter流的概念304
15.5.2处理字节类型以外的文件输入304
15.5.3处理字节类型以外的文件输出305
15.5.4增强的多字节输出流DataOutput306
15.5.5增强的多字节输入流DataInput307
15.6读取数据的媒介之二——字符流310
15.6.1字符流的概念310
15.6.2抽象字符输入流Reader类的使用310
15.6.3抽象字符输出流Writer类的使用310
15.6.4读取带缓存的B ufferedReader字符流310
15.6.5带缓存的字符输出流BufferedWriter类311
15.6.6字符输入流FileReader类和File Writer类的使用314
15.6.7如何用标准输入流System.in来获取数据316
15.6.8打印输入流PrintWriter类与PrintStream类的区别317
15.6.9随机文件访问RandomAccessFile类318
15.7利用对象序列化控制输入输出321
15.7.1什么是对象序列化321
15.7.2基本数据和对象数据读写ObjectInput接口与ObjectOutput接口321
15.7.3对象序列化处理ObjectOutputStream类321
15.7.4对象序列化处理ObjectInputStream类322
15.8常见疑难解答323
15.8.1字节流与字符流主要的区别323
15.8.2输入流与输出流如何区分,各有什么作用324
15.8.3什么是管道流324
15.9小结324
15.10实践题325
第16章 异常与处理及内存管理326
16.1异常的概念326
16.1.1异常的分类326
16.1.2异常的声明327
16.1.3异常的抛出328
16.2异常的捕获330
16.2.1捕获多个异常330
16.2.2自定义异常332
16.3内存的管理和回收334
16.4常见疑难解答335
16.4.1为什么要声明方法抛出异常335
16.4.2为什么抛出的异常一定是检查异常335
16.5小结335
16.6实践题335
第17章Java中对数据的处理337
17.1如何将基本数据类型转换为对象337
17.1.1为什么要将基本数据转换为对象337
17.1.2 Wrapper类的构造函数338
17.1.3包装类的常用函数339
17.1.4基本数据的拆装箱操作(autoboxing和unboxing)341
17.2如何处理随机性的数据342
17.2.1 Random类的基础知识342
17.2.2通过实例熟悉Random类的常用方法343
17.3如何对数据进行排列、整理346
17.3.1 Arrays类的常用方法346
17.3.2实例分析348
17.4常见疑难解答352
17.4.1 Random类函数在现实生活中有什么用处352
17.4.2数组的排列和整理数据在实际应用中有什么用处352
17.5小结352
17.6实践题352
第18章 数据结构354
18.1数据结构接口及实现354
18.1.1数据结构接口的实质354
18.1.2用实例来熟悉数据结构接口的实现355
18.2 Collection集合接口与Iterator迭代器接口356
18.2.1熟悉Collection集合接口356
18.2.2 List链表接口和Set接口357
18.2.3 Map映射接口358
18.2.4 Iterator迭代器接口359
18.2.5通过实例来认识迭代器的实现360
18.3常见疑难解答362
18.3.1 Collection集合接口和Collections集合类的区别362
18.3.2 ArrayList数组列表类和Vector存储类的区别362
18.3.3 HashMap散列映射和Hashtable散列表的区别362
18.3.4数据结构的种类有哪些362
18.3.5 List链表接口和Set接口的区别363
18.4小结363
18.5实践题363
第19章Java中的数据结构364
19.1链表364
19.1.1什么是Java中的链表364
19.1.2用程序代码段实现对链表的添加365
19.1.3用程序代码段实现对链表的删除367
19.2数组列表类371
19.2.1什么是数组列表类371
19.2.2通过实例熟悉数组列表如何存储数据372
19.3散列表376
19.3.1什么是散列表376
19.3.2通过实例熟悉散列表如何存储数据377
19.4散列集380
19.4.1什么是散列集381
19.4.2通过实例熟悉散列集如何存储数据381
19.5树集386
19.5.1什么是树集386
19.5.2通过实例熟悉树集如何存储数据387
19.6映像390
19.6.1什么是映像391
19.6.2通过实例熟悉映像如何存储数据391
19.7常见疑难解答394
19.7.1哪些是线程安全的数据结构394
19.7.2 Vector是什么样的数据结构395
19.8小结395
19.9实践题396
第 20章XML基础397
20.1 XML的产生及与HTML的比较397
20.2 XML的编辑工具399
20.3 XML文档399
20.3.1 XML的声明400
20.3.2文档类型的声明400
20.3.3元素400
20.3.4注释402
20.3.5处理指令402
20.3.6空白处理402
20.3.7行尾处理403
20.3.8语言标识403
20.3.9一个简单的有关XML的实例403
20.4关于XML的高级知识403
20.4.1什么才是格式良好的XML文档404
20.4.2 DTD文档的作用404
20.4.3 DTD的结构405
20.4.4几个简单有关DTD的实例407
20.5关于XML文档的操作409
20.5.1下载Dom4J组件410
20.5.2安装和配置Dom4J组件411
20.5.3 Dom4J组件的简单使用——解析XML文件411
20.5.4 Dom4J组件的简单使用——创建XML文件414
20.6关于XML文档的高级操作417
20.6.1下载Sax类库417
20.6.2安装和配置Sax组件417
20.6.3 Sax组件的简单使用——解析XML文件418
20.7常见疑难解答421
20.7.1 XML与HTML的区别421
20.7.2 XML有哪些显示数据的方式421
20.8小结421
20.9实践题422
第21章JDBC及其应用423
21.1数据库基础知识423
21.1.1什么是数据库423
21.1.2数据库的分类及功能424
21.1.3关系数据库的设计424
21.1.4数据库设计技巧425
21.2 JDBC的基础概念426
21.2.1 JDBC驱动程序的分类426
21.2.2利用Java到数据库协议方式连接数据库427
21.2.3利用Java到本地API方式连接数据库428
21.2.4利用JDBC-ODBC方式连接数据库430
21.3关于SQL Server 2005数据库基础操作432
21.3.1什么是支持SQL语言的数据库432
21.3.2通过SQL语言如何操作数据库433
21.3.3安装SQL Server 2005434
21.3.4高级SQL类型437
21.3.5使用SQL创建数据库437
21.4 JDBC基本编程439
21.4.1如何建立数据库439
21.4.2如何操作数据库441
21.5关于JDBC的高级操作446
21.5.1什么是事务处理446
21.5.2事务处理的过程演练447
21.5.3预查询449
21.6常见疑难解答450
21.6.1操作数据库的具体步骤是什么450
21.6.2数据库中的视图、图表、缺省值、规则、触发器、存储过程的意义451
21.7小结451
21.8实践题452
第22章Swing组件与布局管理器453
22.1什么是Swing编程453
22.2 MVC设计模式基础453
22.3简单框架设计及实例454
22.3.1创建一个空白的框架454
22.3.2创建框架的其他工作455
22.4简单图形按钮控件的设计及实例456
22.4.1 Swing中的按钮控件456
22.4.2按钮的模型457
22.4.3添加按钮457
22.4.4如何添加单选按钮458
22.4.5复选按钮460
22.4.6 ToggleButton按钮461
22.5简单文本输入组件的设计及实例462
22.5.1文本域的设计462
22.5.2密码域的设计463
22.5.3如何设计文本区464
22.6标签组件的设计及实例465
22.7选择组件的设计及实例466
22.8菜单的组件设计468
22.9对话框的种类及用法469
22.10复杂布局管理器的种类及用法470
22.10.1箱式布局的设计470
22.10.2网格组布局的设计472
22.11通过实例熟悉Swing编程473
22.12常见疑难解答476
22.12.1如何处理菜单的启用和禁用功能476
22.12.2如何编写快捷键的程序476
22.13小结476
22.14实践题476
第23章 开发工具的使用477
23.1 Eclipse简介477
23.1.1下载并安装Eclipse478
23.1.2 Eclipse界面介绍479
23.2如何使用Eclipse进行开发481
23.2.1如何新建一个Java工程481
23.2.2如何新建一个Java的类481
23.2.3编写代码482
23.3如何使用MyEclipse进行开发484
23.3.1下载并安装MyEclipse484
23.3.2关于MyEclipse的一些常用操作485
23.4常见疑难解答488
23.4.1 Eclipse和Uedit两个开发工具的优缺点488
23.4.2什么是IDE环境488
23.4.3有关Eclipse的编译报错的原因489
23.5小结489
23.6实践题489
第24章Applet设计490
24.1 Applet的基本概念及生命周期490
24.2 Applet的多媒体处理492
24.2.1声音处理492
24.2.2图像处理493
24.3浏览器与Applet的设计494
24.3.1如何将Applet嵌入浏览器494
24.3.2如何使用Applet类编程494
24.3.3如何用Applet控制浏览器496
24.4 Applet的安全496
24.5一个Applet的综合实例分析497
24.6常见疑难解答500
24.6.1浏览器如何运行Applet500
24.6.2有关Applet无法在IE中显示问题的解答501
24.7小结501
24.8实践题501
第25章 网络编程基础503
25.1网络基础知识503
25.2 TCP与UDP503
25.3端口与套接字504
25.4 TCP程序设计基础504
25.4.1如何设计TCP的程序504
25.4.2一个简单的例子507
25.5 UDP程序设计基础508
25.5.1如何设计UDP的程序508
25.5.2一个简单的例子508
25.6如何设计网络程序510
25.6.1单向通信综合实例510
25.6.2双向通信综合实例512
25.7常见疑难解答515
25.7.1 TCP和UDP的区别515
25.7.2什么是TCP/IP协议?分为几层?协议有什么功能?516
25.8小结517
25.9实践题517
第四篇Java语言程序设计实例与面试题剖析519
第26章 学校管理系统519
26.1开发背景519
26.2需求分析519
26.3登录界面的设计520
26.3.1登录界面的分析520
26.3.2登录界面的代码实现520
26.3.3登录界面的实现522
26.4主界面的设计523
26.4.1主界面类的分析524
26.4.2主菜单界面类的代码524
26.4.3主菜单界面类的实现532
26.5数据库系统的设计533
26.5.1数据库中表的创建533
26.5.2数据库中代码段537
26.6学生信息系统界面的设计538
26.6.1学生类的设计538
26.6.2储存类的设计539
26.6.3学生信息界面的设计541
26.7教师信息系统界面的设计549
26.7.1教师类的设计549
26.7.2储存类的设计551
26.7.3教师信息界面的设计553
26.8领导信息系统界面的设计562
26.8.1领导类的设计562
26.8.2储存类的设计563
26.8.3领导信息界面的设计564
26.9小结572
第27章 面试题573
面试题1 Java的引用和C++的指针有什么区别573
面试题2类和对象有什么区别574
面试题3说明private、 protected、 public和default的区别575
面试题4 Java可以用非O来代表true吗576
面试题5 StringBuffer和StringBuilder存在的作用是什么576
面试题6二维数组的长度是否固定577
面试题7符合什么条件的数据集合可以使用foreach循环578
面试题8如何序列化和反序列化一个Java对象579
面试题9如何使用Java的线程池579
面试题10如何利用反射实例化一个类580
面试题11 TCP协议的通信特点是什么580
面试题12请简述JDBC操作数据库的编程步骤580
面试题13如何使用连接池技术580
面试题14简述接口和抽象类的区别580
面试题15 如何理解Java中的装箱和拆箱580
面试题16根据代码判断创建的对象个数581
面试题17分析循环程序的运行结果582
面试题18可以返回最大值的方法583
面试题19关于垃圾回收的疑问583
面试题20线程问题:找出代码中的错误584
面试题21关于ArrayList、 Vector、 LinkedList的问答题584