国产在线精品一级A片-国产另类欧美-国产精品va在线观看一-我要找美国一级片黄色|www.zheinei.com

Java語(yǔ)言程序設(shè)計(jì)試題及答案八

時(shí)間:2017-04-27 11:06:59 java試題 我要投稿

Java語(yǔ)言程序設(shè)計(jì)試題及答案(八)

  學(xué)好Java語(yǔ)言程序設(shè)計(jì)對(duì)掌握電腦能力是有很大幫助的,同學(xué)們要努力去學(xué)好Java語(yǔ)言程序設(shè)計(jì)哦,下面是陽(yáng)光網(wǎng)小編給大家整理的Java語(yǔ)言程序設(shè)計(jì)試題及答案,歡迎大家學(xué)習(xí)參考。

Java語(yǔ)言程序設(shè)計(jì)試題及答案(八)

  Java語(yǔ)言程序設(shè)計(jì)試題及答案(八)

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

  。錯(cuò)選、多選或未選均無(wú)分。

  1. Java中實(shí)現(xiàn)輸入/輸出操作的類庫(kù)在() (1分)

  A:java.io包中

  B:java.input包中

  C:java.output包中

  D:java.lang.io包中

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

  System.out.println(100/8); (1分)

  A:12.5

  B:12

  C:4

  D:0

  3. 在Java程序中聲明一個(gè)數(shù)組,錯(cuò)誤的是() (1分)

  A:int a[];

  B:int a[][];

  C:float a[10];

  D:float [ ]a[ ];

  4. 在Java程序中有定義:int x[][]=new int[4][5];則x.length和x[3].length的值分別是() (1分)

  A:4和5

  B:5和4

  C:4和3

  D:5和3

  5. 下列關(guān)于線程的說(shuō)法正確的是() (1分)

  A:一個(gè)線程被創(chuàng)建,它就立即開始運(yùn)行

  B:使用start()方法可以使一個(gè)線程立即開始運(yùn)行

  C:當(dāng)一個(gè)線程因?yàn)閾屜葯C(jī)制而停止運(yùn)行時(shí),它被放在可運(yùn)行隊(duì)列的前面

  D:一個(gè)正在運(yùn)行的線程可能因?yàn)槟承┣闆r而進(jìn)入阻塞狀態(tài)

  6. 下列屬于合法的Java標(biāo)識(shí)符是() (1分)

  A:_cat

  B:5books

  C:+static

  D:-3.14159

  7. 在Java語(yǔ)言中,把按鈕button的標(biāo)題文字設(shè)置為“第一個(gè)按鈕”的方法是() (1分)

  A:button.SetText("第一個(gè)按鈕")

  B:button.GetText("第一個(gè)按鈕")

  C:button.SetLabel("第一個(gè)按鈕")

  D:button.GetLabel("第一個(gè)按鈕")

  8. Java組件可以使用Toolkit提供的靜態(tài)方法獲得一個(gè)缺省的Toolkit對(duì)象,并用它加載圖像,這個(gè)靜態(tài)方法是() (1分)

  A:getImage(String name)

  B:getImage(URL url)

  C:getDefaultToolkit()

  D:getToolkit()

  9. 定義一個(gè)使用接口Java.lang.Runnable的類,必須要實(shí)現(xiàn)的方法是() (1分)

  A:start()

  B:run()

  C:init()

  D:paint()

  10. 以下是創(chuàng)建File對(duì)象的代碼,錯(cuò)誤的是() (1分)

  A:File f1=new File("/mydir/myfile.txt");

  B:File f2=new File("/mydir","myfile.txt");

  C:File f3=new File("\\mydir\\myfile.txt");

  D:File f4=new File("\mydir\myfile.txt");

  二、填空題(本大題共10小題,每小題2分,共20分)請(qǐng)?jiān)诿啃☆}的空格中填上正確答案。錯(cuò)填、不填均無(wú)分。

  1. 如果有一個(gè)類MyFrame是JFrame的子類,能夠被不同包中的類所使用,請(qǐng)寫出該類的聲明頭部: 。 (2分)

  2. 在Java程序中,要?jiǎng)?chuàng)建一個(gè)10行20列的文本區(qū),可以采用的構(gòu)造方法是。 (2分)

  3. 布局是把容器劃分成若干行和列的網(wǎng)格狀,行數(shù)和列數(shù)由程序控制,組件放在網(wǎng)格的小格子中。 (2分)

  4. 在Java語(yǔ)言中,位異或運(yùn)算的運(yùn)算符為。 (2分)

  5. 端口號(hào)與IP地址的組合稱為。 (2分)

  6. Java小程序要播放一個(gè)與程序文件在一起的名為mymusic.au的音樂文件,小程序中應(yīng)用先創(chuàng)建AudioClip對(duì)象,若對(duì)象名為myClip,則創(chuàng)建對(duì)象

  myClip的代碼為。 (2分)

  7. 在Java語(yǔ)言中,定義一個(gè)接口,在接口名前面需要關(guān)鍵字。 (2分)

  8. Java程序?qū)崿F(xiàn)多線程應(yīng)用的途徑之一是:定義一個(gè)實(shí)現(xiàn)接口的類,并在類中提供該接口的所有方法。 (2分)

  9. 以下程序代碼的輸出結(jié)果為:。

  String s1="abc",s2="ab",s3;

  s3=s2.concat("c");

  System.out.println(s1==s3); (2分)

  10. 采用緩沖式輸入時(shí),可以對(duì)BufferedReader對(duì)象使用方法按行讀取文件中的內(nèi)容。 (2分)

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

  1. 下列應(yīng)用程序,產(chǎn)生兩個(gè)組合框,一個(gè)可以選擇月份,一個(gè)可以選擇2000~2009年之間的年份。

  import javax.swing.*;

  public class Class31002 extends JFrame

  {

  JComboBox monthBox=new JComboBox();

  public Class31002()

  {

  super("Expiration Date");

  setSize(240,90);

  setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

  JPanel pane=new JPanel();

  JLabel exp=new JLabel("Expiration Date:");

  for (int i=0;i<13;i++) monthBox.addItem(" "+i);

  for(int i=2000;i<2010;i++) yearBox.addItem(" "+i);

  pane.add(exp);

  pane.add(monthBox);

  setContentPane(pane);

  }

  public static void main(String[]arg)

  {

  new Class31002().setVisible(true);

  }

  } (2分)

  2. 求出所有滿足下列條件的二位數(shù):將此二位數(shù)的個(gè)位數(shù)字與十位數(shù)字進(jìn)行交換,可得到一個(gè)新的數(shù),要求新數(shù)與原數(shù)之和小于100。

  int i,j,x,y;

  for(i=10;i<100;i++)

  {

  j=10*x+y;

  if(i+j<100)

  System.out.print(i+" ");

  } (2分)

  3. 以下程序的功能是:生成菜單條(menubar)、菜單(menu)和菜單項(xiàng)(item1,item2)對(duì)象,有 “文件”菜單,“文件”菜單中有“新建”,“保存”

  菜單項(xiàng)。

  import javax.swing.*;

  public class Class2903

  {

  public Class2903()

  {

  JFrame myWin=new JFrame();

  JMenuBar menubar=new JMenuBar();

  JMenuItem item1=new JMenuItem("新建");

  JMenuItem item2=new JMenuItem("保存");

  myWin.setJMenuBar(menubar);

  menu.add(item1);

  menu.add(item2);

  myWin.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

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

  myWin.setVisible(true);

  }

  public static void main(String[]args)

  {

  new Class2903();

  }

  } (2分)

  4. 小應(yīng)用程序運(yùn)行結(jié)果如下:紅色方塊在文字上從左向右循環(huán)移動(dòng)。

  import java.applet.*;

  import java.awt.*;

  public class Class3004 extends Applet

  {

  int i=1;

  public void{setBackground(Color.yellow);}

  public void paint(Graphics g)

  {

  i+=8;if(i>160)i=1;

  g.;

  g.fillRect(i,10,20,20);

  g.drawString("我正在學(xué)習(xí)Java繪圖!",1,25);

  try{Thread.sleep(100);}

  catch(InterruptedException e){}

  repaint();

  }

  } (2分)

  5. 以下小應(yīng)用程序運(yùn)行后顯示一幅圖片。

  import java.applet.*;

  import java.awt.*;

  public class Class3005 extends Applet

  {

  Image myImg;

  public void start()

  {

  myImg=(getCodeBase(),"myImg.jpg");

  }

  public void paint(Graphics g)

  {

  g.(myImg,0,0,this);

  }

  } (2分)

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

  1. 閱讀下面程序,寫出程序運(yùn)行結(jié)果。

  class A

  {

  B obj;

  A()

  {

  obj=new B();

  obj.print();

  System.out.println("AAA");

  }

  class B

  {

  public void print()

  {System.out.println("BBB");}

  }

  }

  public class Class3202

  {

  public static void main(String arg[])

  {A obj=new A();}

  } (4分)

  2. 閱讀下列程序,寫出程序運(yùn)行結(jié)果。

  interface Computable

  {

  final int MAX=100;

  int f(int x);

  int g(int x,int y);

  }

  class Aa implements Computable

  {

  int no;

  public int f(int x)

  {

  int sum=0;

  for(int i=1;i<=x;i++)sum=sum+i;

  return sum;

  }

  public int g(int x,int y){return x*y;}

  }

  class Bb implements Computable

  {

  int no;

  public int f(int x)

  {

  int sum=0;

  for(int i=1;i<=x;i++)sum=sum+i*i;

  return sum;

  }

  public int g(int x,int y){return x+y;}

  }

  public class Class3204

  {

  public static void main(String[] args)

  {

  Aa li;Bb tom;

  li=new Aa();li.no=851898;

  tom=new Bb();tom.no=951899;

  System.out.print("Li的編號(hào)"+li.no+","+li.MAX);

  System.out.println(","+li.f(3)+","+li.g(3,4));

  System.out.print("Tom的編號(hào)"+tom.no+","+tom.MAX);

  System.out.print(","+tom.f(3)+","+tom.g(3,4));

  }

  } (4分)

  3. 閱讀下列程序,寫出程序運(yùn)行結(jié)果。

  import java.util.*;

  public class Class3304

  {

  public static void main(String[] args)

  {

  String s1="public,static?void,main";

  StringTokenizer pas1=new StringTokenizer(s1,"? ,");

  int n1=pas1.countTokens();

  System.out.println(n1);

  while(pas1.hasMoreTokens())

  {

  String s=pas1.nextToken();

  System.out.println(s);

  }

  }

  } (4分)

  4. 閱讀下列程序,寫出程序功能。

  import java.awt.*;

  import javax.swing.*;

  import java.awt.event.*;

  public class Class3404 implements ActionListener

  {

  JButton butt[]=new JButton[3];

  public void actionPerformed(ActionEvent e)

  {

  if (e.getActionCommand().equals("One"))

  butt[1].setEnabled(false);

  if(e.getActionCommand().equals("Three"))

  butt[1].setEnabled(true);

  }

  public Class3404()

  {

  JFrame my=new JFrame("Class3404");

  Container con=my.getContentPane();

  con.setBackground(Color.red);

  con.setLayout(new FlowLayout());

  String str[]={"One","Two","Three"};

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

  {

  butt[i]=new JButton(str[i]);

  con.add(butt[i]);

  butt[i].addActionListener(this);

  }

  my.setBounds(100,100,600,300);

  my.setVisible(true);

  }

  public static void main(String[]args)

  {

  new Class3404();

  }

  } (4分)

  5. 閱讀下列程序,寫出程序功能。

  import javax.swing.*;

  public class C3501

  {

  public static void main(String[] args)

  {

  JFrame myWin=new JFrame("C3501");

  myWin.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

  JMenuBar jmb=new JMenuBar();

  myWin.setJMenuBar(jmb);

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

  JMenu jm=new JMenu("AAA");

  jmb.add(jm);

  JMenuItem jmi=new JMenuItem("AA1");

  jm.add(jmi);

  JMenu jm2=new JMenu("AA2");

  jm.add(jm2);

  JMenuItem jmi2=new JMenuItem("AA21");

  jm2.add(jmi2);

  myWin.setVisible(true);

  }

  }

  (4分)

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

  1. 編寫編寫一個(gè)方法array3701(),要求該方法有一個(gè)元素類型為int的數(shù)組參數(shù),方法返回一個(gè)新數(shù)組,新數(shù)組的長(zhǎng)度與參數(shù)數(shù)組的長(zhǎng)度相同

  ,而新數(shù)組元素的值和參數(shù)數(shù)組各元素的`值首尾顛倒。 (6分)

  2. 編寫一個(gè)方法f3701(),要求該方法有一個(gè)字符串參數(shù)s,方法的功能是統(tǒng)計(jì)s中連續(xù)相同的字符構(gòu)成的子串的最大長(zhǎng)度,方法返回這個(gè)最大

  長(zhǎng)度值,若沒有,則返回1。

  例如s="103300002222223333",其中連續(xù)相同的字符構(gòu)成的子串有4個(gè),長(zhǎng)度依次為2、4、6、4,則最大長(zhǎng)度為6。 (6分)

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

  1. Java.awt.event包中用來(lái)檢測(cè)并對(duì)事件做出反應(yīng)的模型包括哪三個(gè)組成元素? (3分)

  2. 接口有與類相似的基本形式,接口有常量定義和方法定義,但沒有方法的實(shí)現(xiàn)代碼,接口中給出某種特定功能的一組方法的規(guī)范,方法

  的規(guī)范主要包括哪些? (3分)

  3. 請(qǐng)寫出為8位字節(jié)流數(shù)據(jù)和16位字符流數(shù)據(jù)分別提供讀和寫操作的類。 (3分)

  4. 某Java程序要使用文件輸入輸出流,請(qǐng)寫出該程序所需要的import語(yǔ)句。 (3分)

  5. 閱讀下面程序,如果在橫線上分別填寫①i=m②i=b③i=p.a④i=p.change(100)四個(gè)賦值語(yǔ)句,有哪些不合法?請(qǐng)寫出原因。

  class Class2201

  {

  private int a;

  public int change(int m){return m;}

  }

  public class Class22 extends Person

  {

  public int b;

  public static void main(String[]args)

  {

  Class2201 p=new Class2201();

  Class22 t=new Class22();

  int i;

  ___;

  }

  } (3分)

  6. 文本框處理程序的基本內(nèi)容有哪幾個(gè)方面? (3分)

  參考答案

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

  。錯(cuò)選、多選或未選均無(wú)分。

  1:參考答案:A

  參考解析:(P175)

  試題內(nèi)容:

  Java中實(shí)現(xiàn)輸入/輸出操作的類庫(kù)在()

  A:java.io包中

  B:java.input包中

  C:java.output包中

  D:java.lang.io包中

  2:參考答案:B

  參考解析:(P14)“/”為除法運(yùn)算符,當(dāng)除數(shù)和被除數(shù)均為整數(shù)類型時(shí),結(jié)果也是整數(shù)類型。

  試題內(nèi)容:

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

  System.out.println(100/8);

  A:12.5

  B:12

  C:4

  D:0

  3:參考答案:C

  參考解析:(P69)數(shù)組聲明中不得指定大小,可以在聲明時(shí)創(chuàng)建指定大小:float a[]=new float[10]。

  試題內(nèi)容:

  在Java程序中聲明一個(gè)數(shù)組,錯(cuò)誤的是()

  A:int a[];

  B:int a[][];

  C:float a[10];

  D:float [ ]a[ ];

  4:參考答案:A

  參考解析:(P72)前者是二維數(shù)組的子數(shù)組的個(gè)數(shù)為4,后者是指定子數(shù)組的元素的個(gè)數(shù),本題每個(gè)子數(shù)組的元素個(gè)數(shù)都為5。如果定義的是非平衡數(shù)

  組,則每個(gè)子數(shù)組個(gè)數(shù)可能會(huì)不同。

  試題內(nèi)容:

  在Java程序中有定義:int x[][]=new int[4][5];則x.length和x[3].length的值分別是()

  A:4和5

  B:5和4

  C:4和3

  D:5和3

  5:參考答案:D

  參考解析:(P159)一個(gè)線程被創(chuàng)建后處于新建狀態(tài),它還沒有啟動(dòng),它可以被啟動(dòng)或終止。當(dāng)調(diào)用了start()方法后,線程處于就緒狀態(tài),具備了運(yùn)行

  的條件,但還是沒有進(jìn)入運(yùn)行狀態(tài)。當(dāng)一個(gè)線程因?yàn)閾屜葯C(jī)制而停止運(yùn)行時(shí),它應(yīng)被放在可運(yùn)行隊(duì)列的后面而不是前面。

  試題內(nèi)容:

  下列關(guān)于線程的說(shuō)法正確的是()

  A:一個(gè)線程被創(chuàng)建,它就立即開始運(yùn)行

  B:使用start()方法可以使一個(gè)線程立即開始運(yùn)行

  C:當(dāng)一個(gè)線程因?yàn)閾屜葯C(jī)制而停止運(yùn)行時(shí),它被放在可運(yùn)行隊(duì)列的前面

  D:一個(gè)正在運(yùn)行的線程可能因?yàn)槟承┣闆r而進(jìn)入阻塞狀態(tài)

  6:參考答案:A

  參考解析:(P8)標(biāo)識(shí)符只能由字母、下劃線、美元字符、文字字符和數(shù)字組成,不能由數(shù)字開頭。B答案數(shù)字開頭,C答案中使用了+號(hào),D答案使用

  了-號(hào),加減號(hào)不能組成標(biāo)識(shí)符。

  試題內(nèi)容:

  下列屬于合法的Java標(biāo)識(shí)符是()

  A:_cat

  B:5books

  C:+static

  D:-3.14159

  7:參考答案:C

  參考解析:(P92)

  試題內(nèi)容:

  在Java語(yǔ)言中,把按鈕button的標(biāo)題文字設(shè)置為“第一個(gè)按鈕”的方法是()

  A:button.SetText("第一個(gè)按鈕")

  B:button.GetText("第一個(gè)按鈕")

  C:button.SetLabel("第一個(gè)按鈕")

  D:button.GetLabel("第一個(gè)按鈕")

  8:參考答案:C

  參考解析:(P150)Java組件可以使用Toolkit提供的靜態(tài)方法getDefaultToolkit()獲得一個(gè)缺省的Toolkit對(duì)象,并用它加載圖像。此時(shí),載入圖像的代碼

  可以這樣寫:

  URL url=new URL(http://www.uvw.com/image.gif);

  Image img=Toolkit.getDefaultToolkit().getImage(url);

  試題內(nèi)容:

  Java組件可以使用Toolkit提供的靜態(tài)方法獲得一個(gè)缺省的Toolkit對(duì)象,并用它加載圖像,這個(gè)靜態(tài)方法是()

  A:getImage(String name)

  B:getImage(URL url)

  C:getDefaultToolkit()

  D:getToolkit()

  9:參考答案:B

  參考解析:(P163)Java.lang.Runnable接口只有run()方法需要實(shí)現(xiàn)。一個(gè)實(shí)現(xiàn)Runnable接口的類實(shí)際上定義了一個(gè)在主線程之外的新線程的操作。

  試題內(nèi)容:

  定義一個(gè)使用接口Java.lang.Runnable的類,必須要實(shí)現(xiàn)的方法是()

  A:start()

  B:run()

  C:init()

  D:paint()

  10:參考答案:D

  參考解析:(P175)“\”要用轉(zhuǎn)義字符表示,即“\\\”。

  試題內(nèi)容:

  以下是創(chuàng)建File對(duì)象的代碼,錯(cuò)誤的是()

  A:File f1=new File("/mydir/myfile.txt");

  B:File f2=new File("/mydir","myfile.txt");

  C:File f3=new File("\\mydir\\myfile.txt");

  D:File f4=new File("\mydir\myfile.txt");

  二、填空題 (本大題共10小題,每小題2分,共20分)請(qǐng)?jiān)诿啃☆}的空格中填上正確答案。錯(cuò)填、不填均無(wú)分。

  1:參考答案:(P49)public class MyFrame extends JFrame

  試題內(nèi)容:

  如果有一個(gè)類MyFrame是JFrame的子類,能夠被不同包中的類所使用,請(qǐng)寫出該類的聲明頭部:_____ 。

  2:參考答案:(P104)JTextArea(10,20)

  試題內(nèi)容:

  在Java程序中,要?jiǎng)?chuàng)建一個(gè)10行20列的文本區(qū),可以采用的構(gòu)造方法是_____。

  3:參考答案:(P98)GridLayout

  試題內(nèi)容:

  _____布局是把容器劃分成若干行和列的網(wǎng)格狀,行數(shù)和列數(shù)由程序控制,組件放在網(wǎng)格的小格子中。

  4:參考答案:(P18)^

  試題內(nèi)容:

  在Java語(yǔ)言中,位異或運(yùn)算的運(yùn)算符為_____。

  5:參考答案:(P195)網(wǎng)絡(luò)套接字(socket)

  試題內(nèi)容:

  端口號(hào)與IP地址的組合稱為_____。

  6:參考答案:(P154)AudioClip myClip=getAudioClip(getCodeBase(),"mymusic.au");

  試題內(nèi)容:

  Java小程序要播放一個(gè)與程序文件在一起的名為mymusic.au的音樂文件,小程序中應(yīng)用先創(chuàng)建AudioClip對(duì)象,若對(duì)象名為myClip,則創(chuàng)建對(duì)

  象myClip的代碼為_____。

  7:參考答案:(P59)interface

  [解析]定義接口需要使用interface關(guān)鍵字,實(shí)現(xiàn)接口需要使用implements關(guān)鍵字,一個(gè)類可以實(shí)現(xiàn)多個(gè)接口,相當(dāng)于有了多個(gè)超類,可以實(shí)現(xiàn)有

  控制的多重繼承。Java本身不支持使用關(guān)鍵字extends進(jìn)行多重繼承。

  試題內(nèi)容:

  在Java語(yǔ)言中,定義一個(gè)接口,在接口名前面需要_____關(guān)鍵字。

  8:參考答案:(P161)Runnable

  [解析]Java程序?qū)崿F(xiàn)多線程應(yīng)用有兩種途徑:一是繼承Thread類聲明Thread子類,用Thread子類創(chuàng)建線程對(duì)象。二是在類中實(shí)現(xiàn)Runnable接口,

  在類中提供Runnable接口的run()方法。

  試題內(nèi)容:

  Java程序?qū)崿F(xiàn)多線程應(yīng)用的途徑之一是:定義一個(gè)實(shí)現(xiàn)_____接口的類,并在類中提供該接口的所有方法。

  9:參考答案:(P75)false

  [解析]==在字符串中使用,比較的是兩個(gè)對(duì)象是否相同,而不是對(duì)象的內(nèi)容。要比較內(nèi)容應(yīng)使用s1.equals(s3)這種方法,它的值為true。本題s1和

  s3是不同的對(duì)象,s1是在編譯時(shí)就已產(chǎn)生的字符串“abc”的引用,而s3是在運(yùn)行后才生成的字符串“abc”的引用,很明顯,s1和s3是兩個(gè)不同對(duì)象

  的引用,只是不同對(duì)象的內(nèi)容相同。

  試題內(nèi)容:

  以下程序代碼的輸出結(jié)果為:_____。

  String s1="abc",s2="ab",s3;

  s3=s2.concat("c");

  System.out.println(s1==s3);

  10:參考答案:(P178)readLine()

  試題內(nèi)容:

  采用緩沖式輸入時(shí),可以對(duì)BufferedReader對(duì)象使用_____方法按行讀取文件中的內(nèi)容。

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

  1:參考答案:JComboBox yearBox=new JComboBox();

  pane.add(yearBox)

  ,

  試題內(nèi)容:

  下列應(yīng)用程序,產(chǎn)生兩個(gè)組合框,一個(gè)可以選擇月份,一個(gè)可以選擇2000~2009年之間的年份。

  import javax.swing.*;

  public class Class31002 extends JFrame

  {

  JComboBox monthBox=new JComboBox();

  _____

  public Class31002()

  {

  super("Expiration Date");

  setSize(240,90);

  setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

  JPanel pane=new JPanel();

  JLabel exp=new JLabel("Expiration Date:");

  for (int i=0;i<13;i++) monthBox.addItem(" "+i);

  for(int i=2000;i<2010;i++) yearBox.addItem(" "+i);

  pane.add(exp);

  pane.add(monthBox);

  _____

  setContentPane(pane);

  }

  public static void main(String[]arg)

  {

  new Class31002().setVisible(true);

  }

  }

  2:參考答案:x=i%10;

  y=i/10;

  ,

  試題內(nèi)容:

  求出所有滿足下列條件的二位數(shù):將此二位數(shù)的個(gè)位數(shù)字與十位數(shù)字進(jìn)行交換,可得到一個(gè)新的數(shù),要求新數(shù)與原數(shù)之和小于100。

  int i,j,x,y;

  for(i=10;i<100;i++)

  {

  _____

  _____

  j=10*x+y;

  if(i+j<100)

  System.out.print(i+" ");

  }

  3:參考答案:JMenu menu=new JMenu("文件");

  menubar.add(menu);

  ,

  試題內(nèi)容:

  以下程序的功能是:生成菜單條(menubar)、菜單(menu)和菜單項(xiàng)(item1,item2)對(duì)象,有 “文件”菜單,“文件”菜單中有“新建”,“

  保存”菜單項(xiàng)。

  import javax.swing.*;

  public class Class2903

  {

  public Class2903()

  {

  JFrame myWin=new JFrame();

  JMenuBar menubar=new JMenuBar();

  _____

  JMenuItem item1=new JMenuItem("新建");

  JMenuItem item2=new JMenuItem("保存");

  myWin.setJMenuBar(menubar);

  _____

  menu.add(item1);

  menu.add(item2);

  myWin.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

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

  myWin.setVisible(true);

  }

  public static void main(String[]args)

  {

  new Class2903();

  }

  }

  4:參考答案:init()或者start()

  setColor(Color.red)

  ,

  試題內(nèi)容:

  小應(yīng)用程序運(yùn)行結(jié)果如下:紅色方塊在文字上從左向右循環(huán)移動(dòng)。

  import java.applet.*;

  import java.awt.*;

  public class Class3004 extends Applet

  {

  int i=1;

  public void_____{setBackground(Color.yellow);}

  public void paint(Graphics g)

  {

  i+=8;if(i>160)i=1;

  g._____;

  g.fillRect(i,10,20,20);

  g.drawString("我正在學(xué)習(xí)Java繪圖!",1,25);

  try{Thread.sleep(100);}

  catch(InterruptedException e){}

  repaint();

  }

  }

  5:參考答案:getImage

  drawImage

  ,

  試題內(nèi)容:

  以下小應(yīng)用程序運(yùn)行后顯示一幅圖片。

  import java.applet.*;

  import java.awt.*;

  public class Class3005 extends Applet

  {

  Image myImg;

  public void start()

  {

  myImg=_____(getCodeBase(),"myImg.jpg");

  }

  public void paint(Graphics g)

  {

  g._____(myImg,0,0,this);

  }

  }

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

  1:參考答案:程序運(yùn)行結(jié)果:

  BBB

  AAA

  試題內(nèi)容:

  閱讀下面程序,寫出程序運(yùn)行結(jié)果。

  class A

  {

  B obj;

  A()

  {

  obj=new B();

  obj.print();

  System.out.println("AAA");

  }

  class B

  {

  public void print()

  {System.out.println("BBB");}

  }

  }

  public class Class3202

  {

  public static void main(String arg[])

  {A obj=new A();}

  }

  2:參考答案:運(yùn)行結(jié)果:

  Li的編號(hào)851898,100,6,12

  Tom的編號(hào)951899,100,14,7

  試題內(nèi)容:

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

  interface Computable

  {

  final int MAX=100;

  int f(int x);

  int g(int x,int y);

  }

  class Aa implements Computable

  {

  int no;

  public int f(int x)

  {

  int sum=0;

  for(int i=1;i<=x;i++)sum=sum+i;

  return sum;

  }

  public int g(int x,int y){return x*y;}

  }

  class Bb implements Computable

  {

  int no;

  public int f(int x)

  {

  int sum=0;

  for(int i=1;i<=x;i++)sum=sum+i*i;

  return sum;

  }

  public int g(int x,int y){return x+y;}

  }

  public class Class3204

  {

  public static void main(String[] args)

  {

  Aa li;Bb tom;

  li=new Aa();li.no=851898;

  tom=new Bb();tom.no=951899;

  System.out.print("Li的編號(hào)"+li.no+","+li.MAX);

  System.out.println(","+li.f(3)+","+li.g(3,4));

  System.out.print("Tom的編號(hào)"+tom.no+","+tom.MAX);

  System.out.print(","+tom.f(3)+","+tom.g(3,4));

  }

  }

  3:參考答案:運(yùn)行結(jié)果:

  4

  public

  static

  void

  main

  試題內(nèi)容:

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

  import java.util.*;

  public class Class3304

  {

  public static void main(String[] args)

  {

  String s1="public,static?void,main";

  StringTokenizer pas1=new StringTokenizer(s1,"? ,");

  int n1=pas1.countTokens();

  System.out.println(n1);

  while(pas1.hasMoreTokens())

  {

  String s=pas1.nextToken();

  System.out.println(s);

  }

  }

  }

  4:參考答案:紅色窗口(Class3404)中上方有三個(gè)按鈕一字排開,單擊第一個(gè)按鈕(One)會(huì)使第二個(gè)按鈕(Two)變?yōu)椴豢捎脿?/p>

  態(tài)即變?yōu)榛疑瑔螕舻谌齻(gè)按鈕(Three)會(huì)使第二個(gè)按鈕變?yōu)榭捎脿顟B(tài)。

  試題內(nèi)容:

  閱讀下列程序,寫出程序功能。

  import java.awt.*;

  import javax.swing.*;

  import java.awt.event.*;

  public class Class3404 implements ActionListener

  {

  JButton butt[]=new JButton[3];

  public void actionPerformed(ActionEvent e)

  {

  if (e.getActionCommand().equals("One"))

  butt[1].setEnabled(false);

  if(e.getActionCommand().equals("Three"))

  butt[1].setEnabled(true);

  }

  public Class3404()

  {

  JFrame my=new JFrame("Class3404");

  Container con=my.getContentPane();

  con.setBackground(Color.red);

  con.setLayout(new FlowLayout());

  String str[]={"One","Two","Three"};

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

  {

  butt[i]=new JButton(str[i]);

  con.add(butt[i]);

  butt[i].addActionListener(this);

  }

  my.setBounds(100,100,600,300);

  my.setVisible(true);

  }

  public static void main(String[]args)

  {

  new Class3404();

  }

  }

  5:參考答案:程序功能:應(yīng)用程序窗口生成一個(gè)下拉菜單,菜單名是AAA,有兩個(gè)菜單項(xiàng)AA1和AA2,其中AA2有子菜單,子菜單中有一個(gè)菜

  單項(xiàng)AA21。

  試題內(nèi)容:

  閱讀下列程序,寫出程序功能。

  import javax.swing.*;

  public class C3501

  {

  public static void main(String[] args)

  {

  JFrame myWin=new JFrame("C3501");

  myWin.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

  JMenuBar jmb=new JMenuBar();

  myWin.setJMenuBar(jmb);

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

  JMenu jm=new JMenu("AAA");

  jmb.add(jm);

  JMenuItem jmi=new JMenuItem("AA1");

  jm.add(jmi);

  JMenu jm2=new JMenu("AA2");

  jm.add(jm2);

  JMenuItem jmi2=new JMenuItem("AA21");

  jm2.add(jmi2);

  myWin.setVisible(true);

  }

  }

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

  1:參考答案:int[] array3701(int a[])

  {

  int x[]=new int[a.length];

  for(int i=0;i

  {

  x[i]=a[a.length-1-i];

  }

  return x;

  }

  [解析]完整的Java程序如下:

  public class Class3701

  {

  static int[] array3701(int a[])

  {

  int x[]=new int[a.length];

  for(int i=0;i

  {

  x[i]=a[a.length-1-i];

  }

  return x;

  }

  public static void main(String[] args)

  {

  int a[]={1,2,3,4};

  a=array3701(a);

  for(int i=0;i

  System.out.print(a[i]+" ");

  }

  }

  輸出結(jié)果為:4321

  試題內(nèi)容:

  編寫編寫一個(gè)方法array3701(),要求該方法有一個(gè)元素類型為int的數(shù)組參數(shù),方法返回一個(gè)新數(shù)組,新數(shù)組的長(zhǎng)度與參數(shù)數(shù)組的長(zhǎng)度相同,

  而新數(shù)組元素的值和參數(shù)數(shù)組各元素的值首尾顛倒。

  2:參考答案:int f3701(String s)

  {

  int m=1,n=0;

  byte ss[]=s.getBytes();

  for(int i=1;i

  {

  if(ss[i]==ss[i-1])

  m++;

  else

  {

  if(m>n)n=m;

  m=1;

  }

  }

  return n;

  }

  試題內(nèi)容:

  編寫一個(gè)方法f3701(),要求該方法有一個(gè)字符串參數(shù)s,方法的功能是統(tǒng)計(jì)s中連續(xù)相同的字符構(gòu)成的子串的最大長(zhǎng)度,方法返回這個(gè)最大長(zhǎng)

  度值,若沒有,則返回1。

  例如s="103300002222223333",其中連續(xù)相同的字符構(gòu)成的子串有4個(gè),長(zhǎng)度依次為2、4、6、4,則最大長(zhǎng)度為6。

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

  1:參考答案:(P87)

  (1)源對(duì)象:事件“發(fā)生”在這個(gè)組件上,它與一組“偵聽”該事件的對(duì)象保持著聯(lián)系。

  (2)監(jiān)視器對(duì)象:是一個(gè)實(shí)現(xiàn)預(yù)定義接口的類的一個(gè)對(duì)象,該對(duì)象的類要提供對(duì)發(fā)生的事件作處理的方法。

  (3)事件對(duì)象:它包含描述當(dāng)事件發(fā)生時(shí)從源對(duì)象傳遞給監(jiān)視器對(duì)象的特定事件的信息,它將作為參數(shù)傳遞給處理事件的

  方法。

  試題內(nèi)容:

  Java.awt.event包中用來(lái)檢測(cè)并對(duì)事件做出反應(yīng)的模型包括哪三個(gè)組成元素?

  2:參考答案:(P50)方法的名稱,方法的返回值類型,方法的參數(shù)個(gè)數(shù)與參數(shù)類型。

  試題內(nèi)容:

  接口有與類相似的基本形式,接口有常量定義和方法定義,但沒有方法的實(shí)現(xiàn)代碼,接口中給出某種特定功能的一組方法的規(guī)范,方法的

  規(guī)范主要包括哪些?

  3:參考答案:(P175)

  為8位字節(jié)流數(shù)據(jù)提供讀和寫操作的類是FileInputStream類和FileOutputStream類。

  為16位字符流數(shù)據(jù)提供讀和寫操作的類FileReader類和FileWriter類。

  試題內(nèi)容:

  請(qǐng)寫出為8位字節(jié)流數(shù)據(jù)和16位字符流數(shù)據(jù)分別提供讀和寫操作的類。

  4:參考答案:(P175)import java.io.*;

  試題內(nèi)容:

  某Java程序要使用文件輸入輸出流,請(qǐng)寫出該程序所需要的import語(yǔ)句。

  5:參考答案:(P48)

  ①不合法:m在Class22中沒有聲明過(guò),不能使用。

  ②不合法:b是非靜態(tài)成員,不能在靜態(tài)方法main()中使用。

  ③不合法:a是Class2201類的private成員,不能在Class2201類外直接訪問(wèn)。

  ④合法。

  試題內(nèi)容:

  閱讀下面程序,如果在橫線上分別填寫①i=m②i=b③i=p.a④i=p.change(100)四個(gè)賦值語(yǔ)句,有哪些不合法?請(qǐng)寫出原因。

  class Class2201

  {

  private int a;

  public int change(int m){return m;}

  }

  public class Class22 extends Person

  {

  public int b;

  public static void main(String[]args)

  {

  Class2201 p=new Class2201();

  Class22 t=new Class22();

  int i;

  ___;

  }

  }

  6:參考答案:(P102)

  (1)聲明一個(gè)文本框名;

  (2)建立一個(gè)文本框?qū)ο?

  (3)將文本框?qū)ο蠹尤氲侥硞(gè)容器;

  (4)對(duì)需要控制的文本框?qū)ο笞?cè)監(jiān)視器,監(jiān)聽文本框的輸入結(jié)束事件;

  (5)一個(gè)處理文本框事件的方法,完成對(duì)截獲事件進(jìn)行判斷和處理。

  試題內(nèi)容:

  文本框處理程序的基本內(nèi)容有哪幾個(gè)方面?


【Java語(yǔ)言程序設(shè)計(jì)試題及答案(八)】相關(guān)文章:

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

2.Java語(yǔ)言程序設(shè)計(jì)模擬試題及答案

3.Java語(yǔ)言程序設(shè)計(jì)試題及答案(六)

4.Java語(yǔ)言程序設(shè)計(jì)試題及答案(九)

5.Java程序設(shè)計(jì)試題及答案

6.Java程序設(shè)計(jì)模擬試題及答案

7.Java程序設(shè)計(jì)試題及答案-JAVA程序設(shè)計(jì)習(xí)題集

8.Java語(yǔ)言程序設(shè)計(jì)試題附參考答案