java程序设计题库_第1页
java程序设计题库_第2页
java程序设计题库_第3页
java程序设计题库_第4页
java程序设计题库_第5页
已阅读5页,还剩24页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

java程序设计题库选择题答题要求:单选题,每题只有一个正确答案,选择正确给分,不正确不给分。

1、

下面(

A

)数据类型可用于main()方法中传递的参数A、String

B、Integer

C、Boolean

D、Variant2、以下的选项中能正确表示Java语言中的一个整型常量的是(

B

)A、12.

B、-20

C、1,000

D、4563、下列的变量定义中,正确的是(

D

)A、booleanb1="true";

B、floatx=6.6;C、bytei=200;

D、doubley;4、在屏幕上显示的消息正确的语句是(

A

)A、System.out.println("IamJavaExpert");

B、system.out.println("IamJavaExpert");

C、System.Out.Println("IamJavaExpert");

D、System.out.println('IamJavaExpert');5、下面(

B

)命令可用于编译Java程序A、java

B、javac

C、appletviewer

D、javadoc6、Java编译器会将Java程序转换为(

A

)A、字节码

B、可执行代码C、机器代码

D、以上所有选项都不正确7、以下字符常量中不合法的是(

C

)A、'@'

B、'&'

C、"k"

D、'整'8、以下的选项中能正确表示Java语言中的一个double型常量的是(

C

)A、Float.MIN_VALUE

B、1.8e-6FC、2.0

D、'abc'9、以下的变量定义语句中,合法的是(

C

)。A、float$_*5=3.4F;

B、byteb1=15678;C、int$abc=5;

D、intclass="5";10、在一个类中定义的成员变量和成员方法时,不允许(

A

)。A.

两个成员变量名相同.

B.

成员变量与成员方法名相同.C.

两个成员方法名相同

D.

成员方法中的参数与成员变量名相同11、下列叙述正确的是

B

)A.

在类中的构造方法的名字与类的名字相同,

而且不能重载B.

在类中的构造方法的名字与类的名字相同,但没有返回类型.C.

在类中的构造方法的名字与类的名字相同,而且有返回类型.D.

在类中的构造方法的名字与类的名字相同,而且不能初始化.12、Javaapplication中的主类需包含main方法,main方法的返回类型是什么?(

D

)A、int

B、float

C、double

