Java 編程講義

榮銳鋒、張晨光、殷晉、王向南、尹成

  • 出版商: 清華大學
  • 出版日期: 2021-11-01
  • 定價: $419
  • 售價: 7.0$293
  • 語言: 簡體中文
  • 頁數: 352
  • 裝訂: 平裝
  • ISBN: 7302591997
  • ISBN-13: 9787302591993
  • 相關分類: Java 程式語言
  • 立即出貨

  • Java 編程講義-preview-1
  • Java 編程講義-preview-2
  • Java 編程講義-preview-3
Java 編程講義-preview-1

買這商品的人也買了...

商品描述

《Java 編程講義》根據目前Java 開發領域的實際需求,從初學者角度出發,詳細講解了Java 技術的基礎知識。全書共15 章,包括Java 開發入門,Java 語言基礎,Java 控制結構,數組,面向對象編程,繼承和多態,抽象類、接口和內部類,異常處理,Java 常用類庫,集合與泛型,Lambda 表達式,輸入/輸出流,多線程,JDBC數據庫技術,網絡編程等內容。內容全面覆蓋Java 開發必備的基礎知識點,結合生活化案例展開講解,程序代碼給出了詳細的註釋,能夠使初學者輕松領會Java 技術精髓,快速掌握Java 開發技能。為了進一步便於教師與學生使用,本書配套了豐富的資源,包括隨書視頻、優質PPT 課件、源代碼資源、授課資源、習題、 測試題等。

作者簡介

AAA軟件教育成立於2007年,是Oracle公司(甲骨文,Java母公司)指定教育合作夥伴,專業從事高端軟件開發職業教育15年。長期以來,緊密結合軟件人才需求,以培養專業性、實戰型軟件開發人才為己任,成功助力數万學子順利進入IT行業,學員入職企業包括騰訊、阿里巴巴、拼多d、京東、百度、字節跳動、美團、新浪、網易、數獵天下等,被業界譽為“互聯網金領生產基地”。目前,AAA軟件教育已在北京、鄭州、深圳、武漢、瀋陽、上海等大型城市開設了直營教學中心和就業基地,同時與鄭州大學、河南大學、中原工學院等大學開展了“產教融合”的戰略合作。

目錄大綱

第1章  Java開發入門  1

1.1  Java概述  2

1.1.1  Java的由來與發展  2

1.1.2  Java語言的特點  3

1.2  Java開發環境搭建  4

1.2.1  JDK簡介  4

1.2.2  下載和安裝JDK  4

1.2.3  環境變量配置  5

1.2.4  測試開發環境搭建成功與否  8

1.2.5  JDK目錄詳細剖析  8

1.3  Java程序的開發步驟  9

1.3.1  編寫源代碼  9

1.3.2  編譯程序  10

1.3.3  運行程序  10

1.3.4  簡化的編譯運行流程  11

1.3.5  反編譯  11

1.4  Java虛擬機與垃圾回收  11

1.4.1  Java虛擬機JVM  12

1.4.2  垃圾回收機制  12

1.5  IntelliJ IDEA開發工具  13

1.5.1  IDEA概述  13

1.5.2  IDEA的安裝與啟動  13

1.5.3  使用IDEA進行程序開發  15

第2章  Java語言基礎  20

2.1  Java基本語法  21

2.1.1  Java語言的基本格式  21

2.1.2  Java關鍵字  21

2.1.3  Java標識符  22

2.1.4  Java註釋  22

2.1.5  Java編程風格  23

2.2  Java基本數據類型  24

2.2.1  整數類型  25

2.2.2  浮點類型  25

2.2.3  字符類型  26

2.2.4  布爾類型  26

2.3  Java中的變量與常量  26

2.3.1  變量及其聲明  26

2.3.2  常量及其聲明  27

2.3.3  var變量及其聲明  27

2.3.4  變量作用域  28

2.4  基本數據類型的轉換  28

