Java面向对象编程练习题.docx

上传人:b****6 文档编号:8076958 上传时间:2023-01-28 格式:DOCX 页数:25 大小:107.31KB
下载 相关 举报
Java面向对象编程练习题.docx_第1页
第1页 / 共25页
Java面向对象编程练习题.docx_第2页
第2页 / 共25页
Java面向对象编程练习题.docx_第3页
第3页 / 共25页
Java面向对象编程练习题.docx_第4页
第4页 / 共25页
Java面向对象编程练习题.docx_第5页
第5页 / 共25页
点击查看更多>>
下载资源
资源描述

Java面向对象编程练习题.docx

《Java面向对象编程练习题.docx》由会员分享,可在线阅读,更多相关《Java面向对象编程练习题.docx(25页珍藏版)》请在冰豆网上搜索。

Java面向对象编程练习题.docx

Java面向对象编程练习题

专题1初识Jqvq

一、填空题

1.自从Sun推岀Jovo以来,按应用围可分为三个版本,分别是()、()、()o

2.环境变量的设責,若JDK安装在“D:

\JDK”,则应设責Poth为()sclasspath为()。

3.Jqvo源文件的扩展名为(),用Javac编译Jovq源文件,得到的字节码文件的扩展名为()o

4.如果Jovo源文件中有多个类,那么只能有一个类是()类。

二、选择题

1.

B・publicstaticvoidmain(String

D.publicintmain(Stringargs[])

B.javaAppFirst

D・javacAppFirst

FirstApplet.java,其HTML文件为

作为Jovo应用程序入口的moin方法,其声明格式是()

A.publicstaticintmain(Stringargs[])args[])

C.publicvoidmain(Stringcirgs[])

2.下面命令正确的是()

A.javaAppFirst.java

C.javaappfirst.class

3.设有一个Java小程序,源程序名为

FirstApplet.html,则运行该小程序的命令为0

A.javaFirstAppletB・javacFirstApplet.java

D.oppletviewer

C・appletviewerFirstApplet.java

FirstApplet.html

4.JDK安装完成后,主要的命令如javocsjovo等,都存放在根目录的()文件夹

下。

A.bin

B.jre

C・include

D.doc

5.Jqvo语言是一种—语言。

A.机器

B・汇编

c.面向过程的

D.面向对象的

6、Jovo程序的最基本组成单位是

0

A.函数

B・过程

C・变量

D.类

三、简答题(十分重要)

1.Java语言有哪些特点?

2.JDK安装完成后,如何设責环境变量?

4.简述Jovo应用程序的开发过程

专题2标识符、表达式、数据类型

—、填空题

1.Jovo逻辑常量有两个:

()和()。

2.写出下列表达式的运算结果,设o二2,b二4,c二true。

(1)-a%b++()

(4)(-a)«a0

(5)(double)(a+b)/5+a/b()

3、比较两个数相等的运算符是:

o

4、Java中的八种基本数据类型分别是

chor、、、、、、和

二、选择题

1•下面这些标识符哪个是错误的()

A.JovoworldB._sumC.2JavaProgramD・$abc

2.下列哪一组运算符的优先级顺序是从高到低排列的()

A.|、&、!

B.&、八、||C・!

、%、++D.v、vv、++

3.下面哪个赋值语句不会产生编译错误()

A・charo二'abc,;B・byteb=152;C・floatc=2.0;

D.doubled=2.0;

4.下面哪个单词是Jovo语言的关键字()

A.FalseB・FORC.ForD.for

5.执行下面程序后,哪个结论是正确的()

into,brc;

o二1;b=3;c=(a+b>3?

++o:

b++);

A・a的值为2,b的值为3,c的值为1B.a的值为2,b的值为4,c的值为2

c・Q的值为2,b的值为4,c的值为1D・Q的值为zb的值为3,c的值为

2

6•设各个变量的定义如下,哪些选项的值为true()

int。

二3.b=3;

booleanflog二true;

A.++a==bB・++a==b++C・(++o==b)||flagD.(++o二=b)

&flag

7.表达式(int)6.5/7.5*3的值的类型为()?

A.shortB.intC.doubleD・float

8•设a,b,x,y,z均为int型变量,并已赋值,下列表达式的结果属于非逻辑值的是

()

A.x>y&&bx-y

C・y二二++x

D.y+x*x++

9.下面语句输出的结果为()

Syste.out.pnntln(5A2);

A.6B.7C・10

D・25

