2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩18頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、JavaJava基礎回顧基礎回顧說明說明Java和面向?qū)ο蟊旧戆_萬象,我們回顧的重點是基礎知識。以下是問題和參考答案,完全對很難,發(fā)現(xiàn)一個“原則上的”錯誤,期末加2分。1、面向?qū)ο蟮奶卣饔心男┓矫妫?、面向?qū)ο蟮奶卣饔心男┓矫??答:面向?qū)ο蟮奶卣髦饕幸韵聨讉€方面:抽象:抽象是將一類對象的共同特征總結(jié)出來構造類的過程,包括數(shù)據(jù)抽象和行為抽象兩方面。抽象只關注對象有哪些屬性和行為,并不關注這些行為的細節(jié)是什么。繼承:繼承是從已有類得到繼承

2、信息創(chuàng)建新類的過程。提供繼承信息的類被稱為父類(超類、基類);得到繼承信息的類被稱為子類(派生類)。繼承讓變化中的軟件系統(tǒng)有了一定的延續(xù)性,同時繼承也是封裝程序中可變因素的重要手段(如果不能理解請閱讀閻宏博士的《Java與模式》或《設計模式精解》中關于橋梁模式的部分)。封裝:通常認為封裝是把數(shù)據(jù)和操作數(shù)據(jù)的方法綁定起來,對數(shù)據(jù)的訪問只能通過已定義的接口。面向?qū)ο蟮谋举|(zhì)就是將現(xiàn)實世界描繪成一系列完全自治、封閉的對象。我們在類中編寫的方法就

3、是對實現(xiàn)細節(jié)的一種封裝;我們編寫一個類就是對數(shù)據(jù)和數(shù)據(jù)操作的封裝。可以說,封裝就是隱藏一切可隱藏的東西,只向外界提供最簡單的編程接口(可以想想普通洗衣機和全自動洗衣機的差別,明顯全自動洗衣機封裝更好因此操作起來更簡單;我們現(xiàn)在使用的智能手機也是封裝得足夠好的,因為幾個按鍵就搞定了所有的事情)。多態(tài)性:多態(tài)性是指允許不同子類型的對象對同一消息作出不同的響應。簡單的說就是用同樣的對象引用調(diào)用同樣的方法但是做了不同的事情。多態(tài)性分為編譯時的多

4、態(tài)性和運行時的多態(tài)性。如果將對象的方法視為對象向外界提供的服務,那么運行時的多態(tài)性可以解釋為:當A系統(tǒng)訪問B系統(tǒng)提供的服務時,B系統(tǒng)有多種提供服務的方式,但一切對A系統(tǒng)來說都是透明的(就像電動剃須刀是A系統(tǒng),它的供電系統(tǒng)是B系統(tǒng),B系統(tǒng)可以使用電池供電或者用交流電,甚至還有可能是太陽能,A系統(tǒng)只會通過B類對象調(diào)用供電的方法,但并不知道供電系統(tǒng)的底層實現(xiàn)是什么,究竟通過何種方式獲得了動力)。方法重載(overload)實現(xiàn)的是編譯時的多態(tài)

5、性(也稱為前綁定),而方法重寫(override)實現(xiàn)的是運行時的多態(tài)性(也稱為后綁定)。運行時的多態(tài)是面向?qū)ο笞罹璧臇|西,要實現(xiàn)多態(tài)需要做兩件事:1).方法重寫(子類繼承父類并重寫父類中已有的或抽象的方法);2).對象造型(用父類型引用引用子類型對象,這樣同樣的引用調(diào)用同樣的方法就會根據(jù)子類對象的不同而表現(xiàn)出不同的行為)。2、訪問修飾符、訪問修飾符publicprivateprotected以及不寫(默認)時的區(qū)別?以及不寫(默認)

6、時的區(qū)別?答:修飾符修飾符當前類當前類同包子類其他包其他包方法publicvoideat(Foodfood)吃food是食物類6、int和Integer哪個會占用更多的內(nèi)存?哪個會占用更多的內(nèi)存?答:Integer對象會占用更多的內(nèi)存。Integer是一個對象,需要存儲對象的元數(shù)據(jù)。但是int是一個原始類型的數(shù)據(jù),所以占用的空間更少。7、什么是開發(fā)平臺?、什么是開發(fā)平臺?答:在軟件開發(fā)的過程中,我們需要很多的工具來輔助我們的工作,不可能

7、什么都從頭自己做。我們把編程的環(huán)境和相應的輔助工具統(tǒng)稱為開發(fā)環(huán)境,開發(fā)平臺就是用來提供這個開發(fā)環(huán)境的。比如,車床工人需要一個車床才能工作一樣。同樣,Java是一種開發(fā)平臺Java不單純是一個編程的語言,它自身提供了一系列開發(fā)Java所需要的環(huán)境和工具,來進行編譯、解釋、文檔生成、打包等。8、淺析、淺析JDK,JRE與JVM的含義和聯(lián)系。的含義和聯(lián)系。答:JDK(JavaDevelopmentKit)是面向開發(fā)人員使用的SDK,它提供了J

8、ava的開發(fā)環(huán)境和運行環(huán)境。SDK是SoftwareDevelopmentKit一般指軟件開發(fā)包,可以包括函數(shù)庫、編譯程序等。JRE(JavaRuntimeEnvironment)是指Java的運行環(huán)境,是面向Java程序的使用者,而不是開發(fā)者。JVM(JavaVirtualMachine)是java虛擬機,它是整個java實現(xiàn)跨平臺的最核心的部分,所有的java程序會首先被編譯為.class的類文件,這種類文件可以在虛擬機上執(zhí)行,也就

9、是說class并不直接與機器的操作系統(tǒng)相對應,而是經(jīng)過虛擬機間接與操作系統(tǒng)交互,由虛擬機將程序解釋給本地系統(tǒng)執(zhí)行。如果安裝了JDK,會發(fā)現(xiàn)你的電腦有兩套JRE,一套位于Javajdkjre另外一套位于Javajre目錄下,后面這套比前面那套少了Server端的Java虛擬機。jdk的bin下有各種java程序需要用到的命令,與jre下的bin目錄最明顯的區(qū)別就是jdk下才有javac,這一點很好理解,因為jre只是一個運行環(huán)境而已,與開

10、發(fā)無關,正因為如此,具備開發(fā)功能的jdk自己的jre下才會同時有client性質(zhì)的jvm和server性質(zhì)的jvm,而僅僅作為運行環(huán)境的jre下只需要client性質(zhì)的jvm.dll就夠了。JRE的地位就像一臺PC機一樣,我們寫好的Win32應用程序需要操作系統(tǒng)幫我們運行,同樣的,我們編寫的Java程序也必須要JRE才能運行。所以當你裝完JDK后,如果分別在硬盤上的兩個不同地方安裝了兩套JRE,那么你可以想象你的電腦有兩臺虛擬的Java

溫馨提示

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

評論

0/150

提交評論