D、void13、给出如下代码:classTest{privateintm;publicstaticvoidfun(){

//somecode...}}如何使成员变量m

被函数fun()直接访问?(

C

)A、将privateintm

改为protectedintmB、将privateintm

改为

publicintmC、将privateintm

改为

staticintmD、将privateintm

改为

intm14、在Java中,一个类可同时定义许多同名的方法,这些方法的形式参数个数、类型或顺序各不相同,传回的值也可以不相同。这种面向对象程序的特性称为(C

)。A、隐藏

B、覆盖

C、重载

D、Java不支持此特性15、执行下面的程序,输出结果是(

B

)。publicclassTest{intx=12;publicvoidmethod(intx){x+=x;System.out.println(x);}publicstaticvoidmain(String[]args){Testt=newTest();

t.method(5);}}A.5

B.10

C.12

D.17

E.2416、若在某一个类定义中定义有如下的方法:

final

void

aFinalFunction();则该方法属于(

C)。

。A.

本地方法.

B.

解态方法.

C.

最终方法

D.

抽象方法17、下列叙述正确的是

D

A.

子类可以继承父类的所有成员。B..

除了继承父类的成员以外,子类不可以创建自己的成员。C.

当实例化子类时,父类的构造方法不被调用。D.

子类只能继承父类的非私有成员。.18、某java程序的类定义如下:publicclassMyClassextendsBaseClass{

}则该java源文件在存盘时的源文件名应为如下哪一种:(

D)A.myclass.java

B.Myclass.java

C.MYCLASS.java

D.MyClass.java19、给出如下代码:classA{publicA(){System.out.print("A");}}public

class

B

extends

A{publicB(){System.out.print("B");}publicstaticvoidmain(String[]

args){new

B();}}程序的输出结果(

A

)A、AB

B、A

C、B

D、BA20、以下哪个接口的定义是正确的?(

D

)。

A、

interface

A{

voidprint()

{

};}B、

abstract

interface

A{voidprint();}C、

abstract

interface

A

extendsI1,I2

//I1、I2为已定义的接口{abstract

void

print(){

};}D、

interface

A{

void

print();}21、下面选项中能把字符串转换成float类型的是?(B)A.floatvalue=newFloat(str);B.floatvalue=Float.parseFloat(str);C.floatvalue=Float.floatValue(str);D.floatvalue=(newFloat()).parseFloat(str)22、在某个类中存在一个方法:voidgetSort(intx),以下能作为这个方法的重载的声明的是(C)A.publicget(floatx)

B.intgetSort(inty)C.doublegetSort(intx,inty)D.voidget(intx,inty)23、下边程序运行的输出结果是(

B

)classBase{Base(){System.out.print("Base");}}publicclassAlphaextendsBase{publicstaticvoidmain(String[]args){newAlpha();newBase();}}A、Base

B、BaseBase

C、程序编译失败

D、程序运行但没有任何输出24、下列说法正确的是(

C

)。A.一个子类可以有多个父类,一个父类也可以有多个子类B.一个子类可以有多个父类,但一个父类只可以有一个子类C.一个子类可以有一个父类,但一个父类可以有多个子类D.上述说法都不对25、关于下面程序片段,(B

)的结论是正确的。Stringa="Java";

Stringb="Java";Stringx="Ja";

Stringy="va";Stringc=x+y;A、a和b指向同一个实例对象,a和c指向同一个实例对象B、a和b指向同一个实例对象,a和c不指向同一个实例对象C、a和b不指向同一个实例对象,a和c指向同一个实例对象D、a和b不指向同一个实例对象,a和c不指向同一个实例对象26、下面这段代码会产生(C

)个String对象。Strings1="hello";

Strings2=s1.substring(2,3);Strings3=s1.toString();

Strings4=newStringBuffer(s1).toString();A、1

B、2

C、3

D、427、设有定义:Strings=”World”;,下列语句错误的是(

D

)。A、intm=s.indexOf(‘r’);

B、charc=s.charAt(0);

C、intn=s.length();

D、Stringstr=s.append();28、已知inti=2147483647;++i;

则i的值等于(

A

)。A、-2147483648

B、2147483647

C、2147483648

D、-129、若x=5,y=8,则表达式x|y的值为(

B

)。A、3

B、13

C、0

D、530、执行String[]

s=newString[10];语句后,哪个结论是正确的?(B

)A、s[0]

为未定义

B、s.length

为10

C、s.length

为11

D、s[10]

""31、下列说法不正确的是(

D

)。A、表达式“1+2>3”的值是false

B、表达式“1+2||3”是非法的表达式C、表达式“i+j=1”是非法的表达式

D、表达式“1+2>3”的值是true32、若Strings="hello";

Stringt="hello";

charc[]={'h','e','l','l','o'};

则下列哪个表达式返回false?(

C

)A、s.equals(t);

B、t.equals(newString("hello"));

C、t.equals(c);

D、s==t;33、执行完下面程序片段后,(

B)的结论是正确的。

inta,b,c;

a=1;

b=2;

c=(a+b>3?a++:b++);

A、a的值是2,b的值是3

B、a的值是1,b的值是3

C、a的值是1,b的值是2

D、c的值是false34、下面程序片段输出的是(

D

)。inti=0,j=9;do{

if(i++>--j)break;}while(i<4);System.out.println("i="+i+"andj="+j);A、i=4andj=4

B、i=5andj=5

C、i=5andj=4

D、i=4andj=535、设有定义“intk=3;”,语法正确且值为true的表达式是(D

)。A、k=3;

B、k++>3;

C、k--==3&&k++==3;

D、k++==3||++k>3;36、若有定义int

a=2;则执行完语句

a-=a*a;

后,a的值是(C

)。A、

0

B)、4

C、

-2

D、–437、下列语句序列执行后,j

的值是(A

)。

int

j=1;

for(inti=5;i>0;i-=2)

j*=i;A、

15

B、1

C、

60

D、

038、以下由

for语句构成的循环执行的次数是(B)。

for(int

i=0;true;i++);A、有语法错,不能执行

B、无限次

C、执行1次

D、一次也不执行39、下列语句序列执行后,j

的值是(B

)。

int

j=9,

i=6;

while(i-->3)

--j;A)5

B)6

C)7

D)840.

若有循环:

intx=5,y=20;

do{

y-=x;

x+=2;}while(x<y);则循环体将被执行(A

)。A)2次

B)1次

C)0次

D)3次41.

下列语句序列执行后,i的值是(

A)。

int

i=10;

do{

i/=2;}while(i>1);A)1

B)5

C)2

D)042.以下语句中能构成多分支的语句是(C)。

A)for

语句

B)while

语句

C)switch

语句

D)do-while

语句43.能从循环语句的循环体中跳出的语句是(B)。

A)for语句

