System.out.print(ar[i]);
}
}
A.00000B.错误,因为ar初始化前被使用
C.错误,因为Mine没有声明为abstract,未覆盖MineBase中的amethod
D.下标越界
9.下列代码在编译运行后输出的结果是(D)。
inti=1;
switch(i){
case0:
System.out.println("zero");
break;
case1:
System.out.println("one");
case2:
System.out.println("two");
default:
System.out.println("default");
}
A.oneB.one,twoC.defaultD.one,two,default
10.编译运行下列代码时得到的结果是(C)。
publicclassTuxextendsThread{
staticStringsName="vandeleur";
publicstaticvoidmain(Stringargv[]){
Tuxt=newTux();
t.piggy(sName);
System.out.println(sName);
}
publicvoidpiggy(StringsName){
sName=sName+"wiggy";
start();
}
publicvoidrun(){
for(inti=0;i<4;i++){
sName=sName+""+i;
}
}
}
A.编译出错B."vandeleurwiggy"
C."vandelur"D."vandeleurwiggy0123"
11.编译运行下列代码时显示的结果是(C)。
importjava.awt.*;
publicclassButtextendsFrame{
publicstaticvoidmain(Stringargv[]){
ButtMyBut=newButt();
}
Butt(){
setLayout(newBorderLayout());
ButtonHelloBut=newButton("Hello");
ButtonByeBut=newButton("Bye");
add(HelloBut,BorderLayout.NORTH);
add(ByeBut,BorderLayout.SOUTH);
setSize(300,300);
setVisible(true);
}
}
A.两按钮占据整个框架,左边为Hello,右边为ByeB.Bye按钮占据整个框架
C.两按钮位于框架上下方,上边为Hello,下边为ByeD.Hello按钮占据整个框架
12.下列代码在编译运行过程中会产生的结果是(C)。
Integerten=newInteger(10);
Longnine=newLong(9);
System.out.println(ten+nine);
inti=1;
System.out.println(i+ten);
A.19B.10C.19D.错误:
不能转换整型数
201111
13.下列代码在编译运行过程中会出现的结果是(D)。
publicclassQ{
publicstaticvoidmain(Stringargv[]){
intanar[]=newint[]{1,2,3};
System.out.println(anar[2]);
}
}
A.1B.错误,因为anar初始化前被引用C.错误,因为数组大小必须确定D.3
14.在含有"Java"的字符串s中找到字母v的位置(即2),应该使用的语句是(C)。
A.mid(2,s);B.charAt
(2);C.s.indexOf('v');D.indexOf(s,'v');
15.假定有如下声明
Strings1=newString("Hello")
Strings2=newString("there");
Strings3=newString();
则下列语句中,合法的是(A)。
A.s3=s1+s2;B.s3=s1-s2;C.s3=s1&s2;D.s3=s1&&s2
16.下列代码在编译运行过程中会产生的结果是(C)。
A.编译通过,run方法会输出i的增值B.编译时代码出错
C.编译通过,调用start会输出i的增值D.编译器出错,因while没有得到真(true)参数
classBackgroundimplementsRunnable{
inti=0;
publicvoidrun(){
while(true){
i++;
System.out.println("i="+i);
}//Endwhile
}//Endrun
}//Endclass
17.给定如下代码设置frame颜色为粉色(pink)的是(D)。
importjava.awt.*;
publicclassSetFextendsFrame{
publicstaticvoidmain(Stringargv[]){
SetFs=newSetF();
s.setSize(300,200);
s.setVisible(true);
}
}
A.s.color=Color.pinkB.s.setColor(PINK);
C.s.Background(pink);D.s.setBackground(Color.pink);
18.试图编译运行如下代码时会出现(A)。
publicclassConv{
publicstaticvoidmain(Stringargv[]){
Convc=newConv();
Strings=newString("ello");
c.amethod(s);
}
publicvoidamethod(Strings){
Stringc="H";
c=c+s;
System.out.println(c);
}
}
A.编译通过,并输出"Hello"B.编译通过,并输出"ello"
C.编译通过,并输出elloHD.编译时错
19.给定如下代码,能让Baseconstructor输出字符串"baseconstructor"的是(D)。
classBase{
Base(inti){
System.out.println("baseconstructor");
}
Base(){
}
}
publicclassSupextendsBase{
publicstaticvoidmain(Stringargv[]){
Sups=newSup();
//One
}
Sup()
{
//Two
}
publicvoidderived()
{
//Three
}
}
A.在//One处放置Base(10);B.在//One处放置super(10);
C.在//Three处放置super(10);D.在//Two处放置super(10);
20.给定如下代码,其输出是(C)。
publicclassPass{
staticintj=20;
publicstaticvoidmain(Stringargv[]){
inti=10;
Passp=newPass();
p.amethod(i);
System.out.println(i);
System.out.println(j);
}
publicvoidamethod(intx){
x=x*2;
j=j*2;
}
}
A.10,and20B.20and40C.10and40D.错误,因为amethod参数与变量不匹配
21.在同一目录下存放有这些文件,如果Base.java文件没有编译,则试图编译和运行Class1.java时出产生(D)。
//Base.java
packageBase;
classBase{
protectedvoidamethod(){
System.out.println("amethod");
}//Endofamethod
}//Endofclassbase
packageClass1;
//Class1.java
publicclassClass1extendsBase{
publicstaticvoidmain(Stringargv[]){
Baseb=newBase();
b.amethod();
}//Endofmain
}//EndofClass1
A.编译错:
MethodsinBasenotfound
B.编译错:
Unabletoaccessprotectedmethodinbaseclass
C.编译通过并输出"amethod"
D.编译错:
SuperclassClass1.BaseofclassClass1.Class1notfound
22.试图编译运行如下代码时会产生的结果是(A)。
privateclassBase{
Base(){
inti=100;
System.out.println(i);
}
}
publicclassPriextendsBase{
staticinti=200;
publicstaticvoidmain(Stringargv[]){
Prip=newPri();
System.out.println(i);
}
}
A.编译时有错,class不允许使用修饰符privateB.200C.100200D.100
23.试图编译运行如下代码产生的结果是(A)。
publicclassRef{
publicstaticvoidmain(Stringargv[]){
Refr=newRef();
r.amethod(r);
}
publicvoidamethod(Refr){
inti=99;
multi(r);
System.out.println(i);
}
publicvoidmulti(Refr){
r.i=r.i*2;
}
}
A.编译时出错B.99C.198D.运行时错
24.若将变量i的值赋给数组ia[]的元素,则在//Forloop注释行后应放的代码是(B)。
publicclassLin{
publicstaticvoidmain(Stringargv[]){
Linl=newLin();
l.amethod();
}
publicvoidamethod(){
intia[]=newint[4];
//StartForloop
{
ia[i]=i;
System.out.println(ia[i]);
}
}
}
A.for(inti=0;iC.for(inti=1;i<4;i++)D.for(inti=0;i25.编译运行如下代码时会出现(D)。
classBase{
privatevoidamethod(intiBase){
System.out.println("Base.amethod");
}
}
classOverextendsBase{
publicstaticvoidmain(Stringargv[]){
Overo=newOver();
intiBase=0;
o.amethod(iBase);
}
publicvoidamethod(intiOver){
System.out.println("Over.amethod");
}
}
A.编译时错,提示Base.amethodisprivateB.输出"Base.amethod"
C.运行时错,提示Base.amethodisprivateD.输出"Over.amethod"
得分
评卷人
二、编程题(本题共4题,第一题10分,第二题15分,第三题10分,第四题15分,总分50分)
1、(矩形类Rectangle)设计一个名为Rectangle的类表示矩形。
这个类包括:
●两个名为width和height的double型数据域,它们分别表示矩形的宽和高。
width和height的默认值都是1。
●创建默认矩形的无参构造方法。
●一个创建width和height为指定值的矩形的构造方法。
●一个名为getArea()的方法返回矩形的面积。
●一个名为getPerimiter()的方法返回周长。
画出该类的UML图。
实现这个类。
编写一个测试程序,创建两个Rectangle对象----一个矩形宽为4而高为40,另一个矩形宽为3.5而高为35.9。
依照每个矩形的宽、高、面积和周长的顺序显示。
publicclassExercise8_1{
publicstaticvoidmain(String[]args){
RectanglemyRectangle=newRectangle(4,40);
System.out.println("Theareaofarectanglewithwidth"+myRectangle.width+"andheight"+
myRectangle.height+"is"+myRectangle.getArea());
System.out.println("Theperimeterofarectangleis"+myRectangle.getPerimeter());
RectangleyourRectangle=newRectangle(3.5,35.9);
System.out.println("Theareaofarectanglewithwidth"+
yourRectangle.width+"andheight"+
yourRectangle.height+"is"+
yourRectangle.getArea());
System.out.println("Theperimeterofarectangleis"+
yourRectangle.getPerimeter());
}
}
classRectangle{
//Datamembers
doublewidth=1,height=1;
//Constructor
publicRectangle(){
}
//Constructor
publicRectangle(doublenewWidth,doublenewHeight){
width=newWidth;
height=newHeight;
}
publicdoublegetArea(){
returnwidth*height;
}
publicdoublegetPerimeter(){
return2*(width+height);
}
}
2、(写/读数据)编写一个程序,如果名为Exercise9_19.txt的文件不存在,则创建该文件。
使用文本I/O编写随机产生100个整数给文件。
文件中的数据由空格分开。
从文件中读回数据然后显示排好序的数据。
提示:
在main方法头抛出异常。
publicstaticvoidmain(String[]args)throwsException{}
importjava.util.*;
importjava.io.*;
publicclassExercise9_19{
publicstaticvoidmain(String[]args)throwsException{
//Checkifsourcefileexists
Filefile=newFile("Exercise9_19.txt");
if(!
file.exists()){
//Createthefile
PrintWriteroutput=newPrintWriter(file);
for(inti=1;i<=100;i++){
output.print((int)(Math.random()*100)+"");
}
output.close();
}
Scannerinput=newScanner(file);
int[]numbers=newint[100];
for(inti=0;i<100;i++){
numbers[i]=input.nextInt();
}
Arrays.sort(numbers);
for(inti=0;i<100;i++){
System.out.print(numbers[i]+"");
}
}
}
3、设计一个名为GeometricObject的类,该类包括:
●三个数据域:
Stringcolor,默认值为”white”;
booleanfilled;
java.util.DatedateCreated;