第一单元Java基础知识测样
班级___________姓名:_____________得分:_____________
一、选择题(每题2分,共40分)
1、下面哪项可以得到数组元素的个数,java中定义数组名为abc,(B)
A、abc.length()
B、abc.length
C、len(abc)
D、ubound(abc)
2、构造方法何时被调用(B)
A.类定义时
B.创建对象时
C.调用对象方法时
D.使用对象的变量时
3、下列语句片段int a=10,b=4,c=20,d=6;System.out.println(a++*b+c*--d);的结果为
(C)
A.144
B.28
C.140
D.不能执行
4、下面哪个修饰符修饰的方法只能被本类中的其他方法使用(C)
A、protected
B、static
C、private
D、public
5、编译并运行下述程序段的结果是:(A)。
public class Test{
public static void main(String argv[]){
int[]count=new int[4];
System.out.println(count[4]);}}
A.编译时错误B.运行时错误C.输出0D.输出null
6、在java的一个异常处理中,哪个语句块可以有多个(A)
A、catch
B、finally
C、try
D、throws
7、若在某一个类定义中定义有如下的方法:
final void aFinalFunction();
则该方法属于(C)。
A.本地方法B.静态方法C.最终方法D.抽象方法
9、类Test1定义如下:
1)public class Test1{
2)public float aMethod(float a,float b){}
3)
4)}将以下哪种方法插入行3是不合法的。(B)
A、public float aMethod(float a,float b,float c){}
B、public float aMethod(float c,float d){}
C、public int aMethod(int a,int b){}
D、private float aMethod(int a,int b,int c){}
10、Java程序的执行过程中用到一套JDK工具,其中是指(B)
A.Java文档生成器
B.Java解释器
C.Java编译器
D.Java类分解器
11、在异常处理中,如释放资源、关闭文件、关闭数据库等由(C)来完成。
<子句
B.catch子句
C.finally子句
D.throw子句
12、定义一个类名为“MyClass.java”的类,并且该类可被一个工程中的所有类访问,那么该类的正确声明应为:(C)
A.private class MyClass extends Object
B.class MyClass extends Object
C.public class MyClass
D.protected class MyClass extends Object
13、给出如下代码:
class Test{
private int m;
public static void fun(){
//}}
如何使成员变量m被函数fun()直接访问?(C)
A、将private int m改为protected int m
B、将private int m改为public int m
C、将private int m改为static int m
D、将private int m改为int m
14、A派生出子类B,B派生出子类C,并且在Java源代码中有如下声明:
1)A a0=new A();
2)A a1=new B();
3)A a2=new C();
问以下哪个说法是正确的?(D)
A.只有第1行能通过编译
B.第1、2行能通过编译,但第3行编译出错
C.第1、2、3行能通过编译,但第2、3行运行时出错
D.第1行、第2行和第3行的声明都是正确的
15、下面哪个语句(初始化数组)是不正确的:(B)
A.int x[]={1,2,3};B.int x[3]={1,2,3};java重写和重载的区别
C.int[]x={1,2,3};D.int x[]=new int[]{1,2,3};
16、下述概念中不属于面向对象方法的是(D)。
A.对象、消息B.继承、多态
C.类、封装D.过程调用
17、下面哪条语句把方法声明为抽象的公共方法?(B)
A.public abstract method();B.public abstract void method();
C.public abstract void method(){}D.public void method()extends abstract;
18、在java中如果要在字符串类型对象s=“JAVA”,中出”V‟出现的位置可使用下面哪个法:(C)
A.mid(2,s);
B.charAt(2);
C.s.indexOf(“V‟);
D.indexOf(s,‟V‟);
19、给出下面代码:
public class Person{
static int arr[]=new int[10];
public static void main(String a[])
{
System.out.println(arr[1]);
}
}
哪个语句是正确的?(B)
A.编译时将产生错误;
B.输出零;
C.编译时正确,运行时将产生错误;
D.输出空。
20、哪个关键字可以抛出异常?(C)
A、transient
B、finally
C、throw
D、static
二.填空题(20分)
1.面向对象的3个特性是多态、继承性和封装。
2.如果想在对象实例化的同时就初始化成员属性,则使用构造函数。
3.实体方法和构造方法不能修饰为abstract?
4.编译Java Application源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为类名.class。
5.异常处理过程中,一个try程序块可以对应多个catch块。
6.Java程序在extends之后只能有一个父类,即extends只能实现1继承。
7.分别用__class_关键字来定义类,用_new__关键字来分配实例存储空间。
三.简答题(20分)
1.写出Java中8种基本数据类型?
整数类型:byte、short、int、long
浮点类型:float、double
字符型:char
布尔型:boolean
2.简述break和continue语句在使用时的区别?
break语句作用:1、可以用来从循环体内跳出循环体,即提前结束循环,接着执行循环下面的语句。2、使流程跳出switch结构。
continue语句作用:结束本次循环,即忽略循环体中continue语句下面尚未执行的语句,接着进行下一次是否执行循环的判定。
continue语句和break语句的区别:continue语句只结束本次循环,而不是终止整个循环的执行。break语句则是结束整个循环过程,不再判断执行循环的条件是否成立。break 语句可以用在循环语句和switch语句中。在循环语句中用来结束内部循环;在switch语句中用来跳出switch语句。
3.方法重写要符合什么条件?和方法重载有什么区别?
方法重载:就是在同一个类中,方法的名字相同,但参数个数、参数的类型或返回值类型不同!方法重写:它是指子类和父类的关系,子类重写了父类的方法,但方法名、参数类型、参数个数必须相同!
4.抽象类和抽象方法有什么特点?
答:①一个抽象类里可以没有抽象方法,但含有抽象方法的类必定为抽象类。
②抽象类不能被实例化为对象,而只能作为其它类的超类,并且必须被继承。
③若某子类继承自一个抽象类,而该子类不是抽象类,则子类需用覆盖的方式来实例化超类中的所有抽象方法。抽象方法可再与public、protected复合使用,但不能与final、private 和static复合使用。
④抽象方法只有方法声明,不能有方法体。
5.简述异常处理的过程。
程序运行时出现错误时,创建异常对象,抛出异常对象,捕获该异常对象并进行处理。
四.代码题(20分)
1.使用Scanner定义数组的长度,循环赋值给数组,并计算出数组里的最大值、最小值、平均值与元素之和。
2.定义任意长度的数组,使用冒泡排序对数组进行降序排列。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。