Java面試筆試的基礎(chǔ)知識_第1頁
Java面試筆試的基礎(chǔ)知識_第2頁
Java面試筆試的基礎(chǔ)知識_第3頁
Java面試筆試的基礎(chǔ)知識_第4頁
Java面試筆試的基礎(chǔ)知識_第5頁
已閱讀5頁,還剩100頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

JAVAA

1:簡述述Javva的基本本歷史

jaava起源于SUN公司的的一個GREEEN的項目,其原先先目的是是為家用用消費電電子產(chǎn)品品

發(fā)送一一個信息息的分布布式代碼碼系統(tǒng),通過發(fā)發(fā)送信息息控制電電視機、、冰箱等等.

2:簡單單寫出Javva特點,寫寫出5個以上上,越多多越好

簡單的的、面向向?qū)ο蟮牡摹⒎植疾际降?、、安全的的、穩(wěn)定定的、與與平臺無無關(guān)的、、可解釋釋的、多多線的、、動態(tài)的的語言。。

3:什么么是Javva?

JJAVAA:一種種編程語語言

一種開開發(fā)環(huán)境境

一種應(yīng)應(yīng)用環(huán)境境

一種部部署環(huán)境境

4:請寫寫出Javva的版本本分類,以以及每種種版本的的應(yīng)用方方向

三三種版本本:

JJ2MEE:是面面向內(nèi)存存有限的的移動終終端.為消費費性產(chǎn)品品設(shè)計的的

JJ2SEE:是SUN公司針針對桌面面開發(fā)和和低端商商務(wù)計算算方案開開發(fā)的版版本。為為筆記本本電腦、、PC機設(shè)計計的

JJ2EEE:是一種種利用JAVVA22平臺來來簡化企企業(yè)解決決方案的的開發(fā)、、部署和和管理相相關(guān)的復(fù)復(fù)雜問題題的體系系結(jié)構(gòu)。。為企業(yè)業(yè)級的、、服務(wù)器器端的高高端應(yīng)用用而設(shè)計計的

5:描述述Javva技術(shù)的的主要特特性

jjavaa虛擬機機

垃垃圾回收收

代代碼安全全性

6:描述述Jaava虛擬機機的功能能

提提供硬件件平臺規(guī)規(guī)范

解解讀獨立立于平臺臺的已編編譯的字字節(jié)碼

可可當(dāng)作硬硬件或軟軟件來實實現(xiàn)

可可以在JAVVA技術(shù)開開發(fā)工具具上或在在WEB瀏覽器器上實現(xiàn)現(xiàn)

7:簡述述Javva代碼安安全性

11.字節(jié)碼碼校驗

22.沙箱機機制,提供的的安全機機制

8:簡述述Javva代碼的的運行過過程

加載代代碼通過類類裝載器器裝載CLAASS文件

校驗代代碼由字節(jié)節(jié)碼校驗驗

執(zhí)行代代碼由解釋釋器將字字節(jié)碼轉(zhuǎn)轉(zhuǎn)換成機機器碼

9:簡述述如何搭搭建Javva開發(fā)環(huán)環(huán)境

首先下下載安裝裝JDKK然后配配置環(huán)境境

1.配置PATTH,

2.配置CLAASSPPATHH

3.配置JAVVA_HHOMEE

10:簡簡述claassppathh,patth,JAVVA_HHOMEE的意義義和配置置方法

patth操作系系統(tǒng)運行行環(huán)境的的路徑

claassppathhJJAVAA運行應(yīng)應(yīng)用程序序時所需需要的類類包路徑徑

JAVVA_HHOMEE供需要要運行JAVVA的程序序使用

二:

11:請請描述::一個完完整的Javva文件的的代碼分分幾個部部分,每每部分都都起什么么作用,大大致的寫寫法

ppackkagee當(dāng)前類類所在位位置

iimpoort當(dāng)前類類運行時時所需要要的包或或類

ppubllicclaass類名{

屬性定定義;

方法定定義:

構(gòu)造方法法定義;

puubliicsstatticvoiidmmainn(Sttrinngaargss[]])例外{程序入入口

語句;

}}}

注注釋

12:JJavaa代碼的的注釋有有幾種??分別舉舉例說明明

11.//單行注注解

2./**//塊注釋

3./**

*文檔檔注釋

*//

一三:什什么是Javva代碼的的語句,什什么是Javva代碼的的塊,舉舉例說明明

語語句是一行行以分號號終止的的代碼,例:intta;;

塊塊是以{}為邊界界的一些些語句的的集合例:pubbliccvooidtt((){}}

14:什什么是標(biāo)標(biāo)示符??

標(biāo)標(biāo)識符::是賦予予變量、、類、方方法的名名稱。

一五:標(biāo)標(biāo)示符定定義的規(guī)規(guī)則?

1.首字母母只能以以字母、、下劃線線、$開頭,其后可可以跟字字母‘下劃線線、$和數(shù)字字

2.首字母母小寫中中間用大大寫字母母隔開

3.標(biāo)識符符具有一一定的含含義

16:什什么是關(guān)關(guān)鍵字??

關(guān)關(guān)鍵字就就是編程程語言與與機器語語言的編編碼約定定

17:ttruee、fallse、nulll、sizzeoff、gotto、connst那些是Javva關(guān)鍵字字

truue、、fallse、nulll為JAVVA的關(guān)鍵鍵字

一八:JJavaa的基本本數(shù)據(jù)類類型有幾幾種?分分別是??

shorrtiintlonngboooleeanflooatdouubleechharbytte

19:請請寫出每每種基本本類型的的默認值值?取值值范圍??分別給給出一個個定義的的例子

默認值取值范范圍

字字節(jié)型:0-2^^722^7--1

字字符型:'\\u00000''02^116-11

sshorrt:0-2^^一五2^^一五-1

iint:0-2^^312^331-11

llongg::0-22^6332^^63--1

ffloaat:0..0f-22^3112^^31--1

ddoubble:0..0d-2^^632^663-11

bboolleann:faalseetrrue\\fallse

20:在在基本類類型中,如如果不明明確指定定,整數(shù)數(shù)型的默默認是什什么類型型?帶小小數(shù)的默默認是什什么類型型?

整數(shù)類類型默認為iint

帶小數(shù)數(shù)的默認認為douublee

21:如如何定義義flooat類型和lonng型

flooatf==1..2f

lonngl==1..2L

22:什什么是變變量?

變量::一種在在程序中中可以改改變的標(biāo)標(biāo)識符

23:變變量的定定義規(guī)則則?

1.首字母母小寫中中間用大大寫字母母隔開其后可可以跟字字母‘下劃線線、$和數(shù)字字

2.具有一一定含義義

3.首字母母必須是是字母、、$、下劃劃線,

24:請請寫出Javva編碼約約定中對對下列部部分的要要求:類類、屬性性、方法法、包、、文件名名、變量量、

常量、控控制結(jié)構(gòu)構(gòu)、語句句行、注注釋

類:一個類類文件中中類名要要和文件件名相同同,類名名一定要要以大寫寫字母開開頭單詞詞之間用用大寫字字母分隔隔

屬性:屬性名名首字母母小寫中中間用大大寫字母母隔開

方法:方法名名首字母母小寫中中間用大大寫字母母隔開

包:引用包包必須寫寫在類文文件的開開頭,有且只只能有一一個包全部用用小寫字字母

控制結(jié)結(jié)構(gòu):當(dāng)當(dāng)語句是是控制結(jié)結(jié)構(gòu)的一一部分時時,即使使是單個個語句,也也應(yīng)使用用大括號號將語句句

封閉:

語句行行:每行行只寫一一個語句句,并使使用四個個縮進的的空格,使使代碼更更易讀,注注意用分分號結(jié)束束;

注釋:用注注釋來說說明那些些不明顯顯代碼的的段落;;

常量:常量名名一般用用大寫字字母,單單詞之間間用下劃劃線分隔隔,一旦旦賦值不不允許修修改

25:什什么是Javvadooc?

按照一一定格式式生成程程序的文文檔的工工具

26:什什么是引引用類型型?

一個用用戶定義義類型,它可引引用類和和數(shù)組。。

27:什什么是按按值傳遞遞?什么么是按引引用傳遞遞?

值傳遞遞:就是將將該值的的副本傳傳過去(基基本數(shù)據(jù)據(jù)類型+Sttrinng類型的的傳遞,就就是按值值傳遞)

按引用用傳遞:就是將將值的內(nèi)內(nèi)存地址址傳過去去(除基基本數(shù)據(jù)據(jù)類型+Sttrinng以外類類型的傳傳遞,就就是引用用傳遞)

28:那那些是按按值傳遞遞?那些些是按引引用傳遞遞?

基本數(shù)數(shù)據(jù)類型型+Sttrinng類型按值傳傳遞

除基本本數(shù)據(jù)類類型+Sttrinng類型以以外,比比如Moddels[]]按引用用傳遞

29:如如何創(chuàng)建建一個新新對象??如何使使用對象象中的屬屬性和方方法?

pubblicccllasssSS{}

通過對對象的實實例用(.)來調(diào)用用屬性和和方法;;

靜態(tài)的的方法和和屬性,也也可以直直接用類類(.)來調(diào)用用;

30:簡簡述new關(guān)鍵字字所做的的工作

new關(guān)鍵字字就是為為事先聲聲明的對對象分配配一塊內(nèi)內(nèi)存區(qū)域域;

31:簡簡述”=”和”==”的功能能和區(qū)別別

"="賦賦值,"==="判斷==前后兩兩個值得得內(nèi)存地地址是否否相等;;

區(qū)別:

=:為賦賦值表達達式

==:為邏邏輯表達達式

32:什什么是實實例變量量?什么么是局部部變量??什么是是類變量量?什么么是finnal變量??

實實例變量量:類中定定義的變變量,即類成成員變量量,如果沒沒有初始始化,會會有默認認值;

局部變量量:在方法法中定義義的變量量,必須須初始化化;

類變量::用staaticc可修飾飾的屬性性;

finaal變量:fiinall屬性只只允許賦賦值一次次,且只只能通過過構(gòu)造方方法賦值;定義后后也就

是一個常常量;

33:簡簡述上述述各種變變量的定定義規(guī)則則和使用用規(guī)則??

實例變量量:它不不需要staaticc關(guān)鍵字字來聲明明,只要對對象被當(dāng)當(dāng)作引用用,實例例變量就就將存在在;

局部變變量:在在方法內(nèi)內(nèi)任意定定義變量量即為局局部變量量;

類變量量:必須須用staaticc修飾;;

ffinaal變量::不可以以在修改改的

34:aa++和++a的區(qū)別別?

a+++::先使用用,后加加1

++a:先加1,后使使用

34:請請描述insstannceoof、?:、&、&&各自的的功能

insttancceoff:用來判判斷某個個實例變變量是否否屬于某某種類的的類型。。

?:三目目運算符符:

表達式11?表達式2:表達式3

如果表達達式1為truue,執(zhí)行行表達式式2,否則則執(zhí)行表表達式3

&:位位運算:按位與與

&&:邏輯運運算:邏輯與與

35:請請描述>>、<<、>>>的功能能

>>:算術(shù)術(shù)或符號號右移位位運算符符

<<:算術(shù)或或符號右右移位左左移運算算符

>>>>:邏輯或或非符號號右移位位運算符符

36:請請描述什什么是強強制類型型轉(zhuǎn)換??什么是是自動類類型轉(zhuǎn)換換?什么么是向上上造型??

并分別舉舉例說明明

強制類型型轉(zhuǎn)換:在一個個類型前前面加(),來強制制轉(zhuǎn)換

loongl==9LL;

inntii=(innt)ll;

自動動類型轉(zhuǎn)轉(zhuǎn)換:

inti==5;;

