freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

java開發(fā)人員面試寶典-文庫(kù)吧

2025-07-15 00:13 本頁面


【正文】 的實(shí)例對(duì)象。含有abstract方法的類必須定義為abstract class,abstract class類中的方法不必是抽象的。abstract class類中定義抽象方法必須在具體(Concrete)子類中實(shí)現(xiàn),所以,不能有抽象構(gòu)造方法或抽象靜態(tài)方法。如果的子類沒有實(shí)現(xiàn)抽象父類中的所有抽象方法,那么子類也必須定義為abstract類型。接口(interface)可以說成是抽象類的一種特例,接口中的所有方法都必須是抽象的。接口中的方法定義默認(rèn)為public abstract類型,接口中的成員變量類型默認(rèn)為public static final。下面比較一下兩者的語法區(qū)別:1. 抽象類可以有構(gòu)造方法,接口中不能有構(gòu)造方法。2. 抽象類中可以有普通成員變量,接口中沒有普通成員變量3. 抽象類中可以包含非抽象的普通方法,接口中的所有方法必須都是抽象的,不能有非抽象的普通方法。4. 抽象類中的抽象方法的訪問類型可以是public,protected和默認(rèn)類型,但接口中的抽象方法只能是public類型的,并且默認(rèn)即為public abstract類型。5. 抽象類中可以包含靜態(tài)方法,接口中不能包含靜態(tài)方法6. 抽象類和接口中都可以包含靜態(tài)成員變量,抽象類中的靜態(tài)成員變量的訪問類型可以任意,但接口中定義的變量只能是public static final類型,并且默認(rèn)即為public static final類型。7. 一個(gè)類可以實(shí)現(xiàn)多個(gè)接口,但只能繼承一個(gè)抽象類。下面接著再說說兩者在應(yīng)用上的區(qū)別:接口更多的是在系統(tǒng)架構(gòu)設(shè)計(jì)方法發(fā)揮作用,主要用于定義模塊之間的通信契約;而抽象類在代碼實(shí)現(xiàn)方面發(fā)揮作用,可以實(shí)現(xiàn)代碼的重用。 新建對(duì)象有幾種方式1. 使用new關(guān)鍵字2. 使用反射,調(diào)用newInstance3. 使用clone方法4. 使用序列化與反序列化5. 動(dòng)態(tài)代理(Proxy類和CGLIB) amp。和amp。amp。的區(qū)別amp。和amp。amp。都可以用作邏輯與的運(yùn)算符,amp。amp。為短路與,amp。不是短路與。另外amp??梢宰鰹檎麛?shù)的位運(yùn)算符例1:對(duì)于if(str != nullamp。amp。 !(“”))表達(dá)式,當(dāng)str為null時(shí),后面的表達(dá)式不會(huì)執(zhí)行,所以不會(huì)出現(xiàn)NullPointerException如果將amp。amp。改為amp。,則會(huì)拋出NullPointerException異常。例2:If(x==33 amp。++y0) y會(huì)增長(zhǎng),if(x==33 amp。amp。 ++y0)不會(huì)增長(zhǎng)。備注:這道題先說兩者的共同點(diǎn),再說出amp。amp。和amp。的特殊之處,并列舉一些經(jīng)典的例子來表明自己理解透徹深入、實(shí)際經(jīng)驗(yàn)豐富。 面向?qū)ο笫裁刺匦詫?duì)于面向?qū)ο蟮奶匦?,一般有兩種說法:一種是有三大特性,分別是封裝,繼承,多態(tài),一種說法是有四大特性,封裝,繼承,多態(tài),抽象。講三大特性的時(shí)候更多一些,注意,這里的提問方式是面向?qū)ο蟮奶匦?,而不是Java的特性。 面向?qū)ο笾卸鄳B(tài)特性多態(tài)是面向?qū)ο蠛苤匾囊粋€(gè)特性,轉(zhuǎn)型是多態(tài)的具體體現(xiàn)。多態(tài)還包括重載和重寫。轉(zhuǎn)型:轉(zhuǎn)型分為向上轉(zhuǎn)型和向下轉(zhuǎn)型。向上轉(zhuǎn)型是子類對(duì)象轉(zhuǎn)換成父類對(duì)象,直接轉(zhuǎn)就可以,向下轉(zhuǎn)型是父類對(duì)象轉(zhuǎn)換成子類對(duì)象,這需要強(qiáng)轉(zhuǎn),在轉(zhuǎn)換過程中要保證此父類對(duì)象“本體”是由子類對(duì)象實(shí)例化的。重載:重載發(fā)生在同一個(gè)類中,在該類中如果存在多個(gè)同名方法,但是方法的參數(shù)類型和個(gè)數(shù)不一樣,那么說明該方法被重載了。重寫:重寫發(fā)生在子類繼承父類的關(guān)系中,父類中的方法被子類繼承,方法名,返回值類型,參數(shù)完全一樣,但是方法體不一樣,那么說明父類中的該方法被子類重寫了。 List,set,Collection,Collections List和Set都是接口,他們都繼承于接口Collection,List是一個(gè)有序的可重復(fù)的集合,而Set的無序的不可重復(fù)的集合。Collection是集合的頂層接口,Collections是一個(gè)封裝了眾多關(guān)于集合操作的靜態(tài)方法的工具類,因?yàn)闃?gòu)造方法是私有的,所以不能實(shí)例化。 List接口實(shí)現(xiàn)類有ArrayList,LinkedList,Vector。ArrayList和Vector是基于數(shù)組實(shí)現(xiàn)的,所以查詢的時(shí)候速度快,而在進(jìn)行增加和刪除的時(shí)候速度較慢LinkedList是基于鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu),所以在進(jìn)行查詢的時(shí)候速度較慢但在進(jìn)行增加和刪除的時(shí)候速度較快。又因?yàn)閂ector是線程安全的,所以他和ArrayList相比而言,查詢效率要低。 線程和進(jìn)程的區(qū)別 進(jìn)程定義的是應(yīng)用程序與應(yīng)用程序之間的邊界,通常來說一個(gè)進(jìn)程就代表一個(gè)與之對(duì)應(yīng)的應(yīng)用程序。不同的進(jìn)程之間不能共享代碼和數(shù)據(jù)空間,而同一進(jìn)程的不同線程可以共享代碼和數(shù)據(jù)空間。 一個(gè)進(jìn)程可以包括若干個(gè)線程,同時(shí)創(chuàng)建多個(gè)線程來完成某項(xiàng)任務(wù),便是多線程。實(shí)現(xiàn)線程的兩種方式:繼承Thread類,實(shí)現(xiàn)Runable接口。 Jvm內(nèi)存結(jié)構(gòu)Java虛擬機(jī)的內(nèi)存結(jié)構(gòu)分為堆(heap)和棧(stack),堆里面存放是對(duì)象實(shí)例也就是new出來的對(duì)象。棧里面存放的是基本數(shù)據(jù)類型以及引用數(shù)據(jù)類型的地址。對(duì)于所謂的常量是存儲(chǔ)在方法區(qū)的常量池里面。堆是先進(jìn)先出棧是先進(jìn)后出 內(nèi)存泄露和內(nèi)存溢出內(nèi)存泄露 (memory leak),是指應(yīng)用程序在申請(qǐng)內(nèi)存后,無法釋放已經(jīng)申請(qǐng)的內(nèi)存空間。一次內(nèi)存泄露危害可以忽略,但如果任其發(fā)展最終會(huì)導(dǎo)致內(nèi)存溢出(out of memory)。如讀取文件后流要進(jìn)行及時(shí)的關(guān)閉以及對(duì)數(shù)據(jù)庫(kù)連接的釋放。內(nèi)存溢出(out of memory)是指應(yīng)用程序在申請(qǐng)內(nèi)存時(shí),沒有足夠的內(nèi)存空間供其使用。如我們?cè)陧?xiàng)目中對(duì)于大批量數(shù)據(jù)的導(dǎo)入,采用分段批量提交的方式。 解析xml文件的幾種技術(shù)解析xml的幾種技術(shù)1. dom4j 、 dom4jdom4j是一個(gè)Java的XML API,類似于jdom,用來讀寫XML文件的。dom4j是一個(gè)非常優(yōu)秀的Java XML API,具有性能優(yōu)異、功能強(qiáng)大和極端易用使用的特點(diǎn),同時(shí)它也是一個(gè)開放源代碼的軟件。 saxSAX(simple API for XML)是一種XML解析的替代方法。相比于DOM,SAX是一種速度更快,更有效的方法。它逐行掃描文檔,一邊掃描一邊解析。而且相比于DOM,SAX可以在解析文檔的任意時(shí)刻停止解析,但任何事物都有其相反的一面,對(duì)于SAX來說就是操作復(fù)雜。 JaxbJAXB(Java Architecture for XML Binding) 是一個(gè)業(yè)界的標(biāo)準(zhǔn),是一項(xiàng)可以根據(jù)XML Schema產(chǎn)生Java類的技術(shù)。該過程中,JAXB也提供了將XML實(shí)例文檔反向生成Java對(duì)象樹的方法,并能將Java對(duì)象樹的內(nèi)容重新寫到XML實(shí)例文檔。從另一方面來講,JAXB提供了快速而簡(jiǎn)便的方法將XML模式綁定到Java表示,從而使得Java開發(fā)者在Java應(yīng)用程序中能方便地結(jié)合XML數(shù)據(jù)和處理函數(shù)。 Dom4j與sax之間的對(duì)比dom4j不適合大文件的解析,因?yàn)樗且幌伦訉⑽募虞d到內(nèi)存中,所以有可能出現(xiàn)內(nèi)存溢出,sax是基于事件來對(duì)xml進(jìn)行解析的,所以他可以解析大文件的xml,也正是因?yàn)槿绱?,所以dom4j可以對(duì)xml進(jìn)行靈活的增刪改查和導(dǎo)航,而sax沒有這么強(qiáng)的靈活性,所以sax經(jīng)常是用來解析大型xml文件,而要對(duì)xml文件進(jìn)行一些靈活(crud)操作就用dom4j。 java Exception體系結(jié)構(gòu)java 異常是程序運(yùn)行過程中出現(xiàn)的錯(cuò)誤。Java把異常當(dāng)作對(duì)象來處理。在Java API中定義了許多異常類,分為兩大類,錯(cuò)誤Error和異常Exception。其中異常類Exception又分為運(yùn)行時(shí)異常(RuntimeException)和非運(yùn)行時(shí)異常(非runtimeException),也稱之為不檢查異常(Unchecked Exception)和檢查異常(Checked Exception)。 Error與Exception Error是程序無法處理的錯(cuò)誤,比如OutOfMemoryError、ThreadDeath等。這些異常發(fā)生時(shí),Java虛擬機(jī)(JVM)一般會(huì)選擇線程終止。Exception是程序本身可以處理的異常,這種異常分兩大類運(yùn)行時(shí)異常和非運(yùn)行時(shí)異常。程序中應(yīng)當(dāng)盡可能去處理這些異常。 運(yùn)行時(shí)異常和非運(yùn)行時(shí)異常a) 運(yùn)行時(shí)異常: 都是RuntimeException類及其子類異常:i. IndexOutOfBoundsException 索引越界異常ii. ArithmeticException:數(shù)學(xué)計(jì)算異常iii. NullPointerException:空指針異常iv. ArrayOutOfBoundsException:數(shù)組索引越界異常v. ClassNotFoundException:類文件未找到異常vi. ClassCastException:造型異常(類型轉(zhuǎn)換異常) 這些異常是不檢查異常(Unchecked Exception),程序中可以選擇捕獲處理,也可以不處理。這些異常一般是由程序邏輯錯(cuò)誤引起的。非運(yùn)行時(shí)異常:是RuntimeException以外的異常,類型上都屬于Exception類及其子類。從程序語法角度講是必須進(jìn)行處理的異常,如果不處理,程序就不能編譯通過。如:IOException、文件讀寫異常FileNotFoundException:文件未找到異常EOFException:讀寫文件尾異常MalformedURLException:URL格式錯(cuò)誤異常SocketException:Socket異常SQLException:SQL數(shù)據(jù)庫(kù)異常 抽象類和接口的區(qū)別1. 抽象類由public abstract修飾,接口由public interface修飾。2. 類(抽象類也是類)只支持單繼承,但接口可以實(shí)現(xiàn)多個(gè)接口。接口不是類,接口和類同屬于Java中的一個(gè)類型。3. 抽象類里由構(gòu)造器、常量、變量、抽象方法、普通方法構(gòu)成,接口里只包括常量和抽象方法,沒有構(gòu)造器和普通方法。4. 是否是使用抽象類還是接口,主要看想要實(shí)現(xiàn)什么樣的事情,如果側(cè)重于描述事務(wù),應(yīng)該選擇抽象類,如果側(cè)重于定義功能,建議選擇使用接口。 修飾符的作用修飾符同一個(gè)類中同一個(gè)包中子類中全局privateYesDefaultYesYesprotectedYesYesYespublicYesYesYesYes HashMap和Hashtable的區(qū)別 HashMap和Hashtable是Map接口下的兩個(gè)實(shí)現(xiàn)類,因?yàn)镸ap對(duì)象是鍵值對(duì)的,所以此兩類也是鍵值對(duì)的。 HashMap是線程非安全的,Hashtable是線程安全的,所以HashMap的效率高于Hashtable。 HashMap允許鍵或值為null,鍵最多只可以有一個(gè)為null,值不受限制。而Hashtable鍵或值都不許為null。注意:Hashtable中的“t”是小寫的。 字節(jié)流和字符流的區(qū)別以stream結(jié)尾都是字節(jié)流,以reader和writer結(jié)尾都是字符流,兩者的區(qū)別就是讀寫的時(shí)候一個(gè)是按字節(jié)讀寫,一個(gè)是按字符。在實(shí)際使用時(shí)差不多。在讀寫文件需要對(duì)內(nèi)容按行處理,比如比較特定字符,處理某一行數(shù)據(jù)的時(shí)候一般會(huì)選擇字符流。只是讀寫文件,和文件內(nèi)容無關(guān)的,一般選擇字節(jié)流。 運(yùn)行異常和檢查異常有何不同異常表示程序運(yùn)行過程中可能出現(xiàn)的非正常狀態(tài),運(yùn)行時(shí)異常表示虛擬機(jī)的通常操作中可能遇到的異常,是一種常見運(yùn)行錯(cuò)誤。java編譯器要求方法必須聲明拋出可能發(fā)生的非運(yùn)行時(shí)異常,但是并不要求必須聲明拋出未被捕獲的運(yùn)行時(shí)異常。 error和exception的區(qū)別error 表示恢復(fù)不是不可能但很困難的情況下的一種嚴(yán)重問題。比如說內(nèi)存溢出,不可能指望程序能處理這樣的情況。exception表示一種設(shè)計(jì)或?qū)崿F(xiàn)問題,也就是說,它表示如果程序運(yùn)行正常,從不會(huì)發(fā)生的情況。 舉例最常用的五個(gè)運(yùn)行時(shí)異常NullPointerException空指針、ArrayIndexOutOfBoundsException數(shù)組越界、ClassCastException 類轉(zhuǎn)換異常、IllegelArgumentException輸入輸出異常、SecurityException 權(quán)限不夠。 Sleep和wait的區(qū)別(網(wǎng)上的答案:sleep是線程類(Thread)的方法,導(dǎo)致此線程暫停執(zhí)行指定時(shí)間,給執(zhí)行機(jī)會(huì)給其他線程,但是監(jiān)控狀態(tài)依然保持,到時(shí)后會(huì)自動(dòng)恢復(fù)。調(diào)用sleep不會(huì)釋放對(duì)象鎖。 wait是Object類的方法,對(duì)此對(duì)象調(diào)用wait方法導(dǎo)致本線程放棄對(duì)象鎖,進(jìn)入等待此對(duì)象的等待鎖定池,只有針對(duì)此對(duì)象發(fā)出notify方法(或notifyAll)后本線程才進(jìn)入對(duì)象鎖定池準(zhǔn)備獲得對(duì)象鎖進(jìn)入運(yùn)行狀態(tài)。)sleep就是正在執(zhí)行的線程主動(dòng)讓出cpu,cpu去執(zhí)行其他線程,在sleep指定的時(shí)間過后,cpu才會(huì)回到這個(gè)線程上繼續(xù)往下執(zhí)行,如果當(dāng)前線程進(jìn)入了同步鎖,sleep方法并不會(huì)釋放鎖,即使當(dāng)前線程使用sleep方法讓出了cpu,但其他被同步鎖擋住了的線程也無法得到執(zhí)行。wait是指在一個(gè)已經(jīng)進(jìn)入了同步鎖的線程內(nèi),讓自己暫時(shí)讓出同步鎖,以便其他正在等待此鎖的線程可以得到同步鎖并運(yùn)行,只有其他線程調(diào)用了notify方法(notify并不釋放鎖,只是告訴調(diào)用過wait方法的線程可以去參與獲得鎖的競(jìng)爭(zhēng)了,但不是馬上得到鎖,因?yàn)殒i還在別人手里,別人還沒釋放。如果notify方法后面的代碼還有很多,需要這些代碼執(zhí)行完后才會(huì)釋放鎖,可以在notfiy方法后增加一個(gè)等待和一些代碼,看看效果),調(diào)用wait方法的線程就會(huì)解除wait狀態(tài)和程序可以再次得到鎖后繼續(xù)向下運(yùn)行。對(duì)于wait的講解
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1