part one Java語(yǔ)言入門(mén)
Java語(yǔ)言的特點(diǎn)
- 簡(jiǎn)單易學(xué)
- 面向?qū)ο?/li>
- 分布式
- 解釋性
- 健壯性
- 安全性
- 平臺(tái)無(wú)關(guān)性
- 可移植性
- 高性能
- 多線程
- 動(dòng)態(tài)性
什么是環(huán)境變量?
就是在操作系統(tǒng)中定義的變量,可以被這個(gè)操作系統(tǒng)運(yùn)行的所有程序訪問(wèn)。
Java程序的分類(lèi)
Java程序分為Aplication和Applet兩類(lèi)。
Aplication程序一般在本地運(yùn)行。
Applet程序不是獨(dú)立的程序,使用時(shí)必須把編譯生成的class文件嵌入到html文件中,借助瀏覽器解釋執(zhí)行。
html語(yǔ)言的特點(diǎn)
- 每一個(gè)標(biāo)記都放在一對(duì)尖括號(hào)內(nèi)。
- 標(biāo)記大都成對(duì)出現(xiàn)。
- html文件以<HTML>標(biāo)記開(kāi)始,以</HTML>標(biāo)記結(jié)束。
- html語(yǔ)言不區(qū)分大小寫(xiě)。
part two Java語(yǔ)言基礎(chǔ)
Java數(shù)據(jù)類(lèi)型
Java語(yǔ)言中定義了8種基本數(shù)據(jù)類(lèi)型。
- 字節(jié)型(byte)
- 短整型(short)
- 整型(int)
- 長(zhǎng)整型(long)
- 字符型(char)
- 浮點(diǎn)型(float)
- 雙精度型(double)
- 布爾型(boolean)
常量和變量
常量:直接量是指在程序中直接給出的一個(gè)符號(hào)串,作用是為變量賦值或參與表達(dá)式運(yùn)算。
變量:變量在程序中為一個(gè)標(biāo)識(shí)符,在內(nèi)存中是一塊空間,它提供了一個(gè)臨時(shí)存放信息和數(shù)據(jù)的地方,具有記憶數(shù)據(jù)的功能。
part three Java語(yǔ)言的流程控制
結(jié)構(gòu)化程序設(shè)計(jì)的三種基本流程控制結(jié)構(gòu)
- 順序結(jié)構(gòu)(switch)
- 選擇結(jié)構(gòu)(if)
- 循環(huán)結(jié)構(gòu)(for,while)
part five 面向?qū)ο蟮某绦蛟O(shè)計(jì)基礎(chǔ)
類(lèi)
類(lèi)是對(duì)一個(gè)或幾個(gè)相似對(duì)象的描述,它把不同的對(duì)象具有的共性抽象出來(lái),定義為某類(lèi)對(duì)象共有的變量和方法,從而使程序員實(shí)現(xiàn)代碼的復(fù)用,所以說(shuō),類(lèi)是同一類(lèi)對(duì)象的原型。
變量類(lèi)型
實(shí)例變量:如果在類(lèi)的代碼段之外聲明且沒(méi)有限定詞static,則為實(shí)例變量。
局部變量:如果在類(lèi)的方法體之中聲明,則為局部變量。
靜態(tài)變量:如果一個(gè)實(shí)例變量聲明為static,則為靜態(tài)變量。
靜態(tài)方法
靜態(tài)方法也稱(chēng)為類(lèi)方法,與之對(duì)應(yīng),其他方法就稱(chēng)之為實(shí)例方法。
類(lèi)的繼承
在類(lèi)的繼承中,被繼承的類(lèi)稱(chēng)為父類(lèi),繼承而來(lái)的類(lèi)稱(chēng)為子類(lèi)。有多個(gè)子類(lèi)共同繼承一個(gè)父類(lèi),那么這個(gè)父類(lèi)就是多個(gè)子類(lèi)的基類(lèi)。
this和super的區(qū)別
this和super分別指向有繼承關(guān)系的子類(lèi)和父類(lèi)。
this出現(xiàn)在程序代碼中,指的是所在類(lèi)的當(dāng)前對(duì)象。
super指的是所繼承的父類(lèi)對(duì)象。
this和super均不用先聲明即可直接使用。
類(lèi)的多態(tài)
Java中提供了兩種多態(tài)機(jī)制:“重載",“覆蓋”。
抽象類(lèi)
在Java中,凡是用abstract修飾符修飾的類(lèi)稱(chēng)為抽象類(lèi)。
接口
接口主要是為了解決多重繼承的問(wèn)題。
接口的定義包括兩部分:接口聲明和接口體。格式如下:
[訪問(wèn)權(quán)限] interface 接口名 [ extends 父接口名1,父接口名2,......]
{
//接口體
}
import語(yǔ)句
為了能夠使用Java中已經(jīng)提供的類(lèi),或者能夠在其他類(lèi)中使用自己定義的包中的類(lèi),需要使用import語(yǔ)句引入所需要的類(lèi)。
import語(yǔ)句格式如下:
import pack1[ . pack2 ] [ . pack3... ] . ( classname | * );
其中:
pack1[ . pack2 ] [ . pack3... ]
表明包的層次,與package語(yǔ)句相同。classname指明所要引入類(lèi)的名稱(chēng)。
part eight 異常處理與文件管理
異常
Java把程序運(yùn)算中可能出現(xiàn)的錯(cuò)誤分為兩類(lèi),一類(lèi)是非致命性的,通過(guò)某種修改后程序還能繼續(xù)執(zhí)行。這類(lèi)錯(cuò)誤稱(chēng)為異常。如打開(kāi)一個(gè)文件時(shí),發(fā)現(xiàn)文件不存在。另一類(lèi)是致命性的,即程序遇到了非常嚴(yán)重的不正常狀態(tài),不能簡(jiǎn)單地恢復(fù)執(zhí)行,這就是錯(cuò)誤,比如程序運(yùn)行過(guò)程中內(nèi)存耗盡。
try與catch語(yǔ)句的語(yǔ)法格式
try{
//此處為拋出具體異常的代碼
}catch (ExceptionType1 e) {
//拋出ExceptionType1異常時(shí)要執(zhí)行的代碼
}catch (ExceptionType2 e) {
//拋出ExceptionType2異常時(shí)要執(zhí)行的代碼
...
}catch (ExceptionTypek e) {
//拋出ExceptionTypek異常時(shí)要執(zhí)行的代碼
}finally
//必須執(zhí)行的代碼
}
part nine Applet與多線程
Applet類(lèi)
Applet類(lèi)骨干由init()、start()、stop()、destory() 這四個(gè)方法構(gòu)成。
程序、進(jìn)程、線程和多線程
程序是由若干語(yǔ)句組成的語(yǔ)句序列,是一段靜態(tài)代碼。
進(jìn)程是程序的一次動(dòng)態(tài)執(zhí)行過(guò)程。
線程又是一個(gè)抽象的概念,它包含了一個(gè)計(jì)算機(jī)執(zhí)行傳統(tǒng)程序時(shí)所做的每一件事情。
多線程是指同一個(gè)應(yīng)用程序有多個(gè)順序同時(shí)執(zhí)行。
線程同步
所謂線程同步,即某線程在一個(gè)完整操作的全執(zhí)行過(guò)程中,獨(dú)享相關(guān)資源而不被侵占。
線程死鎖
死鎖是指兩或多個(gè)線程無(wú)止境相互等待的過(guò)程,同步不當(dāng)可能會(huì)引發(fā)線程的死鎖。
為解決死鎖的問(wèn)題,在進(jìn)行多線程程序設(shè)計(jì)時(shí)需要遵循如下策略。
- 在指定的任務(wù)真正需要并行時(shí),才采用多線程進(jìn)行程序設(shè)計(jì)。
- 在對(duì)象的同步方法中需要調(diào)用其它方法時(shí)必須小心。
- 對(duì)共享資源的占用時(shí)間要盡可能的短。
part ten 網(wǎng)絡(luò)與數(shù)據(jù)庫(kù)基礎(chǔ)編程
URL定位資源
IP唯一標(biāo)志了Internet上的計(jì)算機(jī),而URL則標(biāo)志了這些計(jì)算機(jī)上的資源。更具體的說(shuō),URL充當(dāng)了一個(gè)指針,指向web上的web頁(yè)、二進(jìn)制文件以及其他的信息對(duì)象。
數(shù)據(jù)庫(kù)應(yīng)用模型
目前,大多數(shù)大型數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)采用了基于網(wǎng)絡(luò)的Client/Server兩層結(jié)構(gòu) 或Browser/Server多層結(jié)構(gòu) 體系。
Java數(shù)據(jù)庫(kù)連接(JDBC)
JDBC時(shí)Java數(shù)據(jù)庫(kù)連接的API,是由Sun公司提供的與平臺(tái)無(wú)關(guān)的數(shù)據(jù)庫(kù)連接標(biāo)準(zhǔn)。