B)break语句

C)continue语句

D)return语句44.字符流与字节流的区别是(

A

)。A、每次读入的字节数不同

B、前者带有缓冲,后者没有C、前者是块读写,后者是字节读写

D、二者没有区别,可以互换使用45.下面关于使用throw关键字抛出的对象说法正确的是(

A

)。

A、它必须被声明为Throwable类型

B、它必须被声明为error类型C、它必须被声明为Exception类型

D、它必须被声明为String类型46.在oneMethod()方法运行正常的情况下,程序段将输出什么?

D)public

voidtest(){try{oneMethod();System.out.println("condition1");}catch(ArrayIndexOutOfBoundsExceptione){System.out.println("condition2");}catch(Exceptione){System.out.println("condition3");}finally{System.out.println("finally");}}A、condition1

B、condition2

C、condition3

D、condition1finally47.下列常见的系统定义的异常中,哪个是输入、输出异常?

(B

)A、ClassNotFoundException

B、IOExceptionC、NumberFormatException

D、UnknownHostException48.下列InputStream类中哪个方法可以用于关闭流?

(B

)A、skip()

B、close()

C、mark()

D、reset()49.下面关于try-catch-finally语句块中有关finally说法正确的是(

C

)A、它只会在catch语句块执行结束后才会执行B、它只有在catch语句块不被执行的情况下才会被执行C、不管有没有异常产生它总会被执行D、只有在有异常产生的情况下它才会被执行50.关于异常的应用,下列说法恰当的是(

B

)A、在java中,使用异常很方便、很有效,因而,只要能使用异常的地方应尽量使用异常B、在程序中过多的使用异常,会使程序的执行效率降低C、异常产生后,我们只需捕获它,至于是否对异常给与处理,无所谓D、Java中的异常全部都被预先定义好了,程序员无需自行定义异常类51.如果一个程序段中有多个catch,则程序会按如下哪种情况执行(

C

)A.找到适合的例外类型后继续执行后面的catchB.找到每个符合条件的catch都执行一次C.找到适合的例外类型后就不再执行后面的catchD.对每个catch都执行一次52.属于Java输入输出流的、且处理的是char类型的类是(

A

)A、Reader类

B、InputStream类

C、OutputStream类

D、File类53.

下列不属于面向对象编程的三个特征的是(

B

)。A.

封装

B.

指针操作

C.

多态

D.

继承54.

以下字符串常量中不合法的是(

B

)。A."q"

B.‘&’

C."k"

D."整数"

55.publicintgetGameScore(),getGameScore这个方法的返回值类型是(

A

)。A.int

B.void

C.INT

D.short56.

在java中语句:37.2%10的运算结果为(

C

)。A.37

B.2

C.7.2

D."0"57.

若已定义

x

y为double

类型,则表达式

x=1,y=x+3/2

的值是(

C

)

。A.1

B.2

C.2.0

D.2.558.

关于while和do-while循环,下列说法正确的是:(

D

)

。A.

两种循环除了格式不同外,功能完全相同B.

与do-while语句不通的是,while语句的循环至少执行一次C.

do-while语句首先计算终止条件,当条件满足时,才去执行循环体中的语句D.

以上都不对59.

下面(

C

)表达式是声明一个含有10个String对象的数组。A.charstr[

];

B.charstr[

][

];C.Stringstr[

]=newString[10];

D.Stringstr[10];60.

多分支语句switch(表达式){}中,表达式可以返回哪种类型的值(

B

)。A.

实型

B.

字符型

C.

数组

D.

布尔型61.

下列不属于条件语句关键字的是:(

A

)。A.for

B.if

C.else

D.switch62.

下列类的定义,错误的是(

D

)。A.publicclasstestextendsObject{……

}B.finalclassoperators{……}C.classPoint{……

}D.voidclassPoint{……

}63.

下面表达式中,用来访问数组a中第一个元素的是(

A

)。A.a[0]

B.a[1]

C.a.0

D.a.164.a为true时,值为“真”的表达式是(

A

)。A.a

B.!(++a)

C.a=true

D.a==065.

下面命令中(

A

)可用于解释Java程序。A.java

B.javac

C.javaapplview

D.javadoc66.

方法的形参是(

A

)。A.

可以没有

B.

至少有一个

C.

方法必须都含有

D.

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

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

B

)。A.void

A(intx){…}

B.public

A(intx){…}

C.A

A(intx){…}

D.int

A(intx){…}68.

设Test为已定义的类,下面声明类Test对象a的语句正确的是(

C

)。

A.Testa=Test();

B.publicTesta;

