往年考卷java考試大綱學(xué)生版_第1頁(yè)
往年考卷java考試大綱學(xué)生版_第2頁(yè)
往年考卷java考試大綱學(xué)生版_第3頁(yè)
往年考卷java考試大綱學(xué)生版_第4頁(yè)
往年考卷java考試大綱學(xué)生版_第5頁(yè)
已閱讀5頁(yè),還剩7頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、 填空1 面象的三大特征分別是封裝,繼承和多態(tài)。在 JAVA 程序中,通過(guò)類(lèi)的定義只能實(shí)現(xiàn)單重繼承,但通過(guò)接口的定義可以實(shí)現(xiàn)多重繼承關(guān)系。若 x = 5,y = 10,則 x = y 和 x y 的邏輯值分別為 false 和 true。抽象(abstruct)方法是一種僅有方法頭,沒(méi)有具體方法體和操作實(shí)現(xiàn)的方法,該方法必須在抽象類(lèi)之中定義。最終(final)方法是不能被當(dāng)前類(lèi)的子類(lèi)重新定義的方法。在 Java 的基本數(shù)據(jù)類(lèi)型中,char 型采用 Unicode 編碼方案,無(wú)論是中文字符還是英文字,都是占用 2 字節(jié)內(nèi)存空間。final 修飾符定義的變量值不能改變 abstruct 修飾的類(lèi)不

2、能夠直接實(shí)例化構(gòu)造函數(shù)創(chuàng)建對(duì)象時(shí)被調(diào)用.開(kāi)發(fā)與運(yùn)行 JAVA 程序需要經(jīng)過(guò)的三個(gè)主要步驟為編輯源程序,編譯源程序生成字節(jié)碼和解釋運(yùn)行字節(jié)碼。JAVA 中類(lèi)成員的限定詞有以下幾種:public, protected ,默認(rèn)和 private。其中 public 的開(kāi)放范圍最大。10 在面象概念中,每個(gè)對(duì)象都是由屬性和方法兩個(gè)最基本的部分組成的。11 定義類(lèi)用的關(guān)鍵字是 Class,繼承類(lèi)用的關(guān)鍵子是 extends,實(shí)現(xiàn)接口用的關(guān)鍵字是 implements 。二 問(wèn)答題1 舉例說(shuō)明類(lèi)、抽象類(lèi)和接口之間的關(guān)系和區(qū)別。類(lèi)是將同一類(lèi)別的對(duì)象進(jìn)行歸納總結(jié),接口是設(shè)計(jì)的結(jié)果,抽象類(lèi)是重構(gòu)的結(jié)果。聯(lián)系:兩

3、者都是抽象類(lèi),都不能實(shí)例化區(qū)別:一個(gè)類(lèi)只能繼承一個(gè)抽象類(lèi),但是一個(gè)類(lèi)可以實(shí)現(xiàn)多個(gè)接口舉例:一個(gè)公司,有,聘的經(jīng)理,還有員工,類(lèi)就是員工,抽象類(lèi)就是經(jīng)理,接口就是。接口里就是給個(gè)方法,但是他自己不做,比如說(shuō)我要那個(gè)文件,給我定個(gè)機(jī)票,我要那個(gè)策劃方案等,都是下面人做。只說(shuō)不做。抽象類(lèi)給的方法,有的他自己做,有的其他人做。比如經(jīng)理說(shuō)我要那個(gè)文檔,員工就要發(fā)給他,但是他自己也要做點(diǎn)事,比如拿方案給看。經(jīng)理又說(shuō)又做。一般類(lèi)給的方法,就是什么都要做,都要實(shí)現(xiàn)。2 詳細(xì)說(shuō)明重載和覆蓋的區(qū)別,并說(shuō)明說(shuō)明覆蓋時(shí)要注意在一個(gè)類(lèi)中,出現(xiàn)方法名相同但是形參表不同的多個(gè)方法,稱為方法的重載;在子類(lèi)中,對(duì)繼承父類(lèi)的實(shí)例

