图书介绍

Java 7程序设计入门经典2025|PDF|Epub|mobi|kindle电子书版本百度云盘下载

Java 7程序设计入门经典
  • (美)HerbertSchildt,(美)DaleSkrien著 著
  • 出版社: 北京:机械工业出版社
  • ISBN:9787111430698
  • 出版时间:2013
  • 标注页数:962页
  • 文件大小:206MB
  • 文件页数:985页
  • 主题词:JAVA语言-程序设计

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快]温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页直链下载[便捷但速度慢]  [在线试读本书]   [在线获取解压码]

下载说明

Java 7程序设计入门经典PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

第一部分 Java语言2

第1章 Java编程基础2

1.1计算基础3

1.1.1计算机的硬件组成3

1.1.2位、字节和二进制4

1.1.3操作系统5

1.2程序5

1.3编程语言6

1.4 Java语言7

1.4.1 Java的起源7

1.4.2 Java对互联网的贡献9

1.4.3 Java applet9

1.4.4安全性9

1.4.5可移植性9

1.4.6 Java的解决方案:字节码10

1.4.7 Java的演进10

1.5面向对象编程的关键特性11

1.5.1封装12

1.5.2多态12

1.5.3继承13

1.6 Java开发工具包13

1.7第一个简单的程序14

1.7.1输入程序15

1.7.2编译程序15

1.7.3运行程序15

1.7.4逐行解析第一个简单的程序16

1.8处理语法错误18

1.9第二个简单的程序18

1.10另一种数据类型20

1.11两种控制语句23

1.11.1 if语句23

1.11.2 for循环25

1.12创建代码块26

1.13分号和语句的位置27

1.14关于缩进28

1.15 Java关键字30

1.16 Java中的标识符30

1.17 Java类库31

1.18习题32

第2章 数据类型和运算符34

2.1为什么数据类型很重要34

2.2 Java的基本数据类型34

2.2.1整数35

2.2.2浮点类型36

2.2.3字符37

2.2.4布尔类型38

2.3字面量40

2.3.1十六进制、八进制和二进制字面量41

2.3.2转义字符序列41

2.3.3字符串字面量42

2.4深入解析变量43

2.4.1初始化变量43

2.4.2动态初始化44

2.5变量的作用域和生命周期44

2.6运算符47

2.7算术运算符47

2.8关系运算符和逻辑运算符49

2.9具有“短路”功能的逻辑运算符50

2.10赋值运算符52

2.11速记赋值运算符53

2.12赋值中的类型转换53

2.13使用强制类型转换55

2.14运算符的优先级56

2.15 表达式58

2.15.1表达式中的类型转换58

2.15.2空白和圆括号60

2.16习题60

第3章 程序控制语句63

3.1从键盘输入字符63

3.2 if语句65

3.3嵌套的if语句66

3.4 if-else-if梯队67

3.5 switch语句68

3.6嵌套的switch语句71

3.7 for循环74

3.8 for循环中的一些特殊情况76

3.8.1缺少部分76

3.8.2无限循环77

3.8.3没有循环体的循环78

3.9在for语句内部声明循环控制变量78

3.10增强的for循环79

3.11 while循环80

3.12 do-while循环81

3.13使用break语句退出循环86

3.14像使用goto语句一样使用break语句88

3.15 使用continue语句91

3.16嵌套的循环96

3.17习题97

第4章 类、对象和方法初探100

4.1类的基础知识100

4.1.1类的一般形式101

4.1.2定义类101

4.2如何创建对象104

4.3变量引用和赋值语句105

4.4方法106

4.5从方法返回108

4.6返回值109

4.7使用形参111

4.8构造函数119

4.9含有形参的构造函数120

4.10 new运算符再探123

4.11垃圾回收和终结器123

4.12使用this关键字126

4.13习题128

第5章 更多数据类型和运算符131

5.1数组131

5.2多维数组136

5.2.1二维数组136