C.Testa=newTest();

D.publicTesta=newTest();69.

如下哪个是Java中的正确的标识符(

D

)。A.public

B.super

C.3number

D.width70.

定义一个类,必须使用的关键字是(

B

)。

A.public

B.class

C.interface

D.static71.

下列数组声明语句错误的是:(

C

)。A.int[]a;

B.inta[];

C.inta[5];

D.int[]a=newint[5];72.Java语言属于下列哪一种语言(

B

)。A.

面向过程语言

B.面向对象语言

C.

面向机器语言

D.

面向操作系统语言73.

现有一个整型数组a[4],它的所有元素是(

B

)。A.a0.a1,a2.a3

B.

a[0],a[1],a[2],a[3]

C.a[1],a[2],a[2],a[4]

D.

a[0],a[1],a[2],a[3],a[4]

填空题答题要求:每空只有一个正确答案,填对给分,填不对不给分。

1.若有定义

int[]a=newint[8];

则a的数组元素中第7个元素和第8个元素的下标分别是(

6

)和(

7

)。2.Scanner类在(

java.util

)包下面。3.JVM是指(

java虚拟机)。4.假设有一个JAVA应用程序,其源程序文件名是Morning.java,则编译该源程序时应该在命令提示符窗口中输(

javacMorning.java

)命令,运行该程序时应该在命令提示符窗口中输入(javaMorning)命令。5.要声明整型数组a,应该用语句(

inta[];

)。6.要定义x为int类型的数组,并且数组元素的初值是1、2、3、4、5,则可以用一条语句(

int[]x={1,2,3,4,5};

)。7.在Java语言中,所有的数组都有一个(

length

)属性,这个属性存储了该数组的元素的个数或者说数组长度。8.面向对象程序设计的四个特性是:抽象性、(继承性)、(封装性)、(多态性)。9.Java中类成员的限定词有以下几种:private

缺省,

public

),

(protected

)。其中(public)的限定的范围最大。10.

用于创建类实例对象的运算符是(new),Java中所有类都是类(Object)的子类。11.

构造方法的方法名与(类名)相同,若类中没有定义任何的构造方法,则运行时系统会自动为该类生成一个没有参数的构造的方法。12.java中用关键字(extends)指明继承关系、用关键字(implements)指明接口实现。13.this代表了(当前对象)的引用,super表示的是当前对象的(父类)对象。14.java中提供了两种用于多态的机制(

重载)、(

覆盖)。15.关键字(final)表示一个对象或变量在初始化后不能被修改。16.

下面方法的功能是判断一个整数是否为偶数,将程序补充完整。public(

boolean

isEven(int

a){

if(a%2==0)

return

true

);else

return

false;}17.this和super

关键字只能在(非静态)方法中使用。18.java中用关键字(abstract)指明抽象类,用关键字(

interface

)指明接口。19.

执行下列代码后的结果是什么?intx,a=8,b=4,c=5;x=++a+b+++c++;x=

18

),a=(9

),b=(

5),

c=(

6

)20.

在Java语言中,字符串直接量是用双引号括起来的字符序列,字符串不是字符数组,而是类

(String)

的实例对象。21.

当String对象用==

比较时,如果String包括相同的地址,则结果为(true)

。22.

对于下列描述,各写出一条语句完成要求的任务(1)比较s1中的串和s2中的串的内容的相等性;

(

s1.equals(s2)

;)

(2)用+=向串s1附加串;

(

s1+=s2;

)

(3)判断s1中串的长度;

(s1.length();

)

23.

设x,y,max,min均为int型变量,x、y已赋值。用三目条件运算符求x、y的最大值和最小值,并分别赋给变量max和min,这两个赋值语句分别是(max=a>b?a:b)和(min=a<b?a:b)。24.“当整型变量n的值不能被13除尽时其值为

false”

的Java语言表达式是(n%13==0)。25.

执行以下程序段后:x=(6),

y=(24)。intx=5,y=5;y=++x*--y;26.

在Java程序运行时,系统自动通过System类创建三个静态的I/O对象,它们是标准输入流对象(

System.in)、标准输出流对象(System.out)

和标准错误流对象(System.err)。27.java中的异常处理通过5个关键字来实现:它们是try、catch、throw、throws和finally。进行异常监测的代码要放在try子句内:捕获异常需要使

(catch)子句;在方法中宣布可能产生的异常应使用(

throw)关键字。28.

