Java程序设计模拟B卷

模拟B卷 考试说明: 1.使用Eclipse编写程序。项目名称为:班级_姓名_学号_卷号。注意:卷号为A或B 2.在项目文件夹下新建一个文本文件,文件名为:答案.txt 3.将编程题外的所有题目写在文本文件中,答案要标明题号。 注意:考试期间遇到死机等问题,需要请示老师,切勿自行解决。否则后果自负。 一、单项选择题:共20题,每小题1分,满分20分 1、下列选项中,不属于Java语言特点的一项是。( D ) A、安全性 B、分布式 C、面向对象 D、编译执行 2、Java语言和c++语言相比,哪一项是Java有的,而c++没有?( C ) A、面向对象 B、有类库 C、跨平台 D、动态链接 3、如下哪个不是Java中有效的变量名。( A ) A、 if B、hello C、name D、good 4、下列不属于Java保留字的一个是( B )。 A、else B、Unicode C、if D、static 5、现有2个char,类型的变量al=’a’、a2=2,当执行al=(char)(al+a2);语句之后,al的值应该是( C )。 A、 ’a’ B、12 C、 ’c’ D、语句在编译时出错 6、下列关于int类型和long类型的说法中,正确的一个是( A )。 A、int类型可以自动转换为long类型 B、long类型可以自动转换为int类型 C、long类型占的存储空间比int类型的小 D、long类型和int类型数据能表示整数的范围一样 7、下列类的定义中,错误的是( B )。 A、class y{ …. } B、public x extends y{ …. } C、public class x extends y{ …. } D、class x extends y implements y1{ …. } 8、执行语句int i = 1, j = ++i; 后i与j的值分别为( D )。 A、1与1 B、2与1 C、1与2 D、2与2 9、为了区分重载多态中同名的不同方法,要求( C )。 A、调用时用类名或对象名做前缀 B、返回值类型不同 C、形式参数个数或者类型不同 D、形式参数名称不同 10、定义类头时能使用的修饰符是( C )。 A、private B、static C、protected D、abstract 11、如果在编译Java程序时,编译结果报告说找不到要编译的代码,错误是( D )

A、没有import相应的包 B、if语法错误 C、程序中存在异常 D、文件名写错

12、int类型被包装在如下的哪一个类中?( B )

A、java.1ang.Character B、java.1ang.Integer C、java.util.Integer D、java.1ang.Short

13、关于对下列代码段的描述,正确的一项是( C )。

catch(Exception e){

System.Err. println(“An exception was thrown”);

throw e;

}

A、程序终止 B、编译出错 C、该异常不会被处理 D、该异常会继续被上层处理

14、下列说法中,错误的一项是( C )。

A、内部类是被定义于另一个类中的类

B、使用内部类实现监听器,在编程时比较容易实现

C、内部类对象可以访问外部类的成员方法和变量,包括私有成员

D、由于内部类定义于另一个类,因此不适用于AWT的事件处理机制

15、下面选项是StringBuffer的构造方法,哪个选项是错误的(B)

A StringBuffer()

B StringBuffer(int capacity)

C StringBuffer(String str)

D StringBuffer(char[] data)

16、下面关于变量及其范围的陈述哪是不正确的(A)

A实例变量用关键字static声明

B局部变量在使用前必须被初始化

C实例变量是类的成员变量

D在方法中定义的局部变量在该方法被执行时创建

17.以下关于继承的叙述正确的是( B)。 A、在Java中类只允许单一继承

B、在Java中一个类只能实现一个接口

C、在Java中一个类不能同时继承一个类和实现一个接口

D、在Java中接口只允许单一继承

18、下说法中错误的一项是( A )。

A、线程一旦创建,则立即自动进行

B、线程创建后需要调用start()方法,将线程置于可运行状态

C、调用线程的start()方法后,线程也不一定能立即执行

D、线程处于可运行状态,意味着它可以被调度

19、包packone的类ClassOne中有如下成员方法:

protected void method_A(){…}

private void method_B(){…}

public void method_C(){…}

void method_D(){…}