Strringgsttr=="""+i;;

向上造造型:把范圍圍小的造造型為范范圍大的的類型,

inntii=2;

lonngll=i;

37:請請寫出完完整的if條件控控制語句句的結(jié)構(gòu)構(gòu)

if((布表達達式){

}ellse{{

}

38:請請寫出完完整的swiitchh語句的的結(jié)構(gòu)

swiitchh(字符){

ccasee字符:語句

brreakk;

ccasee字符:語句

brreakk;

ddefaaultt:語句

}

39:請請寫出完完整的for語句的的結(jié)構(gòu)

foor(初始語語句;條件語語句;步長){

}

40:請寫出出完整的的whiile語句的的結(jié)構(gòu)

whiile((boooleaan語句){

}

41:請請寫出完完整的dowhiile語句的的結(jié)構(gòu)

do{{

}whhilee(boooleean語句);

42:請請描述breeak和coontiinuee的功能能和用法法

breeak::終止最最近的循循環(huán)

conntinnue::跳出本本次循環(huán)環(huán),執(zhí)行下下一次循循環(huán)

//以上上不完全全

43:定定義一個個一維的的int數(shù)組,先先創(chuàng)建它它,并初初始化它它,給它它賦值,然然后輸出出其中的的一個值值

ppubllicclaassArrr{

puubliicsstatticvoiidmmainn(Sttrinngaargss[])){

intta[[]==neewiint[[5];;

a={{1,22,3,,4,55};///錯誤,只能在在初始化化時這樣樣做

a[[0]==1;

a[[1]==2;

Sysstemm.ouut.pprinntlnn(a[[0]));

}

}

44:定定義一個個一維的的A類型數(shù)數(shù)組,直直接定義義并賦值值,然后后輸出其其中的一一個值

pubblicccllasssA{{

puubliicsstatticintti;;

puubliicsstatticvoiidmmainn(Sttrinngaargss[])){

Aaa=nnewA());

Abb=nnewA());

Aaa[]={{aa,,bb}};

a[00].ii=2;;

Sysstemm.ouut.pprinntlnn(a[[0]));

}

}

45:把把上面的的數(shù)組改改成2維的數(shù)數(shù)組

ppubllicclaassA{

puubliicsstatticintti;;

puubliicsstatticvoiidmmainn(Sttrinngaargss[])){

Aaa[][[]==neewAA[5]][5]];

a[[0][[0]..i=22;

Sysstemm.ouut.pprinntlnn(a[[0][[0]));

}

}

46:舉舉例說明明數(shù)組拷拷貝方法法的使用用:arrrayccopyy方法

ppubllicclaassA{

ppubllicstaaticcvooidmaiin(SStriingarggs[]]){

inntaa[]=nnewintt[5]];

iintb[]]=newwinnt[55];

Syysteem.aarraaycoopy((a[55],00,b[[5],,0,aa.leengtth)

SSysttem..outt.prrinttln((b[00][00]);;

}

}

二、面向向?qū)ο?/p>

1:OOOP(面向向?qū)ο螅┱Z語言的三三大特征征是?

封封裝性,繼繼承性,多多態(tài)性

2:請描描述方法法定義的的完整的的語法結(jié)結(jié)構(gòu)

權(quán)權(quán)限修飾飾符修飾符返回類類型方法名(參數(shù))例外{

方法體;}

訪訪問權(quán)限限+訪問問修飾符符+返回回值+方方法名++參數(shù)列列表+例例外列表表+(塊)方法內(nèi)內(nèi)部代碼碼

3:什么么是重載載?什么么情況下下出現(xiàn)??

在一個個類中出出現(xiàn)相同同的方法法名但參參數(shù)列表表不同時時,這種種情況就就是重載載

其本質(zhì)質(zhì)是創(chuàng)建建一個新新的成員員方法

此方法法在同一一個類中中出現(xiàn)

4:簡述述重載的的規(guī)則

11.方法名名相同,參數(shù)列列表不同同

22.返回類類型可以以不同

33.重載父父類的方方法時訪訪問權(quán)限限只能放放大,例例外列表表只能少少

5:什么么是構(gòu)造造和析構(gòu)構(gòu)方法??功能是是?

構(gòu)構(gòu)造方法法:每個類類至少有有一個構(gòu)構(gòu)造方法法,類構(gòu)構(gòu)成實例例化時調(diào)調(diào)用的方方法

1..方法名和和類名相相同

2..無返回回值類型型

格格式:訪訪問權(quán)限限類名{};

1..有構(gòu)造造時,則則無默認認

2..無構(gòu)造造方法時,默默認為空空(無參數(shù),方法體為為空)

jc垃圾回回收

析析構(gòu)方法法:finnaliize

類銷毀毀時,自自動調(diào)用用方法

當(dāng)對象象在內(nèi)存存中被刪刪除時,自動調(diào)調(diào)用該方方法

在此方方法中可可以寫回回收對象象內(nèi)部的的動態(tài)空空間的代代碼

構(gòu)造方法法:類初初始化時時調(diào)用的的方法。??蓪懣煽刹粚?,如如果不寫寫就會有有一個默默認

的構(gòu)造方方法

析構(gòu)方法法:當(dāng)對對象被從從內(nèi)存中中刪除時時調(diào)用的的方法,在在析構(gòu)成成員方法法內(nèi),可可以填寫寫

用來回收收對象內(nèi)內(nèi)部的動動態(tài)空間間的代碼碼

6:簡述述thiis和supper的功能能和用法法

tthiss:訪問當(dāng)當(dāng)前類的的屬性或或方法,不可以以在靜態(tài)態(tài)方法中中使用,在在調(diào)用其其它構(gòu)造造方法時時,

必須放在在該構(gòu)造造方法的的第一行行

能調(diào)用用除構(gòu)造造方法以以外所有有的屬性性,方法法;

通過過Thiss(..)來調(diào)調(diào)用方法法和屬性性

ssupeer::訪問父父類

supeer只能調(diào)調(diào)用父類類的方法法和屬性性,

在調(diào)用父父類的構(gòu)構(gòu)造方法法時必須須放在子子類構(gòu)造造方法下下面的第第一行;;

通過Supeer((.)來調(diào)用用父類的的屬性和和方法

7:簡述述Javva的訪問問修飾符符類型??分別有有什么功功能?

ppubllic公開的的,任何何一個類類都有可可以訪問問

pprivvatee私有的的,只能能在本類類中被訪訪問

pprottectted同包同同類,只可被被它的子子類訪問問

ddefaaultt只能被被同一個個包中類類訪問

8:分別別說明::在類上上、在屬屬性上、、在方法法上等能能使用那那些訪問問修飾符符

在在類上::pubblicc

在在方法上上:訪問權(quán)權(quán)限:pubbliccprroteecteedpprivvateedeefauult

方法修修飾符::staaticc

fiinall

返回類類型:voiid

在屬屬性上::pubbliccprroteecteedpprivvateedeefauult

sstattic

ffinaal

9:簡述述什么是是包?包包的功能能

包包:對所定定義的多多個JAVVA類進行行分組,將多個個功能相相關(guān)的類類定義到到一個包包(文件)中

功功能:11.易于查查找和使使用適當(dāng)當(dāng)?shù)念?/p>

22.包不止止包含類類和接口口,還可以以包含其其它包,形成層層次的包包空間

33.有助于于避免命命名沖突突

10:請請寫出5個以上上的JDK中的包包,以及及他們的的基本功功能

javva.aawt:包含構(gòu)構(gòu)成抽象象窗口工工具集的的多個類類,用來來構(gòu)建和和管理應(yīng)應(yīng)用程序序的圖形形用戶界界面

javva.llangg:提供javva編成語語言的程程序設(shè)計計的基礎(chǔ)礎(chǔ)類

javva.iio:包含含提供多多種輸出出輸入功功能的類類,

javva.nnet:包含執(zhí)執(zhí)行與網(wǎng)網(wǎng)絡(luò)有關(guān)關(guān)的類,如URL,SCOKET,SEVERSOCKET,

javva.aappllet:包含javva小應(yīng)用用程序的的類

javaa.uttil::包含一一些實用用性的類類

11:什什么是包包裝類??Javva中都有有哪些包包裝類

BoooleeanBByteeShoortIInteegerrLonngFlloattDouubleeChaaracctorr

在JDK中針對對各種基基本類型型分別定定義相應(yīng)應(yīng)的引用用類型稱為封封裝類

12:分分別表述述類的三三大特性性及其他他們的功功能

封封裝性繼承性性多態(tài)性性

封裝:隱隱藏類的的實現(xiàn)細細節(jié)、迫迫使用戶戶去使用用一個接接口去訪訪問數(shù)據(jù)據(jù)、使代代碼更好好維護

繼承:子子類可以以直接繼繼承使用用父類的的方法,程程序員只只需要做做的是定定義額外外特征或或規(guī)定將將適用的的變化

多態(tài)性性:同一一種功能能擁有許許多不同同的實現(xiàn)現(xiàn)方式

一三:如如何實現(xiàn)現(xiàn)繼承??繼承的的規(guī)則??

ppubllicclaassAeexteendssB{{

}}

1..單繼承承性

2..構(gòu)造方法法不能繼繼承

3..supper引用父父類,調(diào)調(diào)用父類類的屬性性,方法法

4..當(dāng)子類類中出現(xiàn)現(xiàn)與父類類的方法法名,返返回類型型,參數(shù)數(shù)列表相相同的方方法時要要覆蓋此此方法

14:什什么是方方法的覆覆蓋?什什么情況況下出現(xiàn)現(xiàn)?

方法覆覆蓋:

子類可可以修改改從父類類繼承過過來的行行為,子類可可以創(chuàng)建建一個與與父類方方法有不不同功能能的方法法

在同類類型中出出現(xiàn)相同的的名稱、、返回類類型方法名名和參數(shù)數(shù)列表的的方法時時

在父子類類時

一五:方方法覆蓋蓋的規(guī)則則?

方法名名要和父父類中被被覆蓋的的方法名名相同,返回類類型相同同

參數(shù)列列表要和和父類中中被覆蓋蓋方法的的參數(shù)列列表相同同

訪問權(quán)權(quán)限要大大于等于于被覆蓋蓋方法的的權(quán)限

例外列列表要小小于等于于被覆蓋蓋方法的的例外列列表

16:如如何調(diào)用用父類的的構(gòu)造方方法?如如何調(diào)用用自己的的構(gòu)造方方法?

要調(diào)用用父類的的構(gòu)造方方法通過在子類類的構(gòu)造造方法中第第一行寫寫supper((參數(shù))能給父類傳傳參;

要調(diào)用用自己的的構(gòu)造方方法通過tthiss(參數(shù))或者直直接調(diào);

17:如如何確定定在多態(tài)態(tài)的調(diào)用用中,究究竟是調(diào)調(diào)用的那那個方法法?

nnew的是哪哪一個類類就是調(diào)調(diào)用的哪哪個類的的方法

一八:sstattic修飾符符的功能能是?可可以用在在什么地地方?怎怎么訪問問?

sstattic修飾符符功能:

1.共用用一塊內(nèi)內(nèi)存區(qū)域域,也就是是一個變變量或成成員方法法對所有有類的實實例都

是相同的的

2.靜態(tài)態(tài)成員方方法和靜靜態(tài)變量量的優(yōu)點點在于他他們能在在沒有創(chuàng)創(chuàng)建類的的任何一一個實例例的情況況下被引引用

3.可以以用在方方法或?qū)賹傩陨?/p>

訪問方式式:

11.直接使使用類名名調(diào)

2.neew一個實實例,用用實例調(diào)調(diào)

19:sstattic的基本本規(guī)則

11.類中的的靜態(tài)方方法不允允許調(diào)用用非靜態(tài)態(tài)的屬性性和方法法,只可以以調(diào)用靜靜態(tài)的屬屬性和方方法

22.可以用用類名直直接調(diào)用用靜態(tài)類類中的屬屬性和方方法

33.靜態(tài)方方法中不不允許出出現(xiàn)thiis和supper

44.靜態(tài)方方法不能能被非靜靜態(tài)方法法覆蓋

55.構(gòu)造方法法不允許許聲明staaticc

6.靜態(tài)態(tài)變量為為類變量量,可以以直接調(diào)調(diào)

7.非靜靜態(tài)變量量為實例例變量,通通過實例例調(diào)用

20:ffinaal修飾符符的功能能是?可可以用在在什么地地方?

功能:標(biāo)記所所有通用用的功能能,不能隨隨意更改改

可以用在類類、屬性性和方法法上

21:ffinaal的基本本規(guī)則

ffinaal類不能能被繼承承

finnal成員變變量只允允許賦值值一次,且只能能通過構(gòu)構(gòu)造方法法里賦值值

finaal局部變變量即為為常量,只只能賦值值一次

finaal方法不不允許被被子類覆覆蓋

finaal一般用用于標(biāo)記記那些通通用性的的功能不不能隨意意修改

22:什什么是抽抽象類??

抽象類::一個類類中聲明明方法存存在而不不是實現(xiàn)現(xiàn),以及及帶有對對已知行行為的方方法的實實現(xiàn),這這樣的類類通常被被稱做抽抽象類

23:抽抽象類的的規(guī)則

類內(nèi)內(nèi)部至少少包含一一個沒有有實現(xiàn)體體的方法法

用aabsttracct修飾

不能能夠直接接使用抽抽象類,必必須通過過子類繼繼承并且且實現(xiàn)

24:什什么情況況下使用用抽象類類

當(dāng)一個類類的一個個或多個個方法是是抽象類類時;

當(dāng)類是一一個抽象象類的子子類,并并且不能能為任何何抽象方方法提供供任何實實現(xiàn)細節(jié)節(jié)或方法法體時;;

當(dāng)一個類類實現(xiàn)一一個接口口,并且且不能為為任何抽抽象方法法提供實實現(xiàn)細節(jié)節(jié)或方法法體時

25:eequaals方法和”==”的功能能和區(qū)別別

功能::判斷對對象是否否相等

區(qū)別::

equualss方法比比較的是是對象的的值

==::比較的的是對象象值的內(nèi)內(nèi)存地址址,對基本本數(shù)據(jù)類類型來說說==比比較的也也是值

26:ttoSttrinng方法的的功能和和基本寫寫法

返返回一個個Strringg類型

ppubllicStrringgtooStrringg(){{

}}

30:SStriing的方法法的功能能和基本本使用方方法,請請描述5個以上上

subbstrringg(參數(shù)1,參數(shù)2);;功能:取字符符串中參參數(shù)1到參數(shù)2的的所所有字符符;"Sttrinng"..subbStrringg(0,,1);;

repplacce(參數(shù)1,參數(shù)2);;功能:用參數(shù)1中的值值替換字字符串中中所有參參數(shù)2的值""Strringg".rrepllacee(inng,ttt);;

equaals(();功能:判斷兩兩個字符符串是否否相等

"Sttrinng"..equualss("ttt"));

ttrimm();;功能:去掉字字符串兩兩邊的空空格

"SStriing"".trrim(();

inddexoof());功能:查找字字符串中中參數(shù)所所在位置置,并返回回字符串串第一個個出該參參數(shù)的下下標(biāo)

"Strringg".iindeexOff("iing"");

sspliit());功能:根據(jù)參參數(shù)分割割該字符符串"SStriing"".spplitt("--");;

31:為為什么使使用StrringgBuffferr類?有有什么功功能和優(yōu)優(yōu)點?

--只只創(chuàng)建一一個對象象

–StrringgBuffferr對象的的內(nèi)容是是可以被被修改的的

–除了字字符的長長度之外外,還有有容量的的概念

–通過動動態(tài)改變變?nèi)萘康牡拇笮?,加加速字符符管?/p>

32:舉舉例說明明如何使使用StrringgBuffferr

SttrinngBuuffeerssb==neewSStriingBBufffer(();

sbb.apppennd(""aaaa");;

sbb.fllushh();;

33:如如何給Javva代碼設(shè)設(shè)置系統(tǒng)統(tǒng)屬性??如何在在程序中中使用它它們

設(shè)置在在一個擴擴展名為為prooperrtiees的文件件,內(nèi)容容為key、vallue的映射射例如“a=2”;

Syysteem.ggetPPropperttiess();;

Syysteem.ssetPPropperttiess();;

34:簡簡述prooperrtiees文件的的結(jié)構(gòu)和和基本用用法

結(jié)構(gòu)::

keey=vvaluue

用法::

SSysttem..gettProoperrtiees方法返返回系統(tǒng)統(tǒng)的Prooperrtiees對象。。

Sysstemm.geetPrropeertyy(SttrinngppropperttyNaame))方法返返回對應(yīng)應(yīng)名字屬屬性的值值。

Sysstemm.geetPrropeertyy(Sttrinngnnamee,Sttrinngvvaluue)重載方方法當(dāng)沒沒有namme指定的的屬性時時,返回回vallue指定的的缺省值值。

35:什什么是接接口?接接口的定定義規(guī)則則?

接接口就是是定義多多種方法法,通過實實現(xiàn)接口口中所有有方法的的抽象類類.

ppubllicintterffaceeTTt{{

puubliicvvoiddouutPuut());

puubliiciinttt(();

}}

36:接接口的作作用?為為什么使使用接口口?

多重繼繼承

封裝、、隔離

功能,實現(xiàn)的的分離

多態(tài)

便于后后期維護護

接口是是可插入入性的保保證。

37:什什么是多多重接口口

就是一一個類實實現(xiàn)多個個接口

38:描描述接口口的基本本思想??

封裝隔隔離

接口及相相關(guān)機制制的最基基本作用用在于::通過接接口可以以實現(xiàn)不不相關(guān)類類的相同同行為,

而不需考考慮這些些類之間間的層次次關(guān)系。。

根據(jù)接接口可以以了解對對象的交交互界面面,而不不需了解解對象所所屬的類類。

面向?qū)ο蟪绦蛐蛟O(shè)計講講究“提高內(nèi)內(nèi)聚,降降低耦合合”。

39:如如何在代代碼中使使用接口口?

ppubllicclaassMyCCasttimmpleemenntsTt{{

puubliicvvoiddouutPuut()){}

pubbliccinntttt()){

reeturrn00;}}}

40:舉舉例說明明如何把把接口當(dāng)當(dāng)作類型型使用

ppubllicintterffaceeAnnimaal()){

ppubllicvoiidttt());}

ppubllicclaassDoggimmpleemenntsAniimall{

ppubllicvoiidttt()){}}}

Annimaalaani=nnewDogg();;

41:如如何選擇擇接口和和抽象類類?為什什么?

1.優(yōu)先選選擇接口口

2.優(yōu)先使使用對象象組合,少用繼繼承

3.抽象類類一般用用在定義義子類的的行為而而父類又又有特定定行為的的子類情情況中

4.在接接口和抽抽象類的的選擇上上,必須須遵守這這樣一個個原則::行為模模型應(yīng)該該總是通通過接口口而不是是抽象類類定義。。

42:什什么是異異常?

程序中中導(dǎo)致程程序中斷斷的一些些情況叫叫做異常常,一般般程序員員可以處處理

43:簡簡述處理理異常的的兩種方方式?

拋出和和cattch語句處處理

43:簡簡述try塊的功功能和規(guī)規(guī)則

tryy塊內(nèi)部部一般寫寫一些編編程人員員認為可可能會出出現(xiàn)異常常的代碼碼,使程序序運行不不會因為為出現(xiàn)異異常而中中斷

44:簡簡述cattch塊的功功能和規(guī)規(guī)則

功能:可可以截獲獲所聲明明的異常常,并在在語句塊塊內(nèi)對其其進行處處理

規(guī)則:ccatcch(EExepptioonee){

Systtem..outt.prrinttln(("thhisisanExeeptiion!!");;

}

45:簡簡述finnallly塊的功功能和規(guī)規(guī)則

finnallly塊一般般寫一些些不論是是否發(fā)生生異常都都必須執(zhí)執(zhí)行一次次的代碼碼

例如關(guān)關(guān)閉與數(shù)數(shù)據(jù)庫的的連接等等

46:簡述thrrow和thrrowss的功能能和使用用方法

thrrow指編程程人員主主動拋出出一個異異常

thrrownewwNuullPPoinnterrExeeptiion(();

throows指程序序遇到異異常情況況自動的的被動拋拋出一個個異常

pubbliccvooidtesst())thhrowwsEExepptioon{}}

47:異異常的分分類?

錯誤(Errror):JVMM系統(tǒng)內(nèi)內(nèi)部錯誤誤、資源源耗盡等等嚴(yán)重情情況,程程序員不不可控制制

例外(EExceeptiion)::其它因因編程錯錯誤或偶偶然的外外在因素素導(dǎo)致的的一般性性問題,程程序

可以控制制

48:什什么是預(yù)預(yù)定義異異常

javva程序中中預(yù)先定定義好的的異常叫叫做預(yù)定定義異常常

49:簡簡述自定定義異常常的規(guī)則則

寫一個個類繼承承Exccepttionn

用戶自定定義異常常通常屬屬Exccepttionn范疇,依依據(jù)慣例例,應(yīng)以以Exccepttionn結(jié)尾,應(yīng)應(yīng)該由人人工創(chuàng)建建并拋出出。

50:什什么是斷斷言?

用來證證明和測測試程序序的假設(shè)設(shè)。

51:如如何使用用斷言??舉例說說明

一種是是asssertt<<布爾表表達式>>;另一一種是asssertt<<布爾表表達式>>:<<細節(jié)描描述>>。

asssertta===100:"這里a等于10"";

52:什什么是集集合?什什么是元元素?

可以包包含其他他對象的的簡單對對象就叫叫集合

集合框框架中所所包含的的對象就就叫做元元素

53:描描述出Javva集合框框架中集集合的接接口關(guān)系系

ColllecttionnSeet和Lisst

SettHaashSSet和SorrteddSett

LisstAArraayLiist和LinnkeddLisst

MappHaashMMap、SorrteddMapp和TreeeMaap

54:代代碼示例例:Colllecctioon接口口的使用用,包括括如何定定義、初初始化、、賦值、、取值、、修改值值除值

Colllecctioonccol=nnewArrrayLListt();;

StrringgolldVaaluee="abbcd"";

StrringgneewVaaluee="12234"";

//增增加

coll.addd(ooldVValuue);;

Iteerattorit=ccol..iteerattor(();

whiile((it..hassNexxt())){

///取值

Sttrinngsstr=((Strringg)itt.neext(();

iff(sttr.eequaals((olddVallue))){

///刪除

ccol..remmovee(olldVaaluee);

///修改

ccol..addd(neewVaaluee);

}

}

55:代代碼示例例:Lisst接口口的使用用,包括括如何定定義、初初始化、、賦值、、取值、、修改值值、刪值值

Lisstccol=nnewArrrayLListt();;

StrringgolldVaaluee="abbcd"";

StrringgneewVaaluee="12234"";

coll.addd(ooldVValuue);;

Iteerattorit=ccol..iteerattor(();

whiile((it..hassNexxt())){

Sttrinngsstr=((Strringg)itt.neext(();

iff(sttr.eequaals((olddVallue))){

ccol..remmovee(olldVaaluee);

ccol..addd(neewVaaluee);

}

}

56:代代碼示例例:Sett接口的的使用,包包括如何何定義、、初始化化、賦值值、取值值、修改改值、刪刪值

Settcool==neewHHashhSett();;

StrringgolldVaaluee="abbcd"";

StrringgneewVaaluee="12234"";

coll.addd(ooldVValuue);;

Iteerattorit=ccol..iteerattor(();

whiile((it..hassNexxt())){

Sttrinngsstr=((Strringg)itt.neext(();

iff(sttr.eequaals((olddVallue))){

ccol..remmovee(olldVaaluee);

ccol..addd(neewVaaluee);

}

}

57:代代碼示例例:Map接口的的使用,包包括如何何定義、、初始化化、賦值值、取值值、修改改值、刪刪

Mappmaap==neewHHashhMapp();;

StrringgolldVaaluee="abbcd"";

StrringgneewVaaluee="12234"";

//增增加

coll.puut(""1",,olddVallue));

Settseet==maap.kkeySSet(();

Iteerattorit=sset..iteerattor(();

whiile((it..hassNexxt())){

Sttrinngkkey=((Strringg)itt.neext(();

///取值

Sttrinngvvaluue==maap.gget((keyy);

}

//修修改

mapp.puut(""1",,newwVallue));

//刪刪除

mapp.reemovve(""1"));

}

58:描描述Lisst接口、Set接口和Map接口的的特點

Lisst接口中中的對象象按一定定順序排排列,允允許重復(fù)復(fù)

Sett接口中中的對象象沒有順順序,但但是不允允許重復(fù)復(fù)

Mapp接口中中的對象象是key、vallue的映射射關(guān)系,key不允許許重復(fù)

59:如如何給集集合排序序?

實現(xiàn)ccompparaablee接口

三、IOO

1:什么么是流??可畫圖圖說明

字符串串分解==================OOutSStreeam==============>wrritee()方法寫寫到文件件中

2:描述述I/O流的基基本接口口和類的的結(jié)構(gòu)

InpputSStreeam

OuttputtStrreamm

3:代碼碼示例::如何使使用URL流來進進行輸入入輸出

tryy{

imaggeSoourcce==neewUURL(("xmmysiitexx/~iinfoo");;

}ccatcch((MallforrmeddURLLExccepttionne)){

}

4:什么么是Uniicodde?

是一種種字符的的編碼方方式

5:代碼碼示例::如何使使用Reaaderr和Wriiterr來進行行輸入輸輸出

InpputSStreeamRReadder ir=nnewInpputSStreeamRReadder((Sysstemm.inn);

OuttStrreammReaaderror=nnewOuttStrreammReaaderr(Syysteem.iin);;

6:什么么是可序序列化??如何實實現(xiàn)可序序列化??

表示一一個數(shù)據(jù)據(jù)可以按按流式輸輸出

實現(xiàn)jjavaa.ioo.Seeriaalizzablle接口

7:代碼碼示例::如何讀讀寫對象象流

//讀

try{

Sttrinngsstr=""1233";

FiileOOutpputSStreeamf==neewFFileeOuttputtStrreamm("ttestt.txxt"));

ObbjecctOuutpuutSttreaamss=newwObbjecctOuutpuutSttreaam(ff);

s..wriiteOObjeect((strr);

f..cloose(();

}caatchh(Exxcepptioonee){{

e..priintSStacckTrracee();;

}

//寫

tryy{

FiileIInpuutSttreaamff=neww FilleInnputtStrreamm("ttestt.txxt"));

ObbjecctInnputtStrreamms=nnew ObjjecttInpputSStreeam((f);;

sttr==(Sttrinng)ss.reeadOObjeect(();

f..cloose(();

}caatchh(Exxcepptioonee){

e..priintSStacckTrracee();;

}

8:簡述述Fille類的基基本功能能

處理文文件和獲獲取文件件信息,文件或或文件夾夾的管理理

除了讀讀寫文件件內(nèi)容其其他的都都可以做做

9:代碼碼示例::如何使使用隨機機文件讀讀寫類來來讀寫文文件內(nèi)容容

RW表示示文件時時可讀寫寫的

讀:

tryy{

RanndommAcccesssFilleff=newwRaandoomAcccesssFiile(("teest..txtt","rww");;

lonngllen=00L;

lonngaallLLen=ff.leengtth());

intti=00;

whiile(leen<<alllLeen){

SStriings==f..reaadLiine(();

iif((i>>0)){

coll.addd(ss);

}}

ii++;;

///游標(biāo)

llen=ff.geetFiilePPoinnterr();;

}

}ccatcch(EExceeptiionerrr){

errr.prrinttStaackTTracce());

}

寫::

trry{

RanndommAcccesssFilleff=newwRaandoomAcccesssFiile(("teest..txtt","rww");;

StrringgBuffferrbuuffeer==neewSStriingBBufffer(("\nn");;

Iteerattorit=ccol..iteerattor(();

whiile(itt.haasNeext(()){

bbufffer..apppendd(itt.neext(()++"\\n"));

}

f.wwritteUTTF(bbufffer..toSStriing(());;

}ccatcch(EExceeptiionerrr){

errr.pprinntSttackkTraace(();

}

10:代代碼示例例:如何何使用流流的基本本接口來來讀寫文文件內(nèi)容容

tryy{

DaataIInpuutSttreaamiin==

neewDDataaInpputSStreeam((

neewBBufffereedInnputtStrreamm(

neewFFileeInpputSStreeam(("Teest..javva"))

)

);;

whhilee(((currrenntLiine=iin.rreaddLinne()))!!=nnulll){

SSysttem..outt.prrinttln((currrenntLiine));

}

}caatchh(IIOExxcepptioonee){

Syysteem.eerr..priintlln(""Errror::"+ee);

}

四、線程程

1:什么么是線程程?

輕量級級的進程程

2:線程程的三個個部分是是?

處理機機

代碼

數(shù)據(jù)

3:為什什么使用用多線程程

使UII響應(yīng)更更快

利用多多處理器器系統(tǒng)

簡化建建模

4:代碼碼示例::Javva中實現(xiàn)現(xiàn)多線程程的兩種種方式,包包括如何何定義多多線程,如如何使用用多線程程

4.1實實現(xiàn)Runnnabble接口

claassThrreadd1iimpllemeentssRuunnaablee{

puubliicvvoiddruun()){

///ruun里一般般寫一個個whiile((truue)循環(huán)

SSysttem..outt.prrinttln((Runnnabble));

}

}

4.2繼繼承Thrreadd

claassThrreadd2eexteendssThhreaad{

puubliicvvoiddruun()){

SSysttem..outt.prrinttln((exttendds);;

}

}

pubblicccllasssTeest{{

puubliicsstatticvoiidmmainn(Sttrinng[]]a)){

TThreead11r=nnewThrreadd1());

TThreeadt1=nnewThrreadd(r));

TThreeadt2=nnewThrreadd(r));

tt1.sstarrt());

tt2.sstarrt());

TThreeadt3=nnewThrreadd2());

tt3.sstarrt());

}

}

5:如何何實現(xiàn)線線程的調(diào)調(diào)度?如如何暫停停一個線線程的運運行

調(diào)度用用waiit和nottifyy

sleeep(()

6:什么么是線程程的優(yōu)先先級

判斷哪哪個線程程先執(zhí)行行的級別別

7:簡述述sleeep方法和waiit方法的的功能和和區(qū)別

sleeep是讓線線程休眠眠一段時時間

waiit是讓線線程掛起起

8:什么么是守候候線程

隱藏在在后臺持持續(xù)運行行的線程程

9:什么么是臨界界資源

指多個個線程共共享的資資源

10:什什么是互互斥鎖,Javva中如何何實現(xiàn)

用來保保證在任任一時刻刻只能有有一個線線程來訪訪問臨界界資源的的那個標(biāo)標(biāo)記

用在對對象前面面限制一一段代碼碼的執(zhí)行行

用在在方法聲聲明中,表表示整個個方法為為同步方方法。

11:什什么是死死鎖?如如何避免免?

如果程程序中有有多個線線程競爭爭多個資資源,就就可能會會產(chǎn)生死死鎖。當(dāng)當(dāng)一個線線程等待待

由另一個個線程持持有的鎖鎖,而后后者正在在等待已已被第一一個線程程持 有的鎖鎖時,就就會

發(fā)生死鎖鎖。

要避免免死鎖,應(yīng)應(yīng)該確保保在獲取取多個鎖鎖時,在在所有的的線程中中都以相相同的順順序獲取取鎖。

盡量少少用臨界界資源

12:簡簡述waiit和nottifyy,nootiffyAlll的使用用

被鎖定定的對象象可以調(diào)調(diào)用waiit())方法,這這將導(dǎo)致致當(dāng)前線線程被阻阻塞并放放棄該對對象

的互斥鎖鎖,即解解除了waiit())方法的的當(dāng)前對對象的鎖鎖定狀態(tài)態(tài),其 他的線線程就有有機

會訪問該該對象。。

nottifyy使等待待隊列上上的一個個線程離離開阻塞塞狀態(tài)

nottifyyAlll使等待待隊列上上的所有有線程離離開阻塞塞狀態(tài)

一三:什什么是url?基本本的格式式是?

統(tǒng)一資資源定位位器

xx1163xx:poort

14:簡簡述IP,,Porrt,TTCP的基本本功能

IP代代表網(wǎng)絡(luò)絡(luò)位置

Porrt代表端端口號

TCPP可保證證不同廠廠家生產(chǎn)產(chǎn)的計算算機能在在共同網(wǎng)網(wǎng)絡(luò)環(huán)境境下運行行,解決決異構(gòu)網(wǎng)網(wǎng)通信問問題,是是目前網(wǎng)網(wǎng)絡(luò)通信信的基本本協(xié)議

一五:簡簡述Javva網(wǎng)絡(luò)模模型的基基本功能能

描述服服務(wù)端和和客戶端端的連接接過程

16:簡簡述Javva網(wǎng)絡(luò)編編程究竟竟做些什什么?如如何做??

1.建建立連接接

2.準(zhǔn)準(zhǔn)備輸出出的數(shù)據(jù)據(jù),流式式輸出

3.流流式輸入入,編程程業(yè)務(wù)需需要的格格式

4.關(guān)關(guān)閉連接接

服務(wù)器器分配一一個端口口號。如如果客戶戶請求一一個連接接,服務(wù)務(wù)器使用用accceptt()方法打打開socckett連接。。

客戶在hhostt的porrt端口建建立連接接。

服務(wù)器器和客戶戶使用InpputSStreeam和OuttputtStrreamm進行通通信。

17:代代碼示例例:基于于Socckett編程

tryy{

SeerveerSoockeetss=newwSeerveerSoockeet(888888);

whhilee(ttruee){{

SSockkets1=ss.accceppt());

OOutpputSStreeamos=ss1.ggetOOutpputSStreeam(();

DDataaOuttputtStrreammdoos==neewDDataaOuttputtStrreamm(oss);

dos..wriiteUUTF(("Heelloo,"+s11.geetInnetAAddrresss()+""porrt#""+s1..gettPorrt())+"\nnbyee!"));

ddos..cloose(();

ss1.cclosse());

}

}caatchh(IIOExxcepptioonee){{

Syysteem.oout..priintlln(""程序運運行出錯錯:"+ee);

}

一八:代代碼示例例:基于于UDP編程

19:TTCP和UDP區(qū)別

TCPP能保證證傳輸內(nèi)內(nèi)容的完完整和準(zhǔn)準(zhǔn)確,UDP不能

五、設(shè)計計模式

1:什么么是設(shè)計計模式??

就是經(jīng)經(jīng)過實踐踐驗證的的用來解解決特定定環(huán)境下下特定問問題的解解決方案案

2:設(shè)計計模式用用來干什什么?

尋找合合適的對對象

決定對象象的粒度度

指定對對象的接接口

描述對象象的實現(xiàn)現(xiàn)

運用復(fù)復(fù)用機制制

重復(fù)使用用經(jīng)過實實踐驗證證的正確確的,用用來解決決某一類類問題的的解決方方案來達達到減少少

工作量、、提高正正確率等等目的

3:什么么是對象象粒度

對象中中方法的的多少就就是粒度度

4:基本本的Javva編程設(shè)設(shè)計應(yīng)遵遵循的規(guī)規(guī)則?

面向接接口編程程,優(yōu)先先使用對對象組合合

5:設(shè)計計模式的的應(yīng)用范范圍

所能解解決的特特定的一一類問題題中

6:簡述述什么是是單例模模式,以以及他解解決的問問題,應(yīng)應(yīng)用的環(huán)環(huán)境,解解決的方方案,

模式的本本質(zhì)

在任何何時間內(nèi)內(nèi)只有一一個類實實例存在在的模式式

需要有一一個從中中進行全全局訪問問和維護護某種類類型數(shù)據(jù)據(jù)的區(qū)域域的環(huán)境境下使用用單例模模式

解決方方案就是是保證一一個類只只有一個個類實例例存在

本質(zhì)就是是實例共共用同一一塊內(nèi)存存區(qū)域

7:代碼碼示例::單例模模式的兩兩種實現(xiàn)現(xiàn)方法,并并說明優(yōu)優(yōu)缺點

pubblicccllasssTeest{{

pubbliccTeest((){

}

prrivaatestaaticcTeesttesst==neewTTestt();;

pubbliccsttatiicTTesttgeetInnstaancee(){{

retturnnteest;;

}

}

pubblicccllasssTeest{{

priivattesstatticTesstttestt=nulll;

privvateeTeest((){

}}

publlicstaaticcTeestgettInsstannce((){

if(ttestt==nnulll){

testt=newwTeest(();

}}

retuurntesst;

}

}

第二種種方式不不需每次次都創(chuàng)建建一個類類實例,而而只是在在第一次次創(chuàng)建

8:簡述述什么是是工廠模模式,以以及他解解決的問問題,應(yīng)應(yīng)用的環(huán)環(huán)境,解解決的方方案,模模式的本本質(zhì)

利用工廠廠來解決決接口選選擇的問問題的模模式

應(yīng)用環(huán)境境:當(dāng)一一個類無無法預(yù)料料要創(chuàng)建建哪種類類的對象象或是一一個類需需要由子子類來指指定

創(chuàng)建的對對象時,就就需要用用到工廠廠模式

解決方案案:定義義一個創(chuàng)創(chuàng)建對象象的接口口,讓子類類來決定定具體實實例化哪哪一個類類

本質(zhì)就是是根據(jù)不不同的情情況來選選擇不同同的接口口

9:代碼碼示例::工廠模模式的實實現(xiàn)方法法

pubblicccllasssFaactoory{{

pubbliccsttatiicSSampplecreeatoor(iintwhiich)){

if(whhichh==11){

retturnnneewSSamppleAA();;

}}elsseiif((whiich===2))

rretuurnnewwSaamplleB(();

}

}

}

PubllicclaassMyFFacttoryy{

PubllicstaaticcmyyFacctorryff=nulll;

PubllicMyFFacttoryy(){{

}

PubllicstaaticcMyyFacctorryggetIInsttancce()){

If(ff==nnulll){

F=neewMMyFaactoory(();

}

}

PubllicDBDDAOgettDAOO(){{

RetuurnnewwDBBDAOOImppl());

}

}

10述什什么是值值對象模模式,以以及他解解決的問問題,應(yīng)應(yīng)用的環(huán)環(huán)境,解解決的方方案,模模式的本本質(zhì)

用來把把一組數(shù)數(shù)據(jù)封裝裝成一個個對象的的模式

解決問問題:在在遠程方方法的調(diào)調(diào)用次數(shù)數(shù)增加的的時候,相相關(guān)的應(yīng)應(yīng)用程序序性能將將會有很很大的下下降

解決方方案:使使用值對對象的時時候,可可以通過過僅僅一一次方法法調(diào)用來來取得整整個對象象,而不不是使用用多次方方法調(diào)用用以得到到對象中中每個域域的數(shù)值值

本質(zhì)::就是把把需要傳傳遞的多多個值封封裝成一一個對象象一次性性傳過去去

11:代代碼示例例:值對對象模式式的實現(xiàn)現(xiàn)方法

pubblicccllasssUsserMModeel{

priivatteSStriinguseerIdd;

privvateeSttrinnguuserrNamme;

ppubllicvoiidssetUUserrId((Strringgidd){

thiis.uuserrId=iid;

}

publlicStrringggeetUsserIId()){

retuurnuseerIdd;

}

publlicvoiidssetUUserrNamme(SStriingnamme){{

thiss.usserNNamee=namme;

}

puubliicSStriinggettUseerNaame((){

reeturrnuuserrNamme;

}

}

12:簡簡述什么么是DAO模式,以以及他解解決的問問題,應(yīng)應(yīng)用的環(huán)環(huán)境,解解決的方方案,模模式的本本質(zhì)

數(shù)據(jù)訪問問對象

解決問題題:根據(jù)據(jù)數(shù)據(jù)源源不同,數(shù)數(shù)據(jù)訪問問也不同同。根據(jù)據(jù)存儲的的類型(關(guān)關(guān)系數(shù)據(jù)據(jù)庫、

面向?qū)ο笙髷?shù)據(jù)庫庫、純文文件等)和和供應(yīng)商商實現(xiàn)不不同,持持久性存存儲(如如數(shù)據(jù)庫庫)的訪訪問差別別也很大大。如何何對存儲儲層以外外的模塊塊屏蔽這這些復(fù)雜雜性,以以提供統(tǒng)統(tǒng)一的調(diào)調(diào)用存儲儲實現(xiàn)。。程序的的分布式式問題

解決方案案:式將將數(shù)據(jù)訪訪問邏輯輯抽象為為特殊的的資源,也也就是說說將系統(tǒng)統(tǒng)資源的的接口從從

其底層訪訪問機制制中隔離離出來;;通過將將數(shù)據(jù)訪訪問的調(diào)調(diào)用打包包,數(shù)據(jù)據(jù)訪問對對象可以以

促進對于于不同數(shù)數(shù)據(jù)庫類類型和模模式的數(shù)數(shù)據(jù)訪問問。

DAO的的本質(zhì)就就是一層層屏蔽一一種變化化

本質(zhì):分分層,是是系統(tǒng)組組件和數(shù)數(shù)據(jù)源中中間的適適配器。。(一層層屏蔽一一種變化化)

一三:代代碼示例例:DAO模式的的實現(xiàn)方方法

puubliiciinteerfaaceCusstommerDDAO{

puubliiciintinsserttCusstommer(();

puubliicCColllecttionnseelecctCuustoomerrsVOO();;

}

14:什什么是開開放-封閉法法則(OCPP)

可擴展展但是不不可以更更改已有有的模塊塊

對對擴展是是開放的的對修改改是封閉閉

一五:什什么是替替換法則則(LSPP)

使用指指向基類類(超類類)的引引用的函函數(shù),必必須能夠夠在不知知道具體體派生類類(子類類)對象象

類型的情情況下使使用

16:如如何綜合合使用我我們學(xué)過過的設(shè)計計模式來來構(gòu)建合合理的應(yīng)應(yīng)用程序序結(jié)構(gòu)

是采用用接口進進行隔離離,然后后同時暴暴露值對對象和工工廠類,如如果是需需要數(shù)據(jù)據(jù)存儲的的功能,又又會通過過DAOO模式去去與數(shù)據(jù)據(jù)存儲層層交互。。

17:構(gòu)構(gòu)建常用用的合理理的Javva應(yīng)用包包結(jié)構(gòu)

Ui(表表現(xiàn)層)

buusinnesss--ffacttoryy,ebbi,eebo

daoo--ffacttoryy,daao,iimpll

六、awwt

1:什么么是GUI中的容容器?什什么是GUI中的組組件?

容器::是Commponnentt的一個個抽象子子類,它它允許其其他的組組件被嵌嵌套在里里面,它它可以容容納組件件或其他他容器

組件:AAWT提供的的具有一一定功能能類,且且?guī)ё约杭旱慕缑婷?,例如如MennuBaar、Butttonn等

2:簡述述AWT中的Fraame、Pannel和組件件的關(guān)系系

組件直直接添加加在Pannel上,而而多個Pannel可以疊疊加到Fraame上,F(xiàn)raame一般只只有一個個,各個個Pannel可以互互相在Fraame上切換換

3:簡述述如何使使用一個個組件

初始化,加加到容器器中,注注冊事件件,實現(xiàn)現(xiàn)相應(yīng)的的事件

Pannelpann=neewPPaneel());

TexxtFiielddtdd=newwTeextFFielld());

td..settTexxt(""thiisiisiinaaTeextFFielld."");

pann.addd(ttd);;

4:描述述一個GUI界面的的基本構(gòu)構(gòu)成?

Fraame,Pannel,組件件

Poppmennu

6:如何何控制外外觀,如如顏色、、字體等等?

可使用用settCollor((),settFonnt())方法

例如::

Fraamef==neewFFramme());

Fonntffontt=newwFoont(("TiimessRomman"",FFontt.PLLAINN,114);;

f.ssetCColoor(CColoor.rred));

f.ssetFFontt(f));

7:什么么是布局局管理器器?

用來管管理GUI界面中中組件的的分布情情況,負負責(zé)決定定布局方方針以及及其容器器的每一一個子組組件的大大小

8:描述述每種布布局管理理器的基基本特點點

FloowLaayouut從左到到右分布布,排滿滿推到下下一行

BorrderrLayyoutt上下左左右中分分布

CarrdLaayouut卡片式式分布

GriidLaayouut網(wǎng)格式式分布

XYLLayoout坐標(biāo)分分布

四:swwingg

1:什么么是JFCC(Jaava基礎(chǔ)類)?

是關(guān)于于GUI組件和和服務(wù)完完整集合合

2:Swwingg和AWT的區(qū)別別?

Swiing提供了了更完整整的組件件,引入入了許多多新的特特性和能能力。SwiingAPII是圍繞繞著實現(xiàn)現(xiàn)AWTT各個部部分的APII構(gòu)筑的的。

AWTT采用了了與特定定平臺相相關(guān)的實實現(xiàn),而而絕大多多數(shù)Swiing組件卻卻不是這這樣做的的,因此此Swiing的外觀觀和感覺覺是可客客戶化和和可插的的。

3:什么么是雙緩緩沖?

在后臺臺進行界界面的更更新,然然后在前前臺進行行界面交交換

功能::雙緩沖沖可以改改善一個個被頻繁繁改變的的組件的的外觀

4:描述述GUI的事件件機制

事件源源:是一一個事件件得產(chǎn)生生者,或或產(chǎn)生事事件的組組件對象象

事件監(jiān)監(jiān)聽器::調(diào)用事事件處理理方法的的對象

事件處處理器::就是一一個接收收事件、、解釋事事件并處處理用戶戶交互的的方法。。

5:描述述Swiing應(yīng)用程程序的基基本結(jié)構(gòu)構(gòu)?

組件定定義

初始化化界面

各種事事件處理理方法

各種適適配類

6:描述述表現(xiàn)層層的基本本功能??

展示數(shù)數(shù)據(jù)

人機交交互

收收集參數(shù)數(shù)、調(diào)用用邏輯層層apii

7:描述述在開發(fā)發(fā)Swiing應(yīng)用程程序中,一一般都要要寫那些些代碼??都寫到到什么地地方?

一般要要在類的的初始化化的時候候給組件件賦值,寫寫在jinnit的方法法里面

一般要要在按扭扭的事件件處理中中寫收集集參數(shù),組組織參數(shù)數(shù),調(diào)用用業(yè)務(wù)接接口的方方法

8:對于于GUI組件而而言,最最主要的的方法是是哪些??

初始化

如何給給組件初初始化

如何從從組件中中取值

設(shè)計組組件的屬屬性

9:如何何學(xué)習(xí)GUI組件的的用法??

主要學(xué)學(xué)回組件件的定義義、取值值、賦值值的方法法

類比學(xué)學(xué)習(xí)

五、JEEE

適用于創(chuàng)創(chuàng)建服務(wù)務(wù)器端的的大型的的軟件服服務(wù)系統(tǒng)統(tǒng)

1.JJEE:JJAVAAPLLATFFORMMENNTERRPRIISEDEDDITOON

2.是一一個規(guī)范范集、技技術(shù)集、、框架集集(API集)

一種技術(shù)術(shù)對應(yīng)一一種或多多種規(guī)范范

框架是能能夠完成成一定功功能的半半成品

1.優(yōu)優(yōu)點:完完成一定定的功能能、提供供一個經(jīng)經(jīng)良的應(yīng)應(yīng)用程序序架構(gòu)

2..框架都都是以接接口的形形式出現(xiàn)現(xiàn)

33.應(yīng)該了了解框架架完成的的功能、、框架的的API接口、、框架的的功能是是怎么實實現(xiàn)的

3.C//SBB/S模式

a.C//Scclieent//serrverr客戶端端也參與與程序的的運行與與計算(富富客戶端端、瘦客客戶端)

b.BB/Sborrderr/seerveer

4、企業(yè)業(yè)級應(yīng)用用(大規(guī)規(guī)模的應(yīng)應(yīng)用)

1.生命周周期長、、穩(wěn)定、、可靠

2.組組件往往往分布在在異構(gòu)的的環(huán)境中中,能夠夠跨平臺臺

3.維護護性、擴擴展性、、重用性性

4.有事事務(wù)、安安

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論