异常是一种运行时错误,在java中,异常是以对象的方法表示的,任何异常对象都是(Throwable)类或其子类的对象。29.Java中,InputStream和OutputStream是以(

字节

)为数据读写单位的输入输出流的基类;Reader和Writer是以(

字符

)为数据读写单位的输入输出流的基类。30.Java的异常处理模型以3种操作为基础:声明异常、抛出异常和捕捉异常。当程序语句导致错误时,包含语句的方法将创建异常对象并把它传递到系统,这个过程称为(

抛出异常

),查找异常处理程序的过程称为(

捕捉异常

)。

31.一般用(System.in)创建InputStream对象,表示从标准输入中获取数据。用(System.out)创建OutputStream对象,表示输出到标准输出设备中。32.java把它能够识别的异常分为两大类:检查的和非检查的异常。非检查的异常是(Error)类和RuntimeException类的实例,它代表程序不必处理严重系统错误;检查异常是(Exception)类的子类,它代表程序应该而且能够处理的错误。33.

将以(.java)为扩展名的Java源文件编译成字节码文件,字节码文件的扩展名为

(.class)

。34.Java语言中的浮点数默认类型是(double或者双精度浮点型)。35.Java语言以(类)为程序的基本单位,它是具有某些共同特性实体的集合,是一种抽象的概念。36.

代码System.out.println(076)的输出结果是(62)。37.

数组初始化分为(动态数组)和(静态数组)两种。39.

类中的(构造)方法是一个特殊的方法,其名称与类名相同。40.

在面向对象方法中,类的实例被称为(对象)。

问答题答题要求:按采分点给分,语言能符合采分点表达的含义。1.什么是变量?什么是常量?变量名和变量的数据类型各有什么意义?答:常量是一个某种基本数据类型的数值(1分),变量是内存中一个存放数据的存储单元(1分)。变量名表示存放该变量的存储单元地址(1分),变量的数据类型表示该变量占用内存的大小(2分)。2.怎样构成一个合法的Java变量名?答:Java要求变量名只能由英文字母、美元符号$或下划线_构成,且不能以数字开头,中间也不能有空格。(3分)不能以关键字作为变量名(1分)区分大小写(1分)。3、简述构造方法的特殊性以及它的主要作用答:构造方法的特殊性在于:该方法没有返回数据类型,创建对象时系统自动调用。该方法的作用(3分):为创建的对象分配存储空间,为对象的属性赋初始值。(2分)4、类的主要修饰符有哪些?类的成员变量的修饰符有哪些?答:类的修饰符有缺省、public、abstract、final等;(2分)成员变量的修饰符有public、private、缺省、protected、static、final等。(3分)5、类包括哪些部分?类体包括哪些部分?方法定义包括哪些部分?方法声明包括哪些部分?答:类包括类声明和类体两部分(2分)。类体包括变量定义和方法定义两部分(1分)。方法定义包括方法声明和方法体两部分(1分)。方法声明包括方法名和返回类型两部分(1分)。6.类和接口有什么不同答:一个类只能有一个父类,但是可以有多个接口。接口中只能声明方法,不允许给出方法体,方法体要在实现接口的类中给出。(3分)在默认状态下接口中所有变量和方法都是public。所以当一个类实现了某个接口以后,便可以使用接口的所有变量和方法。(2分)7.能不能将一个类既声明为abstract又声明为final?答:不能。abstract类可能包含抽象方法,抽象方法只有方面声明,没有方法体。所以抽象类不能直接使用,只能通过继承,在子类中给出抽象方法的方法体。final类不能被继承,没有子类。所以,他们是矛盾的。8.如果某子类和它的父类不在同一个包中,采用什么权限修饰符才能访问父类的成员?不加任何修饰符行不行?答:需要用public或protected修饰(3分)。不行,不加任何修饰符的成员只能在同一个包中访问(2分)。9.Java

是否支持多重继承,如何实现多重继承关系?答:在Java程序中,通过类的定义只能实现单重继承(3分),但通过接口的定义可以实现多重继承关系。(2分)10、字符串类String

和StringBuffer类有何不同?答:从根本上来说应该是stringBuffer在做字符长度变动的时候将继续使用原来的内存空间,不新分配.(2分)而String的长度一旦变动,就如上面的例子一样,其内部将分配新的内存空间。(3分)11.流是指数据的流动。输入流的数据从哪里流到哪里?输出流中的数据从哪里流到哪里?答:对于输入流,数据从文件或输入设备流动到程序。(2分)对于输出流,数据从程序流动到文件或输出设备。(3分)程序分析题1.如果程序代码为:publicclassDemo{publicstaticvoidmain(String[]args){Stringa=args[1];System.out.println(a);}}进行编译后,执行以下命令将得到什么结果?javaDemoa1a2a3答:a2

