Java语言程序设计试题及答案六

时间:2017-04-20 14:51:32 java试题 我要投稿

Java语言程序设计试题及答案(六)

  Java语言程序设计想要在考试中脱颖而出也不是不行的哦。为此阳光网小编为大家推荐了Java语言程序设计测试题和答案,希望能帮到大家。

Java语言程序设计试题及答案(六)

  Java语言程序设计测试题

  一、单项选择题(本大题共10小题,每小题1分,共10分) 在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。

  1. 在编写Java applet程序时,若需要对发生事件作出响应和处理,一般需要在程序的开头写上的语句是() (1分)

  A:import java.awt.*;

  B:import java.applet.*;

  C:import java.io.*;

  D:import java.awt.event.*;

  2. Java语言约定,显示屏上一个长方形区域为程序绘图区域,坐标原点(0,0)位于整个区域的() (1分)

  A:中心

  B:左上角

  C:右上角

  D:自由设定

  3. 在Java程序中定义一个类,类中有一个没有访问权限修饰的方法,则此方法() (1分)

  A:访问权限默认为是public

  B:访问权限默认为是private

  C:访问权限默认为是protected

  D:以上都不是

  4. 在Java 中,能实现多重继承效果的方式是() (1分)

  A:内部类

  B:适配器

  C:接口

  D:同步

  5. 在Java语言中,密码框组件和设置密码框的回显字符为“*”的方法分别是() (1分)

  A:JPassWordField和setEchoChar(?*?)

  B:JPasswordField和setEchoChar(?*?)

  C:JPassWordField和setEchochar(?*?)

  D:JPasswordField和setEchochar(?*?)

  6. 使用数据库的SQL命令实现数据库的更新,应利用Statement对象的方法() (1分)

  A:update()

  B:insert()

  C:executeUpdate()

  D:delete()

  7. 以下程序代码的输出结果是()

  short i=10,j,k=20;

  j=k+i++;

  System.out.print(j); (1分)

  A:30

  B:31

  C:出错

  D:11

  8. 在Java语言中,移去按钮对象监视器的方法是() (1分)

  A:removeListener(ActionListener e)

  B:setRemoveEnable(ActionListener e)

  C:removeActionListener(ActionListener e)

  D:addActionListener(ActionListener e)

  9. 下列有关事件监视器的说法正确的是() (1分)

  A:一个组件上不可以注册多个事件监视器

  B:一个事件监视器可以被注册到多个组件上

  C:一个组件上注册多个事件监视器会发生冲突,不会起作用

  D:一个组件上注册多个事件监视器,只有最后一个事件监视器会起作用

  10. 菜单的事件源是用鼠标点击某个菜单项,ActionListener,要实现的接口方法是actionPerformed(ActionEvent e),获得事件源的方法是

  getSource(),处理该事件的接口是() (1分)

  A:ActionListener

  B:actionPerformed

  C:getSource

  D:ItemListener

  二、填空题(本大题共10小题,每小题2分,共20分)请在每小题的空格中填上正确答案。错填、不填均无分。

  1. 当把Java的绘图模式设置为异或模式红色,并对同一个圆用同一个颜色绿色绘制两遍时,则此圆的绘制情况是:。 (2分)

  2. 流使用结束后,关闭流并且释放与该流相关的资源,用方法。 (2分)

  3. 是一种特殊的方法,这种方法的名字与它的类名相同,并且不返回结果,也不写上void关键字。 (2分)

  4. Java语言提供一个Graphics2D类,这个类定义了几种方法用于添加或改变图形的状态属性,其中属性控制线条的宽度、笔形样式、线段连接方式或

  短划线图案。 (2分)

  5. 在已有类的基础上,扩充属性或扩充与改写某些方法,生成新的类,这个方式称为。 (2分)

  6. 在Java语言,使用关键字定义临界段,能对共享对象的操作上锁。 (2分)

  7. 在Java程序中,如果有package语句,则此语句必须出现在源程序文件的。 (2分)

  8. 采用布局的容器中多个组件拥有同一个显示空间,某一时刻只能显示一个组件。 (2分)

  9. 在Java语言中,逻辑右移运算符是。 (2分)

  10. 在Java语言中,有了SQL语句对象sql后,根据“读取学生成绩表st中的所有记录并存于rs对象中”,定义rs对象的代码是。 (2分)

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

  1. 以下程序使字符串“文字的特殊输出效果演示”中的所有文字每隔300毫秒显示一个。

  public class Class3101

  {

  public static void main(String[] args)

  {

  String s="文字的特殊输出效果演示";

  for(int i=0;i

  {

  System.out.print(s.substring(i,i+1));

  try{;}

  catch(){}

  }

  }

  } (2分)

  2. 下面小应用程序通过快速显示一组图片(1.jpg~9.jpg)造成显示动画的效果。

  import java.awt.*;

  import java.applet.*;

  public class Class3002 extends Applet implements Runnable

  {

  final int number=9;

  int count=1;

  Image[]pic=new Image[number];

  Thread myThread;

  public void init()

  {

  setSize(300,200);

  for(int i=1;i<=number;i++)

  pic[i-1]=;

  }

  public void start()

  {

  myThread=new Thread(this);

  myThread.start();

  }

  public void stop(){myThread=null;}

  public void run()

  {

  while(true)

  {

  repaint();

  count=(count+1)%number;

  try{myThread.sleep(1000);}

  catch(InterruptedException e){}

  }

  }

  public void paint(Graphics g)

  {

  if(pic[count]!=null)

  g.(pic[count],10,10,200,200,this);

  }

  } (2分)

  3. 下面的程序在屏幕上显示一个红色窗口,窗口的左上角坐标为(100,200),宽为300像素,高为400像素。

  import java.awt.*;

  import javax.swing.*;

  public class Class2803

  {

  public static void main(String[] args)

  {

  JFrame myWin=new JFrame("Class2803");

  myWin.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//关闭窗口时,整个应用程序关闭。若省略,关闭窗口时程序不终止,相当于setVisible

  (false)

  myWin.;

  Container con=myWin.getContentPane();

  con.setBackground(Color.red);

  myWin.;

  }

  } (2分)

  4. 程序运行结果如下图:上边,左边和右边是三个按钮,下边是一个内容为“Class2804”的文本框txt。

  import java.awt.*;

  import javax.swing.*;

  public class Class2804

  {

  public static void main(String[] args)

  {

  JFrame myWin=new JFrame("Class2804");

  myWin.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

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

  Container con=myWin.getContentPane();

  con.setBackground(Color.red);

  con.setLayout(new BorderLayout());

  JButton button1=new JButton("左边");

  JButton button2=new JButton("右边");

  JButton button3=new JButton("上边");

  con.add(button1,"West");

  con.add(button2,"East");

  con.add(button3,"North");

  myWin.setVisible(true);

  }

  } (2分)

  5. 下面程序运行后显示一个窗口,在窗口中有一个按钮和一个标签,单击按钮,标签中显示按钮被单击的次数,请完成程序。

  import java.awt.*;

  import javax.swing.*;

  import java.awt.event.*;

  class myFrame extends JFrame implements ActionListener

  {

  JButton button;

  JLabel label;

  myFrame(String s)

  {

  super(s);

  Container con=;

  setLayout(new FlowLayout());

  setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

  setSize(300,400);

  button=new JButton("OK");

  label=new JLabel("0");

  con.add(button); con.add(label);

  button.addActionListener(this);

  setVisible(true);

  }

  public void actionPerformed(ActionEvent e)

  {

  int n=;

  n++;

  label.setText(""+n);

  }

  }

  public class C2801

  {

  public static void main(String[] args)

  {

  new myFrame("我的窗口");

  }

  } (2分)

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

  1. 阅读下列程序,画出程序运行后初始界面并写出程序功能。

  import java.applet.*;

  import java.awt.*;

  import java.awt.event.*;

  public class Class3603 extends Applet implements ActionListener

  {

  AudioClip clip;

  Button buttonPlay,buttonLoop,buttonStop;

  public void init()

  {

  clip=getAudioClip(getCodeBase(),"windowsXP关机.wav");

  buttonPlay=new Button("start");

  buttonLoop=new Button("loop");

  buttonStop=new Button("stop");

  buttonPlay.addActionListener(this);

  buttonStop.addActionListener(this);

  buttonLoop.addActionListener(this);

  setSize(300,100);

  add(buttonPlay);add(buttonLoop);add(buttonStop);

  }

  public void stop()

  {

  clip.stop();

  }

  public void actionPerformed(ActionEvent e)

  {

  if(e.getSource()==buttonPlay){clip.play();}

  else if(e.getSource()==buttonLoop){clip.loop();}

  if(e.getSource()==buttonStop){clip.stop();}

  }

  } (4分)

  2. 阅读下列程序,写出程序功能。

  import java.applet.*;

  import java.awt.*;

  import java.awt.event.*;

  public class C3601 extends Applet implements ActionListener

  {

  AudioClip clip;

  Button buttonPlay,buttonLoop,buttonStop;

  public void init()

  {

  clip=getAudioClip(getCodeBase(),"1.wav");

  buttonPlay=new Button("start");

  buttonLoop=new Button("loop");

  buttonStop=new Button("stop");

  buttonPlay.addActionListener(this);

  buttonStop.addActionListener(this);

  buttonLoop.addActionListener(this);

  setSize(300,100);

  add(buttonPlay);add(buttonLoop);add(buttonStop);

  }

  public void stop()

  {

  clip.stop();

  }

  public void actionPerformed(ActionEvent e)

  {

  if(e.getSource()==buttonPlay){clip.play();}

  else if(e.getSource()==buttonLoop){clip.loop();}

  if(e.getSource()==buttonStop){clip.stop();}

  }

  } (4分)

  3. 阅读下列程序,写出程序运行结果。

  public class C3302

  {

  public static void main(String[] args)

  {

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

  System.out.println(a.length+","+a[0].length+","+a[1][1]);

  String[]s={"a","b"};

  f3302(s[0],s[1]);

  System.out.println(s[0]+","+s[1]);

  String s1="abc",s2="123";

  s1+="xyz";

  s2.concat("xyz");

  System.out.println(s1+","+s2);

  }

  static void f3302(String x,String y)

  {

  String z=x;x=y;y=z;

  }

  } (4分)

  4. 阅读下列程序,写出程序运行结果。

  import java.awt.event.*;

  import javax.swing.*;

  public class C3502 implements MouseMotionListener

  {

  JTextField text=new JTextField(30);

  C3502()

  {

  JFrame myWin=new JFrame("Ex0611");

  myWin.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

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

  myWin.getContentPane().add(text,"North");

  myWin.addMouseMotionListener(this);

  myWin.setVisible(true);

  }

  public void mouseDragged(MouseEvent e)

  {

  int x=e.getX(),y=e.getY();

  text.setText("拖动鼠标,鼠标坐标为:"+x+","+y);

  }

  public void mouseMoved(MouseEvent e)

  {

  int x=e.getX(),y=e.getY();

  text.setText("移动鼠标,鼠标坐标为:"+x+","+y);

  }

  public static void main(String[] args)

  {

  new C3502();

  }

  } (4分)

  5. 阅读下列程序,写出程序功能。

  import java.applet.*;

  import java.awt.*;

  public class C3602 extends Applet implements Runnable

  {

  Thread myThread=null;

  public void start()

  {

  setSize(300,200);

  if(myThread==null)myThread=new Thread(this);

  myThread.start();

  }

  public void run()

  {

  while(true)

  {

  try{myThread.sleep(500);}

  catch(InterruptedException e){}

  repaint();

  }

  }

  public void paint(Graphics g)

  {

  double i=Math.random();

  if(i<0.33)g.setColor(Color.yellow);

  else if(i<0.66) g.setColor(Color.red);

  else g.setColor(Color.blue);

  int x=(int)(100*i);

  g.fillOval(x,x,x,x);

  }

  } (4分)

  五、程序设计题(本大题共2小题,每小题6分,共12分)

  1. 设计一个应用程序窗口如下图所示,单击“加”或“减”按钮,将前两个文本框中的整数相加或相减后放入第三个文本框中。已给出部

  分代码,请完成程序。

  import java.awt.*;

  import javax.swing.*;

  import java.awt.event.*;

  public class Class3801 implements ActionListener

  {

  JTextField text1,text2,text3;

  JButton addButton,subButton;

  public static void main(String[] args)

  {

  new Class3801();

  }

  public Class3801()

  {

  text1=new JTextField(10);

  text2=new JTextField(10);

  text3=new JTextField(10);

  addButton=new JButton("加");

  subButton=new JButton("减");

  JFrame myWin=new JFrame("Class3801");

  Container con=myWin.getContentPane();

  myWin.setSize(300,80);

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

  con.add(text1);con.add(text2);

  con.add(addButton);con.add(subButton);

  con.add(text3);

  addButton.addActionListener(this);

  subButton.addActionListener(this);

  myWin.setVisible(true);

  }

  public void actionPerformed(ActionEvent e)

  {

  //这里是你要编写的代码

  }

  } (6分)

  2. 创建一个有文本框和三个按钮的程序。当按下某个按钮时,使不同的文字("Java","编程","不难学")显示在文本框中。已经给出部分代码,请

  完成事件处理部分。

  import javax.swing.*;

  import java.awt.event.*;

  class MiYa1 extends JPanel

  {

  JButton button[]=new JButton[3];

  JTextField text;

  MiYa1()

  {

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

  {

  button[i]=new JButton("button0"+(i+1));

  add(button[i]);

  }

  text=new JTextField(10);

  text.setHorizontalAlignment(JTextField.CENTER);

  add(text);

  }

  }

  public class C3801 implements ActionListener

  {

  JFrame myWin;

  MiYa1 panel;

  C3801()

  {

  panel=new MiYa1();

  myWin=new JFrame("C3801");

  myWin.add(panel);

  myWin.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

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

  panel.button[i].addActionListener(this);

  myWin.pack();

  myWin.setVisible(true);

  }

  public static void main(String[] args)

  {

  new C3801();

  }

  public void actionPerformed(ActionEvent e)

  {

  //这里是你要编写的代码

  }

  } (6分)

  六、简答题(本大题共6小题,每小题3分,共18分)

  1. 请解释drawArc(int x,int y,int w,int h,int s,int a)方法的功能及参数含义。 (3分)

  2. CardLayout布局的容器可容纳多个组件,但是多个组件拥有一个显示空间。如何设置CardLayout布局及显示某一组件? (3分)

  3. 请写出RandomAccessFile类中read(byte b[],int s,int n)方法的功能及参数含义。 (3分)

  4. 要求创建一个URL对象url,使得url能够访问资源,请写出一条语句。 (3分)

  5. 下列类的定义中有哪些错误?写出错误原因或者进行改正。

  class C2202

  {

  int x;

  C2202(int x){this.x=x;}

  C2202(){C2202(10);}

  int f()

  {

  int a=1;

  x=a;

  }

  void g()

  {

  int y;

  y=a+x;

  }

  } (3分)

  6. 编写访问数据库的Java程序需要几个重要的类和接口,请任意写出其中的三个。 (3分)

  >>>下一页更多精彩“Java语言程序设计试题参考答案”