《Java面向?qū)ο缶幊獭肪毩?xí)題
《《Java面向?qū)ο缶幊獭肪毩?xí)題》由會(huì)員分享,可在線閱讀,更多相關(guān)《《Java面向?qū)ο缶幊獭肪毩?xí)題(19頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、專(zhuān)題1 初識(shí)Java 一、填空題 1.自從Sun推出Java以來(lái),按應(yīng)用范圍可分為三個(gè)版本,分別是()、()、( )。 2.環(huán)境變量的設(shè)置,若JDK安裝在“D:\JDK”,則應(yīng)設(shè)置Path為( )、classpath為( )。 3.Java源文件的擴(kuò)展名為( ),用Javac編譯Java源文件,得到的字節(jié)碼文件的擴(kuò)展名為( )。 4.如果Java源文件中有多個(gè)類(lèi),那么只能有一個(gè)類(lèi)是()類(lèi)。 二、選擇題 1.作為Java應(yīng)用程序入口的main方法,其聲明格式是() A.public static int main(String args[]) B.public s
2、tatic void main(String args[]) C.public void main(String args[]) D.public int main(String args[]) 2.下面命令正確的是() A.java AppFirst.java B.java AppFirst C.java appfirst.class D.javac AppFirst 3.設(shè)有一個(gè)Java小程序,源程序名為FirstApplet.java,其HTML文件為Fir
3、stApplet.html,則運(yùn)行該小程序的命令為() A.java FirstApplet B.javac FirstApplet.java C.a(chǎn)ppletviewer FirstApplet.java D.a(chǎn)ppletviewer FirstApplet.html 4.JDK安裝完成后,主要的命令如javac、java等,都存放在根目錄的()文件夾下。 A.bin B.jre C.include D.doc 5.Java語(yǔ)言是一種 __語(yǔ)言
4、。 A.機(jī)器 B.匯編 C.面向過(guò)程的 D.面向?qū)ο蟮? 6、Java程序的最基本組成單位是 __。 A.函數(shù) B.過(guò)程 C.變量 D.類(lèi) 三、簡(jiǎn)答題(十分重要) 1.Java語(yǔ)言有哪些特點(diǎn)? 2.JDK安裝完成后,如何設(shè)置環(huán)境變量? 4.簡(jiǎn)述Java應(yīng)用程序的開(kāi)發(fā)過(guò)程 專(zhuān)題2 標(biāo)識(shí)符、表達(dá)式、數(shù)據(jù)類(lèi)型 一、填空題 1.Java邏輯常量有兩個(gè):()和()。 2.寫(xiě)出下列表達(dá)式的運(yùn)算結(jié)果,設(shè)a=2,b=-4,c=true。 (1)-a%b++ ( ) (2)a>=1 && a <= 10 ? a : b
5、 ()
(3)c^(a>b) ()
(4)(-a)<
6、低排列的( )
A.|、&、! B.&、^、|| C.!、%、++ D.<、<<、++
3、下面哪個(gè)賦值語(yǔ)句不會(huì)產(chǎn)生編譯錯(cuò)誤( )
A.char a=’abc’; B.byte b=152; C.float c=2.0; D.double d=2.0;
4.下面哪個(gè)單詞是Java語(yǔ)言的關(guān)鍵字()
A.False B.FOR C.For D.for
5.執(zhí)行下面程序后,哪個(gè)結(jié)論是正確的( )
int a, b, c;
a=1; b=3; c=(a+b>3 7、? ++a : b++);
A.a(chǎn)的值為2,b的值為3,c的值為1 B.a(chǎn)的值為2,b的值為4,c的值為2
C.a(chǎn)的值為2,b的值為4,c的值為1 D.a(chǎn)的值為2,b的值為3,c的值為2
6.設(shè)各個(gè)變量的定義如下,哪些選項(xiàng)的值為true ( )
int a=3, b=3;
boolean flag=true;
A.++a = = b B.++a= = b++ C.(++a = = b) || flag D.(++a= =b) & flag
7.表達(dá)式(int)6.5/7.5*3的值的類(lèi)型為()?
A.short B.int 8、 C.double D.float
8.設(shè)a, b, x, y, z均為int型變量,并已賦值,下列表達(dá)式的結(jié)果屬于非邏輯值的是( )
A.x>y && bx-y C.y = = ++x D.y+x*x++
9.下面語(yǔ)句輸出的結(jié)果為( )
Syste.out.println(5^2);
A.6 B.7 C.10 D.25
10.對(duì)下面的語(yǔ)句執(zhí)行完后正確的說(shuō)法是:( )
int c=’c’/3;
System.out.println(c);
A.輸出結(jié) 9、果為21 B.輸出結(jié)果為22 C.輸出結(jié)果為32 D.輸出結(jié)果為33
11.以下選項(xiàng)中變量a已定義類(lèi)型,合法的賦值語(yǔ)句為( )
A.a(chǎn) = int(y); B.a(chǎn)= =1; C.a(chǎn) = a+1=3; D.++a;
12.執(zhí)行下列程序段后,ch,x,y的值正確的是:( )
int x=3, y=4;
boolean ch;
ch=x 10、Back B、$_Money C、$-money D、2-Forward
14.現(xiàn)有一個(gè)int類(lèi)型的整數(shù)和一個(gè)double類(lèi)型的浮點(diǎn)數(shù),當(dāng)它們之間做了加法運(yùn)算之后,得到的結(jié)果類(lèi)型應(yīng)該是 。
A、int類(lèi)型 B、double類(lèi)型 C、float類(lèi)型 D、long類(lèi)型
15、以下程序的運(yùn)行結(jié)果為 。
public class A {
public static void main(String a[]) {
int x = 2, y = 5;
String z = "5";
System 11、.out.println(x + y);
System.out.println(x + z + "x+z");
System.out.println("x+y=" + x + y);
System.out.println("x+z=" + (x + z));
}
}
A.7 B.7 C.25 D.7
25x+z 7x+z 25x+z 25x+z
x+y=25 x+y=25 x+y=7 12、 x+y=25
x+z=25 x+z=7 x+z=25 x+z=7
16、設(shè)有定義int a=12;則執(zhí)行a*=12;語(yǔ)句后,a的值為: 。
A.144 B.12 C.24 D.0
17、下列標(biāo)識(shí)符中,合法的一個(gè)是 。
A.$#@!$ B.$我們$ C.$22$ D.2$$2
18、執(zhí)行下列程序段后,b, x, y的值分別是 。
int x=6,y=8;
boolean b;
b=x>y&&++x==--y;
A.true , 6, 8 B.false 13、 , 6, 8 C.e, 7, 7 D.false, 7, 7
19、下列程序運(yùn)行的結(jié)果是 。
public class A {
public static void main(String args[]) {
int x = 7%3;
while(x){
x--;
}
System.out.println(x);
}
}
A.0 B.1 C.true D.編譯錯(cuò)誤
三、編程題
1.使用Math.pow()方法,求出2的32次方的值。
專(zhuān)題3 流程控制語(yǔ)句
一、填空題
1.在switch語(yǔ)句中 14、的表達(dá)式的類(lèi)型必須是( )或者( )。
2.break在循環(huán)語(yǔ)句中的作用是()。
3.分支語(yǔ)句包括()和()。
4.while循環(huán)語(yǔ)句的循環(huán)次數(shù)( ),do-while語(yǔ)句的循環(huán)次數(shù)( ),for語(yǔ)句的循環(huán)次數(shù)( )。
二、選擇題
1.下面程序片段輸出的是什么()
int a=3, b=1;
if(a=b) Syste.out.println(“a=”+a);
A.a(chǎn)=1 B.a(chǎn)=3 C.編譯錯(cuò)誤,沒(méi)有輸出 D.正常運(yùn)行,但沒(méi)有輸出
2.下面語(yǔ)句執(zhí)行后,x的值為( )
int a=4, b=5, x=3;
if(++a 15、==b) x=x*a;
A.3 B.12 C.15 D.20
3.請(qǐng)看下面的程序代碼:
if(x<0) {Syste.out.println(“first”);}
else if(x<20) {Syste.out.println(“second”);}
else {Syste.out.println(“third”);}
當(dāng)程序輸出“second”時(shí),x的范圍是( B)
A.x<=0 B.x<20 && x>=0 C.x>0 D.x>=20
4.請(qǐng)看下面的程序代碼:
switc 16、h(n){
case 0: Syste.out.println(“first”);
case 1:
case 2: Syste.out.println(“second”); break;
default: Syste.out.println(“end”);
}
當(dāng)n為何值時(shí),程序段將輸出字符串”second”( )
A. 0 B.1 C.2 D.以上都可以
5.下列語(yǔ)句執(zhí)行后,j的值是()
int j=3, i=3;
while(--i!=i/j) j=j+2;
A. 17、4 B.5 C.6 D.7
6.下列語(yǔ)句執(zhí)行后,x的值是()
int x=2 ;
do{x+=x ; }while(x<17);
A. 4 B.16 C.32 D.256
7.執(zhí)行下列語(yǔ)句后,i、j的值是( )
int i=1, j=8;
do{
if(i++>--j)
continue;
}while(i<4);
A. i=4, j=5 B.i=5,j=4 C.i=5,j=5 D.i= 18、5,j=6
8.下列語(yǔ)句執(zhí)行后,k的值是( )
int j=4, i, k=10;
for(i=2; i!=j; i++) k=k-i;
A. 4 B.5 C.6 D.7
9.下列語(yǔ)句執(zhí)行后,c的值是()
char c=’\0’;
for(c=’a’; c<’z’; c+=3){
if(c>=’e’) break;
}
A. ‘e’ B.’f’ C.’g’ D.’h’
10.若變量都已經(jīng)正確說(shuō)明,則以下程序段輸出為( )
a=10; b 19、=50; c=30;
if(a>b) a=b;b=c;
c=a;
System.out.println(“a=”+a+” b=”+b+” c=”+c);
A.a(chǎn)=10 b=50 c=10 B.a(chǎn)=10 b=30 c=10
C.a(chǎn)=50 b=30 c=10 D.a(chǎn)=50 b=30 c=30
11.以下程序段輸出是(D )
int x=1,y=0,a=0,b=0;
i=(--a==b++)? - -a : ++b;
j=a++; k=b;
System.out.printl 20、n(“i=”+i+” ,j=”+j+” ,k=”+k); 2 -1 2
A.i=2,j=1,k=3 B.i=1,j=1,k=2 C.i=4,j=2,k=4 D.i=2,j=-1,k=2
12.以下程序的輸出是( B )
int x=1,y=0,a=0,b=0;
switch(x){
case 1:
switch(y){
case 0: a++;break;
case 1: b++;break;
}
case 2 21、:
a++;break;
case 3:
a++;b++;
}
System.out.println(“a=”+a+”,b=”+b); 2 0
A.a(chǎn)=1, b=0 B.a(chǎn)=2,b=0 C.a(chǎn)=1, b=1 D.a(chǎn)=2, b=2
13.以下程序段輸出是( )
int i=0,j=0,a=6;
if ((++i>0) || (++j>0 )) a++ :
System.out.println(“i=”+i+” ,j=”+j+” , 22、a=”+a);
A.i=0,j=0,a=6 B.i=1,j=1,a=7 C.i=1,j=0,a=7 D.i=0,j=1,a=7
14、下列程序運(yùn)行的結(jié)果是 。
public class A{
public static void main(String args[]){
char c = d;
for (int i = 1; i <= 4; i++) {
switch (i){
case 1:
c = a;
System.out.print(c);
break;
case 2:
23、 c = b;
System.out.print(c);
break;
case 3:
c = c;
System.out.print(c);
default:
System.out.print("!");
}
}
}
}
A.! B.dbc! C.a(chǎn)bc! D.a(chǎn)bc!!
三、編程題
1.輸入一個(gè)年份值,判斷是否是閏年,輸出相應(yīng)的信息。
2.編寫(xiě)程序,計(jì)算郵局匯款的匯費(fèi):如果匯款金額小于100元,匯費(fèi)為1元,如果金額在100元與500元之間,按1%收取匯費(fèi),如果金額大于5 24、00元,匯費(fèi)為50元。
3.求某年某月的天數(shù).
4.求從1到100之間所有奇數(shù)的平方和(用for、while和do……while編寫(xiě)程序)。
5.求S=1+2+3+…+n之和,S<1000的最大n的值。
專(zhuān)題4 數(shù)組
一、填空題
1.定義一個(gè)整型數(shù)組y,它有5個(gè)元素分別是1,2,3,4,5.用一個(gè)語(yǔ)句實(shí)現(xiàn)對(duì)數(shù)組y的聲明、創(chuàng)建和賦值:()。
2.設(shè)有整型數(shù)組的定義:“int x[][]={{12,34},{-5},{3,2,6}};”則x.length的值為( )
3.求取二維數(shù)組a[][]的第i行元素個(gè)數(shù)的表達(dá)式是( )。
4、一個(gè)一維數(shù)組有10個(gè)元素,則該數(shù)組可用的下標(biāo)范圍 25、是 。
5、String S[]={“安徽”, “江蘇”, “山東”};則S[1]的值是: 。
6、當(dāng)聲明一個(gè)數(shù)據(jù)組int arr[]=new int[5];時(shí),這代表這個(gè)數(shù)組所保存的變量類(lèi)型是 ,數(shù)組元素下標(biāo)的使用范圍是 。
二.選擇題
1.設(shè)有定義語(yǔ)句“int a[]={66,88,99};”,則以下對(duì)此語(yǔ)句的敘述錯(cuò)誤的是( )
A.定義了一個(gè)名為a的一維數(shù)組 B.a(chǎn)數(shù)組有3個(gè)元素
C.a(chǎn)數(shù)組的元素的下標(biāo)為1~3 D.?dāng)?shù)組中的每個(gè)元素是整數(shù)
2.設(shè)有定義“int[] a=new int[4];”則數(shù)組a的所 26、有元素是()
A.a(chǎn)0、a1、a2、a3 B.a(chǎn)[0]、a[1]、a[2]、a[3]
C.a(chǎn)[1]、a[2]、a[3]、a[4] D.a(chǎn)[0]、a[1]、a[2]、a[3]、a[4]
3.下面哪個(gè)選項(xiàng)正確地聲明了一個(gè)字符串?dāng)?shù)組 ( )
A.char[] str B.char[][] str C.String[] str D.String[10] str
4、假設(shè)有這樣的數(shù)組創(chuàng)建:int a[]={1,2,3,4,5,6,7};則該數(shù)組長(zhǎng)度為_(kāi)_ 。
A.4 B.5 C.6 27、 D.7
5、下列二維數(shù)組的創(chuàng)建中錯(cuò)誤的是 __。
A.int a[][]=new int[3][] ;
B.int[][] a=new int[3][4] ;
C.int a[][]={{1,2},{3,4}} ;
D.int [][] a=new int[][];
三、編程題
1.將一個(gè)數(shù)組中的數(shù)逆序重新存放。
2.已知數(shù)組(12,23,26,45,58,60)是有序的,輸入一個(gè)數(shù)x,將它插入到數(shù)組中,保證數(shù)組仍然是有序的。
3.求一個(gè)二維數(shù)組的每行最大數(shù)。
**專(zhuān)題5 面向?qū)ο?
一、填空題
1. 如果一個(gè)方法不返回任何值,則該方法的返回值類(lèi)型為 28、。
2. 如果子類(lèi)中的某個(gè)方法名、返回值類(lèi)型和_______與父類(lèi)中的某個(gè)方法完全一致,則稱子類(lèi)中的這個(gè)方法覆蓋了父類(lèi)的同名方法。
3. 接口中所有的屬性均為_(kāi)__、_______和______的
4. 方法是一種僅有方法聲明,沒(méi)有具體方法體和操作實(shí)現(xiàn)的方法,該方法必須在 類(lèi)之中定義。
5. 一般Java程序的類(lèi)主體由兩部分組成:一部分是 ,另一部分是 。
6. 分別用 關(guān)鍵字來(lái)定義類(lèi),用 關(guān)鍵字來(lái)分配實(shí)例存儲(chǔ)空間。
7. 當(dāng)一個(gè)類(lèi)的修飾符為 時(shí),說(shuō)明該類(lèi)不能被繼承,即不能有子類(lèi)。
8. 在Java中,能實(shí)現(xiàn)多重繼承效 29、果的方式是 。
二、選擇題
1. 方法內(nèi)定義的變量( )。
A.一定在方法內(nèi)所有位置可見(jiàn) B.可能在方法的局部位置可見(jiàn)
C.在方法外可以使用 D.在方法外可見(jiàn)
2. 方法的形參( )。
A.可以沒(méi)有 B.至少有一個(gè)
C.必須定義多個(gè)形參 D.只能是簡(jiǎn)單變量
3. return語(yǔ)句()。
A.不能用來(lái)返回對(duì)象 B.只可以返回?cái)?shù)值
C.方法都必須含有 D.一個(gè)方法中可以有多個(gè)
4. main()方法的返回值類(lèi)型是()。
A.boolean B.int
C.void D.static
5. 編譯并 30、運(yùn)行下面的程序,運(yùn)行結(jié)果是( )。
public class A{
public static void main(String args[]){
A a=new A();
a.method(8);
}
void method(int i){
System.out.println(“int: ”+i);
}
void method(long i){
System.out.println(“l(fā)ong: ”+i);
}
A.程序可以編譯運(yùn)行,輸出結(jié)果為:“int: 8”
B 31、.程序可以編譯運(yùn)行,輸出結(jié)果為:“l(fā)ong: 8”
C.程序有編譯錯(cuò)誤,因?yàn)閮蓚€(gè)method()方法必須定義為靜態(tài)(static)的
D.程序可以編譯運(yùn)行,但是沒(méi)有輸出
6. 能作為類(lèi)及其成員的修飾符是( )。
A.interface B.class
C.protected D.public
7. 下列方法定義中,方法頭不正確的是( )。
A.public static x(double a){…} B.public static int x(double y){…}
C.void x(double d){…} D.public int x 32、(){…}
8. 構(gòu)造方法在( )時(shí)被調(diào)用。
A.類(lèi)定義時(shí) B.使用對(duì)象的變量時(shí)
C.調(diào)用對(duì)象方法時(shí) D.創(chuàng)建對(duì)象時(shí)
9. 下列哪個(gè)類(lèi)聲明是正確的( )。
A.public abstract class Car{…} B.a(chǎn)bstract private move(){…}
C.protected private number; D.a(chǎn)bstract final class H1{…}
10. 下列不屬于面向?qū)ο蟪绦蛟O(shè)計(jì)的基本特征的是( )。
A.抽象 B.封裝
C.繼承 D.靜態(tài)
11. 請(qǐng)看下面的程序段
class Person{ 33、
String name,department;
int age;
public Person(String n){name=n;}
public Person(String n,int a){name=n; age=a;}
public Person(String n, String d, int a ){
//doing the same as two arguments version if constructer
}
下面那個(gè)選項(xiàng)可以添加到// doing the same……處( )
A.Person(n,a) B.this(Person(n,a))
34、C.this(n,a) D.this(name.age)
12. 請(qǐng)看下面的程序段
class Test{
private int m;
public static void fun(){
//some code
}
}
方法fun()如何來(lái)訪問(wèn)變量m( )
A.將private int m 改成protected int m B.將private int m 改成public int m
C.將private int m 改成static int m D.將private int m 改成int m
13. 有一個(gè)類(lèi)A,對(duì)于 35、其構(gòu)造函數(shù)的聲明正確的是( )。
A.void A(int x){…} B.public A(int x){…}
C.A A(int x){…} D.int A(int x){…}
14. 請(qǐng)看下面的程序段
public class Test{
long a[]=new long[10];
pubic static void main(String args[]){
System.out.println(a[6]);
}
}
哪一個(gè)選項(xiàng)是正確的( )。
A.不輸出任何內(nèi)容 B.輸出0
C.當(dāng)編譯時(shí)有錯(cuò)誤出現(xiàn) D.當(dāng)運(yùn)行時(shí)有錯(cuò)誤出現(xiàn)
15. 關(guān)鍵 36、字( )表明一個(gè)對(duì)象或變量在初始化后不能修改。
A.extends B.final
C.this D.finalize
16. 聲明為static的方法不能訪問(wèn)( )類(lèi)成員。
A.超類(lèi) B.子類(lèi)
C.非static D.用戶自定義類(lèi)
17. 定義類(lèi)A如下:(重要)
class A{
int a,b,c;
public void B(int x,int y, int z){ a=x;b=y;c=z;}
}
下面對(duì)方法B的重載哪些是正確的( )。
A.public void A(int x1,int y1, int z1){ a=x 37、1;b=y1;c=z1;}
B.public void B(int x1,int y1, int z1){ a=x1;b=y1;c=z1;}
C.public void B(int x,int y){ a=x;b=y;c=0;}
D.public B(int x,int y, int z){ a=x;b=y;c=z;}
18. 編譯運(yùn)行下面的程序,結(jié)果是( )。(重要)
public class A{
public static void main(String args[]){
B b=new B();
b.test();
}
void test( 38、){
System.out.print(“A”);
}
}
class B extends A{
void test(){
super.test();
System.out.print(“B”);
}
}
A.產(chǎn)生編譯錯(cuò)誤 B.代碼可以編譯運(yùn)行,并輸出結(jié)果:AB
C.代碼可以編譯運(yùn)行,但沒(méi)有輸出 D.編譯沒(méi)有錯(cuò)誤,但會(huì)產(chǎn)生運(yùn)行時(shí)異常
19. 已知類(lèi)關(guān)系如下:
Class Employee{}
Class Manager extends Employee{}
Class Director extends Employee{}
則下列語(yǔ) 39、句正確的是:( )。
A.Employee e=new Manager(); B.Director d=new Manager();
C.Director d =new Employee (); D.Manager m=new Director ();
20. 接口是Java面向?qū)ο蟮膶?shí)現(xiàn)機(jī)制之一,以下說(shuō)法正確的是( )。
A.Java支持多重繼承,一個(gè)類(lèi)可以實(shí)現(xiàn)多個(gè)接口
B.Java只支持單重繼承,一個(gè)類(lèi)可以實(shí)現(xiàn)多個(gè)接口
C.Java只支持單重繼承,一個(gè)類(lèi)可以實(shí)現(xiàn)一個(gè)接口
D.Java支持多重繼承,但一個(gè)類(lèi)只可以實(shí)現(xiàn)一個(gè)接口
21.下列方法的聲明中 40、不合法的是 。
A.float area( ){…} B.void area( ){…}
C.a(chǎn)rea{…} D.int area(int r){…}
22、下面哪個(gè)包是編程時(shí)不需要導(dǎo)入就可以直接使用的 。
A. B.java.lang C.java.sql D.java.util
23、調(diào)用構(gòu)造方法是在 。
A.類(lèi)定義時(shí) B.創(chuàng)建對(duì)象時(shí)
C.調(diào)用對(duì)象的方法時(shí) D.使用對(duì)象的變量時(shí)
24、在子類(lèi)構(gòu)造方法的哪個(gè)地方可以調(diào)用其父類(lèi)的構(gòu)造方法 。
A.任何地方
B.構(gòu)造方法的第一條 41、語(yǔ)句
C.構(gòu)造方法的最后一條語(yǔ)句
D.無(wú)法在子類(lèi)構(gòu)造方法中調(diào)用父類(lèi)的構(gòu)造方法
25、關(guān)于Java中的繼承,下列說(shuō)法錯(cuò)誤的是 。
A.繼承是面向?qū)ο缶幊痰暮诵奶卣?,通過(guò)繼承可以更有效地組織程序結(jié)構(gòu)。
B.繼承使得程序員可以在原有類(lèi)的基礎(chǔ)上很快設(shè)計(jì)出一個(gè)功能更強(qiáng)的新類(lèi),而不必從頭開(kāi)始,避免了工作上的重復(fù)。
C.每一次繼承時(shí),子類(lèi)都會(huì)自動(dòng)擁有父類(lèi)的屬性和方法,同時(shí)也可以加入自己的一些特性,使得它更具體、功能更強(qiáng)大。
D.繼承一般有多重繼承和單一繼承兩種方式,在單一繼承中每一個(gè)類(lèi)最多只有一個(gè)父類(lèi),而多重繼承則可以有多個(gè)父類(lèi)。Java中的類(lèi)都采用多重繼承。
26、當(dāng)方法中的局部 42、變量與成員變量同名時(shí),必須使用下列哪一個(gè)關(guān)鍵字指出成員變量 。
A.static B.super C.this D.new
29、從下列程序中你發(fā)現(xiàn)了幾處錯(cuò)誤 。
abstract class A{
abstract void f(){};
public abstract void k();
}
class B extends A{
protected void f(){ }
void k(){
System.out.print("I am subclass");
}
public static void main(S 43、tring[] args) {
A a=new A();
a.f();
a.k();
}
}
A.1 B.2 C.3 D.4
30、下列程序運(yùn)行的結(jié)果是 。
interface InterfaceA{
String s="good ";
void f();
}
class ClassA implements InterfaceA{
public void f(){
System.out.print(s);
}
}
class ClassB{
void g(InterfaceA a){
a.f() 44、;
}
}
public class E {
public static void main(String[] args) {
ClassB b=new ClassB();
b.g(new ClassA());
}
}
A.good B.編譯正確,但無(wú)運(yùn)行結(jié)果
C.編譯錯(cuò)誤:b.g(new ClassA()) D.以上都不對(duì)
31、下列類(lèi)的聲明中不合法的是 。
A.class People(){…} B.class 植物{…}
C.class A{…} D.public class 共有類(lèi){…}
32、能作為類(lèi)的 45、修飾符, 也能作為類(lèi)成員的修飾符的是 。
A.public B.extends C.Float D.static
33、試完成下述程序片段 。
public class Point{
int x,y;
public Point(int x,int y){
( )=x;
( )=y;
}
......
}
A.Point.x Point.y B.this.x this.y
C.super.x super.y D.無(wú)解
34、Father和Son是兩個(gè)java類(lèi),下列 46、哪一選項(xiàng)正確的標(biāo)識(shí)出Father是Son的父類(lèi)?
A.class Son implements Father B.class Father implements Son
C.class Father extends Son D.class Son extends Father
35、重載指的是方法具有相同的名字,但這些方法的參數(shù)必須不同。下列哪種說(shuō)法不屬于方法參數(shù)的不同 。
A.形式參數(shù)的個(gè)數(shù)不同。 B.形式參數(shù)的類(lèi)型不同。
C.形式參數(shù)的名字不同。 D.形式參數(shù)類(lèi)型的排列順序不同。
36、關(guān)于接口的定義和實(shí)現(xiàn),以下描述正確的是 。
A 47、.接口定義的方法只有定義沒(méi)有實(shí)現(xiàn)
B.接口定義中的變量都必須寫(xiě)明final和static
C.如果一個(gè)接口由多個(gè)類(lèi)來(lái)實(shí)現(xiàn),則這些類(lèi)在實(shí)現(xiàn)該接口中的方法時(shí)采用統(tǒng)一的代碼
D.如果一個(gè)類(lèi)實(shí)現(xiàn)接口,則必須實(shí)現(xiàn)該接口中的所有方法,但方法未必申明為public
三、閱讀程序題
1、寫(xiě)出運(yùn)行結(jié)果: 。
public class Computer{
String mainbord,cpu;
public Computer(String s1,String s2){
mainbord=s1;
cpu=s2;
}
public 48、static void main(String[]args){
Computer c=new Computer("華碩","Intel");
System.out.println("mainbord:"+c.mainbord+",cpu:"+c.cpu);
}
}
2、寫(xiě)出運(yùn)行結(jié)果: 。
public class ExamA {
private static int arr[] = new int[5];
public static void main(String args[]) {
for(i 49、nt i=arr.length-1;i>=0;i--)
arr[i] = 2*i+1;
String output = "0";
int sum = 0;
for(int i=0;i 50、 System.exit(0);
}
}
3、寫(xiě)出運(yùn)行結(jié)果: 。
public class Person{
String name;
int age;
public Person(String name,int age){
this.name=name;
this.age=age;
}
public static void main(String[]args){
Person c=new Person("Peter",17);
System.out.println(c.name+" is "+c.age+" ye 51、ars old!");
}
}
4、寫(xiě)出運(yùn)行結(jié)果: 。
public class abc{
public static void main(String args[ ]) {
SubSubClass x = new SubSubClass(10 , 20 , 30);
x.show();
}
}
class SuperClass{
int a,b;
SuperClass(int aa , int bb){
a=aa; b=bb;
}
void show( ){
System.out.println("a="+a+" b="+ 52、b);
}
}
class SubClass extends SuperClass{
int c;
SubClass(int aa,int bb,int cc){
super(aa,bb);
c=cc;
}
}
class SubSubClass extends SubClass{
int a;
SubSubClass(int aa,int bb,int cc){
super(aa,bb,cc);
a=aa+bb+cc;
}
void show(){
System.out.println("a="+a+" b="+b+" c="+c);
} 53、
}
5.下面是一個(gè)類(lèi)的定義,請(qǐng)將其補(bǔ)充完整
class ______{
String name;
int age;
Student(______ name, int a){
_____.name=name;
age=a;
}
}
6.下面是一個(gè)類(lèi)的定義,請(qǐng)將其補(bǔ)充完整
class ______{
String s;
______ int a=3;
A(String s){
this.s=s;
}
54、static int getA(){
return a;
}
}
四、編程題
1、編寫(xiě)一個(gè)Java程序,并滿足如下要求:
1)編寫(xiě)一個(gè)Car類(lèi),具有:
屬性:品牌(mark)——String類(lèi)型
功能:駕駛(void drive( ))
2)定義Car類(lèi)的子類(lèi)SubCar,具有:
屬性:價(jià)格(price)、速度(speed)——int型
功能:變速(void speedChange(int newSpeed)),把新速度賦給speed
3)定義主類(lèi)E,在其main方法中創(chuàng)建SubCar類(lèi)的兩個(gè)對(duì)象:aodi和benchi的對(duì)象 55、并測(cè)試其對(duì)象的特性。
4)輸出效果如下:
2.某公司正進(jìn)行招聘工作,被招聘人員需要填寫(xiě)個(gè)人信息,編寫(xiě)“個(gè)人簡(jiǎn)歷”的封裝類(lèi)。包括如下屬性和對(duì)屬性進(jìn)行操作的方法。
String xm;// 姓名
String xb;// 性別
int nl;// 年齡
String jtzz;// 家庭住址
String xl;// 學(xué)歷
3.編寫(xiě)程序,提供實(shí)現(xiàn)各種數(shù)學(xué)計(jì)算的方法。包括如下幾項(xiàng)。
(1)兩個(gè)數(shù)的加、減、乘、除。
(2)求某數(shù)的相反數(shù)、倒數(shù)、絕對(duì)值。
(3)取兩數(shù)中較大的和較小的。
(4)對(duì)浮點(diǎn)數(shù)(double型)的計(jì)算功能。如:給定浮點(diǎn)數(shù)d,取大于或等于d的最小整數(shù),取小于或等于d的最大整數(shù),計(jì)算最接近d的整數(shù)值,計(jì)算d的平方根、自然對(duì)數(shù)log(d)等。
(5)計(jì)算以double型數(shù)a為底數(shù),b為指數(shù)的冪。
4(選做).定義一個(gè)人類(lèi),包括屬性:姓名、性別、年齡、國(guó)籍;包括方法:吃飯、睡覺(jué),工作。
(1)根據(jù)人類(lèi),派生一個(gè)學(xué)生類(lèi),增加屬性:學(xué)校、學(xué)號(hào);重寫(xiě)工作方法(學(xué)生的工作是學(xué)習(xí))。
(2)根據(jù)人類(lèi),派生一個(gè)工人類(lèi),增加屬性:?jiǎn)挝?、工齡;重寫(xiě)工作方法(工人的工作是……自己想吧)。
(3)根據(jù)學(xué)生類(lèi),派生一個(gè)學(xué)生干部類(lèi),增加屬性:職務(wù);增加方法:開(kāi)會(huì)。
(4)編寫(xiě)主函數(shù)分別對(duì)上述3類(lèi)具體人物進(jìn)行測(cè)試。
- 溫馨提示:
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. 裝配圖網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 人教版必修五《林教頭風(fēng)雪山神廟》ppt課件
- 人教版《分?jǐn)?shù)的意義和性質(zhì)》(完美版)課件
- 正比例函數(shù)及性質(zhì)
- 企業(yè)戰(zhàn)略環(huán)境分析
- 前列腺增生3課件
- 煉鐵基礎(chǔ)非高爐煉鐵課件
- 小兒腹瀉小講課分析課件
- 職業(yè)經(jīng)理人的壓力管理課件
- 街道改造PPT方案展示-項(xiàng)目概況案例分析現(xiàn)存建筑質(zhì)量設(shè)計(jì)理念課件
- 2022年北師大版小學(xué)數(shù)學(xué)《小數(shù)目物品平均分》課件
- 作文指導(dǎo)--場(chǎng)面描寫(xiě)-PPT
- 肺癌診斷和治療的幾個(gè)問(wèn)題
- 一下《王二小》
- 第八章專(zhuān)題八(教育精品)
- 六年級(jí)數(shù)學(xué)下冊(cè) 正負(fù)數(shù) 2課件 人教新課標(biāo)