文档库

最新最全的文档下载
当前位置:文档库 > Java基础试卷及答案

Java基础试卷及答案

Java基础考核试题

技术方向:Android-JAVA 姓名:得分:

一、选择题(20题,每题2分,共40分)

1.下面哪个不是Java中的容器? ( )

A) Panel B)Canvas C)Applet D)Dialog

2.要串行化某些类的对象,这些类就必须实现( )

A、Serializable接口

B、java.io.Externalizable接口

C、java.io.DataInput接口

D、DataOutput接口

3.编写和运行Java applet程序与编写和运行Java application程序不同的步骤是:()

A、编写源代码

B、编写HTML文件调用该小程序,以.html为扩展名存入相同文件夹

C、编译过程

D、解释执行

4.Java的字符类型采用的是Unicode编码方案,每个Unicode码占用____个比特位。()

A、8

B、16

C、32

D、64

5.关于下列程序段的输出结果,说法正确的是:()

public class MyClass{

static int i;

public static void main(String argv[]){

System.out.println(i);

}

}

A、有错误,变量i没有初始化。

B、null

C、1

D、0

6.下列代码的执行结果是:()

public class Test3{

public static void main(String args[]){

System.out.print(100%3);

System.out.print(",");

System.out.println(100%3.0);

}

}

A、1,1

B、1,1.0

C、1.0,1

D、1.0,1.0

7.下列程序段的输出结果是:()

void complicatedexpression_r(){

int x=20, y=30;

boolean b;

b=x>50&&y>60||x>50&&y<-60||x<-50&&y>60||x<-50&&y<-60;

System.out.println(b);

}

A、true

B、false

C、1

D、0

8.给出下列代码片段:()

if(x>0){System.out.println("first");}

else if(x>-3){ System.out.println("second");}

else {System.out.println("third");}

请问x处于什么范围时将打印字符串“second”?

A、x>0

B、x>-3

C、x<=-3

D、x<=0 & x>-3

9.若要把变量声名为暂时性变量,应使用如下哪种修饰符?()

A、protected

B、provate

C、transient

D、volatile

10.在Java中,一个类可同时定义许多同名的方法,这些方法的形式参数的个数、类型或顺序各不相同,传回的值也可以不相同,这种面向对象程序特性称为:()

A、隐藏

B、覆盖

C、重载

D、Java不支持此特性

11.如要抛出异常,应用下列哪种子句?()

A、catch

B、throw

C、try

D、finally

12.在使用interface声明一个接口时,只可以使用____修饰符修饰该接口。()

A、private

B、protected

C、private protected

D、public

13.下列代码的输出结果是:()

class Parent {

void printMe() {

System.out.println("parent");

}

}

class Child extends Parent {

void printMe() {

System.out.println("child");

}

void printall() {

super.printMe();

this.printMe();

printMe();

}

}

public class Test_this {

public static void main(String args[]) {

Child myC=new Child();

myC.printall();

}

}

A、parent

child

child

B、parent

child

parent

C、parent

child

D、编译错误

14.为读取的内容进行处理后再输出,需要使用下列哪种流?( )

A、File stream

B、Pipe stream

C、Random stream

D、Filter stream

15.为实现多线程之间的通信,需要使用下列哪种流才合适?( )

A、Filter stream

B、File stream

C、Random access stream

D、Piped stream

16.Swing与AWT的区别不包括:()

A、Swing是由纯Java实现的轻量级构件

B、Swing没有本地代码

C、Swing不依赖操作系统的支持

D、Swing支持图形用户界面

17.在编写Java applet程序时,若需要对发生事件作出响应和处理,一般需要在程序的

开头写上____语句。()

A、import java.awt.*;

B、import java.applet.*;

C、import java.io.*;

D、import java.awt.event.*;

18.注释的基本原则不包括:()

A、注释应该增加代码的清晰度

B、注释要简洁

C、在写代码之前写注释

D、尽量给每一条语句加注释

19.java.io包中定义了多个流类型来实现输入和输出功能,可以从不同的角度对其进行分类,按功能分为:()

A、输入流和输出流

B、字节流和字符流

C、节点流和处理流

20. 以下程序的运行结果为()

public class IfTest{

public static void main(String args[]){

int x=3;

int y=1;

if(x==y)

System.out.println("Not equal");

else

System.out.println("Equal");

}

}

A)Not equal B)Equal C)无输出D)编译出错

二.填空题(每空1.5分,共15分)

1.java.io包中的____________和____________类主要用于对对象(Object)的读写。

2.在编写异常处理的Java程序中,每个catch语句块都应该与_______语句块对应,使得用该语句块来启动Java 的异常处理机制。

3. 顺序执行以下两个语句的输出结果是:____。

String s="我喜欢学习Java!";

System.out.println(s.length());

4. 编写一个包含有图片的Applet ,程序开头加上_________________语句。

5. 用Swing进行GUI设计时,必须在程序的开头写上_________________语句。