类ClassTwo不属于包packone并且不是ClassOne 的子类,在ClassTwo类中可以调用哪个方法(C)

A 、method_A

B 、method_B

C 、method_C

D、 method_D

20、下面哪一个import命令可以为我们提供编写输入输出应用程序的类( C )。

A、import java.sql.*; B、import java.util.*;C、import java.io.*; D、import java.net.*;

二、编程题:共3小题 (第1题20分,第2题50分,第3题10分)

1.将两个文本文件中的内容合并到另一个文本文件中。(20分)

2.(1)初始界面图1所示。列表框:宋体,黑体,隶书。(提示:Frame用的是BorderLayout布局,北、中、南) 25分

编辑

添加图片注释,不超过 140 字(可选)

图1初始界面

(2)选择相应的字体,选择粗体或斜体,选择颜色,在文本框输入字号敲击回车键。都会引发事件,能在Label上显示相应的字体样式和颜色。如图2所示。30分

编辑

添加图片注释,不超过 140 字(可选)

图2选择后界面

(3)点击窗体关闭按钮,关闭应用程序。5 分

《JAVA程序设计》期末考试试题

《JAVA程序设计》期末考试试题

在Java语言中,下列哪个变量名是不正确的 ( )

(A) large (B) 2much

(C) $money (D) _postCode

关于抽象类下列哪个描述正确? ( )

抽象类不能包含抽象方法。

接口和抽象类是一回事。

抽象类不能实例化,即不能生成对象。

抽象类可以实例化对象。

3. 以下对封装的描述正确的是( )

(A) 只能对一个类中的方法进行封装,不能对属性性进行封装 (B) 如果子类继承了父类,对于父类中进行封装的方法,子类仍然可以直接调用 (C) 封装的意义不大,因此在编码时尽量不要使用 (D) 封装的主要作用在于对外隐藏内部实现细节,增强程序的安全性

4. 下面关于Applet的说法正确的是: ( )

Applet也需要main方法

Applet必须继承java.awt.Applet

Applet能访问本地文件

Applet程序不需要编译

5.以下对继承的描述错误的是( )

(A) Java中子类只能继承单个父类。 (B) Java中子接口只能继承单个接口。 (C) Java中子类可以实现多个接口。 (D) 当实例化子类时会先实例化父类。

6.在使用super 和this关键字时,以下描述正确的是( ) (A) 在子类构造方法中使用super()显示调用父类的构造方法,super()必须写在子类构造方法的第一行,否则编译不通过 (B) super()和this()不一定要放在构造方法内第一行 (C) this()和super()可以同时出现在一个构造函数中 (D) this()和super()可以在static环境中使用,包括static方法和static语句块

7. 如果有一个对象myListener, 为了使myListener对象能够接受并处理来自于smallButton按钮对象的点击动作事件,myListener对象应该实现哪个接口? ( )

(A)ActionListener

(B)ItemListener

(C)MouseListener

(D)WindowListener

8. 下列情况中,不会使线程返回所持有的对象锁的是( )

(A) 当synchronized()语句块执行完毕

(B) 当调用了线程的suspend()方法 (C) 当在synchronized()语句块中出现异常(exception)

(D) 当持有锁的线程调用该对象的wait()方法

9.下列代码执行结果是什么? ( )

String s1 = \”ccc\”;

s1.concat(\”fff\”);

System.out.println(s1);

The string \”ccc\”.

The string \”cccfff\”.

The string \”fff\”.

The string \”fffccc\”

10. 当变量x是哪些值的时候输出包括\”Message 2\”,选出最完整的答案? ( )

switch(x)

{ case 1 :

System.out.println(\”Message 1\”);

case 2 :

case 3 :

System.out.println(\”Message 2\”);

case 4 :

System.out.println(\”End\”);

}

(A) 3 (B) 1 或 2 或 3 或 4

(C) 1 或 2 或 3 (D) 4

1.请简述String和StringBuffer的联系和区别。

2.请简述抽象类和接口的区别。

1. 请写出以下程序的输出结果。

public class Demo{

public static void main(String[] args) {

Integer a = new Integer(1);

Integer b = new Integer(2);

if(a==b)

System.out.println(“true”);

else

System.out.println(“false”);

}

}

