当前位置:主页 > 大学试题及答案 >

bet36365官方网址

发布时间:2018-04-19 编辑:一米bet36365官方网址

《java语言程序设计》试题及答案

一、选择题

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

A:import java.awt.*;

B:import java.applet.*;

C:import java.io.*;

D:import java.awt.event.*;

参考答案:D

参考解析:java.awt是抽象窗口工具包,包含抽象窗口工具集中的图形、文本、窗口GUI类;java.applet包含所有支持Java applet的类;java.io包

含所有的输入输出类;java.awe.event包含用来检测并对事件做出反应的三个组成元素:

源对象、监视器对象和事件对象。

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

A:中心

B:左上角

C:右上角

D:自由设定

参考答案:B

参考解析:Java语言约定,显示屏上一个长方形区域为程序绘图区域,坐标原点(0,0)位于整个区域的左上角,一个坐标点(x,y)对应屏幕窗口中的一个像素,必须是整数。

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

A:访问权限默认为是public

B:访问权限默认为是private

C:访问权限默认为是protected

D:以上都不是

参考答案:D

参考解析:没有修饰的成员变量和方法称为友好变量和友好方法。不同于public、private和protected修饰的成员变量和方法。

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

A:内部类

B:适配器

C:接口

D:同步

参考答案:C

参考解析:Java程序中的类只能继承一个类,这种继承称为单继承。Java语言虽不允许一个类继承多个类,但允许一个类实现多个接口。这样,

对有继承并实现接口的类来说,实际上有了多个超类,实现有控制的多重继承。接口比多继承更强、更容易控制。接口有与类相似的基本形式。接口有常量定和方法,但没有方法的实现代码,即没有方法的方法体。

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

A:JPassWordField和setEchoChar(?*?)

B:JPasswordField和setEchoChar(?*?)

C:JPassWordField和setEchochar(?*?)

D:JPasswordField和setEchochar(?*?)

参考答案:B

参考解析:类名首字母和每个单词首字母均大写,方法名首字母小写,其余单词首字母大写。

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

A:update()

B:insert()

C:executeUpdate()

D:delete()

参考答案:C

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

short i=10,j,k=20;

j=k+i++;

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

A:30

B:31

C:出错

D:11

参考答案:C

参考解析:对于使用类型为byte或者short变量的算术表达式,其计算方式与使用int型变量相同都是进行32位算术运算,结果也是32位整数。本题编译器无法把32位整数存储到只有16位长的变量中。

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

A:removeListener(ActionListener e)

B:setRemoveEnable(ActionListener e)

C:removeActionListener(ActionListener e)

D:addActionListener(ActionListener e)

参考答案:C

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

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

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

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

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

参考答案:B

参考解析:本题考核知识点是监视器注册。如果多个事件监视器被注册到一个组件上,这些事件监视器一般都会起作用,但各个事件的处理顺序不确定。

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

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

A:ActionListener

B:actionPerformed

C:getSource

D:ItemListener

参考答案:A

参考解析:处理该事件的接口是ActionListener,要实现的接口方法是actionPerformed(ActionEvent e),获得事件源的方法是getSource()。

二、填空题

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

1:参考答案:将被清除

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

2:参考答案:close()

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

3:参考答案:构造方法

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

4:参考答案:stroke

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

5:参考答案:继承

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

6:参考答案:synchronized

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

7:参考答案:起始行或第一行

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

8:参考答案:CardLayout

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

9:参考答案:>>>

[解析]左移运算符是“<<”:将左运算分量的每一位二进制位向左移动,右边空出的位用0填充,左端移出位的信息丢失。每左移一位相当于乘2。右移运算符分算术右移运算符“>>”和逻辑右移运算符“>>>”。

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

 10:参考答案:ResultSet rs=sql.executeQuery("SELECT * FROM st");

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

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

public class Class3101

{

public static void main(String[] args)

{

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

for(int i=0;i<s.length();i++)

{

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

try{————;}

catch(){}

}

}

} (2分)

参考答案:

Thread.sleep(300)

InterruptedException e

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分)

参考答案:getImage(getCodeBase(),i+".jpg")

drawImage

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分)

参考答案:setBounds(100,200,300,400)

setVisible(true)

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分)

参考答案:JTextField txt=new JTextField("Class2804");

con.add(txt,"South");

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分)

参考答案:getContentPane()

Integer.parseInt(label.getText())

四、程序分析题(本大题共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分)

参考答案:程序运行后初始界面如下:

程序功能是:单击start按钮开始播放“windowsXP关机.wav”声音文件一次,单击loop按钮将循环播放“windowsXP关机

.wav”,单击stop按钮将停止播放。

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分)

参考答案:程序功能是:小应用程序窗口中有三个按钮,单击start按钮开始播放“1.wav”声音文件一次,单击loop按钮将循环播放“1.wav”,单击stop按钮将停止播放。

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分)

参考答案:运行结果:

2,3,5

a,b

abcxyz,123

[解析]对于二维数组来说,有两种长度,一种是二维数组的长度,一种是二维数组元素的长度,数组的下标都是从0开始。方法f3302()中的交换只是交换了形参(局部变量)x和y的值,并没有使实参s[0]和s[1]发生交换。+和concat()都能完成字符串的连接。s2.concat("xyz")连接得到的新字符串并没有赋值,它和 s2=s2.concat("xyz")是不同的。

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分)

