JAVA考核题面向对象选择题答案Word文件下载.docx
- 文档编号:7959071
- 上传时间:2023-05-09
- 格式:DOCX
- 页数:26
- 大小:31.37KB
JAVA考核题面向对象选择题答案Word文件下载.docx
《JAVA考核题面向对象选择题答案Word文件下载.docx》由会员分享,可在线阅读,更多相关《JAVA考核题面向对象选择题答案Word文件下载.docx(26页珍藏版)》请在冰点文库上搜索。
C、publicintaMethod(inta,intb){}
D、privatefloataMethod(inta,intb,intc){}
9.阅读以下代码:
publicclassfoo{
publicstaticvoidmain(String[]args){
Strings;
System.out.println("
s="
+s);
}
输出结果应该是:
(C
)
A.代码得到编译,并输出“s=”
B.代码得到编译,并输出“s=null”
C.由于Strings没有初始化,代码不能编译通过
D.代码得到编译,但捕获NullPointException异常
解析:
局部变量必须显示的初始化。
引用类型变量初始化时如果没有具体对象引用,可以初始化为null。
10.下述概念中不属于面向对象这种编程范畴的是(D)。
A.对象、消息
B.继承、多态
C.类、封装
D.过程调用
11.编译并运行以下程序,以下描述哪个选项是正确的(A)。
1.classA{
2.protectedStringtoString(){
3.returnsuper.toString();
4.}
A、行2出错,不能成功编译B、编译通过但运行时出错
C、编译通过运行无异常D、不能成功编译,行3出错
方法重写时没有满足访问权限控制符要比父类的大或者相同。
12.假设Foo类有如下定义,设f是Foo类的一个实例,下列语句调用哪个是错误的?
(A)
publicclassFoo
{
inti;
staticStrings;
voidimethod(){}
staticvoidsmethod(){}
A、Foo.imethod();
B、f.imethod();
C、System.out.println(f.i);
D、Foo.smethod()
13.以下哪个接口的定义是正确的?
(D)
A、interfaceA
{voidprint(){};
B、abstractinterfaceA
{voidprint();
C、abstractinterfaceAextendsI1,I2//I1、I2为已定义的接口
{abstractvoidprint(){};
D、interfaceA
{voidprint();
接口定义时语法规定上是不需要加abstract的,因为接口本身就是abstract的,java编译器在编译接口时会自动加上abstract。
但是我们显示的加上abstract是不会出现问题,不建议加。
此处选项B和C可以认为不正确。
14.关于以下程序段,正确的说法是(C)
1.
String
s1=“a”+“b”;
2.
s2=new
String(s1);
3.
if(s1==s2)
4.
System.out.println(“==
issucceeded”);
5.
if(s1.equals(s2))
6.
System.out.println(“.equals()issucceeded”);
A.行4与行6都将执行
B.行4执行,行6不执行
C.行6执行,行4不执行
D.行4、行6都不执行
15.下面程序运行结果为:
(D,如果输出count则为A)
publicclasstest3{
publicstaticvoidmain(Stringargs[]){
intcount=0;
for(inti=0;
i<
=100;
i++)
count+=count++;
}
A0 B7 C编译有错误 D其他答案
16.下面哪个函数是public
void
aMethod(){...}的重载函数?
A、void
aMethod(
){...}
B、public
int
aMethod(){...}
C、public
aMethod(){...}
D、public
aMethod
(
m){...}
17.下面关于继承的哪些叙述是正确的?
A.在java中允许多继承。
B.
在java中一个类只能实现一个接口。
C.
在java中一个类不能同时继承一个类和实现一个接口。
D.
java的单一继承使代码更可靠。
18.运行下面程序段的结果是:
(D)。
publicclassMyMain{
publicstaticvoidmain(Stringargs){
System.out.println(“HelloJava”);
A.正常输出HelloJava
B.编译时出错
C.运行时出错
D.以上答案都不对
19.类与对象的关系是(A)。
A.类是对象的抽象B.类是对象的具体实例
C.对象是类的抽象D.对象是类的子类
20.下列关于修饰符混用的说法,错误的是(BD)。
A.abstract不能与final并列修饰同一个类
B.abstract类中不可以有private的成员
C.abstract方法必须在abstract类中
D.static方法中能处理非static的属性
abstract类中可以有private的成员,只是它的private成员不能被继承,所以在abstract类中定义private成员没有意义。
21.编译并运行下述程序段的结果是:
(B)。
publicclassTest{
publicstaticvoidmain(Stringargv[]){
int[]count=newint[4];
System.out.println(count[4]);
A.编译时错误B.运行时错误
C.输出0D.输出null
22.下面是有关子类继承父类构造函数的描述,其中正确的是(CD)。
A.创建子类的对象时,先调用子类自己的构造函数,然后调用父类的构造函数。
B.子类无条件地继承父类不含参数的构造函数。
C.子类必须通过super关键字调用父类的构造函数。
D.子类无法继承父类的构造函数。
子类无法继承父类的构造器,但有时候可以使用super调用父类构造器中的初始化代码。
在继承关系中一定要确保构造器的上溯链不得中断,否则会出错。
23.下列类的定义中,错误的是(B)。
A.classx{....}
B.publicxextendsy{....}
C.publicclassxextendsy{....}
D.classxextendsyimplementsy1{....}
24.A派生出子类B
,B派生出子类C,并且在Java源代码中有如下声明:
1.Aa0=newA();
2.Aa1=newB();
3.Aa2=newC();
问以下哪个说法是正确的?
A.只有第1行能通过编译
B.第1、2行能通过编译,但第3行编译出错
C.第1、2、3行能通过编译,但第2、3行运行时出错
D.第1行、第2行和第3行的声明都是正确的
25.运行下列程序的结果是(C)
abstractclassMineBase{
abstractvoidamethod();
staticinti;
publicclassMineextendsMineBase{
publicstaticvoidmain(Stringargv[]){
int[]ar=newint[5];
for(i=0;
i<
ar.length;
i++){
System.out.println(ar[i]);
}
}
A.打印5个0 B.编译出错,数组ar[]必须初始化
C.编译出错,Mine应声明为abstract D.出现IndexOutOfBoundes的例外
26.编译并运行以下程序段的结果是:
publicclassMyClass{
finalstaticinti;
MyClass(){i=0;
System.out.println(i);
A.编译出错B.nullC.1D.0
final修饰的成员变量(静态成员原理和实例成员变量)必须显示初始化。
静态成员变量可以在声明时或静态初始化代码块显示初始化;
实例成员变量可以在声明时、初始化代码块或构造器中显示初始化。
27.下面方法中的“返回类型Type”应该是什么?
publicclassReturnIt{
returnTypemethodA(bytex,doubley){
return(short)x/y*2;
}
A.doubleB.intC.byteD.short
28.下面哪个修饰符修饰的变量是所有同一个类生成的对象共享的?
(C)
A、publicB、privateC、staticD、final
29.下面关于java中类的说法哪个是不正确的?
(AC)
A.类体中只能有变量定义和成员方法的定义,不能有其他语句。
B.构造函数是类中的特殊方法。
C.类一定要声明为public的,才可以执行。
D.一个java文件中可以有多个class定义。
30.下列哪个类声明是正确的?
(D)
A.abstractfinalclassH1{…}
B.abstractprivatemove(){…}
C.protectedprivatenumber;
D.publicabstractclassCar{…}
31.方法重载是指(A)
A.两个或两个以上的方法取相同的方法名,但形参的个数或类型不同
B.两个以上的方法取相同的名字和具有相同的参数个数,但形参的类型可以不同
C.两个以上的方法名字不同,但形参的个数或类型相同
D.两个以上的方法取相同的方法名,并且方法的返回类型相同
32.指出下列程序运行的结果(B)
publicclassExample{
Stringstr=newString("
good"
);
char[]ch={'
a'
'
b'
c'
};
publicstaticvoidmain(Stringargs[]){
Exampleex=newExample();
ex.change(ex.str,ex.ch);
System.out.print(ex.str+"
and"
Sytem.out.print(ex.ch);
}
publicvoidchange(Stringstr,charch[]){
str="
testok"
;
ch[0]='
g'
}
A.goodandabcB.goodandgbc
C.testokandabcD.testokandgbc
33.下列哪些语句关于内存回收的说明是正确的?
A.程序员必须创建一个线程来释放内存
B.内存回收程序负责释放无用内存
C.内存回收程序允许程序员直接释放内存
D.内存回收程序可以在指定的时间释放内存对象
34.MAX_LENGTH是int型public成员变量,变量值保持为常量100,用简短语句定义这个变量。
(CD)
A、publicintMAX_LENGTH=100;
B、finalintMAX_LENGTH=100;
C、finalpublicintMAX_LENGTH=100;
D、publicfinalintMAX_LENGTH=100;
35.给出下面代码:
1)classParent{
2}privateStringname;
3}publicParent(){}
4}}
5)publicclassChildextendsParent{
6}privateStringdepartment;
7}publicChild(){}
8}publicStringgetValue(){returnname;
}
9}publicstaticvoidmain(Stringarg[]){
10}Parentp=newParent();
11}}
12}}
那些行将引起错误?
(D)
A、第3行B、第6行C、第7行D、第8行
36.类Teacher和Student是类Person的子类;
Personp;
Teachert;
Students;
//p,tandsareallnon-null.
if(tinstanceofPerson){s=(Student)t;
最后一句语句的结果是:
A、将构造一个Student对象;
B、表达式是合法的;
C、表达式是错误的;
D、编译时正确,但运行时错误。
解析:
考查instanceof和继承中的强制转换。
tinstanceofPerson表达式是正确的。
s=(Student)t;
这句转换编译是错误的。
37.给出下面代码段
1)publicclassTest{
2)intm,n;
3)publicTest(){}
4)publicTest(inta){m=a;
5)publicstaticvoidmain(Stringarg[]){
6)Testt1,t2;
7)intj,k;
8)j=0;
k=0;
9)t1=newTest();
10)t2=newTest(j,k);
11)}
12)}
哪行将引起一个编译时错误?
(D)
A、line3B、line5C、line6D、line10
38.对于下列代码:
1)classPerson{
2)publicvoidprintValue(inti,intj){//...}
3)publicvoidprintValue(inti){//...}
4)}
5)publicclassTeacherextendsPerson{
6)publicvoidprintValue(){//...}
7)publicvoidprintValue(inti){//...}
8)publicstaticvoidmain(Stringargs[]){
9)Persont=newTeacher();
10)t.printValue(10);
第10行语句将调用哪行语句?
A、line2B、line3C、line6D、line7
39.System类在哪个包中?
A、java.utilB、java.ioC、java.awtD、java.lang
40.对于下列代码:
publicclassParent{
publicintaddValue(inta,intb){
ints;
s=a+b;
returns;
}
classChildextendsParent{
下述哪些方法可以加入类Child?
(CD)
A、intaddValue(inta,intb){//dosomething...}
B、publicvoidaddValue(inta,intb){//dosomething...}
C、publicintaddValue(inta){//dosomething...}
D、publicintaddValue(inta,intb)throwsMyException{//dosomething...}
A选项不符合一大;
B选项返回值类型不匹配;
C选项为自己的方法;
D选项异常更明确。
41.看下面一段程序:
classAclass{
voidgo(){
System.out.println("
Aclass"
publicclassBclassextendsAclass{
voidgo{
Bclass"
publicstaticvoidmain(Stringargs[]){
Aclassa=newAclass();
Aclassa1=newBclass();
a.go();
a1.go();
以上程序运行结果是:
A、AclassAclassB、BclassBclass
C、AclassBclassD、BclassAclass
42.运行下列程序,会产生什么结果:
(B)
classOuter1{
privateinta;
voidfoo(doubled,finalfloatf){
Strings;
finalbooleanb;
classInner{
voidmethodInner(){
System.out.println("
intheInner"
}
}
publicstaticvoidmain(Stringargs[]){
Outer1me=newOuter1();
me.foo(123,123);
System.out.println("
outer"
}
A、intheInnerouterB、outer
C、intheInnerD、编译不通过
43.下面哪个修饰符修饰的方法只能被本类中的其他方法使用(C)
A、protectedB、staticC、privateD、public
44.下面程序运行后的输出结果为(C)
classA{
staticinty=3;
voidshowy(){
System.out.println(“y=”+y);
classtestA{
publicstaticvoidmain(Stringaaa[])
{
Aa1=newA();
A.y+=1;
a1.y++;
a1.showy();
输出结果选择:
A、y=3;
B、y=4;
C、y=5;
D、程序运行出错
45.下面关于构造函数的说法不正确的是(B)
A、构造函数也属于类的方法,用于创建对象的时候给成员变量赋值。
B、构造函数不可以重载。
C、构造函数没有返回值。
D、构造函数名称一定
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- JAVA 考核 面向 对象 选择题 答案