Java基础试题及其答案分析.docx
《Java基础试题及其答案分析.docx》由会员分享,可在线阅读,更多相关《Java基础试题及其答案分析.docx(18页珍藏版)》请在冰豆网上搜索。
![Java基础试题及其答案分析.docx](https://file1.bdocx.com/fileroot1/2023-1/25/33b20c1b-0e82-4e81-a350-25cf049a1a5d/33b20c1b-0e82-4e81-a350-25cf049a1a5d1.gif)
Java基础试题及其答案分析
Java试题
一单项选择
1)在Java中,在包com.db下定义一个类,要让包com.util下的所有类都可以访问这个类,
这个类必须定义为()。
()
a)protected
b)private
c)public
d)friendly
2)
在Java中,下列()语句不能通过编译。
(选择一项)
a)Strings=“join”+“was”+“here”;
b)Strings=“join”+3;
c)inta=3+5
d)floatf=5+5.5;
3)给定java代码如下,运行时,会产生()类型的异常。
(选择一项)
Strings=null;
s.concat(“abc”);
a)ArithmeticException
b)NullPointerException
c)IOException
d)EOFException
4)
在java中,()对象可以使用键/值的形式保存数据。
(选择一项)
a)ArrayList
b)HashSet
c)HashMap
d)LinkedList
5)
给定如下java代码,编译运行之后,将会输出()
。
publicclassTest{
publicstaticvoidmain(Stringargs[]){
inta=5;
System.out.println(a%2==1)?
(a+1)/2:
a/2)
;
}
}(选择一项)a)1
b)2c)2.5d)3
6)以下Java语句中,Stringstr=“123456789”;str=str.subString(1,3);执行后str中的值为。
(选择一项)
a)“23”
b)“123”
1
c)“12”
d)“234”
7)给定如下java代码,编译时会在()出现错误。
classParent{
}
classChildextendsParent{
publicstaticvoidmain(Stringargs[]){
Parentp1=newChild();//第一行
Parentp2=newParent();//第二行
Childc1=newChild();//第三行
Childc2=newParent();//第四行
}
}(选择一项)
a)第一行
b)第二行
c)第三行
d)第四行
8)给定如下java代码,编译运行时,结果是()。
(选择一项)
publicclassTest{
publicstaticvoidmain(Stringargs[]){
for(inti=0;i<3;i++){
System.out.print(i);
}
System.out.print(i);
}
}
a)编译时报错
b)正确运行,输出012
c)正确运行,输出123
d)正确运行,输出0123
9)Java语言中,Stringstr=”123456789”,System.out.println(str.indexOf(“5”)),输出结果为()。
(选择一项)
a)6
b)5
c)4
d)-1
10)在java中,已定义两个接口B和C,要定义一个实现这两个接口的类,以下语句正确的是()。
(选择一项)
a)interfaceAextendsB,C
b)interfaceAimplementsB,C
c)classAimplementsB,C
d)classAimplementsB,implementsC
11)下列说法中错误的一项是()
a)线程就是程序
2
b)线程是一个程序的单个执行流
c)多线程是指一个程序的多个执行流
d)多线程用于实现并发
12)给定JAVA代码,如下:
ClassParent{
publicvoidcount(){
System.out.println(10%3);
}
}
publicclassTestextendsParent{
publicvoidcount(){
System.out.println(10/3);
}
publicstaticvoidmain(Stringargs[]){
Parentp=newTest();
p.count();
}
}
运行编译后,输出结果是()。
(选择一项)
a)1
b)1.0
c)3
d)3.3333333333333335
13)给定某java程序的main方法,如下;(选择一项)
publicstaticvoidmain(String[]args){
inti=0;
System.out.println(i++);
}
a)0
b)1
c)编译错误
d)运行时出现异常
14)给定java程序,如下:
编译运行Test.java,结果是()。
(选择一项)
publicclassTest{
privatestaticfinalintcounter=10;
publicstaticvoidmain(String[]args){
System.out.println(++counter);
}
}
a)10
b)11
c)编译错误
d)运行时出现异常
3
15)下列哪个一个操作不能使线程从等待阻塞状态进入对象阻塞状态(D)
a)等待阴塞状态下的线程被notify()唤
b)等待阻塞状态下的纯种被interrput()中断
c)等待时间到
d)等待阻塞状态下的线程调用wait()方法
16)在JAVA中,要创建一个新目录,要使用()类的实例。
(选择一项)
a)File
b)FileOutputStrean
c)PrintWriter
d)Dir
17)
在java
中,下列(
)类不能派生出子类
.(选择一项)
a)public
class
MyClass{
}
b)class
MyClass{
}
c)abstract
class
MyClass{
}
d)final
class
MyClass{
}
18)
在java
中,以下(
)命令能够将
java源文件编译为类文件
(选择一项)
a)java
b)javaw
c)javac
d)jar
19)在JAVA中,要判断D盘下是否存在文件abc.txt,应该使用以下()判断语句。
(选择一项)
a)if(newFile(“d:
abc.txt”).exists()==1)
b)if(File.exists(“d:
abc.txt”)==1)
c)if(newFile(“d:
/abc.txt”).exists())
d)if(File.exists(“d:
/abc.txt))
20)给定JAVA代码,如下:
编译运行,结果是(
)。
(选择一项)
publicstaticvoid
main(string[]args)
{
Strings;
System.out.println(“s=”+s);
}
a)
编译错误
b)
编译通过,但出现运行是错误
c)
正常运行,输出
s=null
d)
正常运行,输出
s=
21)给定一个java程序的main方法的代码片段如下:
假如d目录下不存在abc.txt文件,
现运行该程序,下面的结果正确的是()。
(选择一项)
try{
PrintWriterout=newPrintWriter(newFileOutputStream(“d:
/abc.txt”));
Stringname=”chen”;
out.print(name);
4
out.close();
}
catch(Execptione){
System.out.println(“文件没有发现!
“);
}
a)将在控制台上打印:
“文件没有发现!
”
b)正常运行,但没有生成文件abc.txt
c)运行后生成abc.txt,但该文件中无内容
d)运行后生成abc.txt,该文件内容为:
chen
22)
下列哪个方法可以使线程从运行状态进入其他阻塞状态(
A)
a)sleep
b)wait
c)yield
d)start
23)
给定某java
程序的main
方法如下,该程序的运行结果是
()(选择一项)。
publicstaticvoidmain(String[]args){
booleanboo=true;
if(boo==false){
System.out.println("a");
}else{
System.out.println("b");
}
a)ab)bc)cd)d
24)下列选项中,不属于Java语言的关键字的是()。
(选择一项)
a)import
b)malloc
c)extends
d)new
25)在JAVA中,()类提供定位本地文件系统,对文件或目录及其属性进行基本操作。
(选择
一项)
a)Filelnputstream
b)FileReader
c)Filewriter
d)File
26)在JAVA中,()关键字用来终止循环语句。
(选择一项)
a)return
b)continue
c)break
d)exit
27)给定java代码,如下,编译运行后,结果是0。
(选择一项)
publicclassTest{
staticStrings;
publicstaticvoidmain(Stringargs[]){
charc=s.charAt(0);System.out.println(c);}}
a)编译错误
b)运行期异常,异常类型为NullPointerException
5
c)运行期异常,异常类型为ArithmeticExceptioin
d)正确运行,但无输出内容
28)给定Java代码如下,关于super的用法,以下描述正确的是()。
(选择一项)
classCextendsB{
publicC(){
super();}}
a)用来调用类B中定义的super()方法
b)用来调用类C中定义的super()方法
c)用来调用类B的无参构造方法
d)用来调用类B中第一个出现的构造方法
29)给定java代码如下,编译运行,结果是()。
(选择一项)publicstaticvoidmain(String[]args){
inti;
System.out.println(“i=“+i);
}
a)编泽错误
b)运行时出现例外
c)正常运行,输出i=-1
d)正常运行,输出i=0
30)研究下面的Java代码,当x=2时,运行结果是()。
(选择一项)switch(x){
case1:
System.out.println
(1);case2:
case3:
System.out.println(3);
Case4:
System.out.println(4);
}
a)没有输出任何结果b)输出结果为3
c)输出结果是3和4d)输出结果是l、3和4
31)类java.util.HashMap实现了()接口。
(选择一项)
a)Collection
b)Set
c)Map
d)List
32)在Java中,com包中某类的方法使用下列()访问修饰符修饰后,可以被com.db包中的子类访问,但不能被com.db中其他类访问。
(选择一项)
a)private
b)protected
c)public
d)friendly
33)在java中,使用关键字来定义一个接口。
(选择一项)
a)classb)interface
c)extendsd)implements
34)在java中,()接口位于集合框架的顶层(选择一项)
6
a)Mapb)Collectionc)Setd)List
35)Java中,byte数据类型的取值范围是()。
(选择一项)
a)-256
至255
b)-255
至255
c)-128
至127
d)-127
至128
36)分析如下JAVA代码片段,输出结果为().(选择一项)
intprice=10;intnumber=0;intmonney=0;for(inti=0;i<2;i++){
number++;
--price;
monney+=number*price;
}
System.out.println(monney);
a)25b)28c)31d)30
37)给定java代码如下,编译运行后,输出结果是()(选择一项)。
publicclasstest{
staticinti;
publicintaMethod(){
i++;
returni;
}
publicstaticvoidmain(Stringargs[]){
Testtest=newTest();
test.aMethod();
System.out.println(test.aMethod());
}}
a)0b)1c)2d)3
38)在java的异常处理模型中,无论是否发生异常,()块中的代码都会被执行。
(选择一项)
a)try
b)catch
c)finally
d)throw
39)在java中,以下代码()正确地创建了一个InputStreamReader类型的对象。
e)newInputStreamReader(newFileInputStream("1.dat"));
f)newInputStreamReader(newFileReader("1.dat"));
g)newInputStreamReader(newBufferedReader("1.dat"));
h)newInputStreamReader("1.dat");
40)在java中,访问修饰符限制性最高的是()。
i)private
j)protected
k)public
l)friendly
41)分析如下的Java代码段,()编译没有异常和错误(选择一项)
a)byteb=257;
b)booleanb=null;
7
c)floatf=1.3;
d)inti=12;
42)在Java的异常处理中,用户自定义的异常类应该是()的子类。
(选择一项)
a)Exception
b)Throwable
c)Error
d)RuntimeException
43)在Java中,如果父类中的某些方法不包含任何逻辑,并且需要由子类重写,应该使用
()关键字来声明父类的这些方法。
(选择一项)
a)final
b)static
c)abstract
d)void
44)在Java中,关于HashMap类的描述,以下说法错误的是()。
(选择一项)
a)HashMap使用键/值的形式保存数据
b)HashMap能够保证其中元素的顺序
c)HashMap允许将null用作键
d)HashMap允许将null用作值
45)在JAVA中,无论测试条件是什么,下列()循环将至少执行一次。
(选择一项)
a)for
b)do⋯while
c)while
d)while⋯do
46)在Java中,下列代码运行后的输出结果是()。
(选择一项)intx=5*3;
inty=x+5/x+3;System.out.println(y);
a)18
b)21
c)19
d)4
47)分析下面这段Java代码,它的运行结果是()。
(选择一项)
importjava.io.*;
publicclassB{
publicstaticvoidmain(String[]args){
inti=12;
System.out.println(i*=++i);
}
}
a)145
b)169
c)156
d)程序无法编译
8
48)在Java中,下面这段代码运行后的结果是()。
(选择一项)
classFatherClass{
finalprotectedvoidfaMethod(){
System.out.println(“这是父类中的方法”);
}
}
classSonClassextendsFatherClass{
publicvoidfaMethod(){
System.out.println(“这是子类中的方法”);
}
publicstaticvoidmain(String[]args){
FatherClassobj=newSonClass();
obj.faMethod();
}
}
a)这是父类中的方法
b)这是子类中的方法
c)这是父类中的方法这是子类中的方法
d)编译错误
二多项选择
49)在Java中,下面关于变量及其作用域的描述错误的是()
a)实例变量是存放在方法区中
b)实例变量用关键字static声明
c)在方法中定义的局部变量在该方法被执行时创建
d)局部变量在使用前必须被初始化
50)给定Java代码,如下:
abstractclassShape{
abstractvoiddraw();
}
要创建Shape类的子类Circle,以下代码正确的是()(选择二项)
a)classCircleextendsShape{
intdraw(){}
}
b)abstractclassCircleextendsShape{
}
c)classCircleextendsShape{
voiddraw();
}
d)classCircleextendsShape{
voiddraw(){}
9
}
51)给定一个Java程序的方法结构如下;以下方法体实现语句正确的是()。
(选择两项)publicIntegerchange(inti){
}
a)Integerint=newInteger(i);returnint;
b)Integert=Integer.valueOf(i);returnt;
c)returnnewInteger(i);
d)returni;
52)给定JAVA程序Test.java,如下:
packagecom;
publicclassTest{
publicvoidtalk(){}
protectedvoidwalk(){}
privatevoidclimb(){}
privatevoidjump(){}
给定Test的子类Test2,代码如下:
Packagecom.util;
Importcom.*;
PublicclassTest2extendsTest
{
Publicstaticvoidmain(String[]args)
{
Test2tt=newTest2();
//A
}
}
可以在Test2的A处加入的代码是()。
(选择二项)
a)tt.talk();
b)tt.walk();
c)tt.climb();
d)tt.jump();
53)在JAVA语言中,下面变量命名合法的有()。
(选择二项)
a)variable123
b)123varible
c)private
d)variable_123
54)给定一段JAVA代码如下:
要打印出list中存储的内容,以下语句正确的是()。
(选择二项)
ArrayListlist=newArrayList();
list.add(“a”);
10
list.add(“b”);
Iteratorit=list.iterator();
a)while(it.hasNext())system.out.println(it.next());
b)for(inti=0;ic)while(list.hasNext())system.out.println(list.next());
d)for(inti=0;i55)在Java中,下列()是合法的变量名。
(选择二项)
m)_myString
n)$a+b
o)myString
p)9myString
在java中,下面()是不合法的声明。
(选择两项)
q)shortx[]
r)short[]y
s)short[5]x2
t)shortz2[5]
56)以下()不是Java的原始数据类型。
(选择二项)
a)short
b)Booleam
c)unit
d)float
57)给定如下Java代码,编译运行时,以下()语句的值是true。
(选