一、单项选择题(20题;每题2分,共40分)
1、如果x=4,y=2,则z=x&y值是 。
A)z=0 B)z=1 C)z=2 D) z=4
答案A 难度系数 B 知识点:逻辑表达式运算
2、接口中定义的数据成员是 。
A)整型数据 B) 字符型数据 C)常量型数据 D)任何数据
答案C 难度系数 B 知识点:接口,数据成员
3、Java语言具有许多优点和特点,_______反映了Java程序并行机制的特点。
A) 安全性 B) 多线性
C) 跨平台 D) 可移植
答案:B;难度系数:C;知识点:java特性。
4、_______的类声明是正确的。
A)abstract final class HI{•••}
B)abstract private move(){•••}
C)protected private number;
D)public abstract class Car{•••}
答案:D;难度系数:B;知识点:语法基础。
5、Character流与Byte流的区别是_______。
A) 每次读入的字节数不同
B) 前者带有缓冲,后者没有
C) 前者是块读写,后者是字节读写
D) 二者没有区别,可以互换使用
答案:C;难度系数:B;知识点:文件IO。
6、在Applet中显示文字、图形等信息时,应使用的方法是__ _____。
A) paint() B) init() C) start() D) destroy()
答案:A(难度系数B ,知识点:APPLET)
7、下列语句正确的是________。
A)int a={1,2,3} B)int b=(1,2,3);
C)int c[]={1,2,3} D)int []d={1 2 3}
答案:C (难度系数C) 知识点:数组
8、下列语句关于内存回收的说明是正确的是___。
A)程序员必须创建一个线程来释放内存;
B)内存回收程序负责释放无用内存
C)内存回收程序允许程序员直接释放内存
D)内存回收程序可以在指定的时间释放内存对象
答案: B 难度系数: C 知识点:内存释放
9、编译Java Application 源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为___。
A) .java B) .class
C) .html D) .exe
答案: B 难度系数: C 知识点:基本概念
10、以下关于构造函数的描述错误的是___。
A) 构造函数的返回类型只能是void型。
B) 构造函数是类的一种特殊函数,它的方法名必须与类名相同。
C)构造函数的主要作用是完成对类的对象的初始化工作。
D)一般在创建新对象时,系统会自动调用构造函数。
答案: A 难度系数: B 知识点:类
11、以下描述正确的是___。A) JAVA不可以用来开发手机程序B) 在JAVA程序中java.awt包是唯一自动引入的类库C) java.io包是JAVA语言的输入输出类库D) JAVA的包中可以有相同的类名 答案:C (难度系数B) 知识点:JAVA简介,包
12、以下关于数组的描述有误的是____。A) 整型数组中的各元素的值必须是整型B) 数组是有序数据的集合C) 如数组名为ab,即ab.length可以取得该数组的长度D) 数组的下标从1开始答案:D (难度系数B) 知识点:数组
13、为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为___。
A)static void method( ) B) public void method( )
C) final void method( ) D) abstract void method( )
答案: A 难度系数: B 知识点:类方法
14、paint()方法使用_____类型的参数。
A) Graphics B) Graphics2D C) String D) Color
答案:A (难度系数B,知识点:applet)
15、有如下程序段
if (x>0){ System.out.println("first"); }
else if (x>-4){ System.out.println("second"); }
else { System.out.println("third"); }
x的取值在______范围内时,将打印出字符串"second".
A) x > 0
B)x > -4
C) x <= -4
D) x <= 0 & & x > -4
答案:D (难度系数C , 知识点:JAVA语言基本程序设计)
16、下列关于修饰符混用的说法,错误的是___。
A) abstract不能与final并列修饰同一个类 B) abstract类中不可以有private的成员
C)abstract方法必须在abstract类中 D)static方法中能处理非static的属性
答案: D 难度系数: A 知识点:关键字
17、下面___函数是public void aMethod(){...}的重载函数。
A) void aMethod( ){...}
B) public int aMethod(){...}
C) public void aMethod ( ){...}
D) public int aMethod ( int m){...}
答案: D (难度系数A,知识点:重载)
18、String s1 = new String(“Hello”);
String s2 = new String(“there”);
String s3 = new String();
上面是Java程序中的一些声明,选项中能通过编译的是______。
A) s3 = s1+ s2 B) s3 = s1 & s2
C) s3 = s1 || s2 D) s3 = s1 && s2
答案:A (难度系数C,知识点:字符串)
19、关于被私有访问控制符private修饰的成员变量,以下说法正确的是__。
A)可以被三种类所引用:该类自身、与它在同一个包中的其他类、在其他包中的该类的子类
B)可以被两种类访问和引用:该类本身、该类的所有子类
C)只能被该类自身所访问和修改
D)只能被同一个包中的类访问
答案: C 难度系数: B 知识点:关键字
20、在 Java 中,能实现多重继承效果的方式是_____。
A)内部类 B)适配器
C)接口 D)同步
答案:C;难度系数:B;知识点:java特性。
二、填空题(10题;每题2分,共20分)
1 根据程序的构成和运行环境的不同,Java源程序分为两类: 程序和 程序。
答案:应用程序 小应用程序 (难度系数C)知识点:JAVA简介
2 在Java程序中,通过类的定义只能实现 重继承,但通过接口的定义可以实现____ 重继承关系。
答案:单 、 多 (难度系数 B)知识点:类的继承
3、构造方法只能通过 运算符调用,用户不能直接调用。
答案:new (难度系数 B)知识点:构造方法
4、 Applet的生命周期是有init()、start()、stop()、destroy()这4个方法构成的,在程序执行过程中, 方法只被调用执行一次,但 start()方法可以多次被调用执行。
答案:init( ) (难度系数B)知识点:小应用程序
5、 是Java程序中基本的结构单位。
答案:对象 知识点:JAVA基础 难度系数C
6、在定义类时,指明类成员的权限修饰符有 、 和 。
答案public protected private 难度系数B 知识点:类的定义
7、数组x定义如下 int x[ ][ ]=new int[3][2] 则 x.length 的值为____________,x[0].length 的值为____________。
答案:3、2
难度系数: B 知识点:二维数组
8 用来定义一个类指定继承父类的关键字是 ,用来指定接口的继承的关键字是 。
答案:extends 、implements;难度系数:C;知识点:语法基础。
9 字符串分为两大类,一类是字符串常量,使用 类的对象表示;另一类是字符串变量,使用 类的对象表示。
答案:String、StringBuffer;难度系数:B;知识点:变量类型。
10 在子类中定义与父的相同的方法,若在多个子类中定义相同的方法,则可以调用不同子类中的相同方法而实现不同的功能,这实现了程序运行时的 。答案:多态;难度:C;知识点:面向对象基础。
三、判断题(10题;每题1分,共10分)
1. ( ) 所有的文件输入/输出流都继承于InputStream /OutputStream类。
答案:对 (难度系数B)知识点:数据流
2. ( ) 一个方法最多能有一个return语句。
答案:错 (难度系数B)知识点:类的方法
3.( ) 一个异常处理中 finally语句块只能有一个或者可以没有。
答案:对 (难度系数B)知识点:异常
4. ( )Java是区分大小写的语言,关键字的大小写不能搞错,如果把类class写成Class或者CLASS,都是错误的。
答案:对 (难度系数B)知识点:关键字
5.( )JAVA语言对内存的释放是采用垃圾自动回收机制。JAVA虚拟机自动判断并收集“垃圾”,但一般不立即释放它们的存储空间。
答案:对 (难度系数B)知识点:内存回收
6.( ) abstract和final不能同时修饰同一个类。
答案 对 难度系数 C 知识点:类的定义,修饰
7.( )java程序是由若干个类定义组成的。
答案 对 难度系数 C 知识点:程序结构
8.( )Java源程序编写好之后,以文件的形式保存在硬盘或U盘上,源文件的名字可以随便取的,它不一定与程序的主类名一致。
答案:错 (难度系数B)知识点:JAVA简介
9. ( )在Java中不允许一个方法在自身定义的内部调用自己。
答案:错 知识点:类 难度系数C
10.( )Java 源文件中最多只能有一个private类,其他类的个数不限。
答案:错;难度系数:C;知识点:编程基础。
四、程序填空题(1题;每题5分,共5分)
1.在空缺处填入正确的语句
class illegeE extends Exception
{
public String getMessage()
{
return "Error in the values supplied to the ";
}
}
class User
{
int val1;
(1) ;
public User(int a,int b)
{
val1=a;
val2=b;
}
void show() (2)
{
if((val1<0)||(val2>0))
throw new illegeE();
System.out.println("Value1="+val1);
System.out.println("value2="+val2);
}
}
class throwDemo
{
public static void main(String args[])
{
User values=new User(-1,1);
try
{
values.show();
}
(3)
{
System.out.println("illege :"+e.getMessage());
}
}
}
(难度系数B, 知识点:异常处理)
答案:(1)int val2 (2) throws illegeE (3) catch(illegeE e)
五、读程序写结果(2题;共5分)
1.写出下列程序在控制台窗口中的输出结果。
public class J_Test
{
public static void mb_method(StringBuffer x,StringBuffer y)
{
x.append(y);
y=x;
}
public static void main(String args[ ])
{
StringBuffer a=new StringBuffer(“A”);
StringBuffer b=new StringBuffer(“B”);
mb_method(a,b);
System.out.println( a+”,”+b);
}
}
程序运行结果是:
(难度系数 B)答案:AB,B 知识点:字符串
2.写出以下程序的运行结果。
class TwoObjects
{ public static void main(String[] args)
{ B b1=new B();
B b2=new B();
System.out.println(b1==b2);
System.out.println(b1!=b2);
System.out.println(b1.equals(b2));
}
}
class B
{ int x;
B( ){ x=1; }
}
程序运行结果是:
答案:false、true、false
难度系数: B 知识点:类的实现、比较
六、编程题(3题;共20分)
1编写程序求出10个整数的最大值和最小值、平均值。
(难度系数B,基本程序设计)
public class computer
{
int a[8]={6,10,3,17,20,19,5,27,2,30};
int i,sum=0,max=0,min=0,avg=0;
for(i=0;i<=7;i++)
{
sum=sum+a[i];
if(min>a[i]) min=a[i];
}
avg=sum/8;
System.out.println(“最大值=”+max);
System.out.println(“最小值=”+min);
System.out.println(“平均值=”+avg);
}
2、编写一个完整的Java Application 程序。包含接口ShapeArea,类Circle、Test,具体要求如下:
(1)接口ShapeArea:
接口方法
double getArea():求一个形状的面积
double getPerimeter ():求一个形状的周长
(2)类Circle:
实现ShapeArea接口,并有以下属性和方法:
① 属性
radius: double类型,表示圆的半径
②方法
Circle(double r):构造函数
toString()方法 :输出圆的描述信息,如“radius=1.0, perimeter=6.28, area=3.14”
(3)Test类作为主类要完成测试功能
①生成Circle对象
②调用对象的toString方法,输出对象的描述信息
难度系数:A 知识点:JAVA程序结构
答案:
// File: Test.java
//下面是具体的代码,要在命令提示符中运行,再者.记得给分哦!!_^_
//把下面的代码复制到同一个文件中,把名字改为:Test.java 然后编译,运行就可以了~
interface ShapeArea{
double getArea();
double getPerimeter();
}
class Rectangle implements ShapeArea{
double width;
double height;
public Rectangle(double w, double h){
this.width=w;
this.height=h;
}
public String toString(){
String s="width="+this.width+"\n";
s+="Height="+this.height+"\n";
s+="Perimeter="+this.getPerimeter()+"\n";
s+="Area="+this.getArea()+"\n";
return s;
}
public double getPerimeter(){
return 2*(width+height);
}
public double getArea(){
return height*width;
}
}
public class Test{
public static void main(String args[]){
if(args.length<2)
System.out.println("请在命令行输入两参数!");
double width=Integer.parseInt(args[0]);
double height=Integer.parseInt(args[1]);
Rectangle rec=new Rectangle(width,height);
System.out.println("该矩形的信息如下:");
System.out.println(rec);
}
}
3.调用类java.lang.Math的成员方法“public static double random()”运算下面表达式10000次,
(int) (Math.random()*20+0.5)
统计其中生成的整数0,1,2,…,20的个数分别是多少,并输出统计结果。
(难度系数 B)
答案: public class Count
{
public static void main(String[] args)
{
int c[]=new int[21];
int i,ran;
for(i=0;i
{
c[i]=0;
}
for(i=0;i<10000;i++)
{
ran=(int)(Math.random()*20+0.5);
c[ran]++;
}
for(i=0;i
System.out.println(i+" 出现的次数是: "+c[i]);
}
}
知识点:数组,循环
本文来源:https://www.2haoxitong.net/k/doc/33c37182eff9aef8951e067d.html
文档为doc格式