(5分)2、现有一个类定义如下,请回答问题:classEmployee{Stringname;intage;doublewage;staticintNo=0;Employee(Stringa1,inta2,doublea3){name=a1;age=a2;wage=a3;No++;}}在使用该类时,已使用下面语句生成了该类的对象:Employeee1,e2;e1=newEmployee("王劲",26,6300);e2=newEmployee("张山",30,3800);问题:1),e2.age,e2.wage的值各是什么?2)生成对象e1,e2后,e1.No值为多少能否通过类名做前缀引用属性No和age?答:1)(张山;30;3800.0)

;(3分)2)(2;

可以访问No,不能访问age)(2分)3、阅读以下程序,写出运行结果

。class

Q1{

publicstaticvoidmain(String

args[]){double

d=1.23;Dec

dec=new

Dec();dec.decrement(d);System.out.println(d);}classs

Dec{publicvoid

decrement(double

decMe){decMe=decMe

0.1;}}答:1.23

(5分)4、分析下列程序的执行结果:classValue{

publicinti=15;}publicclassTest{

publicstaticvoidmain(Stringargv[]){

Testt=newTest();

t.first();

}

publicvoidfirst(){

inti=5;

Valuev=newValue();

v.i=25;

second(v,i);

System.out.println(v.i);

}

publicvoidsecond(Valuev,inti){

i=0;

v.i=20;

Valueval=newValue();

v=val;

System.out.println(v.i+""+i);

}}答:

150205、分析下列程序的执行结果:publicclassTest{

publicstaticvoidmain(){

inti=1,j=10;

do{

if(i++>--j)

continue;

}while(i<5);

System.out.println("i="+i+"j="+j);

}}结果是:

答:i=5,j=66、阅读程序后回答问题

publicclassContinueTest

{

publicstaticvoidmain(Stringargs[])

{

char

c='i';

for(int

n=6;n<11;n++)

{

if(n==8)

continue;

System.out.print("\t"+(c++));

}

}

}问题:1)程序的输出结果是什么?

2)若将if中的continue语句替换为break语句,输出结果是什么?答:1)i

j

k

l;(2分)2)i

j(3分)7.分析下列程序的功能是:

importjava.io.File;publicclassFileExercise{publicstaticvoidmain(String[]args){FilefileObject=newFile("Sally.txt");if(fileObject.exists()){System.out.println("ThereisafilenamedSally.txt");}else{System.out.println("ThereisnofilenamedSally.txt");}}}答:测试程序所在的目录是否包含一个名为Sally.txt的文件。如果存在则输出ThereisafilenamedSally.txt;如果不存在则输出Thereis

no

filenamedSally.txt。8.

下面程序输出结果为:

姓名:张三

性别:女

年龄:20姓名:李四

性别:女

