java面向對象面試題_第1頁
java面向對象面試題_第2頁
java面向對象面試題_第3頁
java面向對象面試題_第4頁
java面向對象面試題_第5頁
已閱讀5頁,還剩7頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

.super。及this。的區(qū)分?This():當前類的對象,super父類對象。Super():在子類訪問父類的成員和行為,必需受類繼承規(guī)則的約束而this他代表當前對象,當然全部的資源都可以訪問.在構造函數(shù)中,假如第一行沒有寫super。,編譯器會自動插入.但是假如父類沒有不帶參數(shù)的構造函數(shù),或這個函數(shù)被私有化了(用private修飾).此時你必需加入對父類的實例化構造.而this就沒有這個要求,因為它本身就進行實例化的構造.而在方法中super和this運用的方法就差不多了.只不過super要考慮是否能訪問其父類的資源..作用域public,protected,private,以及不寫時的區(qū)分?Public:不同包、同一包、類內都可用Private:類內Protected:不同包的子類、同一包、類內都可用不寫時:同一包內、類內3.編程輸出如下圖形。slz*******代碼如下:publicclassPrint{publicstaticvoidmain(String[]args){for(inti=0;i<5;i++){for(intj=5;j>i;j——){cal.add(Calendar.DATE,-1);System,out.printin(cal.getTime());}}16、文件讀寫,實現(xiàn)一個計數(shù)器publicintgetNumO{inti=-1;try{Stringstri=//zz;BufferedReaderin=newBufferedReader(newFileReader(f));while((stri=in.readLine())!=null){i=Integer,parselnt(stri.trim());}in.close();}catch(Exceptione){e.printStackTrace();}returni;}publicvoidsetNumO(inti=getNumO;i++;try(PrintWriterout=newPrintWriter(newBufferedWriter(newFileWriter(f,false)));out.write(String.valueOf(i));〃可能是編碼的緣由,假如干脆寫入int的話,將出現(xiàn)java編碼和windows編碼的混亂,因此此處寫入的是Stringout.close();}catch(Exceptione){e.printStackTrace();17、指出下面程序的運行結果。classA{static{System,out.print(〃1〃);}publicA(){System.out.print(〃2〃);}}classBextendsA{static{System.out.print(〃a〃);}publicB(){System,out.print(〃b〃);})publicclassHello{publicstaticvoidmain(String[]ars){Aab=newB();〃執(zhí)行到此處,結果:此2bab=newB();〃執(zhí)行到此處,結果:la2b2b注:類的static代碼段,可以看作是類首次加載(被虛擬機加載)執(zhí)行的代碼,而對于類的加載,首先要執(zhí)行其基類的構造,再執(zhí)行其本身的構造System.out.print("*");System.out?printIn();)).JAVA的事務托付機制和垃圾回收機制java事務托付機制的概念,一個源產生一個事務并將它送到一個或多個監(jiān)聽器那里。在這種方案中,監(jiān)聽器簡潔的等待,直到它收到一個事務。一旦事務被接受,監(jiān)聽器將處理這個事務,然后返回。垃圾回收機制垃圾收集是將支配給對象但不再運用的內存回收或釋放的過程。假如一個對象沒有指向它的引用或者其賦值為null,則次對象適合進行垃圾回收.在JAVA中,如何跳出當前的多重嵌套循環(huán)?用break;return方法。.什么是java序列化,如何實現(xiàn)java序列化?(寫一個實例)序列化:處理對象流的機制,所謂對象流也就是將對象的內容進行流化??梢詫α骰蟮膶ο筮M行讀寫操作,也可將流化后的對象傳輸于網絡之間。序列化是為了解決在對對象流進行讀寫操作時所引發(fā)的問題。序列化的實現(xiàn):將須要被序列化的類實現(xiàn)Serializable接口,該接口沒有須要實現(xiàn)的方法,implementsSerializable只是為了標注該對象是可被序列化的,然后運用一個輸出流(如:FileOutputStream)來構造一個ObjectOutputStream(對象流)對象,接著,運用ObjectOutputStream對象的writeObject(Objectobj)方法就可以將參數(shù)為obj的對象寫出(即保存其狀態(tài)),要復原的話則用輸入流。.一個”.java”源文件中是否可以包括多個類(不是內部類)?有什么限制?可以。假如這個類的修飾符是public,其類名及文件名必需相同。.排序都有哪幾種方法?請列舉。用JAVA實現(xiàn)一個快速排序?排序的方法有:插入排序(干脆插入排序、希爾排序),交換排序(冒泡排序、快速排序),選擇排序(干脆選擇排序、堆排序),歸并排序,支配排序(箱排序、基數(shù)排序)快速排序的偽代碼。.Overload和Override的區(qū)分。Overloaded的方法是否可以變更返回值的類型?方法的重寫Override,子類覆蓋父類的方法,將子類傳及父類的引用調用的還是子類的方法。重載Overloading一個類多個方法,名稱相同,參數(shù)個數(shù)類型不同。兩者都是Java多態(tài)性的不同表現(xiàn)。Overloaded的方法是可以變更返回值的類型。1,publicclassCtest(){Publicstaticvoidmain()System,out.prinln(8+8+”88"+8+8);168888.Final類有什么特點?屬性常量方法不行以overridding類不行以繼承.繼承時候類的執(zhí)行依次問題,一般都是選擇題,問你將會打印出什么?答:父類:packagetest;publicclassFatherClass{publicFatherClass(){System,out.printin(zzFatherClassCreate");}}子類:packagetest;importtest.FatherClass;publicclassChildClassextendsFatherClass{publicChildClass()System,out.printIn(zzChildClassCreate");publicstaticvoidmain(String[]args)FatherClassfc=newFatherClass();ChildClasscc=newChildClass();}}輸出結果:C:>javatest.ChildClassFatherClassCreateFatherClassCreateChildClassCreate.內部類的實現(xiàn)方式?答:示例代碼如下:packagetest;publicclassOuterClass(privateclassInterClass(PublicInterlass(){System.out.printin("InterClassCreate");)}publicOuterClass()InterClassic=newInterClass();System,out.printin(,zOuterClassCreate");publicstaticvoidmain(String[]args)(OuterClassoc=newOuterClass();}}輸出結果:C:>javatest/OuterClassInterClassCreateOuterClassCreate.用JAVA實現(xiàn)一種排序,JAVA類實現(xiàn)序列化的方法(二種)?.如在COLLECTION框架中,實現(xiàn)比較要實現(xiàn)什么樣的接口?.用插入法進行排序代碼如下packagetest;importjava.util.classInsertSort(ArrayListal;publicInsertSort(intnum,intmod){al=newArrayList(num);Randomrand=newRandom();System,out.printin(/zTheArrayListSortBefore:/z);for(inti=0;i<num;i++)al.add(newInteger(Math,abs(rand,nextlnt())%mod+1));System.out.printin(〃al[〃+i+〃]=〃+al?get(i));}}publicvoidSortlt(){Integertemplnt;intMaxSize=l;for(inti=l;i<al.size();i++)(templnt=(Integer)al.remove(i);if(templnt.intValue()>=((Integer)al.get(MaxSize-1)).intValue())(al.add(MaxSize,templnt);MaxSize++;System.out.println(al.toStringO);}else{for(intj=0;j<MaxSize;j++){if(((Integer)al.get(j)).intValue()>=templnt.intValue())(al.add(j,templnt);MaxSize++;System.out.printin(al.toStringO);break;System.out.printin(Z/TheArrayListSortAfter:/z);for(inti=0;i<al.size();i++)System.out.printin(〃al[〃+i+〃]=〃+al?get(i));}}publicstaticvoidmain(String[]args)(InsertSortis=newInsertSort(10,100);is.Sortlt();)JAVA類實現(xiàn)序例化的方法是實現(xiàn)java.io.Serializable接口Collection框架中實現(xiàn)比較要實現(xiàn)Comparable接口和Comparator接口16.編程:編寫一個截取字符串的函數(shù),輸入為一個字符串和字節(jié)數(shù),輸出為按字節(jié)截取的字符串。但是要保證漢字不被截半個,如“我ABC-4,應當截為“我AB",輸入“我ABC漢DEF",6,應當輸出為“我ABC”而不是“我ABC+漢的半個”。答:代碼如下:publicstaticvoidsplit(Stringsource,intnum)throwsException{intk=0;Stringtemp=///,;for(inti=0;i<source.length();i

溫馨提示

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

評論

0/150

提交評論