第2章 一切都是對象2.1 用句柄操縱對象2.2 必須創(chuàng )建所有對象2.2.1 保存在什么地方2.2.2 特殊情況:主類(lèi)型2.2.3 Java中的數組2.3 絕對不要清除對象2.3.1 作用域2.3.2 對象的作用域2.4 新建數據類(lèi)型:類(lèi)2.4.1 字段和方法2.5 方法、自變量和返回值2.5.1 自變量列表2.6 構建Java程序2.6.1 名字的可見(jiàn)性2.6.2 使用其他組件2.6.3 static關(guān)鍵字2.7 我們的第一個(gè)Java程序2.8 注釋和嵌入文檔2.8.1 注釋文檔2.8.2 具體語(yǔ)法2.8.3 嵌入HTML2.8.4 @see:引用其他類(lèi)2.8.5 類(lèi)文檔標記2.8.6 變量文檔標記2.8.7 方法文檔標記2.8.8 文檔示例2.9 編碼樣式2.10 總結2.11 練習 第3章 控制程序流程3.1 使用Java運算符3.1.1 優(yōu)先級3.1.2 賦值3.1.3 算術(shù)運算符3.1.4 自動(dòng)遞增和遞減3.1.5 關(guān)系運算符3.1.6 邏輯運算符3.1.7 按位運算符3.1.8 移位運算符3.1.9 三元if-else運算符3.1.10 逗號運算符3.1.11 字串運算符+3.1.12 運算符常規操作規則3.1.13 造型運算符3.1.14 Java沒(méi)有“sizeof”3.1.15 復習計算順序3.1.16 運算符總結3.2 執行控制3.2.1 真和假3.2.2 if-else3.2.3 反復3.2.4 do-while3.2.5 for3.2.6 中斷和繼續3.2.7 切換3.3 總結3.4 練習 第4章 初始化和清除4.1 由構建器保證初始化4.2 方法過(guò)載4.2.1 區分過(guò)載方法4.2.2 主類(lèi)型的過(guò)載4.2.3 返回值過(guò)載4.2.4 默認構建器4.2.5 this關(guān)鍵字4.3 清除:收尾和垃圾收集4.3.1 finalize()用途何在4.3.2 必須執行清除4.4 成員初始化4.4.1 規定初始化4.4.2 構建器初始化4.5 數組初始化4.5.1 多維數組4.6 總結4.7 練習 第5章 隱藏實(shí)施過(guò)程5.1 包:庫單元5.1.1 創(chuàng )建獨一無(wú)二的包名5.1.2 自定義工具庫5.1.3 利用導入改變行為5.1.4 包的停用5.2 Java訪(fǎng)問(wèn)指示符5.2.1 “友好的”5.2.2 public:接口訪(fǎng)問(wèn)5.2.3 private:不能接觸5.2.4 protected:“友好的一種”5.3 接口與實(shí)現5.4 類(lèi)訪(fǎng)問(wèn)5.5 總結5.6 練習 第6章 類(lèi)再生6.1 合成的語(yǔ)法6.2 繼承的語(yǔ)法6.2.1 初始化基礎類(lèi)6.3 合成與繼承的結合6.3.1 確保正確的清除6.3.2 名字的隱藏6.4 到底選擇合成還是繼承6.5 protected6.6 遞增開(kāi)發(fā)6.7 上溯造型6.7.1 何謂“上溯造型”?6.8 final關(guān)鍵字6.8.1 final數據6.8.2 final方法6.8.3 final類(lèi)6.8.4 final的注意事項6.9 初始化和類(lèi)裝載6.9.1 繼承初始化6.10 總結6.11 練習 第7章 多形性7.1 上溯造型7.1.1 為什么要上溯造型7.2 深入理解7.2.1 方法調用的綁定7.2.2 產(chǎn)生正確的行為7.2.3 擴展性7.3 覆蓋與過(guò)載7.4 抽象類(lèi)和方法7.5 接口7.5.1 Java的“多重繼承”7.5.2 通過(guò)繼承擴展接口7.5.3 常數分組7.5.4 初始化接口中的字段7.6 內部類(lèi)7.6.1 內部類(lèi)和上溯造型7.6.2 方法和作用域中的內部類(lèi)7.6.3 鏈接到外部類(lèi)7.6.4 static內部類(lèi)7.6.5 引用外部類(lèi)對象7.6.6 從內部類(lèi)繼承7.6.7 內部類(lèi)可以覆蓋嗎?7.6.8 內部類(lèi)標識符7.6.9 為什么要用內部類(lèi):控制框架7.7 構建器和多形性7.7.1 構建器的調用順序7.7.2 繼承和finalize()7.7.3 構建器內部的多形性方法的行為7.8 通過(guò)繼承進(jìn)行設計7.8.1 純繼承與擴展7.8.2 下溯造型與運行期類(lèi)型標識7.9 總結7.10 練習 第8章 對象的容納8.1 數組8.1.1 數組和第一類(lèi)對象8.1.2 數組的返回8.2 集合8.2.1 缺點(diǎn):類(lèi)型未知8.3 枚舉器(反復器)8.4 集合的類(lèi)型8.4.1 Vector8.4.2 BitSet8.4.3 Stack8.4.4 Hashtable8.4.5 再論枚舉器8.5 排序8.6 通用集合庫8.7 新集合8.7.1 使用Collections8.7.2 使用Lists8.7.3 使用Sets8.7.4 使用Maps8.7.5 決定實(shí)施方案8.7.6 未支持的操作8.7.7 排序和搜索8.7.8 實(shí)用工具8.8 總結8.9 練習 第9章 違例差錯控制9.1 基本違例9.1.1 違例自變量9.2 違例的捕獲9.2.1 try塊9.2.2 違例控制器9.2.3 違例規范9.2.4 捕獲所有違例9.2.5 重新“擲”出違例9.3 標準Java違例9.3.1 RuntimeException的特殊情況9.4 創(chuàng )建自己的違例9.5 違例的限制9.6 用finally清除9.6.1 用finally做什么9.6.2 缺點(diǎn):丟失的違例9.7 構建器9.8 違例匹配9.8.1 違例準則9.9 總結9.10 練習 第10章 Java IO系統10.1 輸入和輸出10.1.1 InputStream的類(lèi)型10.1.2 OutputStream的類(lèi)型10.2 增添屬性和有用的接口10.2.1 通過(guò)FilterInputStream從InputStream里讀入數據10.2.2 通過(guò)FilterOutputStream向OutputStream里寫(xiě)入數據10.3 本身的缺陷:RandomAccessFile10.4 File類(lèi)10.4.1 目錄列表器10.4.2 檢查與創(chuàng )建目錄10.5 IO流的典型應用10.5.1 輸入流10.5.2 輸出流10.5.3 快捷文件處理10.5.4 從標準輸入中讀取數據10.5.5 管道數據流10.6 StreamTokenizer10.6.1 StringTokenizer10.7 Java 1.1的IO流10.7.1 數據的發(fā)起與接收10.7.2 修改數據流的行為10.7.3 未改變的類(lèi)10.7.4 一個(gè)例子10.7.5 重定向標準IO10.8 壓縮10.8.1 用GZIP進(jìn)行簡(jiǎn)單壓縮10.8.2 用Zip進(jìn)行多文件保存10.8.3 Java歸檔(jar)實(shí)用程序10.9 對象串聯(lián)10.9.1 尋找類(lèi)10.9.2 序列化的控制10.9.3 利用“持久性”10.10 總結10.11 練習 第11章 運行期類(lèi)型鑒定11.1 對RTTI的需要11.1.1 Class對象11.1.2 造型前的檢查11.2 RTTI語(yǔ)法11.3 反射:運行期類(lèi)信息11.3.1 一個(gè)類(lèi)方法提取器11.4 總結11.5 練習 第12章 傳遞和返回對象12.1 傳遞句柄12.1.1 別名問(wèn)題12.2 制作本地副本12.2.1 按值傳遞12.2.2 克隆對象12.2.3 使類(lèi)具有克隆能力12.2.4 成功的克隆12.2.5 Object.clone()的效果12.2.6 克隆合成對象12.2.7 用Vector進(jìn)行深層復制12.2.8 通過(guò)序。
建議你先了解JAVA的面向對象思想.
剛剛開(kāi)始學(xué)習的時(shí)候千萬(wàn)別用什么集成開(kāi)發(fā)環(huán)境,比如說(shuō)eclipse那樣的的開(kāi)發(fā)工具,直接用記事本或者是EditPlus或者是UltraEdit32等文本編輯器.那樣你學(xué)習起來(lái)更快.自己學(xué)著(zhù)怎么搭建開(kāi)發(fā)環(huán)境.
如果是出學(xué)者的話(huà)建議你買(mǎi)本張孝祥的JAVA就業(yè)培訓教程,講得很清楚,注意學(xué)習集合類(lèi),IO等方面的知識,如果你要向J2ME方向發(fā)展的話(huà)就要學(xué)習SWING等方面的知識.
JAVA核心技術(shù)和JAVA編程思想都不太適合初級學(xué)者,因為我就是一個(gè)學(xué)法律轉型學(xué)計算機的.在剛剛開(kāi)始接觸JAVA的時(shí)候我買(mǎi)了這兩本書(shū),根本看不懂是個(gè)什么意思.等到現在回頭再看,真是受益非淺.
如果是要視頻方面的知識的話(huà)建議你看馬士兵的,因為張孝祥的基礎視頻講得有點(diǎn)羅嗦.
祝你學(xué)習愉快!
-A- AJAX: (建議不譯,原因:專(zhuān)有名詞) [Asynchronous JavaScript and XML,異步JavaScript及XML] annotation: 注解 Ant: (建議不譯,原因:專(zhuān)有名詞) AOP: (建議不譯,原因:專(zhuān)有名詞) [aspect-oriented programming, 面向層面編程] application: 應用 argument: 參數 -B- B2B: (建議不譯,原因:專(zhuān)有名詞) [Business-to-Business, 業(yè)務(wù)對業(yè)務(wù)] BAM: (建議不譯,原因:專(zhuān)有名詞) [Business Activity Monitoring, 業(yè)務(wù)活動(dòng)監測] BMP: (建議不譯,原因:專(zhuān)有名詞) [bean-managed persistence, Bean管理的持久化] BPEL: (建議不譯,原因:專(zhuān)有名詞) [Business Process Excution Language, 業(yè)務(wù)流程執行語(yǔ)言] BPM: (建議不譯,原因:專(zhuān)有名詞) [Business Process Modeling, 業(yè)務(wù)流程建模] build: 建立;編譯 -C- C2B: (建議不譯,原因:專(zhuān)有名詞) [Consumer-to-Business, 客戶(hù)對業(yè)務(wù)] CAD: (建議不譯,原因:專(zhuān)有名詞) [Computer Aided Design, 計算機輔助設計] CAM: (建議不譯,原因:專(zhuān)有名詞) [Computer Aided Modeling, 計算機輔助建模] case-insensitive: 大小寫(xiě)不敏感 case-sensitive: 大小寫(xiě)敏感 container: 容器 cluster: 集群 CMP: (建議不譯,原因:專(zhuān)有名詞) [container-managed persistence, 容器管理的持久化] component: 組件,部件 configuration: 配置 context: 上下文,環(huán)境 control: 控件 convention: 約定 CORBA: (建議不譯,原因:專(zhuān)有名詞) [Common Object Request Broker Architecture,公共對象請求代理體系] COS: (建議不譯,原因:專(zhuān)有名詞) [Common Object Services,公共對象服務(wù)] couple: 耦合 CRUD: 專(zhuān)指數據庫操作create, read, update, delete,可以不譯 -D- Daemon: (建議不譯,原因:專(zhuān)有名詞) [Internet中用于郵件收發(fā)的后臺程序] DAO: (建議不譯,原因:專(zhuān)有名詞) [Data Access Object, 數據訪(fǎng)問(wèn)對象] data: 數據 DBMS: (建議不譯,原因:專(zhuān)有名詞) [Database Management System, 數據庫管理系統] DDL: (建議不譯,原因:專(zhuān)有名詞) [Data Definition Language, 數據定義語(yǔ)言] Declarative Programming: 聲明式編程 delegate: 委托 Dependency Injection: 依賴(lài)注入 deploy: 部署 deserialize: 反序列化(也可譯為反串行化),即取出 dialect: (行業(yè))術(shù)語(yǔ) directive: 指令 DIT: (建議不譯,原因:專(zhuān)有名詞) [Directory Information Tree, 目錄信息樹(shù)] DML: (建議不譯,原因:專(zhuān)有名詞) [Data Manipulation Language, 數據操作語(yǔ)言] DNS: (建議不譯,原因:專(zhuān)有名詞) [Internet Domain Name System, 因特網(wǎng)域名系統] domain: 域 DSL: (建議不譯,原因:專(zhuān)有名詞) [Domain-Specific Languages, 特定領(lǐng)域語(yǔ)言] DTOs: (建議不譯,原因:專(zhuān)有名詞) [data transfer objects, 數據傳輸對象] -E- EAI: (建議不譯,原因:專(zhuān)有名詞) [Enterprise Application Integration: 企業(yè)應用集成] ECC: (建議不譯,原因:專(zhuān)有名詞) [error correcting codes: 錯誤糾正代碼] EIS: (建議不譯,原因:專(zhuān)有名詞) [Enterprise Information System: 企業(yè)信息系統] EJB: (建議不譯,原因:專(zhuān)有名詞) [Enterprise JavaBean, 企業(yè)JavaBean] encapsulate: 封裝 ESB: (建議不譯,原因:專(zhuān)有名詞) [Enterprise Service Bus, 企業(yè)服務(wù)總線(xiàn)] event: 事件 -F- FAQs: (建議不譯,原因:專(zhuān)有名詞) [Frequently Asked Questions, 經(jīng)常提問(wèn)的問(wèn)題] FIFO: 先進(jìn)先出 [First in, First out] fire: 觸發(fā) firewall: 防火墻 framework: 框架 function: 函數 -G- GoF: "四人幫",對名著(zhù)Design Patterns-Elements of Reusable Object-Oriented Software的四名作者的"戲"稱(chēng)。
[Gang of Four] granularity: 顆粒性,顆粒度 GUI: (建議不譯,原因:專(zhuān)有名詞) [Graphic User Interface: 圖形用戶(hù)接口] GUID: (建議不譯,原因:專(zhuān)有名詞) [Globally Unique Identifier: 全球唯一標識符] -H- hard-coding: 硬碥碼 Hibernate: (建議不譯,原因:專(zhuān)有名詞) [一種為應用程序提供持久化服務(wù)的框架] -I- IDE: 集成開(kāi)發(fā)環(huán)境 [Integrated Development Environment] implement: 實(shí)現 internet: 因特網(wǎng) (也可以不譯,原因:在中文環(huán)境下已經(jīng)得到充分理解及認同) intranet: 企業(yè)內部網(wǎng) IoC: (建議不譯,原因:專(zhuān)有名詞) [Inversion of Control, 控制反轉] -J- JavaBean: (建議不譯,原因:專(zhuān)有名詞) JCP: (建議不譯,原因:專(zhuān)有名詞) [Java Community Process, Java社區研究] JDBC: (建議不譯,原因:專(zhuān)有名詞) [Java DataBase Connectivity, Java數據庫連接] JDO: (建議不譯,原因:專(zhuān)有名詞) [Java Data Objects, Java數據對象] JES: Java企業(yè)系統 [Java Enterprise System] JOnAS: (建議不譯,原因:專(zhuān)有名詞) [ Java Open Application Server, Java開(kāi)放應用服務(wù)器] JNDI: (建議不譯,原因:專(zhuān)有名詞) [Java Naming and Directory Interface, Java命名與目錄接口] JTA: (建議不譯,原因:專(zhuān)有名詞) [Java Transaction API: Java事務(wù)API] JVM: (建議不譯,原。
一、先明白了解什么是Java的四個(gè)方面。
初學(xué)者先弄清這些Java的基本概念也是必不可少的,死記硬背肯定是不行的,重在理解,理解它們之間的區別,分別有哪些應用。想想這些代碼中用到了哪些知識點(diǎn)。
不要一味地照著(zhù)書(shū)本敲代碼。而不去理解。
要知道java是分兩部分的:一個(gè)是編譯,一個(gè)是運行。 二、掌握靜態(tài)方法和屬性 靜態(tài)方法和屬性用于描述某一類(lèi)對象群體的特征,而不是單個(gè)對象的特征。
Java中大量應用了靜態(tài)方法和屬性,這是一個(gè)通常的技巧。但是這種技巧在很多語(yǔ)言中不被頻繁地使用。
理解靜態(tài)方法和屬性對于理解類(lèi)與對象的關(guān)系是十分有幫助的,在大量的Java規范中,靜態(tài)方法和屬性被頻繁使用。 因此學(xué)習者應該理解靜態(tài)方法和屬性。
Java在方法和屬性的調用上是一致的,區別只表現在聲明的時(shí)候,這和c++是不同的。 三、初學(xué)者還需明白JAVA的三個(gè)技術(shù)平臺的關(guān)系。
Java分為三個(gè)體系,分別為Java SE JavaEE Java ME 要知道java是分兩部分的:一個(gè)是編譯,一個(gè)是運行。 。
Java 基本知識點(diǎn)概要1. 了解Java語(yǔ)言的特征,掌握JDK(Java開(kāi)發(fā)工具包)的安裝、目錄層次、環(huán)境變量配置,Java程序的實(shí)現過(guò)程 a).J2SE 1.6( JDK1.5)的安裝:(推薦路徑) Jdk路徑: C:\Soft\JDK1.6 Jre路徑: C:\program files\Java\jre1.6.0\。
b).環(huán)境變量配置: 我的電腦--〉右擊屬性--〉高級--〉環(huán)境變量--〉新建 變量名 變量值Java_Home C:\Soft\JDK1.6Path %Java_Home%\binClassPath %Java_Home%\jre\lib\rt.jar;.c).編寫(xiě)Java源文件(Xxx.java)==>編譯成字節碼 (javac Xxx.java) ==>執行字節碼文件 java Xxx 2.Java語(yǔ)言基礎 a). 數據類(lèi)型: 8種基本類(lèi)型:byte,char,short,int,long,float,double,boolean 引用類(lèi)型: 數組, 類(lèi),接口 b).結構化語(yǔ)句: if,if--else ,if--else if ,switch--case,while,do--while,for c).數組 int num[]={1,2,3,4,5}; <> int []num={1,2,3,4,5}; int num[]=new int[size]; int num[]=new int[]{1,2,3,4,5}; 3.面向對象的基礎 a).類(lèi):具有相同屬性和行為的一組對象的集合 b).對象:客觀(guān)存在的或可被描述的抽象對象,具有特定屬性和行為的實(shí)體。 c).類(lèi)是對象的模板(原型),對象是類(lèi)的具體實(shí)例 d).抽象、封裝、繼承,多態(tài)(重載,重寫(xiě),接口多實(shí)現) e).構造方法(默認構造器/參數化構造器) f).限制訪(fǎng)問(wèn)修飾符: private,缺省(默認),protected,public g).附加修飾符:final,static,abstract h).接口 4.Java 基礎包 a). java.lang : 包裝類(lèi)(Byte,Character,Short,Integer,Long,Float,Double,Boolean) 其它類(lèi):String,StringBuffer,Math,Class,Object b). java.util 隨機類(lèi):Random 日期類(lèi):Date,Calender 集合框架體系:Collection,List,Set,ArrayList,LinkedList,Vector,HashMap c). java.io 文件類(lèi):File 字節流:FileInputStream,FileOutputStream 字符流:FileReader,FileWriter,BufferedReader,BufferedWriter 二進(jìn)制流:(了解) DataInputStream,DataOutputStream 構造鍵盤(pán)流:BufferedReader input=new BufferedReader(new InputStreamReader(System.in)); d). java.swt /javax.swing 容器類(lèi)組件:JFrame,JPanel,JScrollPane 組件: JLabel,JTextField,JPasswordField,JTextArea,JComboBox, JRadioButton,JCheckBox,JMenuBar,JMenu,JMenuItem 5.JDBC 數據庫連接 數據庫的連接步驟: 1). 加載數據庫驅動(dòng)類(lèi): Class.forName(driver) 2). 通過(guò)驅動(dòng)程序管理器獲取連接: DriverManager.getConnection(url,user,password) 3). 基于連接對象建立處理器對象/預處理器對象 Statement stmt=conn.createStatement(); PreparedStatement stmt=conn.prepareStatement("insert into student values(?,?,?,?,?)"); 4). 處理器執行SQL命令(Select/Insert/Update/Delete)executeQuery(Select) ==>返回查詢(xún)的結果集(ResultSet, ResultSet.getXXX(列編號,從1開(kāi)始)) executeUpdate(Insert/Update/Delete) ==>返回執行命令影響的記錄行(int) 5). 關(guān)閉各個(gè)對象 導入java.sql包 一、加載要連接數據庫的驅動(dòng)程序 Class.forName(driver) 注:Class.forName()方法將給定的類(lèi)加載到JVM,如果系統中不存在給定的類(lèi), 則會(huì )引發(fā)異常 二、通過(guò)驅動(dòng)程序管理器得到連接實(shí)例 Connection conn=DriverManager.getConnection(url,user,pwd); 注1:DriverManager類(lèi)跟蹤已注冊的驅動(dòng)程序,通過(guò)getConnection(URL)方法, 找到一個(gè)能夠連接至URL中指定的數據庫驅動(dòng)程序,它接收三個(gè)參數, 分別表示: 數據源的名稱(chēng)(類(lèi)型) 、用戶(hù)名(可選)、密碼(可選) 注2: 1). localhost 表示本機,也可以用127.0.0.1 如果你連的不是本機,可能通過(guò) 機器名 或 IP(192.111.113.100) 來(lái)連接 2). 1433是端口號,SQL server默認是1433 , 自己可以手工的改動(dòng)它 3). databasename后面跟你的數據庫的名稱(chēng),表示你要連接的數據庫是哪個(gè) 4). 最后是用戶(hù)名及密碼, 當前可以訪(fǎng)問(wèn)該數據庫的用戶(hù)及密碼 注3:基于不同連接方式和不同類(lèi)型的數據源連接字符串如下: 1. Jdbc-Odbc橋 (SQLServer/Microsoft Access )數據庫 1.1 加載驅動(dòng)程序: Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); 1.2 建立數據源(控制面板中配置數據源,MyDataSource是數據源名稱(chēng)) conn=DriverManager.getConnection("jdbc:odbc:MyDataSource"); 2. 直連SQLServer 驅動(dòng)程序: -- SQLServer 2000: 2.1 Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver"); 2.2 conn=DriverManager.getConnection("jdbc:microsoft:sqlserver://localhost:1433;dataBaseName=DBName","sa",""); -- SQLServer 2005: 3.1 Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); 3.2 conn=DriverManager.getConnection("jdbc:sqlserver://localhost:1433; dataBaseName=DBName","sa",""); -- 直連Access 驅動(dòng)程序: 4.1 加載驅動(dòng)程序: Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); 4.2、不建立數據源 ,直接寫(xiě)連接字符串 conn=DriverManager.getConnection("jdbc:odbc:;Driver=Microsoft Access Driver (*.mdb);DBQ=Test.mdb"); 注: 1). DBQ后面指定的是要連接的Access 數據庫 2). Microsoft Access driver (*.mdb) 中。
對于Java開(kāi)發(fā)學(xué)習者來(lái)說(shuō),基礎掌握的知識點(diǎn)有以下幾種:
1. Java面向對象的優(yōu)點(diǎn):易維護、易復用、易擴展,由于面向對象有封裝、繼承、多態(tài)性的特性,可以設計出低耦合的系統,使系統更加靈活、更加易于維護。
2. Java虛擬機的概念,任何一種可以運行Java字節碼的軟件均可看成是Java的虛擬機(JVM)
3. JDK顧名思義它是給開(kāi)發(fā)者提供的開(kāi)發(fā)工具箱,是給程序開(kāi)發(fā)者用的。它除了包括完整的JRE(Java Runtime Environment),Java運行環(huán)境,還包含了其他供開(kāi)發(fā)者使用的工具包。
4. JRE的概念,普通用戶(hù)而只需要安裝JRE(Java Runtime Environment)來(lái)運行Java程序。而程序開(kāi)發(fā)者必須安裝JDK來(lái)編譯、調試程序。
5. Java中覆蓋(Override)是指子類(lèi)對父類(lèi)方法的一種重寫(xiě),子類(lèi)只能拋出比父類(lèi)更少的異常,且訪(fǎng)問(wèn)權限不能比父類(lèi)的小。被覆蓋的方法不能是 private 的,否則只是在子類(lèi)中重新定義了一個(gè)方法。
Java中重載(Overload)表示同一個(gè)類(lèi)中可以有多個(gè)名稱(chēng)相同的方法,但這些方法的參數列表各不相同。
Java學(xué)習第一個(gè)重點(diǎn)難點(diǎn)——JDK開(kāi)發(fā)環(huán)境安裝
首先是Java開(kāi)發(fā)環(huán)境的各種版本選擇,一般情況下我們需要從JDK官網(wǎng)下載最新版本的JDK文件(但是還需要注意你所學(xué)習的圖書(shū)或者視頻使用的是哪個(gè)版本的JDK),根據自己電腦的系統選擇對應的安裝包。
其次在安裝過(guò)程中一定要設置環(huán)境變量的路徑,這個(gè)過(guò)程非常關(guān)鍵,會(huì )直接影響你的JDK是否可以正常使用。最終還要在“命令提示符”中驗證,是否已經(jīng)真正地完成了JDK的安裝。
Java學(xué)習第二個(gè)重點(diǎn)難點(diǎn)——變量的理解
變量是入門(mén)Java開(kāi)發(fā)的首個(gè)概念性的思維轉變,目前所有的編程語(yǔ)言都是完成人類(lèi)語(yǔ)言到機器語(yǔ)言的轉變過(guò)渡方式。變量則是貫穿整個(gè)Java編程開(kāi)發(fā)的核心知識點(diǎn)。例如變量的各種不同的類(lèi)型、變量的命名規則、變量之間的轉換、變量賦值時(shí)的初始化的理解,變量的相關(guān)運算符的使用等等。
Java學(xué)習第三個(gè)重點(diǎn)難點(diǎn)——OOP面向對象編程思想
Java作為高級編程語(yǔ)言,最大的特點(diǎn)就是采用面向對象編程思想,與面向過(guò)程的編程方法相比,OOP能夠大幅度的提高代碼運行效率。在面向對象中需要重點(diǎn)理解類(lèi)、對象、抽象類(lèi)、接口、封裝、集成和多態(tài)的概念。在Java編程開(kāi)發(fā)中,大部分實(shí)戰項目都是采用面向對象的思維進(jìn)行開(kāi)發(fā),因此重點(diǎn)理解和掌握OOP是學(xué)習Java編程開(kāi)發(fā)的重中之重。所以掌握面向對象的概念并且能夠熟練運用是一個(gè)Java開(kāi)發(fā)工程師最基本要求。在學(xué)習過(guò)程中,應該盡可能多地去進(jìn)行實(shí)操練習。
Java學(xué)習第四個(gè)重點(diǎn)難點(diǎn)——多線(xiàn)程
在大型項目中,多線(xiàn)程是眾多Java程序員的技術(shù)門(mén)檻,單純的概念理解可能并不是很困難,最重要的是要掌握多線(xiàn)程的核心原理以及多線(xiàn)程的實(shí)際應用。包括多線(xiàn)程的創(chuàng )建、現成的 生命周期、鎖的概念、線(xiàn)程安全等問(wèn)題。在實(shí)際編程開(kāi)發(fā)中,多線(xiàn)程是出現BUG最多的位置,而避免BUG出現的最好方法就是深刻理解多線(xiàn)程的原理,總結歸納多線(xiàn)程經(jīng)常出現異常的位置,并快速響應找到對應的解決方案。
Java學(xué)習中的第五個(gè)重點(diǎn)難點(diǎn)——異常
異常是每一個(gè)Java開(kāi)發(fā)者不可避免的問(wèn)題。包括Error、Runtime Exception、Exception、throw自定義異常等等。之前接觸到很多同學(xué)遇到異常就會(huì )手忙腳亂,其實(shí)大部分異常都是可以通過(guò)調式解決掉,也有很多異常是由于開(kāi)發(fā)者的編碼錯誤引發(fā)的,因此遇到異常首先要分析異常產(chǎn)生的原因,逐層去調式獲取引發(fā)異常的位置,然后不斷的總結歸納引發(fā)異常的各種原因,在學(xué)習工作中不斷的提高自己解決問(wèn)題的能力。學(xué)習異常的方法有兩種,一種就是系統地去了解各種異常的種類(lèi),并理解其引發(fā)異常的原因,在實(shí)際遇到問(wèn)題的時(shí)候先套用方法,然后再尋找不同的解決方案。另外一種方法就是學(xué)習中進(jìn)行大量的練習,在練習過(guò)程中遇到異常后根據實(shí)際情況去排查異常產(chǎn)生原因并總結歸納。
Java學(xué)習中的其他重點(diǎn)難點(diǎn)
雖然在文中沒(méi)有重點(diǎn)提到循環(huán)、構造函數、I/O和序列化、各種設計模式等等關(guān)鍵內容。對于初學(xué)者來(lái)說(shuō),每一個(gè)新的知識點(diǎn)都有一個(gè)理解到運用的過(guò)程,最重要的是能在學(xué)習中掌握所學(xué)知識點(diǎn)的底層原理和實(shí)際應用。Java編程開(kāi)發(fā)作為一門(mén)實(shí)操性非常強的技術(shù),單純的理論知識無(wú)法支撐你的快速就業(yè),能夠真正動(dòng)手編碼并實(shí)現相應的功能才是學(xué)習Java最終的目的。
聲明:本網(wǎng)站尊重并保護知識產(chǎn)權,根據《信息網(wǎng)絡(luò )傳播權保護條例》,如果我們轉載的作品侵犯了您的權利,請在一個(gè)月內通知我們,我們會(huì )及時(shí)刪除。
蜀ICP備2020033479號-4 Copyright ? 2016 學(xué)習?shū)B(niǎo). 頁(yè)面生成時(shí)間:3.363秒