5.2.2不规则数组137

5.2.3三维或多维数组139

5.2.4初始化多维数组139

5.3其他声明数组的语法140

5.4对数组的引用赋值141

5.5使用成员length142

5.6 for-each风格的for循环149

5.6.1遍历多维数组152

5.6.2应用增强for循环153

5.7字符串154

5.7.1构造字符串154

5.7.2操作字符串155

5.7.3字符串数组156

5.7.4字符串是不可改变的157

5.7.5使用字符串控制switch语句158

5.8使用命令行参数159

5.9按位运算161

5.9.1按位与、按位或、按位异或、按位非运算符161

5.9.2移位运算符165

5.9.3位速记赋值运算符167

5.10问号运算符170

5.11习题171

第6章 深入解析类和方法174

6.1控制对类成员的访问174

6.2向方法传递对象180

6.3如何传递实参181

6.4返回对象183

6.5重载方法185

6.6重载构造函数189

6.7递归195

6.8理解关键字static199

6.8.1静态变量199

6.8.2静态方法201

6.8.3静态代码块203

6.9嵌套类和内部类207

6.10长度可变的实参vararg210

6.10.1 vararg基础210

6.10.2重载varargs方法213

6.10.3 vararg和二义性214

6.11习题215

第7章 继承220

7.1继承基础220

7.2成员访问和继承223

7.3构造函数和继承226

7.4用super关键字调用超类的构造函数227

7.5用super关键字访问超类成员232

7.6创建多层层次结构235

7.7执行构造函数的时机238

7.8超类引用与子类对象239

7.9方法重写244

7.10用重写方法支持多态246

7.11为什么要重写方法248

7.12使用抽象类252

7.13使用final关键字256

7.13.1用final关键字防止方法重写256

7.13.2用final关键字防止继承257

7.13.3对数据成员使用final关键字257

7.14 Object类258

7.15习题259

第8章 接口261

8.1接口的基础知识261

8.2创建接口262

8.3实现接口263

8.4使用接口引用266

8.5实现多个接口268

8.6接口中的常量276

8.7可扩展的接口277

8.8嵌套的接口278

8.9关于接口的最后思考279

8.10习题279

第9章 包281

9.1包的基础知识281

9.1.1定义包282

9.1.2寻找包与环境变量CLASSPATH282

9.1.3一个短小的包例子283

9.2包与成员访问284

9.2.1一个包访问的例子285

9.2.2受保护的成员287

9.3导入包289

9.4静态导入293

9.5习题295

第10章 异常处理298

10.1异常层次结构298

10.2异常处理基础299

10.2.1使用关键字try和catch299

10.2.2一个简单的异常处理例子300

10.3未捕获异常的后果302

10.4异常可以优雅地处理错误303

10.5使用多个catch子句305

10.6捕获子类异常306

10.7嵌套的try块307

10.8抛出异常309

10.9进一步解读Throwable类311

10.10使用finally块312

10.11使用throws关键字314

10.12 Java的内置异常315

10.13 JDK 7中新添加的异常特性317

10.14创建异常子类319

10.15习题325

第11章 使用输入/输出329

11.1 Java的输入/输出是建立在流上的330

11.2字节流和字符流330

11.3字节流类330

11.4字符流类331

11.5预定义的流331

11.6使用字节流332

11.6.1读控制台输入333

11.6.2写控制台输出334

11.7使用字节流读写文件335

11.7.1从文件中输入335

11.7.2写文件339

11.8自动关闭文件340

11.9读写二进制数据343

11.10随机访问文件347

11.11使用Java字符流350

11.11.1用控制台获得字符流输入351

11.11.2使用字符流进行控制台输出353

11.12使用字符流进行文件输入/输出354

11.12.1使用FileWriter类355

11.12.2使用FileReader类356

11.12.3 File类357

11.12.4获得文件属性357

11.12.5获得目录列表359

11.12.6使用FilenameFilter接口360

