- java考試習(xí)題及答案 推薦度:
- 相關(guān)推薦
java習(xí)題及答案
一、單選擇題(每小題2分,共10分)
1、編譯Java Application 源程序文件將產(chǎn)生相應(yīng)的字節(jié)碼文件,這些字節(jié)碼文件的擴(kuò)展名為( B )。
A. .java B. .class
C. .html D. .exe
2、設(shè) x = 1 , y = 2 , z = 3,則表達(dá)式 y+=z--/++x 的值是( A )。
A. 3 B. 3. 5
C. 4 D. 5
3、在Java Applet程序用戶自定義的Applet子類中,一般需要重載父類的( D )方法來完成一些畫圖操作。
A. start( ) B. stop( )
C. init( ) D. paint( )
4、不允許作為類及類成員的訪問控制符的是( C )。
A. public B. private
C. static D. protected
5、為AB類的一個(gè)無形式參數(shù)無返回值的方法method書寫方法頭,使得使用類名AB作為前綴就可以調(diào)用它,該方法頭的形式為( A )。
A. static void method( ) B. public void method( )
C. final void method( ) D. abstract void method( )
二、填空題(每空格1分,共20分)
1、開發(fā)與運(yùn)行Java程序需要經(jīng)過的三個(gè)主要步驟為 編輯源程序、編譯生成字節(jié)碼 和 解釋運(yùn)行字節(jié)碼 。
2、如果一個(gè)Java Applet源程序文件只定義有一個(gè)類,該類的類名為MyApplet,則類MyApplet必須是 Applet 類的子類并且存儲(chǔ)該源程序文件的文件名為 MyApplet 。
3、如果一個(gè)Java Applet程序文件中定義有3個(gè)類,則使用Sun公司的JDK編譯器 javac.exe 編譯該源程序文件將產(chǎn)生 3 個(gè)文件名與類名相同而擴(kuò)展名為 . class 的字節(jié)碼文件。
4、在Java的基本數(shù)據(jù)類型中,char型采用Unicode編碼方案,每個(gè)Unicode碼占用 2 字節(jié)內(nèi)存空間,這樣,無論是中文字符還是英文字符,都是占用 2 字節(jié)內(nèi)存空間。
5、設(shè) x = 2 ,則表達(dá)式 ( x + + )/3 的值是 1 。
6、若x = 5,y = 10,則x < y和x >= y的邏輯值分別為 true 和 false 。
7、 抽象(abstract)方法 方法是一種僅有方法頭,沒有具體方法體和操作實(shí)現(xiàn)的方法,該方法必須在抽象類之中定義。 最終(final)方法 方法是不能被當(dāng)前類的子類重新定義的方法。
8、創(chuàng)建一個(gè)名為 MyPackage 的包的語句是 package MyPackag ,該語句應(yīng)該放在程序的位置為: 應(yīng)該在程序第一句 。
9、設(shè)有數(shù)組定義:int MyIntArray[ ] = { 10 , 20 , 30 , 40 , 50 , 60 , 70}; 則執(zhí)行以下幾個(gè)語句后的輸出結(jié)果是 120 。
int s = 0 ;
for ( int i = 0 ; i < MyIntArray.length ; i + + )
if ( i % 2 = = 1 )
s += MyIntArray[i] ;
System.out.println( s );
10、在Java程序中,通過類的定義只能實(shí)現(xiàn) 單 重繼承,但通過接口的定義可以實(shí)現(xiàn) 多 重繼承關(guān)系。
三、寫出下列程序完成的功能。(每小題5分,共20分)
1、public class Sum
{ public static void main( String args[ ])
{ double sum = 0.0 ;
for ( int i = 1 ; i <= 100 ; i + + )
sum += 1.0/(double) i ;
System.out.println( "sum="+sum );
}
} 答:計(jì)算 1/1+1/2+1/3+...+1/100 的值
2、 import java.io.* ;
public class Reverse
{ public static void main(String args[ ])
{ int i , n =10 ;
int a[ ] = new int[10];
for ( i = 0 ; i < n ; i ++ )
try {
BufferedReader br = new BufferedReader(
new InputStreamReader(System.in));
a[i] = Integer.parseInt(br.readLine( )); // 輸入一個(gè)整數(shù)
} catch ( IOException e ) { } ;
for ( i = n-1 ; i >= 0 ; i ―― )
System.out.print(a[i]+" ");
System.out.println( );
}
} 答:從標(biāo)準(zhǔn)輸入(鍵盤)讀入10個(gè)整數(shù)存入整型數(shù)組a中,然后逆序輸出這10個(gè)整數(shù)
3、 import java.awt.*;
public class abc
{ public static void main(String args[])
{ new FrameOut(); }
}
class FrameOut extends Frame // Frame為系統(tǒng)定
{ Button btn; // 義的窗框類
FrameOut( )
{ super("按鈕");
btn = new Button("按下我");
setLayout(new FlowLayout( ));
add(btn);
setSize(300,200);
show( );
}
}答:創(chuàng)建一個(gè)標(biāo)題為"按鈕"的窗框,窗框中顯示有"按下我"字樣的按鈕。
4、import java.io.*;
public class abc
{ public static void main(String args[])
{ SubClass sb = new SubClass( );
System.out.println(sb.max( ));
}
}
class SuperClass
{ int a = 10 , b = 20 ; }
class SubClass extends SuperClass
{ int max( ) { return ((a>b)?a:b); } }答:求兩個(gè)數(shù)的最大值。
四、寫出下面程序的運(yùn)行結(jié)果(每小題10分,共30分)
1、 import java.io.*;
public class abc
{ public static void main(String args[ ])
{ AB s = new AB("Hello!","I love JAVA.");
System.out.println(s.toString( ));
}
}
class AB {
String s1;
String s2;
AB( String str1 , String str2 )
{ s1 = str1; s2 = str2; }
public String toString( )
{ return s1+s2;}
}答:1、Hello! I love JAVA.
2、 import java.io.* ;
public class abc
{
public static void main(String args[ ])
{ int i , s = 0 ;
int a[ ] = { 10 , 20 , 30 , 40 , 50 , 60 , 70 , 80 , 90 };
for ( i = 0 ; i < a.length ; i ++ )
if ( a[i]%3 = = 0 ) s += a[i] ;
System.out.println("s="+s);
}
}答:s = 180
3、import java.io.* ;
public class abc
{
public static void main(String args[ ])
)
{ System.out.println("a="+a+"\nb="+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+"\nb="+b+"\nc="+c); }
}答:a=60 b=20 c=30
五、使用Java語言編寫程序。(每小題10分,共20分)
1、編寫一個(gè)字符界面的Java Application 程序,接受用戶輸入的10個(gè)整數(shù),并輸出這10個(gè)整數(shù)的最大值和最小值。
答:import java.io.* ;
public class abc
{
public static void main(String args[ ])
{ int i , n = 10 , max = 0 , min = 0 , temp = 0;
try {
BufferedReader br = new BufferedReader(
new InputStreamReader(System.in));
max = min = Integer.parseInt(br.readLine( ));
} catch ( IOException e ) { } ;
for ( i = 2 ; i <= n ; i ++ ) {
try {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
temp = Integer.parseInt(br.readLine( ));
if (temp > max ) max=temp;
if (temp < min) min=temp;
} catch ( IOException e ) { } ;
}
System.out.println("max="+max+"\nmin="+min);
}
}
2、編寫一個(gè)完整的Java Applet 程序使用復(fù)數(shù)類Complex驗(yàn)證兩個(gè)復(fù)數(shù) 1+2i 和3+4i 相加產(chǎn)生一個(gè)新的復(fù)數(shù) 4+6i 。
復(fù)數(shù)類Complex必須滿足如下要求:
(1) 復(fù)數(shù)類Complex 的屬性有:
RealPart : int型,代表復(fù)數(shù)的實(shí)數(shù)部分
ImaginPart : int型,代表復(fù)數(shù)的虛數(shù)部分
(2) 復(fù)數(shù)類Complex 的方法有:
Complex( ) : 構(gòu)造函數(shù),將復(fù)數(shù)的實(shí)部和虛部都置0
Complex( int r , int i ) : 構(gòu)造函數(shù),形參 r 為實(shí)部的初值,i為虛部的初值。
Complex complexAdd(Complex a) : 將當(dāng)前復(fù)數(shù)對(duì)象與形參復(fù)數(shù)對(duì)象相加,所得的結(jié)果仍是一個(gè)復(fù)數(shù)值,返回給此方法的調(diào)用者。
String ToString( ) : 把當(dāng)前復(fù)數(shù)對(duì)象的實(shí)部、虛部組合成 a+bi 的字符串形式,其中a 和 b分別為實(shí)部和虛部的數(shù)據(jù)。
答:import java.applet.* ;
import java.awt.* ;
public class abc extends Applet
{
Complex a,b,c ;
public void init( )
{
a = new Complex(1,2);
b = new Complex(3,4);
c = new Complex();
}
public void paint(Graphics g)
{
c=a.complexAdd(b);
g.drawString("第一個(gè)復(fù)數(shù):"+a.toString(),10,50);
g.drawString("第二個(gè)復(fù)數(shù):"+b.toString(),10,70);
g.drawString("兩復(fù)數(shù)之和:"+c.toString(),10,90);
}
}
class Complex
{
int RealPart ; // 復(fù)數(shù)的實(shí)部
int ImaginPart ; // 復(fù)數(shù)的虛部
Complex() { RealPart = 0 ; ImaginPart = 0 ; }
Complex(int r , int i)
{ RealPart = r ; ImaginPart = i ; }
Complex complexAdd(Complex a)
{
Complex temp = new Complex( ); // 臨時(shí)復(fù)數(shù)對(duì)象
temp.RealPart=RealPart+a.RealPart;
temp.ImaginPart=ImaginPart+a.ImaginPart;
return temp;
}
public String toString( )
{ return ( RealPart+" + "+ImaginPart+" i "); }
}
Java線程 程序題
class sum implements Runnable {
int sum = 0;
int i;
public void run () {
for(i=1;i<=100;i++) {
sum+=i;
}
System.out.println("從1加到100的結(jié)果為"+sum);
}
}
class sumpro {
public static void main(String args[]) {
sum sum1 = new sum();
Thread t=new Thread(sum1);
t.start();
}
}
異常
1.import java.io.*;
class A{
void m() throws RuntimeException{}
}
class B extends A{
void m() throws IOException{}
}
2.import java.io.*;
class A{
void m() throws RuntimeException{}
}
class B extends A{
void m() throws IOException{}
}
3.public class e8{
public static void main(String args[]){
e8 t=new e8();
t.first();
System.out.println(“Hi");
}
public void first(){second();}
public void second() throws Exception{
int x[]=new int[2];
x[3]=2;
}
}
4.public class e10{
public static void main(String args[]) throws Exception{
e10 t=new e10();
t.first();
System.out.println(“Hi");
}
public void first() throws Exception{second();}
public void second() throws Exception{
int x[]=new int[2];
x[3]=2;
}
}
5使用super調(diào)用父類方法
class Fish extends Animal{
public Fish(){super(0);}
public void eat(){
System.out.println("魚吃小魚蟲");
}
public void walk(){
super.walk();
System.out.println("魚沒有腿不會(huì)走路");
}
}
6.接口類的實(shí)現(xiàn)
class Cat extends Animal implements Pet{
String name;
public Cat(String n){
super(4);
name=n;
}
public Cat(){this("");}
public String getName(){return name;}
public void setName(String n){name=n;}
public void play(){
System.out.println("貓玩耍");
}
public void eat(){
System.out.println("貓吃貓糧");
}
}
【java習(xí)題及答案】相關(guān)文章:
java考試習(xí)題及答案03-26
Java考試格林練習(xí)題03-23
CAD習(xí)題及答案01-15
java考試試題及答案10-25
java基礎(chǔ)筆試題及答案03-03
java面試題2017及答案03-06
Java認(rèn)證考試真題及答案10-11
2016年Java筆試題及答案03-12
2017年Java筆試題及答案03-09