4、方法進(jìn)行重新定義,使子類(lèi)的實(shí)例方法與父類(lèi)實(shí)例的方法有相同的方法名,返回類(lèi)型和完全一致的參數(shù)稱為覆蓋;注意問(wèn)題:1.覆蓋方法與被覆蓋方法的返回類(lèi)型,方法名,參數(shù)要完全一致;2.覆蓋方法的級(jí)別不能低于被覆蓋方法的級(jí)別;3.覆蓋方法不能比覆蓋方法拋出的受檢查異常。面象的抽象、繼承、封裝和多態(tài)性。3不打算了解全部問(wèn)題,而只是選擇其中一部分細(xì)節(jié)。抽象包括兩方面:一是過(guò)程抽象,二是數(shù)據(jù)抽象。繼承:繼承是一種聯(lián)結(jié)類(lèi)的層次模型,并且允許和鼓勵(lì)的重用,它提供了一種明確表述共性的方法。對(duì)象的一個(gè) 新類(lèi)可以從現(xiàn)有的類(lèi)中派生,這個(gè)過(guò)稱為類(lèi)繼承。新類(lèi)繼承了原始的特性,新類(lèi)稱為原始的派生類(lèi)(子類(lèi)),而原始類(lèi)稱為基類(lèi)(父類(lèi)

5、)。派生類(lèi)可以從它的基類(lèi)那里繼承方法和實(shí)例變量,并且類(lèi)可以修改或添加新的方法使之更適合特殊的需要。封裝:是把過(guò)程和數(shù)據(jù)包圍起來(lái),對(duì)數(shù)據(jù)的只能通過(guò)已定義的界面。面象計(jì)算始于這個(gè)基本概念,即現(xiàn)實(shí)世界可以被描繪成一系列完全自治、封裝的對(duì)象,這些對(duì)象通過(guò)一個(gè)受保護(hù)的接口其他對(duì)象。多態(tài)性:是指允許不同類(lèi)的對(duì)象對(duì)同一消息作出響應(yīng)。多態(tài)性包括參數(shù)化多態(tài)性和包含多態(tài)性。多態(tài)性語(yǔ)言具有靈活、抽象、行為共享、代碼共享的優(yōu)勢(shì),很好的解決應(yīng)用程序函數(shù)同名問(wèn)題4 Java 為 Sun 公司所提出,該語(yǔ)言具有哪些特性?簡(jiǎn)單的面象的 安全性 跨多線性 動(dòng)態(tài)性的5 java 的健壯性和安全性有哪些體現(xiàn)安全性:提供字節(jié)碼校驗(yàn)器

6、,文件限制機(jī)制 類(lèi)裝載器和運(yùn)行時(shí)內(nèi)存布局四級(jí)安全保證機(jī)制健壯性:Java 采用的指針模型可以消除重寫(xiě)內(nèi)存和損壞數(shù)據(jù)的可能性抽象:抽象就是是忽略一個(gè)中與當(dāng)前目標(biāo)無(wú)關(guān)的那些方面,以便充分地注意與當(dāng)前目標(biāo)有關(guān)的方面。抽象并方法的重載,重載特點(diǎn)?6在一個(gè)子類(lèi)中,出現(xiàn)方法名相同但是形參表不同的多個(gè)方法;特點(diǎn):方法名要一樣,但是參數(shù)類(lèi)型或者個(gè)數(shù)不一樣,返回值類(lèi)型可以相同也可以不同。不能以返回類(lèi)型作為重載函數(shù)的區(qū)分標(biāo)準(zhǔn)。 重載必須有不同的參數(shù)列表;可以有不同的不同。7 類(lèi)和對(duì)象的區(qū)別,以及創(chuàng)建一個(gè)對(duì)象的功能包括哪些。修飾符;可以有不同的返回類(lèi)型,只要參數(shù)列表類(lèi)是對(duì)象的抽象,而對(duì)象是類(lèi)的具體實(shí)例。類(lèi)是抽象的,

