一、選擇題(每題5分,共20分)
1、訪(fǎng)問(wèn)修飾符作用范圍由大到小是(D)
A、 private-default-protected-public
B、 public -default-protected- private
C、 private- protected-default- public
D、public - protected- default-private
2、以下(D)不是Object類(lèi)的方法?
A、clone()
B、finalsize()
C、toString()
D、hasNext()
3.Java中,以下(B)接口以鍵——值對(duì)的方式存儲(chǔ)對(duì)象?
A、java.util.Collection
B、java.util.Map
C、java.util.List
D、java.util.Set
4、指出下列程序運(yùn)行的結(jié)果()
Public class Example{
String str=new String(“good”);
char[] ch={‘a’,’b’,’c’ };
public static void main(String args[]){
Exampleex=new Example();
Ex.change(ex.str,ex.ch);
System.out.print(ex.str+”and ”);
System.out.print(ex.ch);
}
public void change(String str,char ch[]){
str=”test ok”;
ch[0]=’g’;
}
A、good and abc
B、good and gbc
C、test ok and abc
D、test ok and gbc
二、填空題(每題5分,共20分)
5、JAVA基本數(shù)據(jù)類(lèi)型包括__字符類(lèi)型char,布爾類(lèi)型boolean,數(shù)值類(lèi)型____.
6、Math.round(11.5)等于多少?12,Math.round(-11.5)等于多少?-11
7、程序String str1="hello";String str2="he"+newString("llo");
System.out.println(str1==str2);的運(yùn)行結(jié)果是:false
8、字符串分為兩大類(lèi),一類(lèi)是字符串常量,使用String類(lèi)的對(duì)象表示;另一類(lèi)是字符串變量,使用StringBuffer類(lèi)的對(duì)象表示。
三 簡(jiǎn)答
9. 接口和抽象類(lèi)的區(qū)別是什么?(10分)
答案:接口是公開(kāi)的,里面不能有私有的方法或變量,是用于讓別人使用的,而抽象類(lèi)是可以有私有方法或私有變量的,
另外,實(shí)現(xiàn)接口的一定要實(shí)現(xiàn)接口里定義的所有方法,而實(shí)現(xiàn)抽象類(lèi)可以有選擇地重寫(xiě)需要用到的方法,一般的應(yīng)用里,最頂級(jí)的是接口,然后是抽象類(lèi)實(shí)現(xiàn)接口,最后才到具體類(lèi)實(shí)現(xiàn)。
還有,接口可以實(shí)現(xiàn)多重繼承,而一個(gè)類(lèi)只能繼承一個(gè)超類(lèi),但可以通過(guò)繼承多個(gè)接口實(shí)現(xiàn)多重繼承,接口還有標(biāo)識(shí)(里面沒(méi)有任何方法,如Remote接口)和數(shù)據(jù)共享(里面的變量全是常量)的作用.
10. 利用遞歸方法求5!
答案:
public class Test {
public static void main(String args[]) {
int x = 5;
int rs = Fac(x);
System.out.println("" + x + "! = " + rs);
}
public static long Fac(int x) {
if(x > 1)
return (x * Fac(x - 1));
else
return 1;
}
}
11. 編寫(xiě)多線(xiàn)程代碼有幾種實(shí)現(xiàn)方法?請(qǐng)用一段代碼分別舉例實(shí)現(xiàn)。
答案:
三種:
(1)繼承Thread類(lèi),重寫(xiě)run函數(shù)