11.12.7 listFiles()方法361

11.12.8多种文件实用方法361

11.13使用Java的类型包装器来转换数值字符串363

11.14习题371

第12章 多线程编程375

12.1多线程基础375

12.2 Thread类和Runnable接口376

12.3创建线程376

12.4创建多个线程384

12.5判定线程终止的时间386

12.6线程的优先级389

12.7同步390

12.8使用同步方法390

12.9 synchronized语句393

12.10使用方法notify()、wait()和notifyAll()进行线程通信396

12.11线程挂起、恢复和终止402

12.12习题406

第13章 枚举、自动装箱和注解410

13.1枚举410

13.2 Java的枚举是类类型413

13.3 values()方法和valueOf()方法413

13.4构造函数、方法、实例变量和枚举415

13.5从Enum类继承枚举416

13.6自动装箱423

13.6.1类型包装器和装箱424

13.6.2自动装箱基础425

13.6.3装箱与方法426

13.6.4表达式中的自动装箱和自动拆箱427

13.6.5警告429

13.7注解(元数据)430

13.7.1创建和使用注解430

13.7.2内置注解431

13.8习题432

第14章 泛型436

14.1泛型基础436

14.1.1一个简单的泛型例子437

14.1.2泛型只能用于对象440

14.1.3基于不同类型实参的不同泛型类型440

14.1.4有两个类型形参的泛型类441

14.1.5泛型类的一般形式442

14.2有界的类型443

14.3使用有通配符的实参446

14.4有界的通配符449

14.5泛型方法452

14.6泛型构造函数454

14.7泛型的类层次结构454

14.8泛型接口458

14.9原始类型和遗留代码464

14.10带有菱形运算符的类型推断467

14.11清除468

14.12二义性错误469

14.13泛型的一些限制470

14.13.1不能实例化类型形参470

14.13.2对静态成员的限制470

14.13.3泛型数组的限制470

14.13.4泛型异常的限制471

14.14习题472

第15章 applet与剩余的Java关键字475

15.1 applet基础475

15.2 applet的完整骨架478

15.3 applet的初始化和终止479

15.4 applet架构的关键点480

15.5请求重绘480

15.6使用状态窗口485

15.7向applet传递形参486

15.8剩余的Java关键字488

15.8.1修饰符volatile488

15.8.2修饰符transient488

15.8.3关键字instanceof488

15.8.4关键字strictfp489

15.8.5关键字assert489

15.8.6原生方法489

15.9习题491

第16章 面向对象设计介绍493

16.1优雅的软件及其重要性493

16.2优雅的方法496

16.2.1命名约定497

16.2.2方法的内聚497

16.2.3形式良好的对象499

16.2.4内部文档500

16.2.5外部文档501

16.3优雅的类503

16.3.1类的内聚和专家模式503

16.3.2避免重复505

16.3.3完整的接口507

16.3.4设计时要考虑变化507

16.3.5最少知识原则510

16.4继承与委托的比较511

16.4.1 UML类图512

16.4.2从代码重用的角度看513

16.4.3 is-a关系514

16.4.4类似的行为516

16.4.5多态518

16.4.6继承的代价519

16.5设计模式521

16.5.1适配者模式522

16.5.2观察者模式525

16.6习题529

第二部分 利用Swing工具箱进行GUI编程534

第17章 Swing基础534

17.1 Swing的起源和设计理念534

17.2组件和容器536

17.2.1组件536

17.2.2容器537

17.2.3顶级容器窗格537

17.3布局管理器538

17.4第一个简单的Swing程序539

17.5事件处理544

17.5.1事件544

17.5.2事件源544

17.5.3事件侦听器545

17.5.4事件类和侦听器接口545

17.5.5适配器类546

17.6使用按钮547

17.7 JTextField类介绍554

17.8使用匿名内部类来处理事件564

17.9习题565

第18章 探索Swing控件567