年龄:33classPerson{

Stringname;

charsex;

intage;

Person(StringpName,charpSex,intpAge){//以下代码完成类属性赋值

;

;

;

}

publicStringtoString(){

Strings=("姓名:"+name+"

性别:"+sex+"

年龄:"+age);

;/返回s的值

}}

publicclassCreatePerson{

publicstaticvoidmain(String[]args){

Personp1=newPerson("张三",'男',20);

以下代码完成定义对象p2,各参数值分别为:李四,女,28

;

p1.sex='女';

//将p1的sex属性改为女

System.out.println(p1.toString());

//输出p1的各个属性

//以下代码将p2的age改为33

;//以下代码输出p2的各个属性

;

}}答:1、name=pName(2分)

sex=pSex(2分)

age=pAge(2分)2、returns(2分)3、Personp2=newPerson(“李四”,’女’,28)

(2分)4、p2.age=33(2分)5、p2.toString()

(2分)9.分析程序的运行结果publicclassCourse{privateStringcNumber;privateStringcName;privateintcUnit;publicCourse(Stringnumber,Stringname,intunit){cNumber=number;cName=name;cUnit=unit;}publicvoidprintCourseInfo(){System.out.println("课程号:"+cNumber+"

课程名:"+cName+"

学分:"+cUnit);}}classCourseTest{publicstaticvoidmain(String[]args){Coursec;c=newCourse("001","Java",3);c.printCourseInfo();}}

答:课程号:001

课程名:Java

学分:3(5分)

10.

下面的程序运行结果如下,请将代码填充完整:

name:Tom

salary:5000

name:Jerry

salary:3000publicclassEmployee{

Stringname;

intsalary;

Employee(Stringn,ints){

__

__;

//给变量name赋值

__

__;

//给变量salary赋值

}

Employee(Stringn){

name=n;

//给变量name赋值

}

voidprint(){

System.out.println("name:"+name);

System.out.println("salary:"+salary);

}

voidsetSalary(ints){

__

__;

给变量salary赋值

}

publicstaticvoidmain(String[]args){

Employeee1=newEmployee("Tom",5000);

Employeee2=newEmployee("Jerry");

e1.print();

e2.setSalary(3000);

e2.print();

}}答:

1、

name=n;

//给变量name赋值

salary=s;2、

salary=s;11.分析程序的运行结果publicclassFather{

Stringname,address,tel;

intage;

publicFather(Stringname,intage){

=name;this.age=age;}

voidout(){

System.out.print("姓名:"+name);

System.out.print("

年龄:"+age);

}

voidoutOther(){

System.out.print("

家庭住址:"+address);

System.out.print("

电话:"+tel);

}}classSonextendsFather{Stringschool;

publicSon(Stringname,intage){

super(name,age);}voidout(){

super.out();

super.outOther();

System.out.println("

学校:"+school);

}publicstaticvoidmain(Stringargs[]){

Sonson=newSon("Tom",15);

son.address="金水区";

son.school="九中";

son.tel="66123456";

son.out();}}答:姓名:Tom

年龄:15

家庭住址:金水区电话:66123456

学校:九中(5分)12.阅读如下所示的3个JAVA类,分析它们之间的关系,写出运行结果。classSuperClass{

intx;

SuperClass(){

x=3;

System.out.println("inSuperClass:x="+x);

}

voiddoSomething(){

System.out.println("inSuperClass.doSomething()");

}}classSubClassextendsSuperClass{

intx;

SubClass(){

super();

x=5;

System.out.println("inSubClass:x="+x);

}

voiddoSomething(){

super.doSomething();

System.out.println("inSubClass.doSomething()");

System.out.println("super.x="+super.x+"sub.x="+x);

}}publicclassInheritance{

publicstaticvoidmain(String[]args){

SubClasssubC=newSubClass();

subC.doSomething();

}}答:运行结果:inSuperClass:x=3(2分)inSubClass:x=5(2分)inSuperClass.doSomething()(2分)inSubClass.doSomething()(2分)super.x=3sub.x=5(2分)13.阅读如下程序,写出运行结果。classStaticDemo{staticintx;inty;publicstaticintgetX(){

returnx;

}publicstaticvoidsetX(intnewX){

x=newX;

}publicintgetY(){returny;}publicvoidsetY(intnewY){y=newY;}}publicclassMainDemo{publicstaticvoidmain(String[]args)

{System.out.println("静态变量x="+StaticDemo.getX());StaticDemoa=newStaticDemo();

StaticDemob=newStaticDemo();a.setX(1);

a.setY(2);b.setX(3);b.setY(4);System.out.println("静态变量a.x="+a.getX());System.out.println("实例变量a.y="+a.getY());System.out.println("静态变量a.x="+b.getX());System.out.println("实例变量a.y="+b.getY());

}}答:运行结果:静态变量x=0(2分)静态变量a.x=3(2分)实例变量a.y=2(2分)静态变量a.x=3(2分)实例变量a.y=4(2分)14.

观察下面程序的运行结果,注意try语句中产生的异常与catch参数的匹配。publicclassTest2{

staticinta=3,b=0;

staticStringc[]={"数组元素c[0]"};

publicstaticvoidmain(String[]args){

try{

System.out.println(a);

System.out.println(a/b);

System.out.println(c[b]);//若上条语句产生异常,本语句将不被运行

}

catch(ArithmeticExceptione){

System.out.println("捕捉到一个算术异常");

}

catch(ArrayIndexOutOfBoundsExceptione){

System.out.println("捕捉到一个数组下标越界异常");

}

catch(Exceptione){

System.out.println("捕捉到一个系统异常");

}

finally{

System.out.println("程序结束");

}

}}答:运行结果:3(2分)捕捉到一个算术异常(2分)程序结束(2分)编程题答题要求:按采分点给分,要求代码编写有一定的规范性,完成采分点功能区代码则给分,未完成该采分点的,不给分。

1.

编写出一个程序,其中创建了数组abc,该数组的五个元素分别为“北京奥运会”五个汉字。要求程序运行后,能将五个元素显示在同一行上,并显示该数组的长度。(共10分)编码规范2分;类和主方法的定义2分;数组的声明和赋值2分,汉字输出2分(注意:字符输出时一定要转为字符串后输出,没有转换的扣1分),数组长度输出2分。答:publicclassShowChar{publicstaticvoidmain(String[]

args){charabc[]={'北','京','奥','运','会'};System.out.println(""

+

ch[0]

+

ch[1]

+

ch[2]

+

ch[3]

+

ch[4]);System.out.println(abc.length);}}2.

设计一个动物类,它包含动物的基本属性。例如名称、大小、重量等,并设计相应的动作,例如跑、跳、走等。编码规范2分;类定义2分;成员变量定义3分,成员函数定义3分。答:publicclassAnimal{

privateStringname;

privatedoubleweight;

privateintlength;

privateStringsex;

publicvoidrun(){

System.out.println("theanimalisrunning!");来源:考试大

}

publicvoidjump(){

System.out.println("theanimalisjumping!");

}

publicvoidwalk(){

System.out.println("theanimaliswalking!");

}

}3.

定义一个环形类Ring,包含属性外半径outerRadius,内半径innerRadius,颜色,生成Get和Set方法,并定义一个方法求环形的面积getArea,定义一个含有三个参数的构造方法和一个参数为0的构造方法。编码规范2分;类的成员变量的定义3分;类的成员函数的定义5分;答:publicclassRing{privatedoubleouterRaduis;privatedoubleinnerRaduis;privateStringColor;publicdoublegetArea(){returnMath.PI*this.outerRaduis*this.outerRaduis-Math.PI*this.innerRaduis*this.innerRaduis;}publicRing(doubler1,doubler2,Stringc){this.outerRaduis=r1;this.innerRaduis=r2;this.Color=c;}publicRing(){this.outerRaduis=50;this.innerRaduis=40;this.Color="green";}}4.

设计一个三角形类,它包含三角形基本属性底和高,以及求三角形面积的方法。要求从键盘接收三角形的底和高的值,然后输出三角形的面积。(提示:可以使用键盘扫描类Scanner或命令行参数接收三角形的底和高的值)编码规范2分;类的成员变量的定义2分;类的成员函数的定义3分;主方法的实现3分。答:importjava.util.*;classReta{

privatedoubledi;

privatedoublehigh;

publicReta(doubledi,doublehigh){

this.di=di;

this.high=high;

}

publicdoublearea(){

try{

return0.5*this.di*this.high;

}catch(Exceptione){

e.printStackTrace();

return0;

}

}}publicclassRet{publicstaticvoidmain(String[]args){Scannersc=newScanner(System.in);doublex=sc.nextDouble();doubley=sc.nextDouble();Retareta=newReta(x,y);doublearea=reta.area();System.out.print(area);

}}5.

有三个字符串Strings1="HelloJava";

Strings2="JavaApplet";

Strings3="Java";,编写程序找出其中最大者。编码规范2分;类定义2分;主方法的实现6分。答:publicclassmax1{

publicstaticvoidmain(Stringargs[])

{Strings1="HelloJava";Strings2="JavaApplet";Strings3="Java";Strings;if(pareTo(s2)<0)s=s2;elses=s1;if(pareTo(s3)<0)s=s3;Systrm.out.println("big="+s);}}6.

编写一个程序,设定一个有大小写字母的字符串Strings1="HelloJava";,先将字符串的大写字符输出,再将字符串中的小写字符输出。注:利用StringBuffer完成。编码规范2分;类定义2分;主方法的实现6分。

答:publicclassout{publicstaticvoidmain(Stringargs[]){Stringstr="HelloJava";StringBufferbufup=newStringBuffer();StringBufferbuflow=newStringBuffer();for(inti=0;i<str.length();i++){if(str.charAt(i)<97){bufup.append(str.charAt(i));bufup.append('');}else{buflow.append(str.charAt(i));buflow.append('');}}System.out.println("str="+str);System.out.println("uppercase="+bufup);System.out.println("lowercase="+buflow);}}7.

设定一个有大小写字母的字符串Strings1="abcdefghi";和一个查找字符,使用类

String方法IndexOf()来判断在该字符串中该字符出现的次数。编码规范2分;类定义2分;主方法的实现6分。答:importjava.util.*;publicclassStringNum{

publicstaticvoidmain(Stringargs[]){Scannerinput=newScanner(System.in);System.out.println("请输入一个字符串:");Strings1=input.nextLine();System.out.println("请输入一个字符:");Stringc1=input.nextLine();char[]cArr=c1.toCharArray();charc=cArr[0];intnum=0;intindex;inti=0;while(i<s1.length()){index=s1.indexOf(c,i);if(index==-1){break;}else{i=index+1;nu

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论