2.4.1  自動類型轉換  28

2.4.2  強制類型轉換  29

2.5  運算符  29

2.5.1  算術運算符  30

2.5.2  算術混合運算的精度  32

2.5.3  關系運算符  33

2.5.4  邏輯運算符  34

2.5.5  賦值運算符  35

2.5.6  位運算符  36

2.5.7  條件運算符  39

2.5.8  運算符的優先級  39

2.6  數據存儲區與引用數據類型  40

2.6.1  棧存儲區  40

2.6.2  堆存儲區與引用數據類型  40

2.7  輸入和輸出  41

2.7.1  控制台輸出  41

2.7.2  Scanner獲取鍵盤數據  43

第3章  Java控制結構  45

3.1  Java程序結構  45

3.2  選擇語句  47

3.2.1  if條件語句  47

3.2.2  switch條件語句  52

3.3  循環語句  58

3.3.1  while循環語句  58

3.3.2  do-while循環語句  60

3.3.3  for循環語句  61

3.4  循環嵌套  63

3.5  跳轉語句  64

3.5.1  break語句  64

3.5.2  continue語句  68

3.5.3  return語句  70

第4章  數組  72

4.1  一維數組  72

4.1.1  一維數組的創建  73

4.1.2  數組元素的分配  74

4.1.3  數組元素的訪問  75

4.1.4  length的使用  75

4.1.5  使用foreach遍歷數組  76

4.1.6  基本類型數組的初始化  77

4.1.7  引用類型數組的初始化  78

4.2  二維數組  79

4.2.1  二維數組的創建  80

4.2.2  二維數組的內存分配  80

4.2.3  嵌套循環存取二維數組  82

4.2.4  非對稱型數組  83

4.3  數組的排序與查找  83

4.3.1  數組元素排序  84

4.3.2  數組元素的查找  85

第5章  面向對象編程  89

5.1  面向對象概述  90

5.2 類與對象  91

5.2.1  類與對象的關系  91

5.2.2  類的定義  92

5.2.3  成員變量  92

5.2.4  成員方法  92

5.2.5  類的UML圖  93

5.2.6  對象的創建與使用  94

5.2.7  成員變量與局部變量的區別  96

5.3  類的封裝  96

5.4  構造方法  98

5.5  方法重載  99

5.5.1  構造方法的重載  99

5.5.2  成員方法的重載  100

5.6  this關鍵字  101

5.6.1  this關鍵字的3種用法  101

5.6.2  this關鍵字調用構造方法的常見錯誤  103

5.7  static關鍵字  104

5.7.1  靜態變量  104

5.7.2  靜態方法  105

5.7.3  靜態代碼塊  105

5.8  包  106

5.8.1  包的概念和作用  106

5.8.2  創建包  107

5.8.3  導入包  107

5.8.4  常用的包  108

5.9  Java修飾符總結  108

5.9.1  訪問控制符  108

5.9.2  非訪問控制符  109

第6章  繼承和多態  110

6.1  類的繼承  111

6.1.1  繼承的概念  111

6.1.2  繼承的使用  111

6.2  方法重寫  112

6.3  super關鍵字  114

6.3.1  super訪問父類構造方法  114

6.3.2  super訪問父類成員變量和成員方法  116

6.4  final關鍵字  117

6.4.1  final修飾局部變量  117

6.4.2  final修飾成員變量  117

6.4.3  final修飾成員方法  118

6.4.4  final修飾類  119

6.5  多態  119

6.5.1  為什麽需要多態  120

6.5.2  多態的概念  120

6.5.3  多態的實現  121

6.5.4  對象類型轉換  122

6.6  Object類  124

6.6.1  equals()方法  124

6.6.2  getClass()方法  125

6.6.3  toString()方法  125

第7章  抽象類、接口和內部類  127

7.1  抽象類  127

7.2  接口  129

7.2.1  接口的定義  129

7.2.2  接口實現  130

7.2.3  接口的繼承  131