18.1JLabel类和Imagelcon类567

18.2 Swing按钮570

18.2.1处理动作事件571

18.2.2处理项事件571

18.2.3 JButton类572

18.2.4 JToggleButton类574

18.2.5复选框576

18.2.6单选按钮579

18.3 JTextField类581

18.4 JScrollPane类590

18.5JList类597

18.6 JComboBox类601

18.7树603

18.8 JTable类606

18.9模型简介609

18.10习题609

第19章 使用菜单612

19.1菜单基础612

19.2 JMenuBar类、JMenu类和JMenuItem类概览613

19.2.1 JMenuBar类613

19.2.2 JMenu类614

19.2.3 JMenuItem类615

19.3创建主菜单616

19.4为菜单项添加助记键和快捷键620

19.5为菜单项添加图像和工具提示622

19.6使用JRadioButtonMenultem类和JCheckBoxMenuItem类629

19.7习题632

第20章 对话框634

20.1 JOptionPane类634

20.2 showMessageDialog()方法636

20.3 showConfimDialog()方法640

20.4 showInputDialog()方法644

20.5 showOptionDialog()方法648

20.6 JDialog类652

20.7创建无模式的对话框656

20.8用JFileChooser类选择文件657

20.9习题667

第21章 线程、applet和绘图670

21.1 Swing中的多线程670

21.2使用Timer类676

21.3创建Swing的applet681

21.4绘图689

21.4.1绘图基础689

21.4.2图形上下文689

21.4.3计算可绘图区域690

21.4.4请求绘图691

21.4.5绘图的例子691

21.5习题695

第三部分 畅游Java API库698

第22章 处理字符串698

22.1字符串的基础知识698

22.2字符串的构造函数699

22.3三个与字符串有关的语言特性701

22.3.1字符串字面量701

22.3.2字符串拼接702

22.3.3字符串与其他数据类型拼接702

22.3.4重写toString()方法703

22.4 length()方法707

22.5获得字符串中的字符708

22.5.1 charAt()方法708

22.5.2 getChars()方法708

22.5.3 toCharArray()方法709

22.6字符串比较710

22.6.1 equals()方法和equalslgnoreCase()方法710

22.6.2 equals()方法与“=”运算符的比较711

22.6.3 regionMatches()方法712

22.6.4 startsWith()方法和endsWith()方法712

22.6.5 compareTo()方法和compareToIgnoreCase()方法713

22.7使用indexOf()方法和lastIndexOf()方法715

22.8获得修改的字符串716

22.8.1 substring()方法716

22.8.2 replace()方法718

22.8.3 trim()方法719

22.9改变字符串中字符的大小写720

22.10 StringBuffer类和StringBuilder类722

22.11习题723

第23章 探索java.lang包725

23.1基本类型包装器726

23.1.1 Number类726

23.1.2 Double类和Float类726

23.1.3 Byte类、Short类、Integer类和Long类728

23.1.4 Character类731

23.1.5 Boolean类734

23.1.6自动装箱和类型包装器734

23.2 Math类735

23.3 Process类738

23.4 ProcessBuilder类738

23.5 Runtime类740

23.6 System类742

23.6.1使用currentTimeMillis()方法测量程序执行的时间743

23.6.2使用arraycopy()方法744

23.6.3获得属性值744

23.6.4重定向标准输入流和标准输出流745

23.7 Object类746

23.8 Class类747

23.9 Enum类749

23.10与线程有关的类和Runnable接口749

23.11其他类749

23.12 java.lang包中的接口750

23.12.1 Comparable接口750

23.12.2 Appendable接口752

23.12.3 Iterable接口752

23.12.4 Readable接口753

23.12.5 CharSequence接口753

23.12.6 AutoCloseable接口753

23.13习题754

第24章 探索java.util包756

24.1 Locale类757

24.2使用日期和时间760

24.2.1 Date类760

24.2.2 Calendar类和GregorianCalendar类761

