【有庫存】NT售價: 395 元
Java已經成為最受程序員歡迎的編程語言之一,可以進行桌面程序應用、Web應用、分布式系統和嵌入式系統應用,并且在信息技術等各個領域得到了廣泛應用。本書全面介紹了Java語言基礎,以實例形式介紹了Java語言的編程技術和開發過程。關于Java的技術有很多,學完本書之后,讀者不但可以掌握Java語言的精髓,還可以實踐項目。本書特點1.由淺入深本書從開發環境及基本語法知識入手,逐漸學習Java的基本概念、面向對象基礎、圖形界面程序的開發及數據庫應用程序的開發。讓讀者在沒有編程基礎的情況下,能夠很快掌握Java語言編程的各種技術。2.示例講解本書每講解到語法使用、編程要點時,都會以示例的形式展現給大家,并列舉了大量翔實的插圖,讓讀者更容易理解客觀的理論知識。3.使用最新的開發工具包JDK 7本書跟蹤Java語言的最新發展動向,深入介紹了JDK 7中的許多新特性,以保證讀者了解最新的Java語言特性。4.配有綜合案例本書最后一篇配有兩個經典案例,可以讓讀者了解從零開始如何一步步進入編程實戰,體會到以后工作的大概步驟。本書內容第一篇 環境準備篇主要讓讀者了解Java的歷史和發展,針對Java的開發環境進行詳細講解,一步一步教讀者如何配置開發環境。第二篇 Java語法篇主要介紹了Java語言的各種基本編程語法,對面向對象編程的內容進行了深入講解。類、對象、繼承、接口及集合等內容的使用,可以幫助讀者從理論的角度理解什么是面向對象的設計思想,以及常用的數組、字符串和Java常用類的各種操作,讓讀者熟練掌握編寫代碼的基礎知識,為以后編寫項目打下基礎。第三篇 Java編程提高篇主要內容包括多線程、JDBC連接數據庫、異常處理、流及Swing編程,引導讀者進一步深入學習Java編程知識,幫助讀者提高自身的能力。第四篇 開發實戰篇通過兩個綜合項目對前面學習過的知識進行整理,讓讀者學習如何開發程序、如何分析業務流程、如何對程序需求進行分析。適合的讀者 想從事軟件開發的入門者。 Java自學者。 初級軟件程序員。 從其他語言遷移過來的開發人員。本書由桂穎、任昱衡編寫,其中東華理工大學的桂穎負責編寫了第1章~第12章,中國電子商務協會電子商務研究院的任昱衡負責編寫了第13章~第24章。作者
本書針對初學和自學讀者的特點,以通俗易懂的語言介紹Java語言,講解Java基礎開發。內容包括Java語言的發展、環境配置、開發工具、基本語法、流程控制語句、數組、集合、面向對象、字符串處理、圖形界面設計、輸入/輸出、處理異常、多線程、內存管理、圖像處理、JDBC連接數據庫及JSP和Servlet開發技術,讓讀者更好地體會Java語言編程開發。本書運用大量示例,讓讀者在實戰中體會編程的快樂。建議讀者邊學邊練,有難以理解的概念或知識一定要弄清楚,培養自己單獨開發項目的能力。
第一篇 環境準備篇第1章 初出茅廬:走進Java1.1 Java是什么 21.2 Java歷史背景 21.3 Java平臺的3個版本 21.4 Java語言特點 21.5 Java類庫概述 31.6 Java的工作方式 41.7 Java語言的前景 41.8 小結 51.9 習題 5第2章 撥云見日:Java語言的環境配置2.1 操作系統要求 72.2 下載與安裝JDK 7 72.2.1 JDK 7的下載 72.2.2 JDK 7的安裝 92.2.3 設置環境變量 102.2.4 測試環境變量是否配置成功 122.3 第一個Java程序——HelloWorld 122.3.1 編寫HelloWorld 122.3.2 編譯運行 132.3.3 分析結構 142.4 小結 142.5 習題 14第3章 見龍在田:開發工具介紹3.1 UltraEdit和EditPlus編輯器 173.2 集成開發工具介紹 173.2.1 JBuilder簡介 173.2.2 NetBeans簡介 173.2.3 Eclipse簡介 173.2.4 下載Eclipse 183.3 使用Eclipse開發第一個程序——HelloWorld 193.4 小結 223.5 習題 23第二篇 Java語法篇第4章 穩扎馬步:Java編程基礎4.1 注釋 254.2 標識符和關鍵字 264.2.1 命名標識符的規則 264.2.2 關鍵字 264.3 變量和常量 274.3.1 變量 274.3.2 常量 274.4 數據基本類型 284.4.1 整型 284.4.2 浮點型 294.4.3 字符型 294.4.4 邏輯型 304.5 數據類型之間的轉換 304.5.1 自動類型轉換 314.5.2 強制類型轉換 314.6 JAVA中的運算符 324.6.1 算術運算符 324.6.2 關系運算符 344.6.3 邏輯運算符 344.6.4 賦值運算符 354.6.5 位運算符 354.6.6 移位運算符 374.6.7 三元運算符 384.6.8 對象運算符 394.7 運算符的優先級 394.8 Java語言的編碼規范 404.8.1 語法規范 404.8.2 代碼編寫規范 404.9 本章知識點綜合應用 414.9.1 轉換基本數據類型 414.9.2 Java的運算符 434.10 小結 504.11 習題 50第5章 白鶴亮翅:程序控制語句5.1 條件語句 525.1.1 if語句 525.1.2 switch語句 555.1.3 if與switch的區別 565.2 循環語句 575.2.1 for循環結構 575.2.2 while循環結構 585.2.3 do-while循環結構 595.2.4 while與do-while的區別 605.3 break和continue語句 615.3.1 break語句 615.3.2 continue語句 625.3.3 break與continue的區別 635.4 本章知識點綜合應用 635.4.1 控制程序的流程 635.4.2 計算階乘 665.5 小結 675.6 習題 67第6章 知己知彼:面向對象程序設計6.1 面向對象的基本概念 696.1.1 面向過程與和面向對象的程序設計 696.1.2 對象和封裝 696.1.3 類和實例 706.2 類 716.2.1 類的定義 716.2.2 成員變量 726.2.3 成員方法 746.2.4 構造方法 766.2.5 main()方法 766.2.6 參數的傳遞 776.2.7 類對象的創建、使用和清除 786.3 包 806.3.1 包的作用 806.3.2 包的定義 806.3.3 運行包中的類 816.3.4 引入包中的類 816.4 類中變量和方法的訪問權限 826.4.1 公有類型變量和方法 836.4.2 受保護類型變量和方法 836.4.3 私有類型變量和方法 846.5 類的繼承 856.5.1 繼承的概念 866.5.2 繼承的實現—創建子類 866.5.3 繼承數據成員和方法 876.5.4 覆蓋 886.5.5 繼承中要注意的問題 906.6 類的多態性 906.7 抽象類 926.7.1 抽象類的定義 926.7.2 抽象類實例 926.8 接口 936.8.1 接口的定義 936.8.2 接口的使用 946.8.3 接口的繼承 956.9 內部類 966.9.1 匿名類(anonymous class) 966.9.2 靜態類(static class) 976.9.3 成員類(member class) 976.9.4 局部類(local class) 986.10 類相關關鍵字 996.10.1 this關鍵字 996.10.2 static修飾符 996.10.3 final修飾符 1016.10.4 super關鍵字 1036.11 本章知識點綜合應用 1046.11.1 Java的參數傳遞 1046.11.2 自定義形狀類 1056.11.3 方法和變量在繼承時的覆蓋與隱藏 1106.12 小結 1146.13 習題 114第7章 穩扎穩打:數組7.1 一維數組 1167.1.1 一維數組的聲明 1167.1.2 一維數組的創建 1167.1.3 一維數組的初始化 1167.1.4 一維數組元素的使用 1177.1.5 一維數組元素的默認值 1187.2 二維數組 1197.2.1 二維數組聲明 1197.2.2 二維數組的創建 1197.2.3 二維數組的初始化 1207.2.4 二維數組的遍歷 1207.3 數組的相關操作 1217.3.1 數組長度 1217.3.2 數組填充 1217.3.3 數組復制 1227.3.4 數組比較 1237.4 數組排序 1237.4.1 sort函數排序 1237.4.2 冒泡排序 1247.5 本章知識點綜合應用 1257.5.1 使用Arrays 1257.5.2 求質數 1277.5.3 動態調整數組長度 1297.6 小結 1307.7 習題 131第8章 借花獻佛:集合8.1 Java集合框架 1338.2 Collection接口 1338.2.1 轉換構造方法 1338.2.2 Collection接口的定義 1338.2.3 Collection接口的基本操作 1348.2.4 遍歷Collection接口 1348.2.5 Collection接口的批量操作 1358.2.6 Collection接口的數組操作 1368.3 Set接口 1368.3.1 Set接口的定義 1368.3.2 Set接口的基本操作 1378.3.3 Set接口的批量操作 1388.3.4 Set接口的數組操作 1398.4 List接口 1398.4.1 List接口的定義 1408.4.2 從Collection繼承的操作 1408.4.3 按位置訪問和查找操作 1418.4.4 List迭代方法 1428.5 Map接口 1438.5.1 Map接口的定義 1438.5.2 Map接口的基本操作 1448.5.3 Map接口的批量操作 1458.6 實現 1458.6.1 實現的類型 1468.6.2 Set接口的實現 1478.6.3 List接口的實現 1488.6.4 Map接口的實現 1488.7 本章知識點綜合應用 1498.7.1 ArrayList、Vector和LinkedList 1498.7.2 對List排序 1548.7.3 對Map排序 1568.8 小結 1588.9 習題 158第9章 點石成金:字符串處理9.1 字符類 1609.1.1 Character字符包裝器類 1609.1.2 轉義字符序列 1619.1.3 常用構造函數 1619.1.4 字符的比較 1629.1.5 取字符對象的值 1629.2 字符串String 1639.2.1 字符串聲明與賦值 1639.2.2 常用構造函數 1639.2.3 獲取字符串長度 1659.3 字符串常用操作 1669.3.1 字符串連接 1669.3.2 字符串比較 1679.3.3 字符串截取 1689.3.4 字符串查找 1699.3.5 字符串大小寫轉換 1709.3.6 字符串內容的替換 1719.3.7 獲取字符串某位置的字符 1729.4 字符串其他操作 1729.5 字符串數組 1739.5.1 字符串數組的構造函數 1749.5.2 字符串數組的屬性及常用方法 1749.6 字符串緩存類StringBuffer 1759.6.1 常用構造函數 1759.6.2 字符串緩存與字符串的轉化 1769.6.3 字符串緩存擴充 1779.6.4 字符串緩存插入 1779.7 字符串緩存的其他操作 1789.8 字符串標記類 1799.8.1 常用構造函數 1799.8.2 常用方法 1799.9 本章知識點綜合應用 1809.9.1 使用String 1809.9.2 基本數據類型與字符串的轉化 1849.9.3 使用StringBuffer 1869.10 小結 1909.11 習題 190第三篇 Java編程提高篇第10章 云行雨施:Java Swing編程10.1 Swing的特點 19210.2 Swing容器 19210.2.1 JFrame容器 19210.2.2 JPanel容器 19510.3 創建圖形界面程序 19610.4 Swing常用組件 19710.4.1 按鈕組件JButton 19710.4.2 復選框組件JCheckBox 19810.4.3 單選按鈕組件JRadioButton 19810.4.4 文本框組件JTextField 19810.4.5 密碼框組件JPasswordField 19910.4.6 組合框組件JComboBox 19910.4.7 滑塊組件JSlider 19910.4.8 微調組制組件JSpinner 19910.4.9 菜單組件JMenu 20010.5 不可編輯的信息顯示組件 20010.5.1 標簽組件JLabel 20010.5.2 進度條組件JProgressBar 20110.5.3 工具提示組件JToolTip 20110.6 Swing高級組件 20210.6.1 顏色選擇器JColorChooser 20210.6.2 文件選擇器JFileChooser 20210.6.3 文本編輯組件JEditorPane和JTextPane 20310.6.4 文本區組件JTextArea 20410.6.5 表組件JTable 20410.6.6 樹組件JTree 20510.6.7 面板組件JPanel 20610.6.8 滾動面板JScrollPane 20710.6.9 拆分面板JSplitPane 20710.6.10 選項卡面板JTabbedPane 20810.6.11 工具欄JToolBar 20810.7 本章知識點綜合應用 20910.7.1 一個圓形的按鈕 20910.7.2 捕捉屏幕 21110.7.3 縮放圖片 21410.8 小結 21910.9 習題 219第11章 十拿九穩:標準布局11.1 標準布局管理器簡介 22211.1.1 BorderLayout邊框布局 22211.1.2 BoxLayout盒狀布局 22311.1.3 CardLayout卡片布局 22411.1.4 FlowLayout流動布局 22511.1.5 GridLayout網格布局 22611.1.6 GridBagLayout網格包布局 22711.2 使用布局管理器技巧 22811.2.1 設置布局管理器 22811.2.2 向容器中添加組件 22911.2.3 提供組件大小和排列策略 22911.2.4 設置組件之間的間隙 22911.2.5 設置容器的語言方向 23011.3 本章知識點應用 23111.3.1 設計用戶登錄界面 23111.3.2 日歷 23511.4 小結 24111.5 習題 242第12章 料事如神:Java異常處理12.1 Java中的異常 24412.2 異常處理 24512.2.1 try語句 24612.2.2 catch語句 24712.2.3 異常類型 24712.2.4 異常處理原則 24812.3 Throwable類 24912.3.1 Throwable類的定義和方法 24912.3.2 異常類的繼承關系 25012.3.3 使用throws拋出異常 25112.3.4 使用throw拋出異常 25212.3.5 運行期異常 25212.4 自定義異常 25312.4.1 創建自定義異常類 25312.4.2 處理自定義異常 25412.5 finally子句 25512.6 異常的幾個問題 25612.6.1 異常丟失 25612.6.2 構造函數中的異常處理 25712.6.3 異常匹配 25812.7 異常的優點 26012.8 本章知識點綜合應用 26212.8.1 throw、throws、try和catch 26212.8.2 自定義異常類 26412.8.3 使用finally 26612.9 小結 26912.10 習題 270第13章 棒打雙狗:Java的輸入/輸出處理13.1 什么是流 27213.2 字節流 27213.2.1 輸入流類InputStream 27213.2.2 輸出流類OutputStream 27413.3 字符流 27513.3.1 Writer類 27513.3.2 Reader類 27713.3.3 讀取Unicode字符 27813.3.4 讀取字符文件 27913.4 File類 28113.4.1 創建文件夾 28113.4.2 創建文件 28213.4.3 復制文件 28313.4.4 刪除文件 28413.4.5 刪除文件夾 28413.5 流的運用 28613.5.1 文件流 28613.5.2 管道流 28713.5.3 I/O重定向 28713.5.4 過濾流 28813.5.5 序列化對象 28913.6 本章知識點綜合應用 29013.6.1 獲取文件的屬性信息 29013.6.2 創建文件和目錄 29213.6.3 刪除文件和目錄 29613.7 小結 29913.8 習題 299第14章 以柔克剛:多線程編程14.1 線程 30114.1.1 線程的組成 30114.1.2 多線程概念 30114.1.3 Java中的多線程 30214.2 創建線程 30214.2.1 繼承Thread類創建線程 30214.2.2 實現Runnable接口創建線程 30314.3 線程的狀態 30514.4 線程的優先級 30614.5 線程的同步 30714.5.1 同步方法 30714.5.2 固定鎖和同步 30814.6 線程的控制 31014.6.1 啟動線程 31014.6.2 掛起和恢復線程 31014.6.3 線程的休眠方法 31014.6.4 線程的加入方法 31214.6.5 中斷線程 31414.6.6 結束線程 31414.7 線程間通信 31514.7.1 PipedWriter類詳解 31514.7.2 PipedReader類詳解 31614.7.3 管道通信實例 31714.8 多線程的死鎖問題 31814.9 多線程的缺點 31914.10 本章知識點綜合應用 31914.10.1 定義和啟動線程 31914.10.2 線程的協作 32114.10.3 線程優先級 32414.11 小結 32514.12 習題 325第15章 李代桃僵:網絡編程15.1 網絡編程基礎 32715.1.1 什么是TCP協議 32715.1.2 什么是IP協議 32715.1.3 什么是TCP/IP 32715.1.4 什么是UDP協議 32815.1.5 什么是端口 32815.1.6 什么是套接字 32815.1.7 java.net包 32815.2 InetAddress類 32915.3 URL網絡編程 33015.3.1 URL 33015.3.2 符語法 33115.3.3 URLConnection類 33215.4 TCP的網絡編程 33215.4.1 Socket 33215.4.2 重要的Socket API 33315.4.3 服務器端程序設計 33415.4.4 客戶端程序設計 33615.5 UDP網絡編程 33615.5.1 UDP通信概念 33715.5.2 UDP的特性 33715.5.3 UDP的應用 33815.5.4 UDP與TCP的區別 33815.6 本章知識點綜合應用 33915.6.1 獲取URL的信息 33915.6.2 HTTP客戶端 34115.6.3 基本的Socket編程 34315.7 小結 34815.8 習題 349第16章 一箭雙雕:內存管理技術16.1 程序中“垃圾”是什么 35116.2 “垃圾”收集器 35416.3 如何收集“垃圾” 35616.3.1 finalize重寫 35716.3.2 finalize安全問題 35816.4 非線程“垃圾” 36116.5 線程“垃圾” 36216.6 本章知識點綜合應用 36516.6.1 弱引用實例 36516.6.2 軟引用實例 36716.6.3 最終守護者實例 36916.7 小結 37116.8 習題 371第17章 成人之美:處理圖像17.1 加載與繪制 37317.2 圖標 37617.2.1 Icon接口 37617.2.2 ImageIcon類 37917.3 處理圖像編碼 38017.3.1 JPEG編碼器 38117.3.2 GifEncoder編碼器 38217.4 圖像抓取 38417.4.1 createScreenCapture方法 38417.4.2 抓屏功能使用實例 38417.5 圖像濾鏡的開發 38817.6 RGB色彩通道過濾 39017.7 卷積濾鏡 39117.8 本章知識點綜合應用 39317.9 小結 40217.10 習題 402第18章 里應外合:反射與注解的應用18.1 反射概念 40418.2 Class類的使用實例 40418.3 數組與Class類 40818.4 精確判斷對象類型 40918.4.1 Field類的知識與使用 41018.4.2 Method類的知識與使用 41218.4.3 Constructor類的知識與使用 41418.5 反射與修飾符 41618.6 取消訪問限制 42018.7 利用反射動態創建數組對象 42218.8 本章知識點綜合應用 42318.8.1 instanceof操作符 42318.8.2 獲取類的信息 42418.9 小結 43118.10 習題 431第19章 如虎添翼:使用JDBC連接數據庫19.1 數據庫 43319.1.1 數據庫簡介 43319.1.2 SQL語句 43319.2 JDBC簡介 43519.2.1 什么是JDBC 43519.2.2 JDBC與Java結合 43519.2.3 JDBC如何實現數據庫的平臺無關性 43519.3 JDBC中的常用類和接口 43619.3.1 驅動程序管理類(DriverManager) 43619.3.2 聲明類(Statement) 43619.3.3 數據庫連接類(Connection) 43719.3.4 結果集合類(ResultSet) 43719.4 如何實現數據庫的連接 43819.4.1 加載合適的數據庫驅動程序 43819.4.2 數據庫配置問題 43819.4.3 建立數據庫連接并獲得Statement對象 44019.4.4 執行數據庫查詢語句 44019.4.5 獲得查詢結果 44119.4.6 關閉數據庫連接 44119.4.7 完整的示例程序 44119.5 元數據 44219.5.1 數據庫的DatabaseMetaData元數據 44319.5.2 結果集的ResultSetMetaData元數據 44319.6 批處理 44419.6.1 批處理規范 44419.6.2 批處理舉例 44419.7 本章知識點綜合應用 44519.7.1 訪問數據庫 44519.7.2 對數據庫進行查詢 44619.7.3 增加、修改、刪除數據庫中的數據 44719.8 小結 44819.9 習題 448第20章 同甘共苦:使用Swing組件創建數據庫應用程序20.1 JComboBox組件創建數據庫應用程序 45020.1.1 創建JComboBox 45020.1.2 DefaultComboBoxModel創建JComboBox 45220.2 JList組件創建數據庫應用程序 45320.2.1 DefaultListModel創建JList 45320.2.2 ListModel創建JList 45420.3 JTable組件創建數據庫應用程序 45620.3.1 JTable相關的類 45620.3.2 DefaultTableModel創建JTable 45720.4 本章知識點綜合應用 45820.4.1 使用ResultSet更新數據庫 45820.4.2 使用RowSet 46220.5 小結 47220.6 習題 473第21章 明修棧道:JSP技術21.1 JSP簡介 47521.1.1 MVC模式 47521.1.2 JSP技術的優點 47621.2 基本語法 47621.2.1 注釋 47621.2.2 JSP指令 47721.3 JSP腳本元素 48021.3.1 JSP聲明 48021.3.2 JSP表達式 48121.4 JSP動作 48121.4.1 include動作元素 48221.4.2 forword動作元素 48221.4.3 plugin動作元素 48321.4.4 param動作元素 48321.4.5 useBean、setProperty和getProperty動作元素 48421.5 JSP內置對象 48621.5.1 request對象 48621.5.2 response對象 48821.5.3 session對象 48821.5.4 application對象 48921.5.5 out對象 49121.5.6 config對象 49121.5.7 exception對象 49221.5.8 pageContext對象 49221.6 本章知識點綜合應用 49321.6.1 獲取客戶端的真實IP地址 49321.6.2 設置和讀取Cookie 49521.6.3 JSP無刷新聊天室 49921.7 小結 50521.8 習題 505第22章 暗度陳倉:Servlet技術22.1 Servlet簡介 50722.1.1 什么是Servlet 50722.1.2 Servlet的生命周期 50722.1.3 Servlet的基本結構 50822.2 HTTPServlet應用編程接口 50822.2.1 init()方法 50922.2.2 service()方法 50922.2.3 doGet()方法 50922.2.4 doPost()方法 50922.2.5 destroy()方法 50922.2.6 GetServletConfig()方法 51022.2.7 GetServletInfo()方法 51022.3 創建HttpServlet 51022.4 調用HttpServlet 51222.4.1 由URL調用Servlet 51222.4.2 在<FORM>標記中指定Servlet 51222.4.3 在<SERVLET>標記中指定Servlet 51322.4.4 在ASP文件中調用Servlet 51322.5 Servlet之間的跳轉 51422.5.1 轉向Forward 51422.5.2 重定向Redirect 51522.6 本章知識點綜合應用 51522.6.1 用Servlet生成圖形驗證碼 51522.6.2 用Servlet實現分頁查看數據庫 52022.7 小結 53422.8 習題 534第四篇 開發實戰篇第23章 小試牛刀:界面游戲拼圖23.1 游戲簡介 53623.2 素材準備 53723.3 游戲設計 53723.3.1 加載和拆分圖片 53723.3.2 實現圖片的隨機排列 53823.3.3 實現圖片的移動 53823.3.4 參考圖像的縮放 53923.4 開發步驟 53923.4.1 自定義按鈕類設計:ImageButton類 54023.4.2 游戲界面布局:構造窗體類PuzzleGame 54023.4.3 加載和拆分圖像 54123.4.4 創建拼接圖面板 54223.4.5 創建顯示參考圖像的面板 54323.4.6 創建菜單欄 54523.4.7 實現按鈕事件監聽器類 54723.4.8 設置窗體在屏幕中出現的位置 54723.4.9 編寫main()方法 54823.4.10 運行測試 54823.5 打包部署 54823.6 小結 549第24章 鶴嘯九天:學生信息管理系統24.1 需求分析 55124.2 系統設計 55124.3 登錄模塊 55124.3.1 設計構想 55124.3.2 實現登錄模塊 55224.4 學生信息模塊相關流程 55424.4.1 設計構想 55424.4.2 實現學生信息主界面 55424.4.3 增加學生信息 55724.4.4 刪除學生信息 56024.4.5 修改學生信息 56324.4.6 基本學生信息查詢 56724.4.7 成績查詢 57124.4.8 退出系統 57524.5 教師信息模塊相關流程 57624.5.1 主界面 57624.5.2 增加老師信息 57924.5.3 刪除老師信息 58324.5.4 修改老師信息 58624.5.5 錄入成績 59024.5.6 刪除成績 59324.5.7 修改成績 59624.5.8 基本信息查詢 60024.5.9 退出系統 60424.6 小結 606