7.2.4  利用接口實現多重繼承  133

7.2.5  接口默認方法  134

7.2.6  接口實現多態  135

7.2.7  抽象類和接口的比較  136

7.3  內部類  137

7.3.1  成員內部類  137

7.3.2  局部內部類  138

7.3.3  靜態內部類  139

7.3.4  匿名內部類  140

第8章  異常處理  142

8.1  異常概述  143

8.2  異常的類型  143

8.2.1  異常類的體系結構  143

8.2.2  常見的異常類型  144

8.3  try-catch捕獲異常  145

8.4  finally進行清理  146

8.4.1  finally用來做什麽  147

8.4.2  在finally中使用return  148

8.5  throws關鍵字和throw關鍵字  149

8.5.1  使用throws關鍵字拋出異常  149

8.5.2  使用throw關鍵字拋出異常  150

8.6  異常處理的3種常用形式  151

8.6.1  第1種方式:分開捕獲  152

8.6.2  第2種方式:嵌套捕獲  152

8.6.3  第3種方式:聯動捕獲  153

8.7  自定義異常及異常丟失現象  154

8.7.1  自定義異常  154

8.7.2  異常丟失現象  156

第9章  Java常用類庫  158

9.1  String類  159

9.1.1  String類初始化  159

9.1.2  String類的常用方法  161

9.2  StringBuffer類  168

9.2.1  創建StringBuffer對象  168

9.2.2  StringBuffer類常用方法  169

9.3  日期時間類  170

9.3.1  Date類  170

9.3.2  Calendar類  172

9.3.3  LocalDate類和LocalTime類  173

9.3.4  LocalDateTime類  175

9.3.5  日期時間格式化類  176

9.4  系統相關類  181

9.4.1  System類  181

9.4.2  Runtime類  184

9.5  包裝類  185

9.5.1  數值型包裝類  185

9.5.2  Boolean類  187

9.5.3  Character類  188

9.6  數學相關類  188

9.6.1  Math類  189

9.6.2  BigInteger類  190

9.6.3  Random類  191

9.6.4  數字格式化  192

第10章  集合與泛型  196

10.1  Java集合概述  197

10.2  Collection接口  197

10.3  List接口  199

10.3.1  List接口簡介  199

10.3.2  ArrayList集合  199

10.3.3  LinkedList集合  200

10.4  Collection集合遍歷  201

10.4.1  Iterator遍歷集合  202

10.4.2  foreach循環遍歷集合  203

10.4.3  forEach遍歷集合  204

10.4.4  Predicate操作集合  204

10.5  Set接口  206

10.5.1  Set接口簡介  206

10.5.2  HashSet集合  206

10.5.3  TreeSet集合  209

10.6  Map接口  213

10.6.1  Map接口簡介  214

10.6.2  HashMap集合  214

10.6.3  Map集合遍歷  216

10.6.4  TreeMap集合  219

10.6.5  Properties集合  220

10.7  泛型  221

10.7.1  泛型的概念  221

10.7.2  泛型類聲明與使用  221

10.7.3  泛型在集合中的使用  223

10.8  集合常用工具類  224

10.8.1  Collections工具類  224

10.8.2  Arrays工具類  226

第11章  Lambda表達式  228

11.1  Lambda表達式入門  228

11.1.1  函數式編程思想  229

11.1.2  Lambda表達式語法  229

11.2  函數式接口  231

11.3  Lambda表達式的簡化形式  233

11.4  訪問變量  234

11.4.1  訪問成員變量  234

11.4.2  捕獲局部變量  235

11.5  方法引用  236

11.5.1  引用類的靜態方法  236

11.5.2  引用類的實例方法  237

11.5.3  引用對象的實例方法  238

11.5.4  引用構造方法  239

11.6  Lambda表達式調用Arrays的類方法  240

第12章  輸入/輸出流  242

12.1  I/O流概述  243

12.2  File類  244

