面向对象程序设计习题Word文档格式.docx
- 文档编号:21300503
- 上传时间:2023-01-29
- 格式:DOCX
- 页数:25
- 大小:23.21KB
面向对象程序设计习题Word文档格式.docx
《面向对象程序设计习题Word文档格式.docx》由会员分享,可在线阅读,更多相关《面向对象程序设计习题Word文档格式.docx(25页珍藏版)》请在冰豆网上搜索。
);
/*Thisisanothercomment*/
System.out.println("
Theend"
A)程序运行出错。
B)程序编译出错。
C)输出“Donethetest”。
D)输出“Theend”。
E)输出“Donethetest”和“Theend”。
第2章数据与数据运算
一、选择题
2.1请问字节型数据的取值范围是:
A)-128~127B)-28-1~28
C)-255~256D)取决于具体的Java虚拟机
2.2请问下面哪些代码行编译时不会出错?
A)floatf=1.3;
B)doubleD=4096.0;
C)byteb=257;
D)Strings="
1"
;
E)inti=10;
F)charc="
a"
G)charC=4096;
H)booleanb=null;
2.3编译和运行下面程序,将发生什么结果?
classExcise0203{
publicvoidmethod(){
shorta=(short)0xffff;
chara1='
\uffff'
intb=a;
intb1=a1;
b="
+b+"
b1="
+b1);
classTestExcise0203{
Excise0203o=newExcise0203();
o.method();
A)编译出错B)输出:
b=65535b1=65535
C)输出:
b=-1b1=-1D)输出:
b=-1b1=65535
2.4请问下面程序的运行结果是什么?
classExcise0204{
bytea=127;
intx=++a;
inty=a+1;
x="
+x+"
y="
+y);
classTestExcise0204{
Excise0204o=newExcise0204();
A)输出:
x=128y=128B)输出:
x=128y=129
x=-128y=128D)输出:
x=-128y=-127
2.5如果调用下面方法且参数值为67,那么方法的返回值是多少?
publicintMaskOff(intN){
returnN^3;
A)3B)64C)67D)0
2.6编译、运行下面代码将发生什么?
classEqualsTest{
chara='
\u0005'
Strings=a==0x0005L?
"
Equal"
:
NotEqual"
System.out.println(s);
A)编译错:
Invalidcharacterininput
B)程序能被编译,运行时输出:
NotEqual
C)程序能被编译,运行时输出:
Equal
第3章Java语句
3.1写出下面代码段的运行结果(单选)
booleanflag=false;
if(flag=true){
true"
}else{
false"
A)trueB)falseC)出错D)没有信息输出
3.2写出下面代码段的运行结果(单选)
inti=3;
intj=0;
doublek=3.2;
if(i<
k)
if(i==j)
System.out.println(i);
else
System.out.println(j);
else
System.out.println(k);
A)3B)0C)3.2D)以上三个都不对
3.3运行下面代码将将输出什么内容?
inti=1;
switch(i){
case0:
zero"
break;
case1:
one"
case2:
two"
default:
default"
A)oneB)one,default
C)one,two,defaultD)default
3.4关于下面代码的陈述,哪些是正确的?
voidlooper(){
intx=0;
one:
while(x<
10){
two:
System.out.println(++x);
if(x>
3)
breaktwo;
A)代码可以被编译。
B)代码不能被编译。
C)方法会输出数字0。
D)数字1和2会被输出。
E)数字3会被输出。
F)数字4会被输出。
G)数字5至9会被输出。
H)数字10会被输出。
3.5(多选)调用下面testing方法会输出什么内容?
voidtesting(){
one:
for(inti=0;
i<
3;
i++){
two:
for(intj=10;
j<
30;
j+=10){
System.out.println(i+j);
if(i>
1)
continueone;
A)10B)20C)11D)21
E)12F)22G)13H)23
I)010,020,110,120,210,220,310,320
第4章Java类
4.1编译、运行下面代码将发生什么?
classTest{
staticintmyArg=1;
publicstaticvoidmain(String[]args){
intmyArg;
System.out.println(myArg);
A)代码被编译,运行时输出0。
B)代码被编译,运行时输出1。
C)编译错,因为局部变量和类变量有相同的名字。
D)编译错,因为局部变量在使用之前没有被初始化。
4.2编译下面代码将会发生什么错误?
publicclassMyClass{
publicstaticvoidmain(Stringarguments[]){
amethod(arguments);
publicvoidamethod(String[]arguments){
System.out.println(arguments);
System.out.println(arguments[1]);
A)main方法方法体中不能调用amethod方法。
B)main方法的参数声明不合法。
C)数组访问时必须包含下标值。
D)amethod方法的返回类型应该为String。
4.3执行下面代码会输出什么内容?
(单选)
Booleanb1=newBoolean(true);
Booleanb2=newBoolean(true);
Objectobj1=(Object)b1;
Objectobj2=(Object)b2;
if(obj1==obj2)
if(obj1.equals(obj2))
b"
c"
d"
A)aB)bC)cD)d
4.4编译、运行下面代码将发生什么?
publicclassTest{
publicstaticvoidtest(){
this.print();
publicstaticvoidprint(){
Test"
publicstaticvoidmain(Stringargs[]){
test();
A)运行时输出:
Test
B)运行时抛出例外,指出一个对象还没有被创建
C)运行时不输出任何内容
D)运行时抛出例外,指出test方法没有发现
E)运行时抛出例外,指出变量this只能够用在实例中
F)编译出错,指出变量this没有被定义
4.5考虑下面代码,字符串"
Hithere"
何时被输出?
publicclassStaticTest{
static{
publicvoidprint(){
Hello"
publicstaticvoidmain(Stringargs[]){
StaticTestst1=newStaticTest();
st1.print();
StaticTestst2=newStaticTest();
st2.print();
A)从不输出B)每次创建实例时输出
C)当类被装入Java虚拟机时输出D)当static方法被调用时输出
4.6下面应用程序的运行结果是什么?
publicclassMyTest{
intx=30;
publicstaticvoidmain(Stringargs[]){
intx=20;
MyTestta=newMyTest();
ta.Method(x);
Thexvalueis"
+x);
}
voidMethod(inty){
intx=y*y;
A)Thexvalueis20B)Thexvalueis30
C)Thexvalueis400D)Thexvalueis600
4.7给定以下类定义:
publicclassTest{
publicvoidamethod(inti,Strings){}
//Here
下面哪些方法定义可以分别放置在上面的注释行处?
A)publicvoidamethod(Strings,inti){}
B)publicintamethod(inti,Strings){}
C)publicvoidamethod(inti,Stringmystring){}
D)publicvoidAmethod(inti,Strings){}
4.8给定以下代码:
1)publicabstractclassProd{
2)publicabstractvoidprmth1();
3)publicstaticvoidprmth2(){
4)intmth2=30;
5)System.out.println("
prmth2="
+mth2);
6)}
7)publicabstractvoidprmth3();
8)}
请问下面哪个陈述是正确的?
A)编译不会出错B)编译出错,错误定位于第1行
C)编译出错,错误定位于第3行D)编译出错,错误定位于第7行
4.9给定以下代码:
publicstaticIntegergetIt(){
Integerrg=newInteger(3);
Integerdg=rg;
rg=null;
returnrg;
A)编译出错B)编译成功,但运行时出错
C)getIt()方法不应该定义成static
D)当调用getIt()方法返回时,rg对象可以被垃圾收集
第5章继承、接口与包
5.1给定下面类定义:
classTest1{
floataMethod(floata,floatb){}
classTest2extendsTest1{
//XXXX
请问下面哪些方法可以分别加入类Test2中的注释行处?
A)floataMethod(floatb,floata){}
B)publicintamethod(inta,intb){}
C)protectedfloataMethod(floatp,floatq){}
D)privatefloataMethod(floatp,floatq){}
5.2分析下面两个类:
classFirst{
finalstaticintA=3;
finalclassSecondextendsFirst{
voidmethod(){
System.out.println(A);
选择一个正确的答案。
A)类First能被编译,但类Second不能。
B)类Second能被编译,但类First不能。
C)两个类都不能被编译。
D)两个类都能被编译,并且当调用方法method()时,将输出3。
E)两个类都能被编译,但当调用方法method()时,将抛出一个例外。
5.3编译并执行类B的main()方法,将会发生什么(单选)?
classA{
inti;
A(inti){
this.i=i*2;
classBextendsA{
Bb=newB
(2);
B(inti){
A)实例变量i被设置成4B)实例变量i被设置成2
C)实例变量i被设置成0D)编译错
5.4给定以下代码,请选择一个正确的答案替换其中的注释行。
A(inti){}
publicclassBextendsA{
B(){
//xxxxx
Bb=newB();
A)super(100);
B)this(100);
C)super();
D)this();
5.5编译、运行下面代码将发生什么?
classBase{}
classSubextendsBase{}
publicclassCex{
publicstaticvoidmain(Stringargv[]){
Baseb=newBase();
Subs=(Sub)b;
A)编译和运行都不会出错B)编译出错
C)运行时抛出例外
5.6考虑类定义:
classBaseWidgetextendsObject{
Stringname="
BaseWidget"
voidspeak(){System.out.println("
Iama"
+name);
classTypeAWidgetextendsBaseWidget{
TypeAWidget(){name="
TypeA"
基于以上类定义,下面哪个代码片段是正确的?
A)ObjectA=newBaseWidget();
A.speak();
B)BaseWidgetB=newTypeAWidget();
B.speak();
C)TypeAWidgetC=newBaseWidget();
C.speak();
5.7编译、运行下面程序的结果是什么?
1)classXxx{
2)privateinti;
3)Xxxx;
4)publicXxx(){
5)i=10;
6)x=null;
7)}
8)publicXxx(inti){
9)this.i=i;
10)x=newXxx();
11)}
12)publicvoidprint(){
13)System.out.println("
i="
+i);
14)System.out.println(x);
15)}
16)publicStringtoString(){
17)return"
+i;
18)}
19)}
20)classTest{
21)publicstaticvoidmain(String[]args){
22)Xxxx=newXxx(100);
23)x.print();
24)System.out.println(x.x);
25)}
26)}
A)i=100B)i=100C)i=100D)编译错
1010i=10
null10i=10
第6章Java字符串
6.1如果下面代码片段被执行,那么将会输出什么?
Strings1="
ABC"
Strings2=s1;
s1+="
xyz"
System.out.println(s2);
A)ABCB)xyzC)ABCxyzD)null
6.2当执行下面代码片段时,第4行代码被执行吗?
1)Strings1="
ABC123"
2)Strings2="
AB"
+"
C123"
3)if(s1==s2)
4)System.out.println("
Yes"
A)YESB)NO
6.3下面哪些是合法的Java代码片段?
A)Stringa="
abcdefg"
a-="
cde"
B)Stringa="
a+="
C)Integerj=newInteger(27);
j-=7;
D)Integerj=newInteger(27);
j--;
6.4一个应用程序涉及以下方法:
1)staticStringsetFileType(Stringfname){
2)intp=fname.indexOf('
.'
3)if(p>
0)fname=fname.substring(0,p);
4)fname+="
.TXT"
5)returnfname;
假定该应用程序有下面代码片段:
7)StringtheFile="
Program.java"
8)Filef=newFile(setFileType(theFile));
9)System.out.println(“Created“+theFile);
请问第9行代码会输出什么?
C
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 面向 对象 程序设计 习题