7、不占用內(nèi)存,而對(duì)象是具體的,占用空間。類(lèi)是用于創(chuàng)建對(duì)象的藍(lán)圖,它是一個(gè)定義包括在特定類(lèi)型的對(duì)象中的方法和變量的模板。8 包的作用是什么? 如何創(chuàng)建包并且包 。包是一組相關(guān)的類(lèi)和接口的集合;包由包語(yǔ)句 package 創(chuàng)建;JAVA 中利用 import 語(yǔ)句來(lái)實(shí)現(xiàn)包的9 子類(lèi)和父類(lèi)之間的繼承遵循什么原則?。1.如果子類(lèi)沒(méi)有定義任何構(gòu)造方法,那么在創(chuàng)建子類(lèi)對(duì)象時(shí),調(diào)用父類(lèi)無(wú)參構(gòu)造方法(即默認(rèn)的構(gòu)造方法),即執(zhí)行 super();2.如果子類(lèi)定義了構(gòu)造方法,并且子類(lèi)構(gòu)造方法中沒(méi)有顯式調(diào)用父類(lèi)的構(gòu)造方法,那么在創(chuàng)建子類(lèi)對(duì)象時(shí),首先調(diào)用父類(lèi)無(wú)參構(gòu)造方法,然后再執(zhí)行子類(lèi)自己的構(gòu)造方法;3.如果子類(lèi)定義的