12.2.1  File類及其常用方法  244

12.2.2  遍歷目錄下的文件  246

12.2.3  刪除文件及目錄  247

12.2.4  RandomAccessFile類  248

12.3  字節流  250

12.3.1  字節流概述  250

12.3.2  讀寫文件  252

12.3.3  文件復制  254

12.3.4  字節流的緩沖區  255

12.4  字符流  256

12.4.1  字符流概述  257

12.4.2  操作文件  257

12.4.3  轉換流  258

12.5  對象序列化方式  259

12.5.1  對象序列化概述  260

12.5.2  如何實現對象序列化的持久化  260

12.5.3  引用對象的序列化控制  262

第13章  多線程  267

13.1 線程概述  268

13.1.1  進程  268

13.1.2  線程  268

13.2  多線程的實現  269

13.2.1  繼承Thread類實現多線程  269

13.2.2  實現Runnable接口實現多線程  271

13.2.3  通過Callable接口和Future接口實現多線程  272

13.2.4  3種實現多線程方式的對比分析  274

13.2.5  後台線程  275

13.3  線程的生命周期  276

13.3.1  新建狀態和就緒狀態  277

13.3.2  運行狀態和阻塞狀態  278

13.3.3  死亡狀態  278

13.4  線程的調度  278

13.4.1  線程的優先級  279

13.4.2  線程休眠sleep()  280

13.4.3  線程讓步yield()  282

13.4.4  線程插隊join()  283

13.5  多線程同步  284

13.5.1  線程安全  284

13.5.2  多線程中的同步代碼塊  285

13.5.3  synchronized修飾的同步方法  287

13.5.4  生產者和消費者  288

第14章  JDBC數據庫技術  291

14.1  JDBC概述  292

14.1.1  什麽是JDBC  292

14.1.2  怎樣連接數據庫  292

14.2  JDBC常用API  294

14.2.1  Driver接口  294

14.2.2  DriverManager類  295

14.2.3  Connection接口  296

14.2.4  Statement接口  299

14.2.5  PreparedStatement接口  301

14.2.6  CallableStatement接口  303

14.2.7  ResultSet接口  304

14.3  JDBC事務  306

14.3.1  事務的概念  306

14.3.2  JDBC對事務的支持  307

14.3.3  使用事務實現批量更新  307

14.4  DAO模式  309

14.4.1  元數據  309

14.4.2  DatabaseMetaData接口  309

14.4.3  ResultSetMetaData接口  310

14.4.4  使用DAO模式  312

14.5  數據庫連接池技術  316

14.5.1  DBCP數據庫連接池技術  317

14.5.2  C3P0數據庫連接池技術  319

第15章  網絡編程  322

15.1  網絡編程基礎  323

15.1.1  網絡通信協議  323

15.1.2  IP地址和埠號  324

15.1.3  InetAddress工具類  325

15.1.4  URLDecoder類和URLEncoder類  326

15.1.5  URL、URLConenction和URLPermission  327

15.2  UDP通信  328

15.2.1  UDP概念  328

15.2.2  DatagramPacket類  329

15.2.3  DatagramSocket類  329

15.2.4  UDP網絡程序  330

15.2.5  UDP案例—聊天程序  332

15.3  TCP通信  334

15.3.1  TCP概念  334

15.3.2  ServerSocket類  335

15.3.3  Socket類  335

15.3.4  簡易TCP網絡程序  336

15.3.5  多線程的TCP網絡程序  338

15.3.6  TCP案例—模擬百度網盤文件快傳  341

15.4  代理服務器網絡編程  343

15.4.1  Proxy創建網絡連接  343

15.4.2  ProxySelector自動選擇代理服務器  345

15.5  HTTPClient  347

15.5.1  HTTPClient概念  347

15.5.2  如何發送同步GET請求  347

15.5.3  如何發送帶請求體的請求  348

15.5.4  如何發送異步請求  349

15.5.5  WebSocket接口  350