版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、Java期末考試題、簡答題(共 8個(gè)題,每題 5分,共 40分)1. java 語言有哪些特點(diǎn)?1)簡單的a)Java 最初是為對(duì)家用電器進(jìn)行集成控制而設(shè)計(jì)的一種語言,因此它必須簡單明了。b)Java的風(fēng)格類似于 C+,因而C+程序員初次接觸 Java語言,就會(huì)感到很熟悉。從某種意義上講, Java 語言是 C 及 C+ 語言的一個(gè)變種。c)Java摒棄了 C+中容易引發(fā)程序錯(cuò)誤的一些特性,如指針、結(jié)構(gòu)、枚舉以及內(nèi)存管理等。d)Java 提供了豐富的類庫,可以幫助我們很方便的開發(fā)Java 程序。2)面向?qū)ο蟮拿嫦驅(qū)ο罂梢哉f是 Java最重要的特性,所以它支持繼承、重載、多態(tài)等面向?qū)ο蟮奶匦浴
2、ava語言的設(shè)計(jì)是完全面向?qū)ο蟮?,它不支持類似 C 語言那樣的面向過程的程序設(shè)計(jì)技術(shù)。3)健壯的Java致力于檢查程序在編譯和運(yùn)行時(shí)的錯(cuò)誤。Java也是一種強(qiáng)類型的語言,其類型檢查比 C+Java自己負(fù)責(zé)內(nèi)存管理,提供了還要嚴(yán)格。類型檢查幫助我們檢查出許多開發(fā)早期出現(xiàn)的錯(cuò)誤。垃圾內(nèi)存回收機(jī)制,有效的避免了C+中最頭疼的內(nèi)存泄漏問題。4)安全的Java 的安全性可從兩個(gè)方面得到保證。一方面,在Java語言里,刪除了指針和釋放內(nèi)存等C+功能,避免了非法內(nèi)存操作。另一方面,通過Java的安全體系架構(gòu)來確保Java代碼的安全性。從一開始, Java 就被設(shè)計(jì)成能夠防范各種襲擊,包括:禁止運(yùn)行時(shí)堆棧溢
3、出。例如,蠕蟲等病毒常用的襲擊手段;禁止在自己的處理空間之外破壞內(nèi)存;未經(jīng)授權(quán)禁止讀寫文件;許多安全特性相繼不斷的被加入Java 中。5)解釋的Java代碼是解釋執(zhí)行的,我們使用Java編譯器將Java代碼編譯成字節(jié)碼,這是一種中間代碼,然后由Java解釋器解釋執(zhí)行。而C+程序是編譯執(zhí)行的,C+程序代碼被編譯為本地機(jī)器指令,然后執(zhí)行。6)與平臺(tái)無關(guān)的Java 運(yùn)行JavaJava 作為一種網(wǎng)絡(luò)語言,其源代碼被編譯成一種結(jié)構(gòu)中立的中間文件格式。只要有系統(tǒng)的機(jī)器都能執(zhí)行這種中間代碼。Java源程序被編譯成一種與機(jī)器無關(guān)的字節(jié)碼格式,在虛擬機(jī)上運(yùn)行。7)多線程的4 個(gè)桌Java語言的一個(gè)重要特性就是
4、在語言級(jí)支持多線程的程序設(shè)計(jì)。多線程就好像我們做一張桌子,如果你一個(gè)人完成這張桌子 就好像單線程,那么你需要先做桌面,做完桌面后,再做子腿,如果現(xiàn)在有 5 個(gè)人來做桌子 在程序中開辟 5個(gè)線程,其中 1 個(gè)人做桌面,另外 4 個(gè)人分別做 4 個(gè)桌子腿,那么這兩種方式效率的高低,相信大家都能區(qū)分出來。8)動(dòng)態(tài)的Java 的動(dòng)態(tài)特性是其面向?qū)ο笤O(shè)計(jì)方法的擴(kuò)展。它允許程序動(dòng)態(tài)地裝入運(yùn)行過程中所需要的類。在C+程序設(shè)計(jì)過程中, 每當(dāng)在類中增加一個(gè)實(shí)例變量或一個(gè)成員函數(shù)后,引用該類的所有子類都必須重新編譯,否則將導(dǎo)致程序崩潰。Java 從以下幾個(gè)方面采取措施來解決這個(gè)問題。a)Java編譯器不是將對(duì)實(shí)例
5、變量和成員函數(shù)的引用編譯為數(shù)值引用,而是將符號(hào)引用信息在字節(jié)碼中保存下來,傳遞給解釋器,再由解釋器在完成動(dòng)態(tài)連接類后,將符號(hào)引用信息轉(zhuǎn)換為數(shù)值偏移量。b) 個(gè)在存儲(chǔ)器中生成的對(duì)象不在編譯過程中決定,而是延遲到運(yùn)行時(shí)由解釋器確定。這樣,對(duì)類中的變量和方法進(jìn)行更新時(shí)就不至于影響現(xiàn)存的代碼。C)解釋執(zhí)行字節(jié)碼時(shí),這種符號(hào)信息的查找和轉(zhuǎn)換過程僅在一個(gè)新的名字岀現(xiàn)時(shí)才進(jìn)行一次,隨后代碼便可以全速執(zhí)行。在運(yùn)行時(shí)確定引用的好處是可以使用已被更新的類,而不必?fù)?dān)心會(huì)影響原有的代碼。如果程序連接了網(wǎng)絡(luò)中另一系統(tǒng)中的某一類,該類的所有者也可以自由地對(duì)該類進(jìn)行更新,而不會(huì)使任何引用該類的程序崩潰。d) Java還簡化
6、了使用一個(gè)升級(jí)的或全新協(xié)議的方法。如果你的系統(tǒng)運(yùn)行Java程序時(shí)遇到了不知怎樣處理的程序,Java能自動(dòng)下載你所需要的功能程序。2. 什么是 java 虛擬機(jī)?Java 虛擬機(jī) JVM(Java Virtual MaChine) 在 JAVA 編程里面具有非常重要的地位。約相當(dāng)于JAVA 運(yùn)行環(huán)境 JRE。 JAVA 虛擬機(jī)是在真實(shí)機(jī)器中用軟件模擬實(shí)現(xiàn)的一種想象機(jī)器,它為不同的硬件平臺(tái)提供了一種編譯 JAVA 技術(shù)代碼的規(guī)范,該規(guī)范使 JAVA 軟件獨(dú)立于平臺(tái)。JVM 對(duì)下列各項(xiàng)做岀了定義:指令集,寄存器,類文件格式,棧,垃圾收集堆,存儲(chǔ)區(qū)。Java 虛擬機(jī)的功能:1)通過 ClassLoad
7、er 尋找和裝載 Class 文件2)解釋字節(jié)碼成為指令并執(zhí)行,提供Class 文件的運(yùn)行環(huán)境3)進(jìn)行運(yùn)行期間垃圾回收4)提供與硬件交互的平臺(tái)JAVA 虛擬機(jī)是 JAVA 平臺(tái)無關(guān)的保障。 正是因?yàn)橛刑摂M機(jī)這中間層, JAVA 才能夠?qū)崿F(xiàn)與平臺(tái)無 關(guān)。虛擬機(jī)就好比是一個(gè) JAVA 運(yùn)行的基本平臺(tái),所有的 JAVA 程序都運(yùn)行在虛擬機(jī)上。所有與平臺(tái) 有關(guān)的東西都是由虛擬機(jī)去處理3. 什么是方法重載( Overloading )與方法覆蓋( Overriding )?(1) 方法重載( Overloading ):方法重載是指同名的方法在不同的地方具有多種含義。方法重載使得在類中可以存在方法名相同
8、的多個(gè)方法,但方法的原型不能完全相同,由方法的參數(shù)不同來決定所使用的是哪個(gè)方法。方法的原型包括方法名和方法參數(shù)類型。(2) 方法覆蓋( overriding )方法覆蓋也叫方法重寫,是指方法的含義被重新編寫后的方法所替代。對(duì)于方法覆蓋,子類可以重新實(shí)現(xiàn)父類的某些方法,并具有自己的特征。這樣,覆蓋隱藏了父類的方法,使子類可以具有自己的實(shí)現(xiàn)方法。子類覆蓋父類的方法時(shí),子類中方法的訪問權(quán)限不能低于父類中該方法的訪問權(quán)4. java 中 equals 和“= =”的區(qū)別?使用“ = = ”比較基本類型字段,使用 equals 方法比較對(duì)象字段。= = 操作比較的是兩個(gè)變量的值是否相等, 對(duì)于引用型變量
9、表示的是兩個(gè)變量在堆中存儲(chǔ)的地址 是否相同,即棧中的內(nèi)容是否相同; equals 操作表示的兩個(gè)變量是否是對(duì)同一個(gè)對(duì)象的引用,即堆中 的內(nèi)容是否相同。= 比較的是 2 個(gè)對(duì)象的地址, 而 equals 比較的是 2 個(gè)對(duì)象的內(nèi)容。 顯然,當(dāng) equals 為 true 時(shí),= 不一定為 true 。5. 什么是抽象類?什么是接口?abstract 修飾。一般稱含有抽象方法的類稱為抽象類。抽象類是不能被實(shí)例化的類,用接口是一種與類相似的結(jié)構(gòu),但接口不是類,而是一組對(duì)類的要求,這些類要與接口一致一個(gè)類可以實(shí)現(xiàn)一個(gè)或多個(gè)接口,并在需要接口的地方,隨時(shí)使用實(shí)現(xiàn)了相應(yīng)接口的對(duì)象。6. 什么是多態(tài)?pol
10、ymorphism )。一個(gè)對(duì)象變量可以指向多種實(shí)際類型對(duì)象的現(xiàn)象被稱為“多態(tài)”(7. 異常的分類?它們的區(qū)別是什么?Error :稱為錯(cuò)誤,由Java虛擬機(jī)生成并拋岀,包括動(dòng)態(tài)連接失敗、虛擬機(jī)錯(cuò)誤等,程序?qū)ζ洳蛔魈幚?。Exception :所以異常類的父類,其子類對(duì)應(yīng)了各種各樣可能出現(xiàn)的異常事件,一般需要用戶顯式的聲明或捕獲。Runtime Exception :一類特殊的異常,如被 0 除、數(shù)組下標(biāo)超范圍等,其產(chǎn)生比較頻繁,處理麻煩,如果顯式的聲明或捕獲將會(huì)對(duì)程序的可讀性和運(yùn)行效率影響很大。因此由系統(tǒng)自動(dòng)檢測并將它們交給缺省的異常處理程序(用戶可不必對(duì)其處理)。8. 什么是流?流(stre
11、am)是輸入和輸岀設(shè)備的一種抽象表示,這些設(shè)備是數(shù)據(jù)源或數(shù)據(jù)終點(diǎn)??梢韵罅髦袑懭霐?shù)據(jù),也可以從流中讀出數(shù)據(jù)??梢园蚜飨胂鬄榱魅胱约撼绦蚧驈淖约撼绦蛑辛鞒龅淖止?jié)序列。當(dāng)把數(shù)據(jù)寫入流時(shí),該流稱為輸岀流。輸岀流可以通往任何可以傳輸字節(jié)序列的設(shè)備,例如硬盤上的文件,或連接用戶系統(tǒng)至遠(yuǎn)程系統(tǒng)的電話線路。輸岀流也可以通向顯示器,但這會(huì)大大限制其真正的功能。二、程序設(shè)計(jì)題(共 4 個(gè)題,每題 15分,共 60分)1、輸岀 1到 100以內(nèi)的前 10個(gè)質(zhì)數(shù)。public class Zhishu public static void main(String args)int s,i,j=0;for(s=2;s
12、<=100;s+)for(i=2;i<=s/2;i+)if(s%i=0)break;if(i>s/2)j+;if(j<=10)2、計(jì)算并輸出result=1 ! +2! +3! +10!的結(jié)果。public class Sum public static void main(String args)+10 !");int s=0,t=1;int n;for( n=1; nv=20; n+) t=t* n;s=s+t;3、定義一個(gè)長方形類,該類具有長和寬兩種屬性,并具有相應(yīng)的構(gòu)造方法、屬性訪問方法和計(jì)算周長和面積的方法,要求輸出長是5寬是4的長方形的面積和周長。
13、P ublic class Recta ngle 4、private double length;.,我的年齡是歲";Father類增加了一個(gè)屬性:愛好,并重寫了父類Parents中的print()方法,輸出“我是父親,我的名字是.,我 的年齡是歲,我的愛好是.”重寫了父類Parents中的print()方法,輸出“我是母親,我的名字是.,我的;Mother類增加了一個(gè)屬性:頭發(fā)的顏色,并年齡是歲,我頭發(fā)的顏色是.”。最后定義一個(gè)測試類Test,要求顯示如下 信息:5、我是家長,我的名字是王瑞,我的年齡是6、 我是父親,我的名字是張峰,我的年齡是45歲,我的愛好是打保齡球7、我是母親
14、,我的名字是孫娟,我的年齡是Parents :36歲36歲,我的頭發(fā)顏色是棕色p ublic abstract class Parents p rivate Stri ng n ame;/p rivate int age;/p ublic Paren ts()p ublic Paren ts(Stri ng n ame,i nt age) (n ame);(age);p ublic void setName(Stri ng n ame)年齡姓名=n ame;p ublic Stri ng getName() return n ame;p ublic void setAge(i nt age)=
15、age;p ublic int getAge()return age;void Sys()Father :p ublic class Father exte nds Paren tsp rivate Stri ng favor;p ublic Father(Stri ng n ame,i nt age, String favor)super(n ame,age);=favor;p ublic void setFavor(Stri ng favor) =favor;p ublic Stri ng getFavor() return favor;void Sys()Mother :p ublic class Mother exte nds Paren tsprivate Stri ng hairColor;/頭發(fā)顏色p ublic Mother(Stri ng n ame,i nt age,Stri ng hairColor) super(n ame,age);=hairColor;p ublic void setHairColor(Stri ng hairColor) =hairColor;public Stri ng getHairColor() ret
溫馨提示
- 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. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年版:云計(jì)算服務(wù)合同
- 2025年度板材市場拓展與銷售渠道共建合同3篇
- 二零二五年度養(yǎng)殖羊場科研合作合同3篇
- 二零二五年度健身房場地租賃合同附帶健身服飾租賃服務(wù)3篇
- 2025年中國牛仔服行業(yè)市場全景評(píng)估及發(fā)展戰(zhàn)略研究報(bào)告
- 二零二五年度IT服務(wù)持續(xù)改進(jìn)合同2篇
- 2025年墨魚丸項(xiàng)目可行性研究報(bào)告
- 二零二五年度二手房買賣貸款資產(chǎn)保全合同3篇
- 二零二五年度二手房買賣墊資代理協(xié)議書9篇
- 2024年股權(quán)眾籌投資合同2篇
- 四川省成都市龍泉驛區(qū)2023-2024學(xué)年三年級(jí)數(shù)學(xué)第一學(xué)期期末監(jiān)測試題含答案
- 鍋爐控制器modbus協(xié)議支持說明
- 粉末涂料有限公司危廢庫安全風(fēng)險(xiǎn)分級(jí)管控清單
- 750更換齒輪箱作業(yè)指導(dǎo)書
- GB/T 20706-2023可可粉質(zhì)量要求
- 安全生產(chǎn)信息管理制度全
- 世界主要國家洲別、名稱、首都、代碼、區(qū)號(hào)、時(shí)差匯總表
- 2023學(xué)年廣東省廣州市越秀區(qū)鐵一中學(xué)九年級(jí)(上)物理期末試題及答案解析
- 《報(bào)告文學(xué)研究》(07562)自考考試復(fù)習(xí)題庫(含答案)
- 電源日常點(diǎn)檢記錄表
- 人教版小學(xué)三年級(jí)語文上冊(cè)期末測試卷.及答題卡2
評(píng)論
0/150
提交評(píng)論