8、構(gòu)造方法,并且在子類(lèi)構(gòu)造方法中利用 super 關(guān)鍵字顯式調(diào)用父類(lèi)的構(gòu)造方法,那么在創(chuàng)建子類(lèi)對(duì)象時(shí),首先執(zhí)行顯式調(diào)用父類(lèi)構(gòu)造方法,然后再執(zhí)行子類(lèi)構(gòu)造方法體的其余部分。不再調(diào)用父類(lèi)無(wú)參構(gòu)造方法。三 程序閱讀填空說(shuō)明:在如下的題目中,取出若干個(gè)空,請(qǐng)?zhí)顚?xiě)有一張足夠大的紙,厚 0.01 毫米。問(wèn)將它對(duì)折多少次后可以達(dá)到珠穆朗瑪峰的高度(8848.43 米) class FoldCount publicgetCount(double h)n =0 ;while(h8848.43) h =h*2;n+;return n;class Test Public sic void main(String arg

9、s) FoldCount obj;Obj = new FoldCount() ;System.out.prln(“count=” + obj.getCount(0.01e-3) ;求解最大公約數(shù)和最小公倍數(shù)classLcmpublicget(m,n) r = m%n;while(r!=0)m=n; n=r;r = m%n;return n;public class TestPublic sic void main(String args)a = 123, b=36,Lcm obj =new,lcm;Lcm();/和 lcm 分別為 a 和 b 的最大公約數(shù)和最小公倍數(shù)= obj. get();

10、 Lcm = a*b/;System.out.prln(“數(shù)字”+ a + “和” +b + “的最大公約數(shù)是” + System.out.prln(“數(shù)字”+ a + “和” +b + “的最小公倍數(shù)是” +lcm););3 下面的程序是猜數(shù)字的,自動(dòng)產(chǎn)生 0-1000 范圍內(nèi)的整數(shù),玩家從鍵盤(pán)輸入數(shù)字去猜,如果猜對(duì)了,打猜了多少次,如果猜小了,給玩家提示猜小了,重復(fù)輸入數(shù)字;如果猜大了,同樣給玩家提示猜打了,重新輸入數(shù)字。import java.util.*; class GuessGame public goalNum = () (Math.random()*1001);count =0

11、;guedoum;gueum =inputGueum();count+;if(gueumgoalNum)System.out.prln(“你猜大了,請(qǐng)重猜”);while (gueum!=goalNum);System.out.prln(“恭喜你猜對(duì)了,共猜了” +count +”次”);inputGueum() Scanner reader = newScanner(System.in);System.out.prln(“請(qǐng)輸入你要猜測(cè)的數(shù)字(0-1000)”); i = reader.next();while(n=1000) System.out.prln(“你所猜的數(shù)字不在范圍內(nèi),請(qǐng)重新

12、輸入”); n = reader.next();return n;Public class TestPublic sic void main(String args) new GuessGame().playGuessGame();4 采用繼承完成圓和圓柱體的代碼Class Circleprivate double radius=10;public double getRadius() returnradius;public void setRadius(doublic radius) this.radius = radius; public double getArea() return M

13、ath.PI* radius* radius;class Cylinder extends Cirlcedouble height =100;public double getVolumn()return Math.PI * getRadius() * getRadius() * height;Public class TestPublic sic void main(String args) Cylinder obj = new Cylinder();System.out.prln(“Cylinder obj Volumn = ” + obj.getVolumn();四 程序題注意: 題目的

14、解答要求給出完整的類(lèi)并寫(xiě)簡(jiǎn)單方法進(jìn)試。1 編寫(xiě)一個(gè)函數(shù)計(jì)算 1*1*1+2*2*2+3*3*3+.+n*n*n 的值 ,函數(shù)的形式 long getSum(n)long getSum(n)long s = 0;for(i=1;i=n;i+)s=s+i*i*i;return s;2 給出一個(gè)數(shù)組,要求取得這個(gè)數(shù)組的平均值。函數(shù)的形式 float getAvg (float farr)float getAvg(float farr) float s = 0;for (i = 0; i farr.length; i+) s = s + farri;return s / farr.length;3 構(gòu)

15、造一個(gè)類(lèi)來(lái)描述屏幕上的一個(gè)點(diǎn),該類(lèi)的包括點(diǎn)的 x 和 y 兩個(gè)坐標(biāo),以及一些對(duì)點(diǎn)進(jìn)行的操作,包括:取得點(diǎn)的坐標(biāo)值,對(duì)點(diǎn)的坐標(biāo)進(jìn)行賦值,求兩個(gè)點(diǎn)的距離,編寫(xiě)應(yīng)用程序生成該類(lèi)的對(duì)象并對(duì)其進(jìn)行操作。public class Pox, y;public Popublic Po() (x,y) this.x = x;this.y = y;publicgetX() return x;public void setX(this.x = x;x) publicgetY() return y;public void setY(this.y = y;float getLength(Poy) p1, Pop2) d

16、ouble dastance = Math.sqrt(Mabs(p1.getX() - p2.getX()* (p1.getX() - p2.getX() + (p1.getY() - p2.getY()* (p1.getY() - p2.getY();return (float) dastance;public sic void main(String args) System.out.prSystem.out.pr System.out.prln(new Poln(new Po ln(new Po().getLength(new Po(1,2), new Po(2,4);(1,2).get

17、X();(1,2).getY();4 編寫(xiě)并測(cè)試方法 sic multiply( x, y) ,方法實(shí)現(xiàn)兩個(gè)矩陣 xmn 和 ynl 的相加,并返回結(jié)果矩陣 zml,并對(duì)輸入不合法的矩陣 x 和 y 進(jìn)行異常處理sic multiply( x, y) if(x.length=y.length&x0.length=y0.length) c = null;c=newfor (x.lengthy.length;i = 0; i x.length; i+)for (j = 0; j xi.length; j+)cij=xij+yij;System.out.pr(cij+ );System.out.pr

18、ln();return c;elseSystem.out.prreturn null;ln(輸入矩陣不合法);5 編寫(xiě)一個(gè)函數(shù),得到fn = fn-1+fn-2,函數(shù)的接口數(shù)列,數(shù)列的形式 1 1 2 3 5 8 ,遞歸的形式如下:n),請(qǐng)求得第n個(gè)數(shù)fib(sicfib (n)if(n=1) return 1;return fib (n-1)+fib (n-2);6 給出一個(gè)數(shù)組,要求取得這個(gè)數(shù)組的均,也就是每個(gè)元素的平方之后的平均。函數(shù)的形式 float getAvg (float farr)(10 分)sic float getAvg (float farr)float result=0

19、;for (i = 0; i farr.length; i+)result=(float) (result+Math.(farri,2);return result/(farr.length);4 編寫(xiě)并測(cè)試方法 sic multiply( x) ,方法實(shí)現(xiàn)矩陣 X 的轉(zhuǎn)置矩陣 Zpublic sic void multiply(m,n)for(i = 0;i m.length;i+)for(j = 0;j mi.length;j+)System.out.prSystem.out.prSystem.out.pr(nij = mji);(t);ln();8 書(shū) P177 8 題 定義一個(gè)圓和矩形

20、完成相應(yīng)的代碼public class CircleRadius = 0;Perimeter = 0;doubl= 3.14;public void setRadius (r )Radius = r;publicgetRadius ( )return Radius;publicgetPerimeter ( )return () (Radius * 2*Pi);publicgetArea ( )return () (Math.(Radius,2)*Pi);public class TestCircle/* param args*/public sic void main ( String arg

21、s )Circle circle=new Circle(); circle.setRadius(20);System.out.prSystem.out.pr System.out.prln(半徑是:+circle.getRadius();ln(周長(zhǎng)是:+circle.getPerimeter(); ln(面積是:+circle.getArea();public class RectangleWidth,Height;public Rectangle (super();width ,height )Width = width;Height = height;publicgetWidth ( )r

22、eturn Width;public void setWidth (width )Width = width;publicgetHeight ( )return Height;public void setHeight (height )Height = height;publicgetPerimeter ( )return 2*(this.Height+this.Width);publicgetArea ( )return this.Height*this.Width;public class TestRectangle/* param args*/public sic void main

23、( String args )Rectangle rectangle=new Rectangle(10, 10);System.out.pr ln(長(zhǎng)寬分別是:+rectangle.Height+,+rectangle.Width); rectangle.setHeight(10);rectangle.setWidth(20);System.out.prSystem.out.pr System.out.prln(長(zhǎng)寬分別是:+rectangle.Height+,+rectangle.Width);ln(周長(zhǎng)是:+rectangle.getPerimeter(); ln(面積是:+rectang

24、le.getArea();9書(shū) P110 1 ,2 3 題類(lèi)的定義和實(shí)例化問(wèn)題。public class StudentNum; String Name;Age; Score;String School;String S e;publicgetNum() return Num;public void setNum( Num = num;num) public String getName() return Name;public void setName(String name) Name = name;publicgetAge() return Age;public void setAge(

25、 Age = age;age) publicgetScore() return Score;public void setScore( Score = score;score) public String getSchool() return School;public void setSchool(String school) School = school;public String getS e() return S e;public void setS e(String s e) S e = s e;public Student(super(); Num = num;Name = na

26、me;num, String name) public class StudentNum; String Name;Age;Score; String School; String S e;publicgetNum() return Num;public void setNum(num) Num = num;public String getName() return Name;public void setName(String name) Name = name;publicgetAge() return Age;public void setAge(age) Age = age;publ

27、icgetScore() return Score;public void setScore(score) Score = score;public String getSchool() return School;public void setSchool(String school) School = school;public String getS e() return S e;public void setSS e = spublic Student(e(String s e) e;num, String name) super();Num = num; Name = name;public s ic void main(String args) 9ZJKTZ YZJKTZ #TK 9ZJKTZ 9ZJKTZ YZJKTZ #TK 9ZJKTZ YZJKTZ YKZ9IUXK ! YZJKTZ YKZ9IUXK ! ! !9_YZKS U

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論