6.我们用_______来定义一个整数,用_______来定义一个字符类型,称为原始数据类型。

7. 当用户在TextField中输入一行文字后,按回车,实现_________接口可实现对事件的响应。

8.线是绘图功能里最基本的方法,Java程序中使用__________类提供的drawLine来画线。

三、按要求填空(每空5分,共15分)

1.下列程序的输出结果为:

public class TestApple {

int i=0;

Apple(int i){

this.i=i;

}

Apple increament(){

i++;

return this;

}

void print(){

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

}

public static void main(String[] args) {

Apple redapple=new Apple(1000);

redapple.increament().increament().print();

}

2. 下列程序可以实现往Applet中添加图片,请补充横线处代码。import java.applet.*;

import java.awt.*;

public class ShowImage extends _______{

public void paint(Graphics g){

Image img=getImage(_________________,"a.jpg");

int w=img.getWidth(this),h=img.getHeight(this),d=5;

g.drawImage(img, 0, 0, w, h, this);

}

}

3. 下列程序的输出结果为:

class FatherClass{

public int value;

public void f(){

value=100;

System.out.println("FatherClass.value="+value);

}

}

class ChildClass extends FatherClass{

public int value;

public void f(){

super.f();

value=200;

System.out.println("ChildClass value="+value);

System.out.println(value);

System.out.println(super.value);

}

}

public class TestInherit {

public static void main(String[] args) {

ChildClass cc=new ChildClass();

cc.f();

}

}

四、程序设计(第1题10分,第2题20分,共30分)

1.从键盘或者命令行输入3个数,求这三个数的最大值。

2. 编写程序,显示如下图所示的单选框。包括两个Label标签,姓名和爱好。爱好作为一个单选框(CheckboxGroup),添加一个Button(“确定”),实现功能:当选择一个“爱好”时,单击确定,在文本框中显示姓名和所选择的爱好。

Java基础试卷及答案

参考答案

一、选择题

1B2A3B4B5D

6B7B8D9C10C

11B12D13A14D15D

16D17C18D19C20B

二、填空题

1. ObjectInputStream

ObjectOutputSteam

2. Try

3. 10

4. import java.awt.Image

5. import javax.swing.*;

6. Int,char

7. ActionListner

8. Graphics

三、写出下列程序的运行结果

1. 结果为:i=1002

2. Applet

getDocumentBase()或getCodeBase()

3. 输出结果是:

FatherClass.value=100

ChildClass value=200

200

100

四、程序设计

1. import javax.swing.JOptionPane;

public class MaxNum {

public static String sum(int a,int b,int c,int d){ if(a>b){

d=a;

}

if(b>d){

d=b;

}

if(c>d){

d=c;

}

return "你输入的三个数字中,最大的数是"+d;

}

public static void main(String[] args) {

int number1,number2,number3;

try{

number1=Integer.parseInt(JOptionPane.showInputDialog("Enter the first Number: "));

number2=Integer.parseInt(JOptionPane.showInputDialog("Enter the second Number: ")); number3=Integer.parseInt(JOptionPane.showInputDialog("Enter the third Number: "));

System.out.println(sum(number1,number2,number3,0));

}catch(NumberFormatException ne){

System.out.println(ne.toString());

}

System.exit(0);

}

}

2. import java.awt.*;

import java.awt.event.*;

public class StudentInfo extends Frame implements ActionListener {

CheckboxGroup cbg; //定义单选按钮对象

Label name,hobby;

TextField tf;

TextArea tinfo;

Panel p;

Checkbox b1,b2,b3,b4; //定义两个复选框对象

Button ok;

public StudentInfo(){

super("学生信息");

setLayout(new FlowLayout());

name=new Label("姓名:");

add(name);

tf=new TextField(12);

add(tf);

hobby=new Label("爱好:");

add(hobby);

p=new Panel(new GridLayout(4,1));

cbg=new CheckboxGroup();//给单选按钮对象分配内存

b1=new Checkbox("apple",cbg,true); //Label为“男”,关联到单选按钮cbg,初始状态为true b2=new Checkbox("pear",cbg,false);

b3=new Checkbox("orange",cbg,false);

b4=new Checkbox("grape",cbg,false);

p.add(b1);

p.add(b2);

p.add(b3);

p.add(b4);

add(p);

ok=new Button("确定");

add(ok);

ok.addActionListener(this);

tinfo=new TextArea(4,20);

add(tinfo);

/*//单击标题栏“关闭”,退出程序

addWindowListener(new WindowAdapter(){

public void windowClosing(WindowEvent e){ System.exit(0);

}

});/*此段代码可以不写

setSize(200,200);

setLocationRelativeTo(null);

setVisible(true);

}

public void actionPerformed(ActionEvent e) {

tinfo.setText("姓名:"+tf.getText()+"\n"+"爱好:"+cbg.getSelectedCheckbox().getLabel());

}

public static void main(String args[]){

StudentInfo t=new StudentInfo();

}

}