Sun Java程序员模拟题.docx
《Sun Java程序员模拟题.docx》由会员分享,可在线阅读,更多相关《Sun Java程序员模拟题.docx(42页珍藏版)》请在冰豆网上搜索。
SunJava程序员模拟题
SunJava程序员模拟题
1.JDK由组成以下哪几部分组成?
(选三项)
A.Java编程语言
B.工具及工具的API
C.JavaEE扩展API
D.Java平台虚拟机
2.以下哪些包是Java标准库中常用的包?
(选三项)
A.javax.servlet.http
B.java.lang
C.java.util
D.java.sql
3.使用JDK工具生成的Java文档的文件格式是?
A.XML格式
B.HTML格式
C.二进制格式
D.自定义格式
4.以下关于Applet的描述,哪项错误?
A.一个Applet就是一段Java程序
B.Applet是一种特殊的Java程序,它需要运行在Web服务器上
C.Applet是一种特殊的Java程序,它需要运行在Web浏览器上
D.Applet是一种JavaSE平台的应用程序
5.下列有关类、对象和实例的叙述,正确的是哪一项?
A.类就是对象,对象就是类,实例是对象的另一个名称,三者没有差别
B.类是对象的抽象,对象是类的具体化,实例是对象的另一个名称
C.对象是类的抽象,类是对象的具体化,实例是对象的另一个名称
D.类是对象的抽象,对象是类的具体化,实例是类的另一个名称
6.下列有关main()方法的签名正确的是哪些?
(选两项)
A.publicstaticvoidmain(String[]args){}
B.publicstaticvoidmain(){}
C.publicstaticvoidmain(Stringargs[]){}
D.publicvoidstaticmain(String[]args){}
7.下列有关类声明的代码片段,哪一项是正确的?
A.importjava.sql.*;
packageschool;
classStudent{
}
B.packageschool;
importjava.sql.*;
classStudent{
}
C.packageschool;
classStudent{
}
importjava.sql.*;
D.packageschool;
importjava.sql.*;
privateStringname;
classStudent{
}
8.现有:
1.classTestFoo{
2.intx;
3.Stringy;
4.intgetX(){returnx;}
5.StringgetY(){returny;}
6.voidsetX(intx){
7.intz=7;
8.this.x=x;
9.}
10.}
可以添加多少个修饰符来封装此类?
A.2
B.3
C.4
D.5
9.有关new关键字的描述正确的是哪项?
A.new会调用类的构造器来创建对象
B.new所创建的对象不占用内存空间
C.创建对象实例的时候可以不使用new关键字
D.new所创建的对象一定存在引用变量
10.下述代码执行后,有几个引用变量和几个对象?
Studentstu=newStudent(“Mike”);
Studentstua;
Stua=stu;
A.2个引用变量,1个对象
B.1个引用变量,1个对象
C.2个引用变量,2个对象
D.1个引用变量,2个对象
11.下列关于Java对象清除的叙述正确的是哪项?
A.对象被创建后,立刻变成垃圾对象
B.任何不再被引用的对象都是垃圾收集的对象
C.一旦对象失去引用,垃圾收集器立刻把它从内存中清除
D.Java对象的清除必须自己手动处理
12.下列哪项不是int类型的字面量?
A.20
B.077
C.0xABBC
D.\u03A6
13.类Student代码如下:
classStudent{
Stringname;
intage;
Student(Stringnm){
name=nm;
}
}
执行语句Studentstu=newStudent()后,字段age的值是哪项?
A.0
B.null
C.false
D.编译错误
14.下列哪项不是Java语言中所规定的注释样式?
A.//单行注释
B.--单行注释
C./*
*单行或多行注释
*/
D./**
*文档注释
*/
15.下列哪项不是Java语言的关键字?
A.goto
B.instanceof
C.sizeof
D.volatile
16.现有:
3.classParserextendsUtils{
4.publicstaticvoidmain(String[]args){
5.System.out.print(newParser().getInt("42"));
6.}
7.intgetInt(Stringarg){
8.returnInteger.parseInt(arg);
9.}
10.}
11.classUtils{
12.intgetInt(Stringarg)throwsException{return42;}
13.}
结果为:
A.42
B.编译失败。
C.无输出结果。
D.运行时异常被抛出。
17.现有:
1.interfaceAltitude{
2.//insertcodehere
3.}
和4个声明:
intHIGH=7;
publicintHIGH=7;
abstractintHIGH=7;
interfaceintHIGH=7;
分别插入到第2行,有多少行可以编译?
A.0
B.1
C.2
D.3
E.4
18.类Teacher:
classTeacher{
Stringname;
floatsalary;
Teacher(Stringname){
this.name=name;
}
Teacher(Stringname,floatsalary){
this.name=name;
this.salary=salary;
}
}
执行语句Teachert=newTeacher(“Tom”,2000.0f);后,字段salary的值是哪一项?
A.2000.0f
B.0.0f
C.null;
D.2000
19.Java语言中表达式10/3的结果是哪项?
A.3.3
B.3.33
C.3
D.3.0
20.Java语言中表达式-12>>3的结果是哪项?
A.-4
B.-9
C.-1
D.-2
21.下列赋值语句正确的是哪一项?
A.longval=6;
B.intage=23L;
C.shortx=1,y=2,z
z=x+y;
D.inta=‘A’;
22.假设有2个整数x和y,表达式x>=y?
x:
y的含义是哪项?
A.求2个数的较大数
B.求2个数的较小数
C.把y的值赋给x
D.把x的值赋给y
23.程序:
classTestApp{
publicstaticvoidmain(String[]args){
for(inti=0;i<5;i++)
System.out.print(i+1);
System.out.println(i);
}
}
上述程序运行后的结果是哪项?
A.123456
B.123455
C.123450
D.编译错误
24.程序:
classTestApp{
publicstaticvoidmain(String[]args){
for(inti=0;i<10;i++){
if(i==3)
break;
System.out.print(i);
}
}
}
程序运行后的输出是哪项?
A.0123
B.012
C.0123456789
D.012456789
25.程序:
classTestApp{
publicstaticvoidmain(String[]args){
System.out.println(multiply(2,3,4,5));
}
publicintmultiply(int[]nums){
intresult=1;
for(intx:
nums)
result*=x;
returnresult;
}
}
程序运行后的输出是哪项?
A.14
B.编译错误
C.120
D.24
26.程序:
classTestReference{
publicstaticvoidmain(String[]args){
intx=2;
TestReferencetr=newTestReference();
System.out.print(x);
tr.change(x);
System.out.print(x);
}
publicvoidchange(intnum){
num=num+1;
}
}
程序运行后的输出是哪项?
A.23
B.21
C.22
D.编译错误
27.运行时,数组以哪种方式存在?
A.对象
B.基本类型变量
C.引用类型变量
D.视具体情况而定
28.现有:
publicinterfaceA{}
以下哪项声明是合法的?
A.Aa=newA();
B.A[]a=newA[];
C.A[]a=newA[10];
D.以上皆错
29.已知数组array,其最后一个元素的下标是?
A.array.size
B.array.length
C.array.size-1
D.array.length-1
30.为将数组myArray的长度由6改为10,现采取以下编码:
int[]myArray=newint[6];
myArray=newint[10];
代码执行后,以下叙述哪项是正确的?
A.数组myArray的长度已由6改为10,其中前6个元素的值不变,后四个元素的值为空。
B.数组myArray的长度已由6改为10,其中前6个元素的值不变,后四个元素需再经过初始化后才能使用。
C.数组myArray的长度已由6改为10,原来6个元素的值全部丢失。
D.数组myArray的长度没有变化。
31.下列关于继承优点的叙述正确的是哪几项?
(选三项)
A.可以创建更为特殊的类型
B.消除重复代码
C.便于维护
D.执行效率高
32.下列有关父类属性和方法继承规则的描述错误的是哪项?
A.父类中private修饰的属性和方法在子类中不被继承
B.父类中public修饰的属性和方法在子类中被继承且可访问
C.父类中protected修饰的属性和方法在子类中被继承且可访问
D.父类中default修饰的属性和方法在子类中被继承,若父类和子类在同一个包中,则也可访问
33.publicclassParent{
publicvoidchange(intx){}
}
publicclassChildextendsParent{
//覆盖父类change方法
}
下列哪个声明是正确的覆盖了父类的change方法?
A.protectedvoidchange(intx){}
B.publicvoidchange(intx,inty){}
C.publicvoidchange(Strings){}
D.publicvoidchange(intx){}
34.publicclassEmployee{
privateStringname;
publicEmployee(Stringname){
this.name=name;
}
publicStringgetName(){
returnname;
}
}
publicclassManagerextendsEmployee{
publicManager(Stringname){
System.out.println(getName());
}
}
执行语句newManager(“smith”)后程序的输出是哪项?
A.smith
B.null
C.编译错误
D.name
35.publicclassEmployee{
privateStringname;
publicEmployee(Stringname){
this.name=name;
}
publicStringgetName(){
returnname;
}
}
publicclassManagerextendsEmployee{
privateStringdepartment;
publicManager(Stringname,Stringdepartment){
this.department=department;
super(name);
System.out.println(getName());
}
}
执行语句newManager(“smith”,”SALES”)后程序的输出是哪项?
A.smith
B.null
C.SALES
D.编译错误
36.publicclassPet{
privateStringname;
publicPet(){
System.out.print
(1);
}
publicPet(Stringname){
System.out.print
(2);
}
}
publicclassDogextendsPet{
publicDog(Stringname){
System.out.print(3);
}
}
执行newDog(“棕熊”);后程序输出是哪项?
A.23
B.13
C.123
D.321
37.publicclassPet{
privateStringname;
publicPet(){
System.out.print
(1);
}
publicPet(Stringname){
System.out.print
(2);
}
}
publicclassDogextendsPet{
publicDog(){
System.out.print(4);
}
publicDog(Stringname){
this();
System.out.print(3);
}
}
执行newDog(“棕熊”);后程序输出是哪项?
A.143
B.423
C.243
D.1134
38.publicclassPet{
privateStringname;
publicPet(){
System.out.print
(1);
}
publicPet(Stringname){
System.out.print
(2);
}
}
publicclassDogextendsPet{
publicDog(){
System.out.print(4);
}
publicDog(Stringname){
super(name);
System.out.print(3);
}
}
执行newDog(“棕熊”);后程序输出是哪项?
A.33
B.13
C.23
D.123
39.publicclassEmployee{
privateStringname;
publicEmployee(Stringname){
this.name=name;
}
publicvoiddisplay(){
System.out.print(name);
}
}
publicclassManagerextendsEmployee{
privateStringdepartment;
publicManager(Stringname,Stringdepartment){
super(name);
this.department=department;
}
publicvoiddisplay(){
System.out.println(super.display()+”,”+department);
}
}
执行语句newManager(“smith”,”SALES”)后程序的输出是哪项?
A.smith,SALES
B.null,SALES
C.smith,null
D.null,null
E.编译错误
40.如果想要一个类不能被任何类继承的话,需要使用哪个关键字来修饰该类?
A.abstract
B.final
C.static
D.new
41.Java语言中常量的定义是哪项?
A.publicstatic
B.publicstaticfinal
C.final
D.publicstaticabstract
答案:
B
42.为了使得System.out.println()输出对象引用的时候得到有意义的信息,我们应该覆盖Object中的哪个方法?
A.equals
B.hashCode
C.toString
D.notify
43.表达式”hello”instanceofString返回的值是哪项?
A.true
B.false
C.1
D.0
E.hello
44.程序:
classMyDate{
privateintyear;
privateintmonth;
privateintday;
publicMyDate(intyear,intmonth,intday){
this.year=year;
this.month=month;
this.day=day;
}
//OverrideMethod
}
为了让newMyDate(1980,11,9)==newMyDate(1980,11,9)返回true,必须在OverrideMethod处覆盖哪个方法?
A.hashCode
B.equals
C.toString
D.notify
45.publicclassPet{
privateStringname;
publicPet(Stringname){
this.name=name;
}
publicvoidspeak(){
System.out.print(name);
}
}
publicclassDogextendsPet{
publicDog(Stringname){
super(name);
}
publicvoidspeak(){
super.speak();
System.out.print(“Dog”);
}
}
执行代码
Petpet=newDog(“京巴”);
pet.speak();
后输出的内容是哪项?
A.京巴
B.京巴Dog
C.null
D.Dog京巴
46.publicclassPet{
privatestaticStringname;
publicPet(Stringname){
this.name=name;
}
publicvoidspeak(){
System.out.print(name);
}
}
publicclassDogextendsPet{
publicDog(Stringname){
super(name);
}
publicvoidspeak(){
super.speak();
System.out.print(“Dog”);
}
}
执行代码
Petpet=newDog(“京巴”);
pet.speak();
后输出的内容是哪项?
A.京巴
B.京巴Dog
C.null
D.Dog京巴
47.现有:
1.classAlpha{voidm1(){}}
2.classBetaextendsAlpha{voidm2(){}}
3.classGammaextendsBeta{}
4.
5.classGreekTest{
6.publicstaticvoidmain(String[]args){
7.Alpha[]a={newAlpha(),newBeta(),newGamma()};
8.for(Alphaa2:
a){
9.a2.m1();
10.if(a2instanceofBeta||a2instanceofGamma)
11.//insertcodehere
12.}
13.}
14.}
哪一行代码插入到第11行,将编译但是会在运行时产生异常?
A.a2.m2();
B.((Beta)a2).m2();
C.((Alpha)a2).m2();
D.((Gamma)a2).m2();
48.程序员正在进行一个项目,必须实现equals方法与所给的hashCode方法协调运行:
42.publicinthashCode(){
43.return(size.hashCode()+color.hashCode())*17;
44.}
哪一个equals方法支持此目标?
A.无法确定
B.publicbooleanequals(Objecto){
Socks=(Sock)o;
returnsize.equals(s.size);
}
C.publicbooleanequals(Objecto){
Socks=(