参考答案:程序功能:小应用程序在300*200大小的窗口里用随机产生的颜色(黄红蓝)、半径(0——100)和位置(0——100,0——100)每隔0.5秒重新涂一个圆块。

五、程序设计题(本大题共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分)

参考答案:int a=Integer.parseInt(text1.getText());

int b=Integer.parseInt(text2.getText());

if(e.getSource()==addButton)text3.setText(a+b+"");

if(e.getSource()==subButton)text3.setText(a-b+"");

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分)

参考答案:if (e.getActionCommand().equals("button01"))

panel.text.setText("Java");

else if (e.getActionCommand().equals("button02"))

panel.text.setText("编程");

else if (e.getActionCommand().equals("button03"))

panel.text.setText("不难学");

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

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

参考答案:这是一个画圆弧的方法,圆弧的中心是它的外接矩形的中心。参数x和y是外接矩形的左上角坐标(x,y),w和h是外接矩形的宽和高,s和a表示从s度开始逆时针方向画a度的弧。a是正值为逆时针方向,负值为顺时针方向。起始s若为0度是指三点钟方向。

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

参考答案:(P100)设置CardLayout布局:先创建CardLayout布局对象,然后使用setLayout()方法为容器设置CardLayout布局,

最后调用容器的add()方法将组件加入容器。

显示容器中的某一组件有如下两种方式:

①使用show(容器名,组件代号),指定某个容器中的某个组件显示。

②按组件加入容器的顺序显示组件。first(容器)、last(容器)、previous(容器)、next(容器)。

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

参考答案:(P180)从文件中读出若干字节存入到数组中。参数b为要存入的数组,s为存入b数组的起始位置,n为读取的字节数或者直到相应流的结尾,并且返回实际已经读取的字节数。

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

参考答案:URL url=new URL("http://localost:80/index.htm");

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分)

参考答案:

(1)C2202(){C2202(10);}错误,可改为:C2202(){this(10);}。

(2)int  f()错误,可改为:void f()。

(3)y=a+x; 错误,原因是引用非法,在g方法中不能使用a。

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

参考答案:

(1)DriverManger类;(2)Connection类;(3)Statement类;(4)ResultSet类。

任选三个。

看过本文的人还喜欢以下文章

大学《微积分基础》期末试题及答案【bet36365首页】
大学《微积分基础》期末试题及答案【bet36365首页】
一、单项选择题(每小题4分,本题共20分) 1.函数, 的定义域是( ). A.(1,+) B.(0,1)U(1,+oo) C.(1,2)U(2,+) D.(0,2)U(2,+) 2.曲线 在z一2处切线的斜率是( ). 3.下列函数在指定区间(一,+oo)上单调减少的是( ). 4若等...
《学前儿童语言教育试题》试题及参考答案
《学前儿童语言教育试题》试题及参考答案
考试方式:半开卷 一、判断题(每小题1分,共20分) 1、独词句的出现和从独词句到双词句,这是儿童学话过程中关键的两步。 2.语言发展最重要的生理基础是人类的神经系统特别是大脑的发展。 3.对于孩子而言,早期阅读活动就是看图讲...
学前教育学试题及答案【bet36365首页】
学前教育学试题及答案【bet36365首页】
一、选择题 (每小题2分,共20分) 1、瑞士教育家裴斯泰洛齐的代表作是( D )。 A、《大教学论》 B、《世界图解》 C、《理想国》 D、《林哈德与葛笃德》 2、陈鹤琴创建的我国第一所公立幼稚师范学校是(D)。 A、南京鼓楼幼稚园 B、劳工幼稚园 C、...
2018大学试题及答案汇总【bet36365首页】大学期末考试题及答案
2018大学试题及答案汇总【bet36365首页】大学期末考试题及答案
大学生试题及答案网为您精心整理提供历年期末考试题及参考答案,期末复习试卷及答案,供各位同学参考复习,了解考试题型和参考内容,做到有目的的复习巩固,努力的人成绩不会太差,包括理工科、文科、计算机、材料、土木、文学、经管、外语、医学、数学等专业精选试题,...
《幼儿园课程论》试题及答案【bet36365首页】
《幼儿园课程论》试题及答案【bet36365首页】
一、选择题 (每题均有一个或一个以上的正确答案,多选、漏选、错选均不得分。每小题2分、共10分) 1、在幼儿园课程中运用精神分析理论,会(AB)。 A、强调早期儿童人格的培养 B、强调学龄儿童心理健康的重要性 C、强调教师的直接教...
《中级财务会计》试题及答案【bet36365首页】
《中级财务会计》试题及答案【bet36365首页】
一、选择题 1、某企业认购普通股1000股,每股面值10元,实际购买价11000元,佣金100元,共计11100元,其中购买价含有已宣告未发放的股利500元,则该股票的入帐成本为(C)元。 A 10000 B 11100 C 10600 D 11000 2、在固定资产清理过程中发...

 

以上就是bet36365官方网址美文网为您精心整理提供的关于《《java语言程序设计》试题及答案》全文,希望对您有所帮助。