2. 下面的代码执行结果是什么?

public class TestThis{

private int i=0;

TestThis increment(){

i++;

return this;

}

void print(){

System.out.println(i);

}

public static void main(String[] args){

TestThis x = new TestThis();

x.increment().increment().increment().print();

}

}

3.下列程序输出什么?

class J {

static void swap(String s0, String s1) {

String s = s0;

s0 = s1;

s1 = s;

}

public static void main(String args[]) {

String[] s = { \”1\”, \”2\” };

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

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

}

}

4. 读程序,写出正确的运行结果。

public class test {

static int m = 9;

public static void main(String[] args) {

test fd1 = new test();

fd1.m++;

test fd2 = new test();

System.out.println(fd1.m + “,” + fd2.m);

}

}

5. 阅读下列代码,写出运行结果。

public class Demo {

public static void main(String[] args) {

int i = 12;

System.out.println(i += i -= i *= i);

}

}

6. 阅读以下程序,写出运行结果。 class Q1{ public static void main(String args[ ]){ double d=1.23; Dec dec=new Dec( ); dec.decrement(d); System.out.println(d); } classs Dec{ public void decrement(double decMe){ decMe = decMe - 0.1; } }

四. 阅读程序,回答问题。(20分)

如果有这样一个Java源文件如下,阅读程序,回答下面几个问题:

public class Shelf{

public static void main(String[] arguments) {

System.out.println(\”Shelf!\”);

Book b = new Book();

b.get();

}

}

class Book {

public void get() {

System.out.println(\” book!\”);

}

}

class Student {

public void read() {

System.out.println (\”read a book!\”);

}

}

(1) 请写出这个文件的完整名称(3分)

(2) 请写出在命令行上如何编译这个文件(3分)

(3) 请写出这个文件编译后产生几个类文件(2分),它们的完整名称分别是什么?(6分)

(4) 请写出在命令行上如何运行这个程序?(2分)

(5) 这个程序的运行结果是什么?(4分)

Java程序设计试卷

JAVA程序设计试卷库(第5套)

一、单选题(每小题 2 分,共 20 分)

1、Java Application源程序的主类是指包含有( A )方法的类。

A. main方法 B. toString方法

C. init方法 D. actionPerfromed方法

2、分析下面的程序段,下面的哪个描述是正确的。( B )

char mychar=’c’;

switch(mychar){

default:

case ‘a’: System.out.println(“a”);break;

case ‘b’: System.out.println(“b”);break;

}

A. switch语句块是错误的,因为switch后面的表达式值的类型不是整数;

B. switch语句块是正确的;

C. switch语句块是错误的,因为default没有放在语句块的最后面;

D. 代码运行时,没有任何输出结果。

3、编译并运行下面的Java程序,将产生(  B  )结果。

class A{

    int var1=1;

     int var2;

     public static void main(String[] args){

    int var3=3;

   A a=new A();

System.out.println(a.var1+a.var2+var3);

}

}

A. 0 B. 4

C. 3 D. 代码无法编译,因为var2根本没有被初始化

4、在Java中,下面关于包的陈述中正确的是( D )。

A. 包的声明必须是源文件的任意位置;

B. 包的声明必须紧跟在import语句的后面;

C. 只有公共类才能放在包中;

D. 可以将多个源文件中的类放在同一个包中

5、 在Java语言中,当一个类的某个变量声明为protected时下列说法正确的是( C )。

A. 只有同一类中的成员才能访问它;

B. 不同包中的任何其他类都能够访问它;

C. 同包中的任何其他类能够访问它;

D. 不同包中的子类不可以访问该变量。

6、在Java中,执行下面的语句后,c的值为(  D  )。

String s= \”Jessica \”;

char c=s.charAt(6);

A. \”c \”   B. \”a \”

C. \’c \’ D. \’a \’

7、设有下面两个赋值语句:

a = Integer.parseInt(“1024”);

b = Integer.valueOf(“1024”).intValue();

下述说法正确的是( D )。

A.a是整数类型变量,b是整数类对象。

B.a是整数类对象,b是整数类型变量。

C.a和b都是整数类对象并且它们的值相等。

D.a和b都是整数类型变量并且它们的值相等。

8、事件剪裁类如WindowAdapter(它实现了WindowListener接口)的优点是什么? ( C )。

A. 继承了那个类的所有行为 ;

B. 子类自动成为监听器;

C. 没有必要实现不使用的任何WindowListener接口中定义的方法;

D.可以自动充当事件的监听者。

9、在用Java构建动画时,(C )方法创建新线程并启动它运行。

A. init() B. start()

C. run() D. paint()

10、下面哪一个选项能正确地创建一个InputStreamReader对象( A )。

A.new InputStreamReader(new FileInputStream(“data”))

B.new InputStreamReader(new FileReader(“data”))

C.new InputStreamReader(new BufferedReader(“data”))

D.new InputStreamReader(“data”)

二、填空题(每空格1分,共15分)

1、阅读下面的程序片段,在①中,parent类与child类之间是继承关系;在②中,parent类与child类之间包含。

① class parent{

int fields;

}

class child extends parent{

int fieldChild;

}

② class child{

int fieldsChild;

}

class parent {

child myChild;

}

2、Java中的多态有两种方式:子类对父类方法的覆盖、同类中方法的重载。

3、下面程的输出结果是:?吗对,上海自来水来自海上

public class turnString {

public static void main(String args[]) {

String s=“上海自来水来自海上,对吗?” ;

     for(int i=s.length( )-1;i>=0;i++)

System.out.println(s.charAt(i));

System.out.println():

}

}

4、Applet的init( )方法仅在开始时执行一次?start( )方法在用户每次访问包含Applet的HTML文件时都被调用?

5、创建一个FlowLayout的对象fd,使应用该布局管理器的各个组件都向右对齐排列。该对象的创建语句为:FlowLayout fd=new FlowLayout(FlowLayout.RIGHT);。

6、java.net包中定义的两个类Socket、ServerSocket;分别用来实现双向连接的Client和Server端。

7、巳知a=14,b=3,则表达式a<<b运算结果为:112;。

8、写出运行下面程序片段后的屏幕输出:0 1 2 i=3。

int i;

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

{

if(i==3)

break;

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

}

System.out.println(“i=”+i)

9、在Java Application程序中,一个类是主类的标志是包含main( )方法,在Java Applet程序中,一个类是主类的标志是该类是Applet类的子类;。

10、多态的概念是一个程序中同名的不同方法共存的情况。。

三、判断改错题(每题2分,共20分)(正确的打√,错误的打×并说明原因)

1、 Java系统包提供了很多预定义类,我们可以直接引用它们而不必从头开始编写程序。 (√ )

2、 程序可以用字符‘*’替代一个TextField中的每个字符的显示,使别人看不出其中的具体内容。( √)

3、 Class1类的属性被private修饰符修饰为私有变量,所以方法不能访问它。(×,Class1类自身的方法可以访问这个私有变量。 )

4、 如果p是父类Parent的对象,而c是子类Child的对象,则语句c=p是正确的。(×,如果p实际代表的是一个子类对象的引用,可以用强制类型转换成c=(Child)p;否则不能把父类对象赋值给子类对象。 )

5、 如果希望程序能够处理所有的异常,包括未知的异常,可以在所有的catch块后面加下catch(Exception e){}。(√ )

6、 TextComponent是一个抽象类,它的两个子类TextField和TextArea才拥有具体的对象。( √)

7、 一个Applet程序在运行过程中,创建的Frame窗框,当Applet或浏览器关闭时也会自动跟着关闭。(×,Frame与Applet平级,不受Applet的关闭的影响。 )

8、 判断下面程序片段的正确性。(×,Vector对象的addElement( )方法的参数类型为对象,所以myv.addElement(i)应改为所以myv.addElement(new Integer(i)); )

import java.util.*;

public class UseVector{

public static void main(String args[])

{

Vector myv=new Vector( );

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

myv.addElement(i);

}

}

9、 在Applet中显示一幅图像,首先要把它调入内存,保存在一个Image对象中,然后调用drawImage()方法画出这个图像。(√)

10、挂起、阻塞或等待的线程都能够恢复运行,但是停止运行的线程将不可能再运行(√)。

四、问答题(每小题10分,共30分)

1、 阅读下面的程序片段,并回答问题。

① Class1被称为是Class2的什么?Class2被称为是Class1的什么?

② Class1有哪些属性和方法?Class2有哪些属性和方法?其中哪些与Class1的属性和方法有关?

class Class1

{

 int field1;

private int field2;

void method1( )

 {

  System.out.println(“我是Class1的第一个方法”);

 }

  void method2( )

 {

  System.out.println(“我是Class1的第二个方法”);

 }

  }

class Class2 extends Class1{

int fieldChild1;

void methodchild1()

{

System.out.println(“我是Class2的第一个方法”);

 }

}

1、 阅读下面的程序片段,并回答问题。

① Class1被称为是Class2的什么?Class2被称为是Class1的什么?

答:Class1被称为Class2的父类,Class2被称为是Class1的子类。

② Class1有哪些属性和方法?Class2有哪些属性和方法?其中哪些与Class1的属性和方法有关?

答:Class1包括属性field1和field2,方法method1和method2;Class2包括自身定义的属性fieldChild1和自身定义的方法methodChild1,以及它从父类继承来的属性field1和方法method1、method2。

2、写出下面程序的功能

import java.applet.Applet;

import java.applet.Applet;

import java.awt.*;

import java.awt.event.*;

public class DataType extends Applet implements ActionListener

{ Label prompt=new Label(\”请分别输入整数和浮点数:\”);

TextField input_int=new TextField(6);

TextField input_double=new TextField(6);

TextField output=new TextField(35);

int getInt; double getDouble;

public void init() {

add(prompt); add(input_int); add(input_double);

add(output); output.setEditable(false); input_double.addActionListener(this);

}

public void actionPerformed(ActionEvent e) {

getInt=Integer.parseInt(input_int.getText());

getDouble=Double.parseDouble(input_double.getText());

output.setText(\”您输入了整数: \”+getInt+\”和浮点数:

\”+getDouble);

}

}

2、写出下列程序完成的功能

答:功能:从图形界面输入一个整数和一个浮点数,然后将其输出来。

3、 说明下面程序段是否有误,如有误,请将错误的地方指出来,并改正

Interface MyInterface

{

void method1();

}

abstract class Parent implements MyInterface

{ }

class Child extends Parend

{

void method1()

{

System.out.println(“I am implemented now!”);

}

}

3、说明下面程序是否有误,如有误,请将错误的地方指出来,并改正

答:接口中的方法都是public ,所以重载方法也必须声明为public.

class Child extends Parend

{

{

System.out.println(“I am implemented now!”);

}

}

五、用Java语言编写程序。(共15分)

假设用户输入一组整数被保存在Vector对象中,请定义一个类vecSort,用来求Vector对象中整数中的最大和最小数据。

要求:

1、 根据题目给出vecSort类应包含的属性和方法(5分)

2、 用Java语言定义类vecSort(10分)

五、用Java语言编写程序。(共15分)

参考代码:

class vecSort{

int max,min;

Vector x=new Vector();

vecSort(Vector y)

{

for(int i=0;i<y.size() ;i++)

x.addElement(y.elementAt(i) );

}

int getmax()

{ max=((Integer)(x.elementAt(0))).intValue() ;

for(int i=1;i<x.size();i++)

if(max<((Integer)(x.elementAt(i))).intValue())

max=((Integer)(x.elementAt(i))).intValue();

return max;

}

int getmin()

{ min=((Integer)(x.elementAt(0))).intValue() ;

for(int i=1;i<x.size();i++)

if(min>((Integer)(x.elementAt(i))).intValue())

min=((Integer)(x.elementAt(i))).intValue();

return min;

}

}

本文作者及来源:Renderbus瑞云渲染农场https://www.renderbus.com

点赞 0
收藏 0

文章为作者独立观点不代本网立场,未经允许不得转载。