一.判断题
1.Object是Java中所有类的共同父类。T
Object
是Java中所有类的共同父类。在Java中,每个类都直接或间接继承自Object
类。因此,Object
类中的方法(如equals()
、hashCode()
、toString()
等)都可以在任意Java对象上调用
2.Java语言的标识符不区分大小写。F
java中是严格区分大小写的
3.JAVA抽象类中一定含有抽象方法。T
Java抽象类中至少含有一个抽象方法
4.Java语言中,变量名可以用汉字表示。T
5.package语句必须放到java程序的最开始。T
6.JAVA中,一个接口允许继承多个接口。T
java 不支持多重继承(子类只能是一个父类) 为了克服单继承的缺点,Java使用了接口,一个类可以实现多个接口
7.String是Java中定义的基本数据类型。F
String 是一种类
8.Java的各种数据类型占用固定长度,与具体的软硬件平台环境无关。T
9.Java中数组的元素可以是简单数据类型的量,也可以是某一类的对象。T
10.一个Java源文件中可以有多个类,但只能有一个类是public的。T
main方法只有一个,public类是main方法的入口
11.如果Java源文件中包含了多个类,那么用编译器javac编译完源文件后将生成多个扩展名为.class的文件。T
12.Java系统的标准输入对象是System.in,标准输出对象有两个,分别是System.out和System.err。T
13.Java语言中的数组元素下标总是从0开始,下标可以是整数或整型表达式。T
14.在Java程序中,可以使用private来修饰一个类。T
private
关键字只能用于修饰类的成员(字段、方法、构造函数),不能修饰类本身
15.一个Java源文件就是由类和接口组成的。T
一个Java源文件可以包含一个或多个类和接口。但是,只能有一个公共(public)类,并且这个公共类的名称必须与文件名相同
16.Java中所有的I/O都是通过流来实现的。T
在Java中,所有的I/O都是通过流来进行的,包括文件I/O、网络I/O、控制台I/O等。通过使用流,程序可以灵活地读取和写入数据,并且可以方便地进行各种操作(例如缓冲、过滤、转换等
Java之I/O流_java中所有的i o都是通过流来实现的吗-CSDN博客
17.在Java中,含有抽象方法的类一定是抽象类。T
二.单选题
1.下列不可作为java语言标识符的是()。
A.a2
B.$2
C._2
D.22
2.有一段java 应用程序,它的主类名是a1,那么保存它的源文件名可以是( ).
A.a1.java
B.a1.class
C.a1
D.都对
源文件名的要求:名称和主类名一致,拓展名为java
3.Java中( ) 。
A.一个子类可以有多个父类,一个父类也可以有多个子类
B.一个子类可以有多个父类,但一个父类只可以有一个子类
C.一个子类可以有一个父类,但一个父类可以有多个子类
D.上述说法都不对
一个父类可以有多个子类,但是一个子类只能有一个父类。其中一个子类只能单继承一个父类
4.Java语言具有许多优点和特点,哪个反映了Java程序并行机制的特点?( )
A.安全性
B.多线性
C.跨平台
D.可移植
5.在Java中,一个类可同时定义许多同名的方法,这些方法的形式参数个数、类型或顺序各不相同,传回的值也可以不相同。这种面向对象程序的特性称为( )。
A.隐藏
B.覆盖
C.重载
D.Java不支持此特性
6.下列哪些语句关于Java内存回收的说明是正确的? ( )
A.程序员必须创建一个线程来释放内存
B.内存回收程序负责释放无用内存
C.内存回收程序允许程序员直接释放内存
D.内存回收程序可以在指定的时间释放内存对象
7.A派生出子类B,B派生出子类C,对于如下Java源代码正确的说法是()。
1. A a0 =new A(); 2. A a1 =new B(); 3. A a2 =new C();
A.只有第1行能通过编译
B.第1、2行能通过编译,但第3行编译出错
C.第1、2、3行能通过编译,但第2、3行运行时出错
D.第1行、第2行和第3行的声明都是正确的
8.以下关于继承的叙述正确的是( )。
A.在Java中类只允许单一继承
B.在Java中一个类只能实现一个接口
C.在Java中一个类不能同时继承一个类和实现一个接口
D.在Java中接口只允许单一继承
Java是单继承,但是可以实现多个接口。
9.编译Java源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为( )。
A..byte
B..class
C..html
D..ex
10.在Java中用什么关键字修饰的方法可以直接通过类名来调用?( )
A.static
B.final
C.private
D.void
java编程中直接用方法名来调用方法是本类中static修饰的方法,即静态方法可直接用方内法名来容调用方法”的意思。
11.在Java中,"456"属于( )类的对象。
A.int
B.String
C.Integer
D.Number
12.Java的集合框架中重要的接口java.util.Collection定义了许多方法。选项中哪个方法不是Collection接口所定义的?( )
A.int size()
B.boolean containsAll(Collection c)
C.compareTo(Object obj)
D.boolean remove(Object obj)
compareTo(Object obj)方法是java.lang.Comparable接口中的方法
13.在Java中,负责对字节代码解释执行的是( )。
A.应用服务器
B.虚拟机
C.垃圾回收器
D.编译器
14.下面说法正确的是( ) 。
A.JAVA中线程是非抢占式的
B.JAVA中的线程不可以共享数据
C.每个JAVA程序都至少有一个线程,即主线程
D.JAVA中的线程不可以共享代码
15.下面关于缺省构造方法的描述中正确的是( )。
A.当类中没有定义任何构造方法时,Java编译器将为这个类创建缺省构造方法
B.缺省构造方法可以初始化其他方法中定义的变量
C.Java编译器会为所有的类创建缺省构造方法。
D.如果在一个类中定义的构造方法都声明了参数,Java编译器将为这个类创建一个缺省构造方法
16.下面哪单词是Java语言的关键字( )。
A.Float
B.this
C.string
D.unsigned
17.下述哪条关于构造方法的说法,不符合Java语法的规定( )。
A.每个类至少有一个构造方法
B.构造方法必须与类同名
C.构造方法无返回值,其返回值类型必须写为void
D.构造方法可以是private的
18.以下关于Java的局部内部类的说法错误的是( )
A.局部内部类只能在当前类中使用
B.局部内部类不能包含静态成员
C.局部内部类可以访问外部类的所有成员
D.在局部内部类中定义的内部类不能被private修饰符修饰
Java基础 - 内部类02 - 局部内部类详解_什么是局部内部类-CSDN博客
19.对于下列代码:
String str1="java";String str2="java";String str3=new String("java");StringBuffer str4=new StringBuffer("java");
以下表达式的值为true的是( )
A.str1= =str2;
B.str1= =str4;
C.str2= =str3;
D.str3= =str4;
Java中String str1 = “123“;与String str1 = new String(“123”);的区别-CSDN博客
20.在Java中,能实现多重继承效果的方式是( )。
A.接口
B.继承
C.内部类
D.适配器
21.下列说法错误的一项是:( )。
A.Java中的第一个线程都属于某个线程组。
B.线程只能在其创建时设置所属的线程组。
C.线程创建之后可以从一个线程组转移到另一个线程组。
D.新建的线程默认情况下属于其父线程所属的线程组。
Java多线程(超详细!)-CSDN博客
22.如下程序输出( )
public class Test { public static void main(String[] args) {String s = "Java";StringBuilder buffer = new StringBuilder(s);change(s);System.out.println(s);}private static void change(String s) {s = s + " and HTML";}
}
A.Java
B.Java and HTML
C.and HTML
D.什么都不显示
23.以下代码输出( )。
public static void main(String[] args) {String[] tokens = "Welcome to Java".split("o");for (int i = 0; i < tokens.length; i++) {System.out.print(tokens[i] + " ");}}
A.
Welcome to Java
B.
Welc me to Java
C.
Welc me t Java
D.
Welcome t Java
- 调用"Welcome to Java"字符串对象的split方法,传入参数"o",表示以字母"o"作为分隔符进行分割。
2.循环结束后,程序执行完毕,输出结果为:"Welc me t Java "。
24.Java 语言的特点不包括( )
A.平台无关
B.面向对象
C.多重继承
D.支持多线程
25.在Java中,一个类可同时定义许多同名的方法,这些方法的形式参数个数、类型或顺序各不相同,传回的值也可以不相同。这种面向对象程序的特性称为( )。
A.隐藏
B.覆盖
C.重载
D.Java不支持此特性
26.某Java源文件代码如下,该源文件应如何命名?
public class A {int a;
}
class B {int b;
}
class C {public static void main(String[] args) {System.out.print("HELLO!");}
}
A.一定是A.java
B.一定是B.java
C.一定是C.java
D.不确定
如果 Java 程序源代码里定义了一个 public 类,则该源文件的主文件名必须与该 public 类(也就是该类定义使用了 public 关键字修饰)的类名相同。
27.Java源代码文件的扩展名为( )
A..txt
B..class
C..java
D..doc
java源文件名的后缀是:“.java”。java编译后的文件扩展名是:“.class”;
三.填空题
1.面向对象的三大特性,是封装性、继承性和多态性。
2.Java中,基本数据类型int对应的包装类是Integer
Java基础之int和Integer有什么区别_integer什么意思-CSDN博客
3.用二分法对数组a[12]进行查找,若待查元素为x,且a[3]<x<a[4],那么查找路径为6,3,4;用下标序列表示,用英文逗号隔开),查找长度为3,查找失败的情况等概率,那么,查找失败的平均长度为_____
4.类的封装的时候如果需要类中的属性私有化,可使用private关键字来修饰。
5.Java中定义一个类,需要使用class关键字。
6.在Java中使用String类型的实例对象表示一个不可变字符串。
7.创建一个名为 myPackage 的包的语句是package myPackage;
8.可以通过import关键字引用其它包中定义的类和接口。
9.Java中关键字final的作用相当于告诉编译程序,相应的类或方法不能变动、扩展或重写。而abstract则是告诉编译程序,相应的类或方法必须在完善定义之后才能使用。
10.写出以下程序段的运行结果。
int a = 2, b = 3, c = 1, d;
printf("%d\n", a > b == c);
printf("%d\n", d = a > b);
第1行输出0
第2行输出1
11.写出以下程序段的运行结果。
char ch = 'w';
int b = 0;
printf("%d\n", ch || (b = 10));
printf("%d\n", b);
第1行输出1
第2行输出0
12.写出以下程序段的运行结果。
int a = 1, b = 2, d = -5;
printf("%d\n", -a-5*b <= d + 1);
printf("%d\n", b == (a = 2));
第1行输出1
第2行输出1
13.Java中,抛出异常的关键字是throw
14.写出以下程序段的运行结果。
int a;
scanf("%d", &a);
if(a > 50) printf("%d", a);
if(a > 40) printf("%d", a);
if(a > 30) printf("%d", a);