久久综合色一综合色88欧美|久久er热在这里只有精品66|国产福利一区二区不卡|日本精品动漫二区三区

    1. <address id="l3apk"><var id="l3apk"><source id="l3apk"></source></var></address>

      Java語言程序設(shè)計試題附參考答案

      時間:2017-04-24 09:08:51 java試題 我要投稿

      Java語言程序設(shè)計試題附參考答案

        Java語言程序設(shè)計詳細介紹了Java語言的基本概念和編程方法,同時深入介紹了Java的高級特性。以下是由陽光網(wǎng)小編整理關(guān)于Java語言程序設(shè)計試題的內(nèi)容,希望大家喜歡!

      Java語言程序設(shè)計試題附參考答案

        Java語言程序設(shè)計試題附參考答案

        一、單項選擇題(本大題共10小題,每小題1分,共10分) 在每小題列出的四個備選項中只有一個是符合題目要求

        的,請將其代碼填寫在題后的括號內(nèi)。錯選、多選或未選均無分。

        1. 如果發(fā)生多個線程形成一個等待環(huán),這樣,所有線程都陷入相互等待的狀態(tài)。這種循環(huán)等待現(xiàn)象稱為() (1分)

        A:互斥

        B:同步

        C:死鎖

        D:臨界

        2. 下面有關(guān)臨界段敘述錯誤的是() (1分)

        A:多線程互斥使用共享資源的程序段被稱為臨界段

        B:臨界段是一種加鎖機制,與多線程共享資源有關(guān)

        C:臨界段的作用是在任何時該一個共享資源只能供一個線程使用

        D:如果一個線程已進入某個共享資源的臨界段,且還沒有使用結(jié)束,其他進程可搶占這個共享的資源

        3. 以下程序代碼的輸出結(jié)果是()

        int x=100;

        System.out.println("5.5"+x%8); (1分)

        A:5.512

        B:5.512.5

        C:18

        D:5.54

        4. 在Java程序中有代碼如下:

        System.out.println(

        (new StringTokenizer("I am a student","a")).countTokens());

        則輸出結(jié)果為() (1分)

        A:I am a student

        B:2

        C:3

        D:4

        5. 為8位字節(jié)流數(shù)據(jù)提供讀操作支持的類是() (1分)

        A:FileInputStream

        B:FileOutputStrem

        C:FileReader

        D:FileWriter

        6. 下列有關(guān)抽象類及抽象方法的敘述錯誤的是() (1分)

        A:使用final修飾的類是抽象類

        B:使用abstract修飾的方法是抽象方法

        C:抽象類必須被繼承才能使用,抽象類不可能有實例

        D:抽象類可以沒有抽象方法,但有抽象方法的類一定是抽象類

        7. 在編寫Java程序訪問數(shù)據(jù)庫的過程中,用來處理驅(qū)動程序的加載和建立新數(shù)據(jù)庫連接的類是() (1分)

        A:DriverManager類

        B:Statement類

        C:Connection類

        D:ResultSet類

        8. 在Java語言中執(zhí)行如下語句后,i和j的值分別為()

        int i=10;int j=++i; (1分)

        A:11和11

        B:10和10

        C:10和11

        D:11和10

        9. 包含當事件發(fā)生時從源傳遞給監(jiān)視器的特定事件信息的對象是() (1分)

        A:事件對象

        B:源對象

        C:監(jiān)視器對象

        D:接口

        10. 在Java程序中有如下設(shè)置:setBackground(Color.blue);g.setXORMode(Color.red); g.setColor(Color.blue);g.drawLine(300,300,500,

        500);則線的顏色是() (1分)

        A:藍色

        B:紅色

        C:黃色

        D:綠色

        二、填空題(本大題共10小題,每小題2分,共20分)請在每小題的空格中填上正確答案。錯填、不填均無分。

        1. 為選擇框(JCheckBox)對象設(shè)定監(jiān)視器的方法是:。 (2分)

        2. 使用ResultSet對象的方法可將數(shù)據(jù)表游針移到插入位置,輸入數(shù)據(jù)后,用方法insertRow()插入記錄。 (2分)

        3. 題中橫線處答案為: (2分)

        4. 列表的選擇模型有單選和多選兩種,設(shè)置列表選擇模型的方法是。 (2分)

        5. 多線程互斥使用共享資源的程序段,稱為,它是一種加鎖機制,與多線程共享資源有關(guān),它的作用是在任何時該一個共享資源只能供一個線程使

        用。 (2分)

        6. 流在某些應(yīng)用中,不希望順序讀寫流,而是需要采用隨機訪問方式,文件隨機訪問可利用類來實現(xiàn)。 (2分)

        7. 創(chuàng)建java.net包中URL對象可能會產(chǎn)生異常。 (2分)

        8. 以下代碼的輸出結(jié)果是。

        System.out.println(5>4||3<4); (2分)

        9. Java語言中需要采用隨機方式對文件進行讀寫,可利用類來實現(xiàn)。 (2分)

        10. 在Java語言中,package語句必須出現(xiàn)在程序文件的。 (2分)

        三、程序填空題(本大題共5小題,每空2分,共20分)

        1. 某程序的界面包含了兩個按鈕button1和button2,一個文本框text。要求實現(xiàn)當點擊button1時,文本框中顯示“請認真做題!”;當點擊button2

        時,文本框中內(nèi)容消失。

        import java.awt.*;

        import javax.swing.*;

        import java.awt.event.*;

        public class Class2801 extends JFrame

        {

        JButton butt1,butt2;

        JTextField text1;

        JFrame myWin;

        public Class2801(String s)

        {

        myWin=new JFrame(s);

        myWin.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//關(guān)閉窗口時,整個應(yīng)用程序關(guān)閉。若省略,關(guān)閉窗口時程序不終止,相當于setVisible

        (false)

        Container con=myWin.getContentPane();

        con.setLayout(new FlowLayout(FlowLayout.LEFT));

        butt1=new JButton("b1");

        butt2=new JButton("b2");

        butt1.addActionListener(this);

        butt2.addActionListener(this);

        con.add(butt1);con.add(butt2);

        text1=new JTextField(20);

        con.add(text1);

        myWin.pack();

        myWin.setVisible(true);

        }

        public static void main(String[] args)

        {

        Class2801 my=new Class2801("Class2801");

        }

        public void actionPerformed(ActionEvent e)

        {

        if(e.getSource()==butt1)

        text1.setText("請認真做題!");

        else

        ;

        }

        } (2分)

        2. 以下是生成菜單項對象,以及菜單項選擇事件處理方法的代碼。要求當菜單項singingItem被選中時,在文本框text中輸出“唱歌菜單項被選中!”

        的字樣。

        …………

        singingItem=new("唱歌");//生成菜單項對象

        …………

        public void actionPerformed(ActionEvent e)

        {

        if(e.getSource()==singingItem)

        {

        text.setText(e.()+"菜單項被選中!");

        }

        } (2分)

        3. 回文整數(shù)是指正讀和反讀都一樣的整數(shù)。方法f2705(int n)的功能是判斷十進制整數(shù)n是否為回文整數(shù)。例如:n=123321,該方法返回值為true;

        n=123,該方法返回值為false。

        boolean f2705(int n)

        {

        Integer M=n;

        String s=;

        int i=0;

        while(i<s.length()/2)

        {

        String s1,s2;

        s1=s.substring(i,i+1);

        s2=s.substring(s.length()-i-1,s.length()-i);

        if(!())break;

        i++;

        }

        if (i<s.length()/2) return false;

        else return true;

        } (2分)

        4. 程序運行結(jié)果如下圖:五個按鈕按照緊湊方式顯示在窗口中。

        import java.awt.*;

        import javax.swing.*;

        public class Class2805

        {

        public static void main(String[] args)

        {

        myWin.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        myWin.setBounds(100,200,400,200);

        Container con=myWin.getContentPane();

        con.setBackground(Color.red);

        con.setLayout(new FlowLayout());

        JButton button[]=new JButton[5];

        for(int i=0;i<5;i++)

        {

        button[i]=new JButton("第"+(i+1)+"個按鈕");

        con.add(button[i]);

        }

        myWin.setVisible(true);

        }

        } (2分)

        5. 下面小應(yīng)用程序?qū)崿F(xiàn)在一個文本框中輸入整數(shù)后回車,另一個文本框中顯示這個整數(shù)的平方。

        import javax.swing.*;

        import java.applet.*;

        import java.awt.event.*;

        public class C2802 extends Applet

        {

        static JTextField text1,text2;

        CC c=new CC();

        public void init()

        {

        text1=new JTextField(10);

        text2=new JTextField(20);

        add(text1);add(text2);

        }

        }

        class CC implements ActionListener

        {

        public void actionPerformed(ActionEvent e)

        {

        if(e.getSource()==C2802.text1)

        {

        long n=;

        C2802.text2.setText(n*n+"");

        }

        }

        } (2分)

        四、程序分析題(本大題共5小題,每小題4分,共20分)

        1. 寫出下面程序的運行結(jié)果。

        public class Class34ThreadTest

        {

        public static void main(String args[])

        {

        Hello h=new Hello();

        Thread t=new Thread(h);

        t.start();

        }

        }

        class Hello implements Runnable

        {

        int i;

        public void run()

        {

        while(true)

        {

        System.out.println("Hello"+i++);

        if(i==5) break;

        }

        }

        } (4分)

        2. 閱讀程序,畫出程序運行后的界面并寫出程序的功能。

        import java.awt.*;

        import javax.swing.*;

        import java.awt.event.*;

        public class Class3601 implements AdjustmentListener

        {

        JScrollBar myBar;

        JLabel label;

        public Class3601(String s)

        {

        JFrame myWin=new JFrame(s);

        Container con=myWin.getContentPane();

        con.setLayout(new GridLayout(2,1));

        myBar=new JScrollBar(JScrollBar.HORIZONTAL,5,20,0,300);

        label=new JLabel(""+myBar.getValue(),JLabel.CENTER);

        myBar.addAdjustmentListener(this);

        con.add(label);

        con.add(myBar);

        myWin.setSize(300,100);

        myWin.setVisible(true);

        }

        public void adjustmentValueChanged(AdjustmentEvent e)

        {

        label.setText(""+e.getAdjustable().getValue());

        }

        public static void main(String[] args)

        {

        new Class3601("Class3601");

        }

        } (4分)

        3. 閱讀程序,畫出程序運行后初始界面并寫出程序功能。

        import java.util.*;

        import java.awt.*;

        import javax.swing.*;

        import java.awt.event.*;

        public class Class3503 implements ActionListener

        {

        JButton button1,button2;

        JLabel label;

        JTextArea textA;

        JTextField text;

        int n;

        public Class3503()

        {

        JFrame myWin=new JFrame("Class3503");

        myWin.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        Container con=myWin.getContentPane();

        con.setLayout(new FlowLayout());

        textA=new JTextArea("",5,10);

        JScrollPane jsp=new JScrollPane(textA);

        con.add(jsp);

        button1=new JButton("sum");

        button2=new JButton("ave");

        button1.addActionListener(this);

        button2.addActionListener(this);

        con.add(button1);con.add(button2);

        label=new JLabel("計算結(jié)果:");

        con.add(label);

        text=new JTextField(10);

        con.add(text);

        myWin.setBounds(300,300,600,200);

        myWin.setVisible(true);

        }

        int sum()

        {

        String str=textA.getText();

        StringTokenizer tokens=new StringTokenizer(str);

        n=tokens.countTokens();

        int s=0;

        for(int i=0;i<n;i++)

        {

        String t=tokens.nextToken();

        s+=Integer.parseInt(t);

        }

        return s;

        }

        float avg()

        {

        return (float)sum()/n;

        }

        public void actionPerformed(ActionEvent e)

        {

        if(e.getSource()==button1)

        {

        label.setText("輸入數(shù)的和");

        text.setText(""+sum());

        }

        if(e.getSource()==button2)

        {

        label.setText("輸入數(shù)的平均值");

        text.setText(""+avg());

        }

        }

        public static void main(String[] args)

        {

        new Class3503();

        }

        } (4分)

        4. 閱讀下列程序,寫出程序運行結(jié)果。

        public class Class3305

        {

        public static void main(String args[])

        {

        byte b[]=new byte[10];

        for(int k=0;k<10;k++)

        b[k]=(byte)(k+48);

        String s1=new String(b);String s2=new String(b,3,6);

        String s3=new String("ABC");String s4=new String("JAVA程序");

        byte c[]=s3.getBytes();byte d[]=s4.getBytes();

        System.out.println(s2);

        System.out.println(s3);

        System.out.println(c.length);

        System.out.println(d.length);

        }

        } (4分)

        5. 閱讀下列程序,寫出程序運行結(jié)果。

        import java.util.StringTokenizer;

        public class C3301

        {

        public static void main(String[] args)

        {

        String ss="public static void main";

        StringTokenizer pas=new StringTokenizer(ss," ");

        int n=pas.countTokens();

        System.out.println(n);

        String s=pas.nextToken();

        for(pas.nextToken();pas.hasMoreTokens();s=pas.nextToken())

        System.out.println(s);

        }

        }

        (4分)

        五、程序設(shè)計題(本大題共2小題,每小題6分,共12分)

        1. 設(shè)計一個應(yīng)用程序,求整數(shù)文件intfile1.txt中各行整數(shù)的和,并把和存入到另一個文件intfile2.txt中。設(shè)整數(shù)文件中全是整數(shù),整數(shù)序列被

        分成行,各行整數(shù)個數(shù)不等且用空格分隔。要求程序?qū)⑽募懈餍姓麛?shù)的和輸出在另一個文件中。 (6分)

        2. 一個Java小應(yīng)用程序,界面有兩個文本框、一個文本區(qū)和一個按鈕,兩個文本框用于輸入整數(shù),文本區(qū)用于輸出結(jié)果。按鈕表示求兩個整

        數(shù)之間的素數(shù)。當兩個文本框輸入整數(shù)后,點擊相應(yīng)按鈕,程序就將兩個整數(shù)之間的所有素數(shù)用空格隔開每5個一行輸出在文本區(qū)中。以下是程序的

        大部分,其中監(jiān)視按鈕事件的方法未給出,試編寫處理按鈕事件的方法。

        注:這里是給定部分的程序,你要編寫的是actionPerformed(ActionEvent e)方法。

        import java.applet.*;

        import javax.swing.*;

        import java.awt.event.*;

        class MyPanel extends JPanel

        {

        JTextField text1,text2;

        JTextArea textA;

        JButton button;

        MyPanel()

        {

        text1=new JTextField(10);

        text2=new JTextField(10);

        textA=new JTextArea(10,10);

        button=new JButton("求兩個整數(shù)之間的素數(shù)");

        add(text1);add(text2);add(button);add(textA);

        }

        }

        public class C3802 extends Applet implements ActionListener

        {

        MyPanel panel;

        public void init()

        {

        setSize(600,200);panel=new MyPanel();add(panel);

        panel.button.addActionListener(this);

        }

        public void actionPerformed(ActionEvent e)

        {

        //這里是你要編寫的代碼

        }

        } (6分)

        六、簡答題(本大題共6小題,每小題3分,共18分)

        1. 設(shè)有整型變量x和y的值分別為5和110。請指出執(zhí)行了下面循環(huán)語句后,變量x和y的值分別是多少?

        do{x=y/x;y=y-x;}while(y>=1); (3分)

        2. 能將類同時聲明為abstract和final嗎?為什么? (3分)

        3. 請寫出一條語句,能夠繪制一條垂直線段,上端點坐標為(200,300),長為100像素。設(shè)調(diào)用的對象是類型為Graphics的g。 (3分)

        4. 如果類A1是類A0的子類,類A2是類A1的子類,請指出以下代碼行中哪些是不合法的?

        ①A0 p1=new A1();

       、贏0 p2=new A2();

       、跘1 p3=new A0();

        ④A1 p4=new A2();

       、軦2 p5=new A0();

        ⑥A2 p6=new A1();

       、逴bject ob=new A1(); (3分)

        5. 請寫出一條Java語句,要求建立一個文件對象f,其對應(yīng)的磁盤文件是“d:\gzq.txt”。 (3分)

        6. 使用Java語言進行數(shù)據(jù)庫操作,刪除數(shù)據(jù)表記錄有哪三種方案? (3分)

        Java語言程序設(shè)計試題參考答案

        一、單項選擇題 (本大題共10小題,每小題1分,共10分) 在每小題列出的四個備選項中只有一個是符合題目要求的,請將其代碼填寫在題后的括號內(nèi)

        。錯選、多選或未選均無分。

        1:參考答案:C

        參考解析:(P171)在互斥同步機制的實現(xiàn)中,稍有不當,就可能產(chǎn)生死鎖。Java語言對死鎖問題沒有特別處理,只能由用戶在編程時注意。Java技術(shù)

        既不能發(fā)現(xiàn)死鎖也不能避免死鎖。防止死鎖的有效方法是:①線程因為某個條件未滿足,不能讓其繼續(xù)占有資源;②如果由多個對象需要互斥訪問

        ,應(yīng)確定線程獲得鎖的順序,并保證整個程序以相反的順序釋放鎖。

        試題內(nèi)容:

        如果發(fā)生多個線程形成一個等待環(huán),這樣,所有線程都陷入相互等待的狀態(tài)。這種循環(huán)等待現(xiàn)象稱為()

        A:互斥

        B:同步

        C:死鎖

        D:臨界

        2:參考答案:D

        參考解析:(P167)如果一個線程已進入某個共享資源的臨界段,且還沒有使用結(jié)束,其他進程必須等待。

        試題內(nèi)容:

        下面有關(guān)臨界段敘述錯誤的是()

        A:多線程互斥使用共享資源的.程序段被稱為臨界段

        B:臨界段是一種加鎖機制,與多線程共享資源有關(guān)

        C:臨界段的作用是在任何時該一個共享資源只能供一個線程使用

        D:如果一個線程已進入某個共享資源的臨界段,且還沒有使用結(jié)束,其他進程可搶占這個共享的資源

        3:參考答案:D

        參考解析:(P14)百分號運算為求余運算符,但是和前面字符串進行的是連接運算。

        試題內(nèi)容:

        以下程序代碼的輸出結(jié)果是()

        int x=100;

        System.out.println("5.5"+x%8);

        A:5.512

        B:5.512.5

        C:18

        D:5.54

        4:參考答案:C

        參考解析:(P77)StringTokenizer用于對單詞的分析,本題是用?a?作為分隔,這樣句子"I am a student"被分隔為三部分。countTokens()方法得到3。

        試題內(nèi)容:

        在Java程序中有代碼如下:

        System.out.println(

        (new StringTokenizer("I am a student","a")).countTokens());

        則輸出結(jié)果為()

        A:I am a student

        B:2

        C:3

        D:4

        5:參考答案:A

        參考解析:(P175)

        試題內(nèi)容:

        為8位字節(jié)流數(shù)據(jù)提供讀操作支持的類是()

        A:FileInputStream

        B:FileOutputStrem

        C:FileReader

        D:FileWriter

        6:參考答案:A

        參考解析:(P54)本題考核知識點是Java抽象類及抽象方法。抽象類和抽象方法都是使用abstract進行修飾。抽象類只聲明一個模板,沒有具體實現(xiàn)的

        代碼,只有它的子類才可能有實際意義。抽象方法只能出現(xiàn)在抽象類中,抽象方法在抽象類中只聲明了一個方法頭部就用分號結(jié)束了,沒有實現(xiàn)方

        法功能的代碼。使用final修飾的類、方法和變量都是不可以再改變的。final類不能被繼承,final方法不能被子類的方法覆蓋,final變量相當于一個常

        量。

        試題內(nèi)容:

        下列有關(guān)抽象類及抽象方法的敘述錯誤的是()

        A:使用final修飾的類是抽象類

        B:使用abstract修飾的方法是抽象方法

        C:抽象類必須被繼承才能使用,抽象類不可能有實例

        D:抽象類可以沒有抽象方法,但有抽象方法的類一定是抽象類

        7:參考答案:A

        參考解析:(P201)本題考核知識點是DriverManager類。DriverManager類處理驅(qū)動程序的加載和建立新數(shù)據(jù)連接;Statement類用于在指定的連接中處

        理SQL語句;Connection類用于處理與特定數(shù)據(jù)庫的連接;ResultSet類用于處理SQL語句執(zhí)行后的查詢結(jié)果。

        試題內(nèi)容:

        在編寫Java程序訪問數(shù)據(jù)庫的過程中,用來處理驅(qū)動程序的加載和建立新數(shù)據(jù)庫連接的類是()

        A:DriverManager類

        B:Statement類

        C:Connection類

        D:ResultSet類

        8:參考答案:A

        參考解析:(P14)j=++i;++運算符在前,則表示先運算;變量i在后,則后使用。先運算++i,這時i的值變?yōu)?1,后使用把i賦值給j,j也是11。這里的運算

        指自增運算。若是j=i++;++運算符在后,則后運算;變量i在前,則表示先使用。先使用,這時i的值是10,使用是把i賦值給j,j也是10,然后i再運算

        ,i變?yōu)?1。結(jié)果為11和10。自減運算是一樣的,如果把++i或i++放到更復雜的式子中也是一樣的規(guī)律。

        試題內(nèi)容:

        在Java語言中執(zhí)行如下語句后,i和j的值分別為()

        int i=10;int j=++i;

        A:11和11

        B:10和10

        C:10和11

        D:11和10

        9:參考答案:A

        參考解析:(P87)例如:當用戶點擊Button對象對應(yīng)的按鈕時,系統(tǒng)就將一個ActionEvent事件對象從事件激發(fā)對象傳遞到監(jiān)視器。ActionEvent對象包

        含的信息有事件發(fā)生在哪一個按鈕上以及有關(guān)事件的其他信息。

        試題內(nèi)容:

        包含當事件發(fā)生時從源傳遞給監(jiān)視器的特定事件信息的對象是()

        A:事件對象

        B:源對象

        C:監(jiān)視器對象

        D:接口

        10:參考答案:B

        參考解析:(P140)本題考核知識點是繪圖模式。繪圖模式設(shè)置為異或模式后,用背景色繪圖將出現(xiàn)異或模式設(shè)置的顏色。

        試題內(nèi)容:

        在Java程序中有如下設(shè)置:setBackground(Color.blue);g.setXORMode(Color.red); g.setColor(Color.blue);g.drawLine(300,300,500,500);則線的顏色是()

        A:藍色

        B:紅色

        C:黃色

        D:綠色

        二、填空題 (本大題共10小題,每小題2分,共20分)請在每小題的空格中填上正確答案。錯填、不填均無分。

        1:參考答案:(P111)addItemListener(ItemListener I)

        試題內(nèi)容:

        為選擇框(JCheckBox)對象設(shè)定監(jiān)視器的方法是:_____。

        2:參考答案:(P207)moveToInserRow()

        試題內(nèi)容:

        使用ResultSet對象的_____方法可將數(shù)據(jù)表游針移到插入位置,輸入數(shù)據(jù)后,用方法insertRow()插入記錄。

        3:參考答案:(P70)5

        試題內(nèi)容:

        題中橫線處答案為:_____

        4:參考答案:(P115)setSelectionMode()

        試題內(nèi)容:

        列表的選擇模型有單選和多選兩種,設(shè)置列表選擇模型的方法是_____。

        5:參考答案:(P167)臨界段

        試題內(nèi)容:

        多線程互斥使用共享資源的程序段,稱為_____,它是一種加鎖機制,與多線程共享資源有關(guān),它的作用是在任何時該一個共享資源只能供

        一個線程使用。

        6:參考答案:(P180)RandomAccessFile

        試題內(nèi)容:

        流在某些應(yīng)用中,不希望順序讀寫流,而是需要采用隨機訪問方式,文件隨機訪問可利用_____類來實現(xiàn)。

        7:參考答案:MalformedURLException

        [解析](P191)創(chuàng)建java.net包中URL對象可能會產(chǎn)生MalformedURLException異常,所以,創(chuàng)建URL對象的代碼應(yīng)出現(xiàn)在

        try...catch語句塊中,以便能捕捉網(wǎng)址錯誤異常

        試題內(nèi)容:

        創(chuàng)建java.net包中URL對象可能會產(chǎn)生_____異常。

        8:參考答案:(P15)true

        試題內(nèi)容:

        以下代碼的輸出結(jié)果是_____。

        System.out.println(5>4||3<4);

        9:參考答案:(P180)RandomAccessFile

        試題內(nèi)容:

        Java語言中需要采用隨機方式對文件進行讀寫,可利用_____類來實現(xiàn)。

        10:參考答案:(P31)起始行

        試題內(nèi)容:

        在Java語言中,package語句必須出現(xiàn)在程序文件的_____。

        三、程序填空題 (本大題共5小題,每空2分,共20分)

        1:參考答案:implements ActionListener

        text1.setText("")

        ,

        試題內(nèi)容:

        某程序的界面包含了兩個按鈕button1和button2,一個文本框text。要求實現(xiàn)當點擊button1時,文本框中顯示“請認真做題!”;當點擊

        button2時,文本框中內(nèi)容消失。

        import java.awt.*;

        import javax.swing.*;

        import java.awt.event.*;

        public class Class2801 extends JFrame_____

        {

        JButton butt1,butt2;

        JTextField text1;

        JFrame myWin;

        public Class2801(String s)

        {

        myWin=new JFrame(s);

        myWin.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//關(guān)閉窗口時,整個應(yīng)用程序關(guān)閉。若省略,關(guān)閉窗口時程序不終止,相當于setVisible(false)

        Container con=myWin.getContentPane();

        con.setLayout(new FlowLayout(FlowLayout.LEFT));

        butt1=new JButton("b1");

        butt2=new JButton("b2");

        butt1.addActionListener(this);

        butt2.addActionListener(this);

        con.add(butt1);con.add(butt2);

        text1=new JTextField(20);

        con.add(text1);

        myWin.pack();

        myWin.setVisible(true);

        }

        public static void main(String[] args)

        {

        Class2801 my=new Class2801("Class2801");

        }

        public void actionPerformed(ActionEvent e)

        {

        if(e.getSource()==butt1)

        text1.setText("請認真做題!");

        else

        _____;

        }

        }

        2:參考答案:JMenuItem

        getActionCommand

        ,

        試題內(nèi)容:

        以下是生成菜單項對象,以及菜單項選擇事件處理方法的代碼。要求當菜單項singingItem被選中時,在文本框text中輸出“唱歌菜單項被選

        中!”的字樣。

        …………

        singingItem=new_____("唱歌");//生成菜單項對象

        …………

        public void actionPerformed(ActionEvent e)

        {

        if(e.getSource()==singingItem)

        {

        text.setText(e._____()+"菜單項被選中!");

        }

        }

        3:參考答案:M.toString()

        s1.equals(s2)

        ,

        試題內(nèi)容:

        回文整數(shù)是指正讀和反讀都一樣的整數(shù)。方法f2705(int n)的功能是判斷十進制整數(shù)n是否為回文整數(shù)。例如:n=123321,該方法返回值為

        true;n=123,該方法返回值為false。

        boolean f2705(int n)

        {

        Integer M=n;

        String s=_____;

        int i=0;

        while(i<s.length()/2)

        {

        String s1,s2;

        s1=s.substring(i,i+1);

        s2=s.substring(s.length()-i-1,s.length()-i);

        if(!(_____))break;

        i++;

        }

        if (i<s.length()/2) return false;

        else return true;

        }

        4:參考答案:JFrame myWin=new JFrame("Class2805");

        myWin.pack();

        ,

        試題內(nèi)容:

        程序運行結(jié)果如下圖:五個按鈕按照緊湊方式顯示在窗口中。

        import java.awt.*;

        import javax.swing.*;

        public class Class2805

        {

        public static void main(String[] args)

        {

        _____

        myWin.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        myWin.setBounds(100,200,400,200);

        Container con=myWin.getContentPane();

        con.setBackground(Color.red);

        con.setLayout(new FlowLayout());

        JButton button[]=new JButton[5];

        for(int i=0;i<5;i++)

        {

        button[i]=new JButton("第"+(i+1)+"個按鈕");

        con.add(button[i]);

        }

        _____

        myWin.setVisible(true);

        }

        }

        5:參考答案:text1.addActionListener(c);

        Long.parseLong(C2802.text1.getText())

        ,

        試題內(nèi)容:

        下面小應(yīng)用程序?qū)崿F(xiàn)在一個文本框中輸入整數(shù)后回車,另一個文本框中顯示這個整數(shù)的平方。

        import javax.swing.*;

        import java.applet.*;

        import java.awt.event.*;

        public class C2802 extends Applet

        {

        static JTextField text1,text2;

        CC c=new CC();

        public void init()

        {

        text1=new JTextField(10);

        text2=new JTextField(20);

        add(text1);add(text2);

        _____

        }

        }

        class CC implements ActionListener

        {

        public void actionPerformed(ActionEvent e)

        {

        if(e.getSource()==C2802.text1)

        {

        long n=_____;

        C2802.text2.setText(n*n+"");

        }

        }

        }

        四、程序分析題 (本大題共5小題,每小題4分,共20分)

        1:參考答案:輸出結(jié)果為:

        Hello0

        Hello1

        Hello2

        Hello3

        Hello4

        試題內(nèi)容:

        寫出下面程序的運行結(jié)果。

        public class Class34ThreadTest

        {

        public static void main(String args[])

        {

        Hello h=new Hello();

        Thread t=new Thread(h);

        t.start();

        }

        }

        class Hello implements Runnable

        {

        int i;

        public void run()

        {

        while(true)

        {

        System.out.println("Hello"+i++);

        if(i==5) break;

        }

        }

        }

        2:參考答案:程序運行后的界面如下:

        程序的功能是:拖動滑塊,在上面的標簽中間顯示滑塊的當前值,范圍為0~280。

        試題內(nèi)容:

        閱讀程序,畫出程序運行后的界面并寫出程序的功能。

        import java.awt.*;

        import javax.swing.*;

        import java.awt.event.*;

        public class Class3601 implements AdjustmentListener

        {

        JScrollBar myBar;

        JLabel label;

        public Class3601(String s)

        {

        JFrame myWin=new JFrame(s);

        Container con=myWin.getContentPane();

        con.setLayout(new GridLayout(2,1));

        myBar=new JScrollBar(JScrollBar.HORIZONTAL,5,20,0,300);

        label=new JLabel(""+myBar.getValue(),JLabel.CENTER);

        myBar.addAdjustmentListener(this);

        con.add(label);

        con.add(myBar);

        myWin.setSize(300,100);

        myWin.setVisible(true);

        }

        public void adjustmentValueChanged(AdjustmentEvent e)

        {

        label.setText(""+e.getAdjustable().getValue());

        }

        public static void main(String[] args)

        {

        new Class3601("Class3601");

        }

        }

        3:參考答案:程序運行后初始界面如下:

        程序功能:在左邊設(shè)有滾動條的文本區(qū)輸入若干整數(shù),單擊sum按鈕,“計算結(jié)果”標簽顯示“輸入數(shù)的和”并在右邊文

        本框中顯示輸入數(shù)的和,;單擊ave按鈕,“計算結(jié)果”標簽顯示“輸入數(shù)的平均值”并在右邊文本框中顯示輸入數(shù)的平

        均值。

        試題內(nèi)容:

        閱讀程序,畫出程序運行后初始界面并寫出程序功能。

        import java.util.*;

        import java.awt.*;

        import javax.swing.*;

        import java.awt.event.*;

        public class Class3503 implements ActionListener

        {

        JButton button1,button2;

        JLabel label;

        JTextArea textA;

        JTextField text;

        int n;

        public Class3503()

        {

        JFrame myWin=new JFrame("Class3503");

        myWin.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        Container con=myWin.getContentPane();

        con.setLayout(new FlowLayout());

        textA=new JTextArea("",5,10);

        JScrollPane jsp=new JScrollPane(textA);

        con.add(jsp);

        button1=new JButton("sum");

        button2=new JButton("ave");

        button1.addActionListener(this);

        button2.addActionListener(this);

        con.add(button1);con.add(button2);

        label=new JLabel("計算結(jié)果:");

        con.add(label);

        text=new JTextField(10);

        con.add(text);

        myWin.setBounds(300,300,600,200);

        myWin.setVisible(true);

        }

        int sum()

        {

        String str=textA.getText();

        StringTokenizer tokens=new StringTokenizer(str);

        n=tokens.countTokens();

        int s=0;

        for(int i=0;i<n;i++)

        {

        String t=tokens.nextToken();

        s+=Integer.parseInt(t);

        }

        return s;

        }

        float avg()

        {

        return (float)sum()/n;

        }

        public void actionPerformed(ActionEvent e)

        {

        if(e.getSource()==button1)

        {

        label.setText("輸入數(shù)的和");

        text.setText(""+sum());

        }

        if(e.getSource()==button2)

        {

        label.setText("輸入數(shù)的平均值");

        text.setText(""+avg());

        }

        }

        public static void main(String[] args)

        {

        new Class3503();

        }

        }

        4:參考答案:程序運行結(jié)果:

        345678

        ABC

        3

        8

        試題內(nèi)容:

        閱讀下列程序,寫出程序運行結(jié)果。

        public class Class3305

        {

        public static void main(String args[])

        {

        byte b[]=new byte[10];

        for(int k=0;k<10;k++)

        b[k]=(byte)(k+48);

        String s1=new String(b);String s2=new String(b,3,6);

        String s3=new String("ABC");String s4=new String("JAVA程序");

        byte c[]=s3.getBytes();byte d[]=s4.getBytes();

        System.out.println(s2);

        System.out.println(s3);

        System.out.println(c.length);

        System.out.println(d.length);

        }

        }

        5:參考答案:運行結(jié)果:

        4

        static

        void

        試題內(nèi)容:

        閱讀下列程序,寫出程序運行結(jié)果。

        import java.util.StringTokenizer;

        public class C3301

        {

        public static void main(String[] args)

        {

        String ss="public static void main";

        StringTokenizer pas=new StringTokenizer(ss," ");

        int n=pas.countTokens();

        System.out.println(n);

        String s=pas.nextToken();

        for(pas.nextToken();pas.hasMoreTokens();s=pas.nextToken())

        System.out.println(s);

        }

        }

        五、程序設(shè)計題 (本大題共2小題,每小題6分,共12分)

        1:參考答案:程序如下:

        import java.io.*;

        import java.util.*;

        public class Class3803

        {

        public static void main(String[] args)

        {

        RandomAccessFile in,out;

        try

        {

        in=new RandomAccessFile("intfile1.txt","r");

        out=new RandomAccessFile("intfile2.txt","rw");

        String s;

        while((s=in.readLine())!=null)

        {

        StringTokenizer token=new StringTokenizer(s);

        long sum=0;

        while(token.hasMoreTokens())

        {

        sum+=Integer.parseInt(token.nextToken());

        }

        out.writeLong(sum);

        }

        in.close();out.close();

        }

        catch(FileNotFoundException e)

        {System.out.println("文件找不到!"+e);}

        catch(IOException e)

        {System.out.println("文件讀寫錯!"+e);}

        }

        }

        試題內(nèi)容:

        設(shè)計一個應(yīng)用程序,求整數(shù)文件intfile1.txt中各行整數(shù)的和,并把和存入到另一個文件intfile2.txt中。設(shè)整數(shù)文件中全是整數(shù),整數(shù)序列被分

        成行,各行整數(shù)個數(shù)不等且用空格分隔。要求程序?qū)⑽募懈餍姓麛?shù)的和輸出在另一個文件中。

        2:參考答案:long m,n;

        m=Long.parseLong(panel.text1.getText());

        n=Long.parseLong(panel.text2.getText());

        if (m>n)

        {long t=m;m=n;n=t;}

        panel.textA.setText("");

        int i=0;

        for(long i=m;i<=n;i++)

        {

        long j;

        for(j=2;j<i;j++)

        if (i%j==0)break;

        if(j==i)

        {

        panel.textA.append(" "+i);

        i++;

        if(i%5==0)

        panel.textA.append("\n");

        }

        }

        試題內(nèi)容:

        一個Java小應(yīng)用程序,界面有兩個文本框、一個文本區(qū)和一個按鈕,兩個文本框用于輸入整數(shù),文本區(qū)用于輸出結(jié)果。按鈕表示求兩個整數(shù)

        之間的素數(shù)。當兩個文本框輸入整數(shù)后,點擊相應(yīng)按鈕,程序就將兩個整數(shù)之間的所有素數(shù)用空格隔開每5個一行輸出在文本區(qū)中。以下是程序的大

        部分,其中監(jiān)視按鈕事件的方法未給出,試編寫處理按鈕事件的方法。

        注:這里是給定部分的程序,你要編寫的是actionPerformed(ActionEvent e)方法。

        import java.applet.*;

        import javax.swing.*;

        import java.awt.event.*;

        class MyPanel extends JPanel

        {

        JTextField text1,text2;

        JTextArea textA;

        JButton button;

        MyPanel()

        {

        text1=new JTextField(10);

        text2=new JTextField(10);

        textA=new JTextArea(10,10);

        button=new JButton("求兩個整數(shù)之間的素數(shù)");

        add(text1);add(text2);add(button);add(textA);

        }

        }

        public class C3802 extends Applet implements ActionListener

        {

        MyPanel panel;

        public void init()

        {

        setSize(600,200);panel=new MyPanel();add(panel);

        panel.button.addActionListener(this);

        }

        public void actionPerformed(ActionEvent e)

        {

        //這里是你要編寫的代碼

        }

        }

        六、簡答題 (本大題共6小題,每小題3分,共18分)

        1:參考答案:(P35)x=18,y=0

        試題內(nèi)容:

        設(shè)有整型變量x和y的值分別為5和110。請指出執(zhí)行了下面循環(huán)語句后,變量x和y的值分別是多少?

        do{x=y/x;y=y-x;}while(y>=1);

        2:參考答案:(P54)不能。Final類是不能被再繼承的類,即它不能再有子類。而abstract類稱為抽象類,抽象類只聲明一種模板,

        是沒有具體實現(xiàn)代碼的類,只有它的子類才可能是有實際意義的類,所有抽象類必須被繼承,必須有子類,然后在子類

        中可以實現(xiàn)超類的抽象方法,否則不可能有實例。所以abstract和final不可能同時用來修飾一個類。

        試題內(nèi)容:

        能將類同時聲明為abstract和final嗎?為什么?

        3:參考答案:(P140)g.drawLine(200,300,200,400)

        試題內(nèi)容:

        請寫出一條語句,能夠繪制一條垂直線段,上端點坐標為(200,300),長為100像素。設(shè)調(diào)用的對象是類型為Graphics的g。

        4:參考答案:(P51)③⑤⑥不合法。

        試題內(nèi)容:

        如果類A1是類A0的子類,類A2是類A1的子類,請指出以下代碼行中哪些是不合法的?

        ①A0 p1=new A1();

       、贏0 p2=new A2();

       、跘1 p3=new A0();

       、蹵1 p4=new A2();

       、軦2 p5=new A0();

       、轆2 p6=new A1();

       、逴bject ob=new A1();

        5:參考答案:(P175)File f=new File("d:\\gzq.txt");

        試題內(nèi)容:

        請寫出一條Java語句,要求建立一個文件對象f,其對應(yīng)的磁盤文件是“d:\gzq.txt”。

        6:參考答案:(P208)

        (1)使用Statement對象;

        (2)使用ResultSet對象;

        (3)使用PrepareStatement對象。


      【Java語言程序設(shè)計試題附參考答案】相關(guān)文章:

      1.Java語言程序設(shè)計試題及答案

      2.Java程序設(shè)計模擬試題及參考答案

      3.C語言程序設(shè)計試題附答案

      4.Java語言程序設(shè)計模擬試題及答案

      5.Java語言程序設(shè)計試題及答案(六)

      6.Java語言程序設(shè)計試題及答案(八)

      7.Java語言程序設(shè)計試題及答案(九)

      8.C語言程序設(shè)計期末試題附答案