




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
JAVA基礎(chǔ)學(xué)問點(diǎn)總結(jié)
第1章Java程序設(shè)計(jì)概述
1)開發(fā)Java語言的公司?
Sun(SunMicrosystems)太陽微電子公司開發(fā)
2)Java的3個(gè)版本?
J2SE(Java2StandardEdition)標(biāo)準(zhǔn)版
J2EE(Java2Platform,EnterpriseEdition)企業(yè)版
J2ME(Java2MicroEdition)微小版
在5.0以后新版本中稱作:JavaSEJavaEEJavaME
3)Java語言的幾個(gè)主要特點(diǎn)?
平臺(tái)無關(guān)性:能運(yùn)行于不同的平臺(tái)上
平安性:去掉了指針操作,內(nèi)存由操作系統(tǒng)支配
面對(duì)對(duì)象:利用類使程序更加利于維護(hù)
分布式:可以運(yùn)用網(wǎng)絡(luò)文件和運(yùn)用本機(jī)文件一樣簡(jiǎn)潔
健壯性:檢查程序編譯和運(yùn)行的錯(cuò)誤
4)Java的三大核心機(jī)制
虛擬機(jī)機(jī)制:利用虛擬機(jī)說明字節(jié)碼執(zhí)行java程序?qū)崿F(xiàn)跨平臺(tái)
垃圾收集機(jī)制:自動(dòng)內(nèi)存回收
代碼平安性機(jī)制:加載代碼后校驗(yàn)代碼后再執(zhí)行代碼
第2章Java語言的開發(fā)環(huán)境
1)JDK是什么?
JDK(JavaDevelopmentKit)Java開發(fā)工具包。包括了JRE,是開發(fā)Java的人員必備的開發(fā)運(yùn)行Java
程序的工具。
2)JRE是什么?
JRE(JavaRuntimeEnvironment)Java運(yùn)行環(huán)境,運(yùn)行JAVA程序所必需的環(huán)境的集合,包含JVM
標(biāo)準(zhǔn)實(shí)現(xiàn)及Java核心類庫(kù)。
3)JVM是什么?
JVM(JavaVirtualMachine)Java虛擬機(jī),它是一個(gè)虛構(gòu)出來的計(jì)算機(jī),是通過在實(shí)際的計(jì)算機(jī)上仿
真模擬各種計(jì)算機(jī)功能來實(shí)現(xiàn)的。
4)安裝JDK的操作系統(tǒng)問題?
必需針對(duì)于不同的操作系統(tǒng)下載安裝不同的JDK,例如windows下安裝針對(duì)于windows的JDK,
linux下安裝針對(duì)于linux的JDK。
5)須要配置的相關(guān)環(huán)境變量?
path:用于搜尋外部叮囑,例如編譯程序的javac叮囑,執(zhí)行程序的java叮囑
classpath:用于搜尋類,即class文件,例如可以在不同的位置執(zhí)行類文件
6)配置環(huán)境變量的方式?
有兩種:臨時(shí)配置和許久配置
臨時(shí)配置:在叮囑行下用set變量名=變量值,僅在當(dāng)前叮囑行窗口有效
許久配置:在我的電腦一一屬性中配置,許久有效
7)可以編寫Java程序的常見開發(fā)工具?
記事本,EditPlus.ULTRAEDIT,Eclipse,Jbuilder,NetBeans
8)Java文件的類型?
有兩種:
擴(kuò)展名為java的文件:是Java源文件,屬于編譯之前的純文本文件,存儲(chǔ)java源代碼。
擴(kuò)展名為class的文件:是Java類文件,屬于編譯之后的二進(jìn)制文件,存儲(chǔ)字節(jié)碼。
9)Java的編譯運(yùn)行原理?
首先編寫java源文件,然后編譯成class類文件,然后通過虛擬機(jī)說明成機(jī)器碼到硬件執(zhí)行。
10)Java是編譯型語言還是說明型的語言?
既不是完全編譯型,也不是完全說明型,是半編譯半說明的。
第3章Java程序的基本結(jié)構(gòu)
1)Java語言區(qū)分大小寫嗎?
區(qū)分,不管是數(shù)據(jù)還是標(biāo)識(shí)符或者關(guān)鍵字都區(qū)分大小寫,例如public不能寫成Public,“abc”
不能寫成“ABC”,inti不能寫成INTI等等。
2)main方法是作什么用處的?
這是程序的入口方法,是由虛擬機(jī)自動(dòng)調(diào)用的。
3)語句必需用分號(hào)結(jié)束嗎?
必需的,但是代碼塊{}可以用分號(hào)結(jié)束,也可以不用分號(hào)結(jié)束
4)Java中有幾種注釋,各自的功能
有三種:
單行注釋〃:加在行首只能注釋一行
多行注釋/**/:注釋多行,但不能嵌套運(yùn)用
文檔注釋/***/:用于生成HTML形式的文檔,須要協(xié)作javadoc叮囑實(shí)現(xiàn)
5)Java語言的數(shù)據(jù)類型是強(qiáng)類型還是弱類型?
是強(qiáng)類型,意味著每一個(gè)變量都必需明確聲明數(shù)據(jù)類型。
6)Java語言中數(shù)據(jù)類型的劃分?有什么區(qū)分?
分成基本類型和引用類型兩大類。
基本類型:有8種,只能存儲(chǔ)單一的值,不以對(duì)象的形式存在
引用類型:除了基本類型之外其他的都是引用類型,能夠存儲(chǔ)困難數(shù)據(jù)類型,以對(duì)象的形式存在
7)基本類型都有哪8種類型?
布爾類型:boolean占1字節(jié)
字符類型:char占2字節(jié)
整型:byte占1字節(jié)short占2字節(jié)int占4字節(jié)long占8字節(jié)
浮點(diǎn)型:float占4字節(jié)double占8字節(jié)
8)布爾值可不行以用0或者非0數(shù)代替?
不行以,布爾值只能是true和false,不能運(yùn)用數(shù)字,這和C語言是不一樣的。
9)干脆寫個(gè)整數(shù)10默認(rèn)是什么類型的?
整型的干脆量例如10,100等默認(rèn)的數(shù)據(jù)類型都是int型
10)如何讓一個(gè)整型的干脆量變成long型的?
在干脆量后面加大寫L后者小寫1,例如10L
11)整型數(shù)據(jù)在程序中干脆運(yùn)用可以運(yùn)用什么進(jìn)制?
10進(jìn)制,8進(jìn)制,16進(jìn)制,但不能運(yùn)用二進(jìn)制
12)浮點(diǎn)運(yùn)算在Java中有沒有誤差?
有誤差,所以精密運(yùn)算請(qǐng)運(yùn)用BigDecimal類
13)干脆寫一個(gè)3.14的干脆量是什么數(shù)據(jù)類型的?
是double型,假如想表示是float的3.14必需寫成3.14F或者3.14f,double型的3.14也可以寫成
3.14D
14)char型實(shí)行的是什么類型的字符集?
是Unicode全球統(tǒng)一編碼,支持任何世界上正式的語言中的字符
15)常見的轉(zhuǎn)義字符有哪些?
轉(zhuǎn)義序列名稱
\b退格
\t制表
\n換行
\r回車
\',雙引號(hào)
\'單引號(hào)
\\反斜杠
16)常見的Unicode字符對(duì)應(yīng)的編碼?
大寫的A到Z是對(duì)應(yīng)65到90,小寫的a到z是對(duì)應(yīng)97到122,字符0到9是對(duì)應(yīng)48到57
17)空字符是不是用“(兩個(gè)并列的單引號(hào))來表示?
不是,空字符用'\u0000,來表示,兩個(gè)并列的單引號(hào)什么也不是。
18)點(diǎn),分號(hào),花括號(hào)的各自的作用?
點(diǎn)的作用有兩個(gè):一個(gè)是運(yùn)用類或?qū)ο笾械某蓡T,用對(duì)象.成員,再一個(gè)就是包名和子包名之間的
分隔符,例如頂層包名.子包名
分號(hào)的作用是表示語句結(jié)束
花括號(hào)的作用是代表一個(gè)語句塊
19)語句和關(guān)鍵字之間可以有隨意的空白嗎?
可以的,例如System.。"/.println(lOO);就是正確的語句,但是關(guān)鍵字本身不能加空白或
換行
20)標(biāo)識(shí)符是什么?
標(biāo)識(shí)符就是指在程序中給包,類,接口,方法,變量起的名字
21)標(biāo)識(shí)符有什么起名規(guī)則?
1.應(yīng)以字母、下劃線、美元符開頭
2.后跟字母、下劃線、美元符或數(shù)字
3.不能用關(guān)鍵字和保留字
4.嚴(yán)格區(qū)分大小寫
5.名稱長(zhǎng)度沒有限制
22)中文的變量名可以嗎?
是可以的,例如int數(shù)字=10;這個(gè)語句是正確的。因?yàn)閖ava中實(shí)行Unicode字符集,所以任何
的Unicode中的字符都可以作為標(biāo)識(shí)符的名稱,但考慮字符集的支持問題舉薦還是運(yùn)用英文字母
命名。
23)關(guān)鍵字和保留字有區(qū)分嗎?
在1.5后沒有區(qū)分,都被稱作關(guān)鍵字,但是1.5之前認(rèn)為關(guān)鍵字是在Java中有特殊用途的不允許
編程人員擅自改作其他用途,而保留字是在Java中沒有特殊用途但不允許編程人員擅自改作其他
用途,按此說法goto和const應(yīng)當(dāng)是此意義上的保留字。
24)true,false,null可以用作標(biāo)識(shí)符命名嗎?
不行以,這3個(gè)雖然不是關(guān)鍵字,但都是有特殊用途的值,也不能作為標(biāo)識(shí)符命名
25)一條聲明語句可以聲明多個(gè)變量嗎?
可以的,例如以下聲明都是正確的
inti;
inti,j;
inti=10,j;
inti,j=10;
inti=10,j=20;
26)變量在沒有賦值的狀況下可以運(yùn)用嗎?
不行以,變量沒有賦值運(yùn)用會(huì)報(bào)出變量未初始化的編譯錯(cuò)誤。
27)常量有什么特點(diǎn)?
在聲明變量的時(shí)候加上final修飾符即為常量,表示這個(gè)變量只能被賦一次值。
28)算數(shù)運(yùn)算符有哪些?
基本算數(shù)運(yùn)算符有+-*/%++-
29)單目運(yùn)算符,雙目運(yùn)算符,三目運(yùn)算符都是什么意思?
其實(shí)也有叫一元運(yùn)算符,雙元操作符,三元操作符的,指的是有幾個(gè)操作數(shù)形成一個(gè)完整表達(dá)式,
例如++就是一個(gè)單目運(yùn)算符,只須要一個(gè)操作數(shù)就可以形成表達(dá)式,像i++,而+運(yùn)算符就是雙目
運(yùn)算符,須要兩個(gè)操作數(shù)形成表達(dá)式,例如5+3,還有三目運(yùn)算符,例如5>3?0:-1
30)++和-放在前面和放在后面有什么區(qū)分?
假如是在一個(gè)表達(dá)式中,那++放后面表示先運(yùn)算表達(dá)式,然后再進(jìn)行自增運(yùn)算,假如在一個(gè)表達(dá)
式中,++放前面,則表示先進(jìn)行自增運(yùn)算然后在運(yùn)算表達(dá)式。-同樣道理。
例如:
inti=10;
intj=i++;〃先進(jìn)行賦值運(yùn)算然后再進(jìn)行自增運(yùn)算
j的結(jié)果是10
inti=10;
intj=++i;//先進(jìn)行自增運(yùn)算然后再進(jìn)行賦值運(yùn)算
j的結(jié)果是11
31)-5%2等于幾,5%-2等于幾?
-5%2等于-1,5%-2等于1,運(yùn)算得到是正數(shù)還是負(fù)數(shù)取決于第一個(gè)操作數(shù)的符號(hào)
32)5/2結(jié)果是不是2.5?
不是,是2,因?yàn)?和2都是int類型,所以不行能得到double型的結(jié)果。
33)比較運(yùn)算符有哪些?
有><>=<===!=六項(xiàng)基本比較運(yùn)算
34)任何數(shù)據(jù)類型都可以運(yùn)用><>=<=運(yùn)算符嗎?
不是全部數(shù)據(jù)類型,例如true>false這個(gè)表達(dá)式就是編譯錯(cuò)誤,布爾類型和引用類型的表達(dá)式只
能用==和!=兩個(gè)比較運(yùn)算,例如“abc“<="xyz”這個(gè)表達(dá)式也是編譯錯(cuò)誤的
35)'a,>E這個(gè)表達(dá)式編譯正確嗎?
編譯正確,’a,和b是字符類型,內(nèi)部用Unicode編碼表示的話a是97,b是98,所以事實(shí)上比較
的是97>98,結(jié)果為false
36)邏輯運(yùn)算符有哪些?
有&邏輯與,|邏輯或,!邏輯非,八異或,&&短路與,||短路或
37)邏輯與,邏輯或和短路與,短路或有什么區(qū)分?
邏輯與和短路與的區(qū)分是:
?假如是邏輯與&,不管第一個(gè)表達(dá)式是true還是false,都會(huì)執(zhí)行其次個(gè)表達(dá)式,
例如a>b&x<y,即使a>b為false,也會(huì)執(zhí)行x>y
?假如是短路與&&,假如第一個(gè)表達(dá)式為false,將不會(huì)執(zhí)行其次個(gè)表達(dá)式
例如a>b&&x<y,假如a>b為false,就不會(huì)執(zhí)行x>y
以此類推,邏輯或和短路或的區(qū)分是:
?假如是邏輯或不管第一個(gè)表達(dá)式是true還是false,都會(huì)執(zhí)行其次個(gè)表達(dá)式
?假如是短路或||,假如第一個(gè)表達(dá)式為true,將不會(huì)執(zhí)行其次個(gè)表達(dá)式
38)與或非三個(gè)邏輯運(yùn)算符的優(yōu)先級(jí)是怎么排列的?
“非”優(yōu)先級(jí)最高,“與”其次,“或”優(yōu)先級(jí)最低
39)原碼,反碼,補(bǔ)碼分別是什么意思?
?原碼:將數(shù)字轉(zhuǎn)換為二進(jìn)制,第一位為符號(hào)位,正數(shù)為0,負(fù)數(shù)為1
例如:12的原碼是00001100-12的原碼是10001100
?反碼:正數(shù)的反碼和原碼相同,負(fù)數(shù)的反碼將原碼符號(hào)位之外的位逐位取反
例如:12的反碼是00001100-12的反碼是11110011
?補(bǔ)碼:正數(shù)的補(bǔ)碼和原碼相同,負(fù)數(shù)的補(bǔ)碼將反碼加1
例如:12的補(bǔ)碼是00001100-12的補(bǔ)碼是11110100
最終強(qiáng)調(diào)一點(diǎn),計(jì)算機(jī)存儲(chǔ)數(shù)據(jù)用補(bǔ)碼形式來存儲(chǔ)。
40)位運(yùn)算符都有哪些?
&與I或A異或~非>>右移<<左移>>>無符號(hào)右移
41)1?35怎么理解?
1是int類型是32位,所以須要把35%32=3,所以事實(shí)上是和執(zhí)行1?3等價(jià)的
42)數(shù)據(jù)類型轉(zhuǎn)換須要遵循什么原則?
小類型向大類型轉(zhuǎn)換,是自動(dòng)轉(zhuǎn)換的,或者說隱式轉(zhuǎn)換的
大類型向小類型轉(zhuǎn)換,是須要強(qiáng)制轉(zhuǎn)換的,或者說顯式轉(zhuǎn)換
例如:
byteb=1;
shorts=b;〃自動(dòng)轉(zhuǎn)換
b=(byte)s;〃強(qiáng)制轉(zhuǎn)換
43)byteb=10這個(gè)語句是正確的,為什么10是int型比byte大還不須要強(qiáng)制轉(zhuǎn)換呢?
因?yàn)樵趈ava中做了特殊處理,其中規(guī)定byte,short,char類型可以干脆賜予int類型的干脆量,
例如:
byteb=10;
shorts=10;
charc=10;
以上賦值語句都是正確的。
但是不能超出超出類型的范圍,例如以下賦值就是錯(cuò)誤的:
byteb=128;
假如超出范圍,必需得作強(qiáng)制轉(zhuǎn)換,例如以下語句是正確的:
byteb=(byte)128;
須要強(qiáng)調(diào)的是,必需是int類型的干脆量,以下語句就是錯(cuò)誤的:
byteb=10L;
10L不是int類型的干脆量。
44)byteb=(byte)300;強(qiáng)制轉(zhuǎn)換后的結(jié)果是44,是依據(jù)什么規(guī)律得出來的?
是先把300轉(zhuǎn)換成二進(jìn)制,然后依據(jù)byte類型的大小截取了后8個(gè)位
300的補(bǔ)碼是00000000000000000000000100101100
b的結(jié)果是:00000000000000000000000100101100結(jié)果為44
45)byteb=(byte)true;這個(gè)轉(zhuǎn)換成立嗎?
不成立,布爾值和數(shù)字是不兼容的,不能作任何轉(zhuǎn)換。
46)inti=(int)“100”;這個(gè)轉(zhuǎn)換成立嗎?
不成立,引用類型和基本類型是不能干脆強(qiáng)制轉(zhuǎn)換的,須要用包裝類的方法來轉(zhuǎn)換。
47)char型和short型哪個(gè)比較大?
不能說哪個(gè)大,哪個(gè)小,這兩個(gè)類型char的取值是從0~65535,而short類型的取值是-32768-32767,
這個(gè)兩個(gè)類型之間的轉(zhuǎn)換都須要強(qiáng)制轉(zhuǎn)換。
48)字符串是不是基本類型?
不是,String是javaJang包中的一個(gè)類,是引用類型的,8種基本類型中沒有一個(gè)是String類型。
49)空字符串用什么來表示?
用(兩個(gè)并列的雙引號(hào))表示,代表0個(gè)長(zhǎng)度的字符串對(duì)象。
50)Strings=和Strings=null;有什么區(qū)分?
第一個(gè)表示s被賦值,指向了一個(gè)字符串對(duì)象,其次個(gè)表示s沒有指向任何對(duì)象實(shí)例,是真空
51)兩個(gè)字符串用什么運(yùn)算符可以連成一個(gè)字符串?
用+運(yùn)算符,例如"abc”+“xyz”最終的結(jié)果就是“abcxyz”
52)數(shù)學(xué)運(yùn)算符加法和字符串連接符都是+,怎么區(qū)分?
是通過運(yùn)算符兩邊的操作數(shù)來推斷的,假如兩邊的操作數(shù)都是數(shù)字型的基本類型,則進(jìn)行數(shù)學(xué)運(yùn)
算,假如兩邊的操作數(shù)有一個(gè)是字符串,則把另一個(gè)操作數(shù)也轉(zhuǎn)換為則進(jìn)行字符串連接運(yùn)算。
例如:
5+4的結(jié)果是9
“5”+4的結(jié)果是54
53)推斷字符串內(nèi)容相同用什么方法?
用equals方法推斷內(nèi)容相同,==只能推斷引用是否相同
54)供應(yīng)用戶輸入運(yùn)用哪個(gè)類
運(yùn)用javav.util.Scanner類
55)if語句可以用if(-l)形式推斷嗎?
不行以,數(shù)字不能代替布爾值
56)if語句和循環(huán)語句的花括號(hào)什么時(shí)候可以省略?
當(dāng)執(zhí)行的語句只有一句的時(shí)候
57)switch語句有哪些規(guī)則?
表達(dá)式expr的返回值必需是下述幾種類型之一:int,byte,char,short或枚舉常量;
case子句中的值必需是常量,且全部case子句中的值應(yīng)是不同的,也必需是下述幾種類型之一:
int,byte,char,short或枚舉常量
default子句是任選的;
break語句用來在執(zhí)行完一個(gè)case分支后使程序跳出switch語句塊;
58)對(duì)于退出循環(huán)break和continue有什么區(qū)分?
break是退出整個(gè)循環(huán)
continue是退出當(dāng)前循環(huán)接著下一次循環(huán)
59)聲明數(shù)組創(chuàng)建數(shù)組的方法?
以下聲明都是合法的:
int[]a;
inta[];
String[]a;
以下創(chuàng)建數(shù)組對(duì)象都是合法的:
int[]a=newint[3];
int[]a={1,2,3);
inl[]a=newint[]{1,2,3};
60)intHx和String[]s這兩個(gè)數(shù)組對(duì)象,哪個(gè)是基本類型,哪個(gè)是引用類型?
兩個(gè)都是數(shù)組對(duì)象,都是引用類型的
61)數(shù)組元素下標(biāo)最小是多少,最大是多少,超出范圍會(huì)怎么樣?
最小是0,最大是數(shù)組元素個(gè)數(shù)減一,超出范圍將會(huì)出現(xiàn)下標(biāo)越界異樣
62)得到數(shù)組長(zhǎng)度用length屬性還是length()方法?
是length屬性,得到字符串長(zhǎng)度才有l(wèi)ength方法
63)聲明int口口a=newint[3]口,a是一個(gè)二維數(shù)組,a[0]本身是什么類型的?
二維數(shù)組的元素都是一維數(shù)組,a[0]是int[]類型的
64)數(shù)組的大小一經(jīng)創(chuàng)建可不行以變更大小了?
不行以,數(shù)組是定長(zhǎng)的,一經(jīng)創(chuàng)建就不能再變更大小了
65)可以把2個(gè)int型,3個(gè)double型,4個(gè)String型的值放到一個(gè)數(shù)組中嗎?
不行以,數(shù)組的元素類型必需是相同類型的。
66)java中的多維數(shù)組必需是要形成矩陣排列嗎?
不愿定,也可以是不規(guī)則的。
67)操作數(shù)組比較便利的好用類?
java.util.Arrays類供應(yīng)了很多關(guān)于數(shù)組的好用方法。
第4章對(duì)象和類
1)OOP是什么意思?
ObjectOrientedProgramming(面對(duì)對(duì)象編程)
2)類和對(duì)象的區(qū)分?
類:對(duì)象的藍(lán)圖,生成對(duì)象的模板,是對(duì)一類事物的描述,是抽象的概念上的定義
對(duì)象:對(duì)象是實(shí)際存在的該類事物的每個(gè)個(gè)體,因而也稱為實(shí)例
3)類之間的3種關(guān)系?
依靠關(guān)系(uses-a)
聚集關(guān)系(has-a)
繼承關(guān)系(is-a)
4)一個(gè)java源文件可以寫多個(gè)類嗎?
可以,但必需只能有一個(gè)公有類,并且文件名和公有類的類名相同。
5)類中有哪些成員?
有屬性(數(shù)據(jù)域),方法,構(gòu)造器(構(gòu)造方法)
6)構(gòu)造方法和一般方法的區(qū)分?
構(gòu)造方法沒有返回值,方法名必需和類名相同,須要用new語句調(diào)用構(gòu)造方法。
7)一般方法可不行以也類名作為方法名?
是可以的,因?yàn)檎{(diào)用一般方法的語法和調(diào)用構(gòu)造器的語法不一樣。
8)一個(gè)構(gòu)造器調(diào)用另外一個(gè)構(gòu)造器須要用什么語法?
用this()語法調(diào)用另外一個(gè)重載構(gòu)造器,須要留意的是調(diào)用語句必需是構(gòu)造器中的第一句
9)什么時(shí)候虛擬機(jī)會(huì)自動(dòng)添加一個(gè)默認(rèn)構(gòu)造器?
當(dāng)類中沒有顯式定義任何構(gòu)造器的時(shí)候,虛擬機(jī)會(huì)自動(dòng)添加一個(gè)無參的構(gòu)造器
10)實(shí)例成員和靜態(tài)成員的區(qū)分?
實(shí)例成員:是屬于對(duì)象實(shí)例的,用對(duì)象.成員名稱語法調(diào)用
靜態(tài)成員:和對(duì)象實(shí)例無關(guān),是屬于類本身的,用類名.成員名稱語法調(diào)用
11)靜態(tài)初始化塊state”}的執(zhí)行時(shí)機(jī)是什么時(shí)候?
在類被加載的時(shí)候,僅執(zhí)行一次。
12)靜態(tài)方法可不行以干脆調(diào)用同一個(gè)類中的非靜態(tài)方法?
不行以,靜態(tài)方法不能干脆調(diào)用一個(gè)非靜態(tài)成員,須要用對(duì)象調(diào)用。
13)包是什么?
包事實(shí)上就是物理上的文件夾,可以把類放到不同的包中。
14)把一個(gè)類放到包中,須要在類中加上什么語句?
須要加上包聲明package語句,必需寫在源文件的第一句。
15)什么時(shí)候須要導(dǎo)入類?用什么語句?
當(dāng)運(yùn)用的類和當(dāng)前類并不在同一個(gè)包中的時(shí)候,用import語句導(dǎo)入。
16)默認(rèn)包中的類可以導(dǎo)入嗎?
不行以,不在默認(rèn)包中的類無法運(yùn)用默認(rèn)包中的類。
17)java中哪個(gè)包中的類是自動(dòng)導(dǎo)入的?
java,lang包
18)什么叫做完整類名?
頂層包名.子包名.類名
19)靜態(tài)導(dǎo)入語句有什么作用?
在運(yùn)用類中的靜態(tài)成員的時(shí)候前面不須要加類名前綴。
20)局部變量和全局變量的區(qū)分?
區(qū)分局部變量全局變量
聲明位置方法或塊內(nèi)部方法外類內(nèi)部
訪問權(quán)限修飾符沒有訪問權(quán)限有訪問權(quán)限
默認(rèn)值沒有默認(rèn)值有默認(rèn)值
運(yùn)用形式干脆運(yùn)用對(duì)象調(diào)用
作用域在方法或語句塊內(nèi)部整個(gè)類
生命周期進(jìn)入方法或語句塊創(chuàng)建隨著對(duì)象的創(chuàng)建而創(chuàng)建
退出方法或語句塊銷毀隨著對(duì)象的銷毀而銷毀
21)賦值語句賦給目標(biāo)的是值還是引用?
假如是基本類型則賦的是值本身,引用類型則賦的是引用地址
第5章繼承和多態(tài)
1)類的繼承是誰繼承誰?
是子類繼承了父類,子類也稱為派生類,父類也稱為超類或基類
2)子類繼承了父類的什么東西?
子類可以繼承父類的數(shù)據(jù)域(屬性),方法,但構(gòu)造器不能繼承
3)私有成員能被子類繼承嗎?
能繼承,但是由于訪問權(quán)限的限制,在子類中不能干脆運(yùn)用父類的私有成員
4)Object是什么類?
這個(gè)全部類的根類,任何類假如沒有寫顯式的繼承語句,默認(rèn)都是干脆繼承Object類的
5)java中是單繼承還是多繼承?
是單繼承,一個(gè)子類只能有一個(gè)父類
6)訪問權(quán)限修飾符有幾種,訪問的范圍又是多大?
有四種:
private:私用只能在被類中被訪問
default-.默認(rèn)只能被同一個(gè)包中的類訪問
protected:受愛惜的只能被同一個(gè)包中的類和不同包中的子類訪問
public:公有可以被任何類訪問
7)覆蓋方法的規(guī)則有哪些?
子類覆蓋方法和父類被覆蓋方法的方法返回類型,方法名稱,參數(shù)列表必需相同
子類覆蓋方法的訪問權(quán)限必需大于等于父類的方法的訪問權(quán)限
方法覆蓋只能存在于子類和父類之間
子類覆蓋方法不能比父類被覆蓋方法拋出更多異樣
8)參數(shù)列表是否相同從哪幾方面看?
從三方面看:參數(shù)個(gè)數(shù),類型和依次,須要留意的是參數(shù)的名字不相同是無所謂的
9)覆蓋方法的規(guī)則有哪些?
方法名相同
方法的參數(shù)類型,個(gè)數(shù),依次至少有一項(xiàng)不同
方法的返回類型和修飾符均不受限制
10)可變長(zhǎng)參數(shù)的聲明格式是什么?事實(shí)上是什么類型的?
類型…變量,事實(shí)上是一個(gè)一維數(shù)組
11)this和super是作什么用處的?
this:本身代表當(dāng)前的對(duì)象引用,可以用this.成員名稱調(diào)用當(dāng)前對(duì)象的屬性和方法,假如屬性和局
部變量重名,可以用this.屬性名和局部變量區(qū)分開。也可以用this()語法調(diào)用本類重載構(gòu)造器。
super:本事是一個(gè)特殊關(guān)鍵字,可以用super.成員名稱調(diào)用從父類繼承的屬性和方法,也可以用
super()語法調(diào)用父類構(gòu)造器。
12)super代表子類中的父類對(duì)象引用嗎?
不,這個(gè)錯(cuò)誤的說法,super不代表任何對(duì)象引用,僅僅是一個(gè)關(guān)鍵字
13)什么時(shí)候子類構(gòu)造器會(huì)自動(dòng)調(diào)用父類無參構(gòu)造器?
當(dāng)子類構(gòu)造器中沒有任何顯式構(gòu)造器調(diào)用的時(shí)候,即既沒有this()調(diào)用也沒有super()調(diào)用的
時(shí)候
14)一個(gè)父類類型的引用變量可以引用一個(gè)子類的實(shí)例嗎?
可以,這個(gè)引用變量是一個(gè)多態(tài)對(duì)象
15)多態(tài)對(duì)象有什么特點(diǎn)?
多態(tài)對(duì)象只能運(yùn)用父類的成員,但假如多態(tài)對(duì)象運(yùn)用了被子類覆蓋的方法,則會(huì)動(dòng)態(tài)綁定運(yùn)用子
類的成員,稱為虛擬方法調(diào)用
16)引用類型之間的類型轉(zhuǎn)換須要遵循哪些規(guī)則?
自動(dòng)轉(zhuǎn)換:從子類到父類的類型可以自動(dòng)轉(zhuǎn)換
強(qiáng)制轉(zhuǎn)換:從父類到子類的類型要強(qiáng)制轉(zhuǎn)換
無繼承關(guān)系的類型轉(zhuǎn)換是非法的
17)instanceof操作符是作什么用處的?
可以推斷一個(gè)對(duì)象的類型是否是某一個(gè)類的類型或子類,也可以推斷這個(gè)對(duì)象的類型是否是一個(gè)
接口的實(shí)現(xiàn)類
18)toString方法什么時(shí)候會(huì)自動(dòng)被調(diào)用?
在打印語句中傳入引用類型的對(duì)象或者對(duì)象和字符串作連接時(shí)
19)默認(rèn)的equals方法實(shí)現(xiàn)的是比較內(nèi)容還是比較引用地址?
在Object中是比較引用地址。
20)覆蓋equals方法和hashCode方法有什么規(guī)則?
必需保證當(dāng)兩個(gè)對(duì)象equals比較為true的時(shí)候,返回的hashCode相同,當(dāng)比較為false的時(shí)候,
返回的hashCode不同
21)java中有幾個(gè)包裝類?
有8個(gè)包裝類,正好對(duì)應(yīng)8種基本數(shù)據(jù)類型。
分別是:BooleanByteShortIntegerLongCharacterFloatDouble
22)裝箱和拆箱分別是什么意思?
裝箱指的是把基本類型包裝成包裝類的引用類型
拆箱指的是把包裝類形式的引用類型轉(zhuǎn)換為基本類型
例如:
Integerobjlnt=newInteger。。),裝箱
inti=Value。;//拆箱
23)JDK1.4和1.5的裝箱和拆箱有什么區(qū)分?
自動(dòng)拆裝箱,例如:
IntegerintObj=10;〃自動(dòng)裝箱
inii=intObj+5;〃自動(dòng)拆箱
24)final修飾符如何運(yùn)用,運(yùn)用了final修飾符有什么特點(diǎn)?
final修飾符可以修飾類,方法,變量
final類為最終類,不能被子類繼承
final方法為最終方法,不能被子類覆蓋
final變量為常量,只能賦一次值
25)abstract修飾符如何運(yùn)用,運(yùn)用了abstract修飾符有什么特點(diǎn)?
abstract修飾符可以修飾類和方法
abstract類為抽象類,是不能創(chuàng)建對(duì)象的
abstract方法為抽象方法,只有方法的聲明,沒有具體的實(shí)現(xiàn)
須要留意的是:
有抽象方法的類確定是抽象類
抽象類不愿定有抽象方法
抽象類也有構(gòu)造器,但不能創(chuàng)建對(duì)象實(shí)例
26)abstract不能和哪些修飾符協(xié)作運(yùn)用?
不能和private,static,final一起運(yùn)用
27)可以在非抽象方法中調(diào)用抽象方法嗎?
可以,模板方法設(shè)計(jì)模式就是典型的這種調(diào)用
第6章泛型程序設(shè)計(jì)
1)泛型的特點(diǎn)是什么?
主要特點(diǎn)是類型參數(shù)化,后期綁定數(shù)據(jù)類型
2)泛型支持基本類型嗎?
不支持,只支持引用類型
3)假如沒有傳入類型參數(shù),默認(rèn)是什么類型?
默認(rèn)是Object類型
4)泛型方法有什么特點(diǎn)?
將泛型參數(shù)聲明在方法中,調(diào)用方法的時(shí)候綁定泛型
5)泛型類聲明泛型參數(shù)的時(shí)候,〈TextendsA類型〉表示什么意思?
表示綁定的類型必需是A類型后者是A類型的子類或?qū)崿F(xiàn)類
第7章接口和內(nèi)部類
1)聲明一個(gè)接口的關(guān)鍵字是什么?
interface關(guān)鍵字
2)接口中的成員有什么特點(diǎn)?
數(shù)據(jù)域必需是(publicstaticfinal修飾)公有靜態(tài)常量
方法必需是(publicabstract修飾)公有抽象
沒有構(gòu)造方法
3)接口能創(chuàng)建對(duì)象實(shí)例嗎?
不能,接口沒有構(gòu)造器,不能創(chuàng)建對(duì)象
4)接口和類的關(guān)系?
接口和類之間是實(shí)現(xiàn)關(guān)系,一個(gè)類用implements語句實(shí)現(xiàn)了某接口,這個(gè)類被稱為接口的實(shí)現(xiàn)類,
一個(gè)類可以實(shí)現(xiàn)多個(gè)接口,一個(gè)類實(shí)現(xiàn)了某接口,必需覆蓋這個(gè)接口中的所以方法,否則這個(gè)類
必需是個(gè)抽象類
5)接口和接口的關(guān)系?
接口和接口之間是繼承關(guān)系,一個(gè)接口用extends繼承另外一個(gè)接口,稱為這個(gè)接口的子接口。
一個(gè)接口可以繼承多個(gè)父接口
6)內(nèi)部類如何定義?
一個(gè)類聲明在另一個(gè)類的里面,這個(gè)類就被稱為內(nèi)部類,而外面的類被稱為外部類
7)內(nèi)部類可以分成幾種?
實(shí)例內(nèi)部類:聲明在方法外邊沒有static修飾符
靜態(tài)內(nèi)部類:聲明在方法外邊有static修飾符
局部?jī)?nèi)部類:聲明在方法里邊
8)如何創(chuàng)建實(shí)例內(nèi)部類的對(duì)象實(shí)例?
須要用外部類的對(duì)象來創(chuàng)建
例如:
classA{
classB{
}
}
假如像創(chuàng)建B類的實(shí)例,則必需用以下語句:
Aa=newA();
A.Bb=a.newB():
9)如何在實(shí)例內(nèi)部類中訪問外部類的成員?
在實(shí)例內(nèi)部類中可以干脆運(yùn)用外部類的成員,不須要?jiǎng)?chuàng)建外部類的對(duì)象實(shí)例,但是假如在內(nèi)部類
中的成員名稱屏蔽隱藏了外部類的成員(即外部類和內(nèi)部類的成員名相同),則須要用“外部類
名.this.成員名”訪問外部類成員
第8章異樣處理
1)異樣的對(duì)象的根類是哪個(gè)類?
是Throwable類
2)Throwable類有哪兩個(gè)分支?
分成Error類和Excepion類兩個(gè)分支
Error類表示嚴(yán)峻錯(cuò)誤
Exception類表示可以在程序中處理的錯(cuò)誤
3)Exception類有哪兩個(gè)分支?
分成運(yùn)行時(shí)異樣和非運(yùn)行時(shí)異樣(已檢查異樣)
運(yùn)行時(shí)異樣編譯不檢查,在運(yùn)行時(shí)才會(huì)發(fā)生異樣
已檢查異樣編譯時(shí)就會(huì)作檢查,不處理異樣則通不過編譯
4)假如在try塊中發(fā)生異樣,那么程序?qū)?huì)跳轉(zhuǎn)到哪?
會(huì)跳轉(zhuǎn)到catch語句塊
5)catch語句可以用父類類型捕獲子類異樣嗎?
因?yàn)橛卸鄳B(tài)特點(diǎn),是可以的
6)處理異樣代碼finally語句會(huì)在什么時(shí)候執(zhí)行?
finally代碼在任何時(shí)候都會(huì)執(zhí)行,不管有沒有發(fā)生異樣。
7)如何聲明已檢查異樣,由誰來處理這個(gè)異樣?
用throws語句來聲明一個(gè)已檢查異樣,由方法的調(diào)用者來處理這個(gè)異樣
8)如何拋出一個(gè)異樣?
用throw語句拋出
9)如何創(chuàng)建一個(gè)自定義的異樣類?
創(chuàng)建一個(gè)類,只要讓它繼承任何一個(gè)現(xiàn)有的異樣類就可以了
10)覆蓋方法對(duì)于異樣有什么要求?
覆蓋方法不能比父類方法拋出更多異樣
第9章反射,代理,標(biāo)注
1)獲得一個(gè)類型的Class對(duì)象有哪幾種途徑?
方法1:對(duì)象.getClass。
方法2:類型名.class
方法3:Class.forName()
2)反射相關(guān)的類型都有哪些?
Class代表一個(gè)運(yùn)行時(shí)類
Field代表一個(gè)類的屬性
Method代表一個(gè)類的方法
Constructor代筆一個(gè)類的構(gòu)造器
3)如何聲明一個(gè)自定義標(biāo)注?
[<修飾符>]@interface〈標(biāo)注名>{
返回值方法名稱();
返回值方法名稱();
例如:
public?interfaceMyComment{
intid();
Stringinfo();
}
4)java有幾個(gè)內(nèi)置標(biāo)注?
有3個(gè)
@Ov
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- T-ZSM 0060-2024“領(lǐng)跑者”評(píng)價(jià)技術(shù)要求 微型往復(fù)活塞空氣壓縮機(jī)
- 二零二五年度競(jìng)業(yè)禁止期限及競(jìng)業(yè)限制解除后的競(jìng)業(yè)禁止責(zé)任及賠償執(zhí)行及監(jiān)督合同
- 二零二五年度金融衍生品合同印花稅稅率變動(dòng)與市場(chǎng)創(chuàng)新
- 二零二五年度手房過戶二手房交易中介服務(wù)合同協(xié)議
- 二零二五年度智慧能源合伙經(jīng)營(yíng)股權(quán)協(xié)議書
- 二零二五年度文藝演出宣傳推廣合作協(xié)議
- 2025年度智能債權(quán)轉(zhuǎn)讓服務(wù)合同不可適用借款合同解析
- 2025年度生態(tài)魚塘資源租賃管理合同
- 二零二五年度商鋪?zhàn)赓U糾紛解決機(jī)制合同
- 二零二五年度跨區(qū)域集體合同-XX行業(yè)職工勞動(dòng)條件提升協(xié)議
- 近三年投標(biāo)沒有發(fā)生過重大質(zhì)量安全事故的書面聲明范文
- 《工程熱力學(xué)》(第四版)全冊(cè)配套完整課件
- 2024時(shí)事政治考試題庫(kù)(100題)
- 2024年司法考試真題及答案
- 膽總管切開取石T管引流術(shù)護(hù)理查房參考課件
- YYT 1814-2022 外科植入物 合成不可吸收補(bǔ)片 疝修補(bǔ)補(bǔ)片
- 工程機(jī)械設(shè)備綜合保險(xiǎn)
- 中圖版高中地理選擇性必修1第3章第1節(jié)常見天氣現(xiàn)象及成因課件
- 2024年時(shí)政必考試題庫(kù)(名師系列)
- 獸醫(yī)檢驗(yàn)題庫(kù)與答案
- 第三章 環(huán)境污染物在體內(nèi)的生物轉(zhuǎn)運(yùn)和生物轉(zhuǎn)化課件
評(píng)論
0/150
提交評(píng)論