24.3用Formatter类格式化输出766

24.3.1 Formatter类的构造函数766

24.3.2格式化基础768

24.3.3格式化字符串和字符769

24.3.4格式化数字769

24.3.5格式化日期和时间770

24.3.6说明符和说明符%772

24.3.7指定最小的域宽度772

24.3.8指定精度773

24.3.9使用格式标志774

24.3.10大写字母选项776

24.3.11使用实参索引777

24.3.12为不同的地区设置格式化778

24.3.13关闭Formatter对象778

24.4格式化和printf()方法781

24.5 Scanner类783

24.5.1 Scanner类的构造函数783

24.5.2 Scanner类的基础知识783

24.5.3 Scanner类的例子785

24.5.4 Scanner类的其他特性789

24.6 Random类790

24.7使用Observable类和Observer接口792

24.8 Timer类和TimerTask类795

24.9其他混杂的应用类和接口797

24.10习题798

第25章 使用集合框架中的数据结构800

25.1数据结构概览800

25.1.1栈和队列801

25.1.2链表801

25.1.3树802

25.1.4散列表803

25.1.5选择数据结构803

25.2集合概览804

25.3集合接口805

25.3.1 Collection接口806

25.3.2 List接口807

25.3.3 Set接口808

25.3.4 SortedSet接口809

25.3.5 NavigableSet接口809

25.3.6 Queue接口810

25.3.7 Deque接口811

25.4集合类813

25.4.1 ArrayList类814

25.4.2 LinkedList类817

25.4.3 HashSet类820

25.4.4 TreeSet类822

25.4.5 LinkedHashSet类824

25.4.6 ArrayDeque类825

25.4.7 PriorityQueue类827

25.5通过迭代器访问集合828

25.5.1使用迭代器829

25.5.2用for-each风格的循环代替迭代器831

25.6使用映射832

25.6.1映射接口832

25.6.2映射类835

25.7比较器840

25.8集合算法842

25.9 Arrays类845

25.10遗留类和遗留接口846

25.10.1 Enumeration接口846

25.10.2 Vector类846

25.10.3 Stack类846

25.10.4 Dictionary类846

25.10.5 Hashtable类846

25.10.6 Properties类847

25.11习题847

第26章 使用java.net包进行网络编程849

26.1网络基础849

26.2网络类和网络接口850

26.3 InetAddress类851

26.4 Socket类853

26.5 URL类856

26.6 URLConnection类858

26.7 HttpURLConnection类862

26.8数据报865

26.8.1 DatagramSocket类865

26.8.2 DatagramPacket类865

26.8.3数据报的例子866

26.9习题869

第27章 并发实用工具870

27.1并发API包871

27.1.1 java.util.concurrent包871

27.1.2 java.util.concurrent.atomic包872

27.1.3 java.util.concurrent.locks包872

27.2使用同步对象872

27.2.1 Semaphore类872

27.2.2 CountDownLatch类876

27.2.3 CyclicBarrier类878

27.2.4 Exchanger类881

27.2.5 Phaser类883

27.3使用执行器890

27.4使用Callable接口和Future接口892

27.5 TimeUnit枚举895

27.6并发集合896

27.7锁897

27.8原子操作900

27.9通过Fork/Join框架并行编程900

27.10主要的Fork/Join类901

27.10.1 ForkJoinTask﹤V﹥类901

27.10.2 RecursiveAction类902

27.10.3 RecursiveTask﹤V﹥类902

27.10.4 ForkJoinPool类903

27.11分治策略904

27.11.1第一个简单的Fork/Join示例904

27.11.2理解并行度的影响906

27.11.3使用RecursiveTask﹤V﹥类的一个例子910

27.11.4异步执行任务912

27.12并发实用工具与Java的传统方法的比较912

27.13习题913

附录A 使用Java文档注释915

附录B 正则表达式介绍921

附录C 部分习题的参考答案928

热门推荐