10.对下面的语句执行完后正确的说法是:

()

intc二'c'/3;

System.out.println(c);

A.输出结果为21B.输出结果为22C.输岀结果为32D.输出结果为33

11.以下选项中变量o已定义类型,合法的赋值语句为()

A.o二int(y);B.o二二1;C・Q二。

+1二3;D.++O;

12.执行下列程序段后,ch,x,y的值正确的是:

()

intx=3,y=4;

booleanch;

ch=x

A.true,3,4B.true,4,3C・folse,3,4D.folse,4,3

13.下列标识符中,正确的是_o

A、l_BcickB、$_MoneyC、$-moneyD、2-Forward

14.现有一个int类型的整数和一个double类型的浮点数,当它们之间做了加法运

算之后,得到的结果类型应该是—o

Asint类型B、double类型C、float类型D、long类型

15.以下程序的运行结果为_o

publicclassA{

publicstaticvoidmain(Stringa[]){

intx=2Zy=5;

Stringz="5";

System.out.println(x+y);

System.out.println(x+z+"x+z11);

Systerri・out・println「x+y=“+x+y);

System.out.printlnC'x+z-'+(x+z));

}

}

A.7B.7C・25D・7

25x+z

7x+z

25x+z

25x+z

x+y=25

x+y二25

x+y=7

x+y=25

x+z二25

x+z=7

x+z二25

x+z=7

 

16、设有定义inta=12;则执行o*二12;语句后,。

的值为:

D.0

A.144B.12C.24

17、下列标识符中,合法的一个是_。

D・2$$2

A.$#!

$B.$我们$C.$22$

18、执行下列程序段后,匕人丫的值分别是_。

intx=6,y二8;

booleanb;

b二x>y&&++x二二一y;

D.false,7.7

A.truez6f8B.falser6Z8C.e#7Z7

19、下列程序运行的结果是_。

publicclassA{

publicstaticvoidmain(Stringargs[]){

intx=7%3;

while(x){

X~;

}

System.out.println(x);

}

}

A・0

B.1

C.true

D.编译错误

三、编程题

1.使用Moth.powO方法,求岀2的32次方的值。

专题3流程控制语句

—、填空题

1.在switch语句中的表达式的类型必须是()或者()0

2.break在循环语句中的作用是()。

3.分支语句包括()和()。

4.while循环语句的循环次数(),do-while语句的循环次数(),fo「语句的循

环次数()。

二、选择题

1.下面程序片段输出的是什么()

into=3.b=l;

if(。

二b)Syste.out.println(“o二”+a);

A.a=lB.a=3C.编译错误,没有输岀D.正常运行,但没有输出

2.下面语句执行后,x的值为()

inta=4fb二5,x=3;

if什+o二二b)x=x*a;

A.3B.12C.15D.20

3.请看下面的程序代码:

if(x<0){Syste.out.println(“first”);}

elseif(x<20){Syste.out.println(asecondw);}

else{Syste.out.println(“third”);}

当程序输出“second”时,x的围是(B)

A.xv二0B.x<20&&x>=0C・x>0D・x>=20

4.请看下面的程序代码:

switch(n){

case0:

Syste.out.println(“first”);

case1:

case2:

Syste.out.println(“seconcP);break;

default:

Syste.out.pnntln(“end");

}

当n为何值时,程序段将输出字符串”second”()

A.0B.1C.2D.以上都可以

5.下列语句执行后,j的值是()

intj二3,匸3;

while(-i!

=i/j)j二j+2;

A・4B・5C・6D・7

6.下列语句执行后,x的值是()

intx=2;

do{x+=x:

}while(x<17);

&下列语句执行后,k的值是()

intj二4,i,k=10;

for(i=2;i!

二j;i++)k二k-i;

A・4B・5C・6D.7

9.下列语句执行后,c的值是()

charc=,\0,;

for(c=,:

c

if(c>=,eJ)break;

C.

D・'h‘

10.若变量都已经正确说明,则以下程序段输出为()

a=10;b=50;c=30;

if(a>b)a=b;b=c;

c=a;

System.out.println(+o+"b二”+b+”c=M+c);

A.a=10b二50c=10B.a=10b二30c二10

C・。

二50b=30c=10D・q二50b二30c=30

11.以下程序段输岀是(D)

intx=1/y=0za=0zb=0;

j=(-a==b++)?

--a:

++b;

j=a++;k=b;

System.out.println(“匸”+i+”,j二”+j+”,k二”+k);2-12

A.i=2J=Lk=3B.i=lj=Lk=2C.i二4,j二2,k二4D.i=2j=-Lk=2

12.以下程序的输岀是(B)

intx=lzy=0za=0zb=0;

switch(x){

case1:

switch(y){

case0:

a++;break;

case1:

b++;break;

}

case2:

a++;break;

case3:

o++;b++;

}

System.out.printlnf“o二”+a+n二”+b);

A・o=l.b二0B.o二2,b=0C.o=l,b=l

13.以下程序段输岀是()

int匸0,j=0,o二6;

if((++i>0)||(++j>0))a++:

System.out.println(“匸”+i+”,j二”+j+”,o二”+a);

A.

D.i=0zj=ba=7

i二0,j二Oq二6B.i二l,j二l,o二7C.i二l,j二0,o二7

14、下列程序运行的结果是_opublicclassA{

publicstaticvoidmain(Stringargs[]){

charc=d;

for(inti=1;iv二4;i++){

switch(i){

case1:

c二'a';

System.out.print(c);

break;

case2:

c二b;

System.out.pnnt(c);

break;

case3:

c二'c';

System.out.print(c);

default:

System.out.print(,T,);

}

}

}

}

A.

D.abc!

!

!

B.dbc!

C.abc!

三、编程题

1.输入一个年份值,判断是否是闰年,输出相应的信息。

2.编写程序,计算邮局汇款的汇费:

如果汇款金额小于100元,汇费为1元,如果金额在100元与500元之间,按1%收取汇费,如果金额大于500元,汇费为50元。

3.求某年某月的天数.

4.求从】到】00之间所有奇数的平方和(用for、while和do……while编写程序)。

5.求S二l+2+3+・・・+n之和,S<1000的最大n的值。

专题4数组

—、填空题

1.定义一个整型数组y,它有5个元素分别是1,2,3,4,5.用一个语句实现对

数组y的声明、创建和赋值:

()。

2.设有整型数组的定义:

“intx[川二{{1234},{-5}・{326}};力则xdength的值为()

3、求取二维数组。

[][]的第i行元素个数的表达式是()o

4、一个一维数组有10个元素,则该数组可用的下标围是o

5、StringS[]={“”,“”,则S[l]的值是:

_。

6、当声明一个数据组intarr[]=newint⑸;时,这代表这个数组所保存的变量类型

是,数组元素下标的使用围是o

二.选择题

 

3.下面哪个选项正确地声明了一个字符串数组()

B.int[][]a=newint[3][4];

c.inta[][]={{lz2H3,4}};

D.int[][]a=newint[][];

三、编程题

1.将一个数组中的数逆序重新存放。

2.已知数组(12,23,26,45,58,60)是有序的,输入一个数X,将它插入到数组中,保证数组仍然是有序的。

3.

求一个二维数组的每行最大数。

1.如果一个方法不返回任何值,则该方法的返回值类型为0

2.如果子类中的某个方法名、返回值类型和与父类中的某个方法完全一致,

则称子类中的这个方法覆盖了父类的同名方法。

3.接口中所有的属性均为_、和的

4.方法是一种仅有方法声明,没有具体方法体和操作实现的方法,该方法必

须在类之中定义。

5.一般Java程序的类主体由两部分组成:

一部分是,另一部分是—o

6.分别用—关键字来定义类,用关键字来分配实例存储空间。

7.当一个类的修饰符为时,说明该类不能被继承,即不能有子类。

8.在Jovo中,能实现多重继承效果的方式是o

二、选择题

1.方法定义的变S()o

A.—定在方法所有位責可见

C.在方法外可以使用

2.方法的形参()。

A.可以没有

C.必须定义多个形参

3.return语句()。

A.不能用来返回对象

C.方法都必须含有

4.main()方法的返回值类型是()。

A.booleon

C.void

B・可能在方法的局部位置可见

D.在方法外可见

B.至少有一个

D.只能是简单变量

B.只可以返回数值

D.一个方法中可以有多个

B.int

D.static

5.编译并运行下面的程序,运行结果是()。

publicclassA{

publicstaticvoidmain(Stringargs[]){

Aa=newA();

a.method(8);

}

voidmethod(inti){

System.out.println(“int:

w+i);

voidmethod(longi){

System.out.println(“long:

”+i);

A・程序可以编译运行,输出结果为:

“int:

8”

B.程序可以编译运行,输出结果为:

“long:

8”

C.程序有编译错误,因为两个method!

)方法必须定义为静态(static)的

D.程序可以编译运行,但是没有输出

6.能作为类及其成员的修饰符是()。

A.interface

B.class

C.protected

D.public

7.下列方法定义中,方法头不正确的是()<>

A.publicstaticx(double

B.publicstaticintx(doubley){…}

C.voidx(doubled){---}

D.publicintx(){---}

&构造方法在()时被调用。

A.类定义时

B.使用对象的变量时

C.调用对象方法时

D.创建对象时

9.下列哪个类声明是正确的()。

A.publicabstractclassCar{---}

B・obstroctprivatemove(){---}

C.protectedprivatenumber;

D.abstractfinolclassH】{・・・}

10.下列不属于面向对象程序设计的基本特征的是()。

A.抽象

B.封装

C.继承

D.静态

11・请看下面的程序段

classPerson{

Stringname,department;

intage;

publicPerson(Stringn){name二n;}

publicPerson(StringmintQ){nome二n;age=a;}

publicPerson(Stringn.Stringdzinta){

//doingthesameastwoargumentsversionifconstructer

A.Person(nza)

B.this(Person(n.Q))

C.this(nza)

D.this(name.age)

12.请看下面的程序段

classTest{

privateintm;

publicstaticvoidfun(){

//somecode}

}

方法fun()如何来访问变重m()

A.将privateintm改成protectedintmB•将privateintm改成public

intm

C.将privateintm改成staticintm

D・将privateintm改成intm

13.有一个类A,对于其构造函数的声明正确的是()o

A.voidA(intx){---}

B.publicA(intx){---}

C.AA(intx){---}

D.intA(intx){---}

14.请看下面的程序段

publicclassTest{

longa[]=newIong[10];

pubicstaticvoidmain(Stringargs[]){

System.out.println(a[6]);}

}

哪一个选项是正确的()o

A.不输出任何容

B.输出0

c.当编译时有错误出现

D.当运行时有错误出现

15.关键字()表明一个对象或变量在初始化后不能修改。

A.extends

B.final

C.this

D.finalize

16.声明为static的方法不能访问()类成员。

A.超类

B.子类

17.定义类A如下:

(重要)

classA{

intazbzc;

publicvoidB(intxzinty,intz){a=x;b=y;c=z;}

}

下面对方法B的重载哪些是正确的()o

A・publicvoidA(intxljntylzintzl){a=xl;b=yl;c=zl;}

B.publicvoidB(intxljntybintzl){a=xl;b=yl;c=zl:

}

C.publicvoidB(intxjnty){a=x;b=y;c=0;}

D.publicB(intxjnty,intz){a=x;b=y;c=z;}

18.编译运行下面的程序,结果是()o(重要)publicclassA{

publicstaticvoidmain(Stringargs[]){

Bb=newB();

b.test();

}

voidtest(){

System.out.printj“A");

}

}

classBextendsA{

voidtest(){

super.testf);

System.out.print)“B");

}

}

A.

B.代码可以编译运行,并输出结果:

AB

D.编译没有错误,但会产生运行时异常

产生编译错误

C.代码可以编译运行,但没有输岀

19.已知类关系如下:

ClassEmployee{}

ClassManagerextendsEmployee^

ClassDirectorextendsEmployee!

}

B・Directord=newManager();

则下列语句正确的是:

()o

A・Employeee=newMonciger();

C・Directord=newEmployee();

D.Managerm=newDirector();

20、接口是Jovq面向对象的实现机制之一,以下说确的是()<>

A.Java支持多重继承,一个类可以实现多个接口

B.Java只支持单重继承,一个类可以实现多个接口

C.Jovq只支持单重继承,一个类可以实现一个接口

D.Jqvcj支持多重继承,但一个类只可以实现一个接口

21、下列方法的声明中不合法的是—o

A.floatarea(){•••}B.voidarea(){•••}

C.area{---}D.infarea(intr){---}

22、下面哪个包是编程时不需要导入就可以直接使用的_o

AB.javculongC.java.sqlD.java.util

23、调用构造方法是在—o

A.类定义时B.创建对象时

C.调用对象的方法时D.使用对象的变量时

24、在子类构造方法的哪个地方可以调用其父类的构造方法_o

A.任何地方

B.构造方法的第一条语句

C.构造方法的最后一条语句

D.无法在子类构造方法中调用父类的构造方法

25、关于Jovo中的继承,下列说法错

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 幼儿教育 > 幼儿读物

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1