java判断改错题
Java题型参考及答案

Java题型参考说明:以下题型将是Java试卷的题型,请同学们参考。
考试内容都是每章的重点和基本内容,都是平时要求大家掌握的内容,请大家认真复习。
以下习题仅供参考。
一、选择题1、关于Java中数据类型叙述正确的是:( B )A、整型数据在不同平台下长度不同.B.boolean类型数据只有2个值,true和falseC.数组属于简单数据类型D.Java中的指针类型和C语言的一样2、已有表达式:String s = “story”;则下列那个表达式不合法(BC)A. s += “books”;B. char c = s[1];C. int len = s.length;D. String t = s.toLowerCase();3、下面那个方法的声明是对方法public void example(){...}的覆盖(B)A. public void example( int m){...}B. public int example(){...}C. public void example2(){...}D. public int example ( int m, float f){...}4、下面哪个标示符不合法(C)A. $personsB. TwoUsersC. *pointD. _endline5、以下有关构造方法的说法,正确的是:(A)A.一个类的构造方法可以有多个B.构造方法在类定义时被调用C.构造方法只能由对象中的其它方法调用D.构造方法可以和类同名,也可以和类名不同6、以下有关类的继承的叙述中,正确的是:(D)A.子类能直接继承父类所有的非私有属性,也可通过接口继承父类的私有属性B.子类只能继承父类的方法,不能继承父类的属性C.子类只能继承父类的非私有属性,不能继承父类的方法D.子类不能继承父类的私有属性22、以下有关类的继承的叙述中,正确的是:(D)。
(A)子类能直接继承父类所有的属性(B)子类只能继承父类的方法,不能继承父类的属性(C)子类只能继承父类的非私有属性,不能继承父类的方法(D)子类不能继承父类的静态方法7、下列属于容器的组件有:(B)A.Jbutton B.Jpanel C.Canvas D.JTextArea8、关于Java中异常的叙述正确的是:(D)A.异常是程序编写过程中代码的语法错误B.异常是程序编写过程中代码的逻辑错误C.异常出现后程序的运行马上中止D.异常是可以捕获和处理的9、为实现进程之间的通信,需要使用下列那种流才合适?(D)A.Data stream B.File stream C.Buffered stream D.Piped stream24、读取文件可以使用的数据流是(D)(A)DataIputStream (B)ObjectInputStream (C)FileWriter (D)FileInputStream26、在GUI图形界面中,默认使用BorderLayout布局的容器是(C)(A)MenuBar (B)Panel (C)Frame (D)CheckboxMenuItem25、单击按钮Button会触发的事件是( B )(A)MouseEvent (B)ActionEvent (C)KeyEvent (D)ItemEvent17、当Frame的大小被改变时Frame中的按钮的位置可能被改变,但是大小不变则使用的哪一个布局管理器。
Java语言程序设计测试题改错题部分

Java语言程序设计测试题改错题部分判断下面的程序片断是否正确。
若有错,指出错在哪里并改正;若正确,打“√”。
1、(max为整型变量)if (max1)g.drawString(“不等于1”, 20,20);2、for(float i=0.0;i>-10.0; i -=1.0)System.out.println(i);3、void test(int x){System.out.println(x);return x;}4、abstract final class OurClasses { }5、final MAX_NUMBER;MAX_NUMBER++;6、class MyClass{ int var=100;static int getVar(){return var;}}7、public class MyClass{int data;void MyClass(int d){ data=d;}}8、public class MyMain{public static void main (String args[ ]){ System.out.println(MyClass1.data);}}class MyClass1{int data=10;}9、class IamAbstract{final int f;double d;abstract void method();}10、class parent{private int mine;}class child extends parent{int getMine(){ return mine; }}11、class parent{private int mine;int getMine( ){return mine;}}class child extends parent{int mine;int getMine( ){ return super.getMine; }}12、class Parent{ int field; }class Child extends Parent{ int field; }class UseChild{ static int getField(Child c){ return (c.field); }}public class MainClass{public static void main(String args[ ]){ Parentp=new Parent();System.out.println(UseChild.getField(p));}}13、class AmIRight{int field1=10;abstract void method1( );}14、class AmIWrong{int data1,data2;AmIWrong(){ data1=-1; }AmIWrong(int d){ data2=d;this();}}15、interface MyInterface{void method1();}abstract class Parent implements MyInterface{ }class Child extends Parent{ }16、interface MyInterface{void method1();}abstract class Parent implements MyInterface{}class Child extends Parent{void method1(){System.out.println(“I am implemented now!”);}}17、public static void main(String args[ ]){try{char ch=(char)System.in.read();. . .//其他语句}catch(Exception e){return;}catch(IOExceptione){System.out.println(e.toString());}}18、public class AmIWrong implements Runnable{Thread mt=Thread(this);mt.start();void run(){System.out.println(“I am alive now”);}}19、class MyClass1{final void method1(){ }void method1(int i){ }}20、说明以下程序是否有误,错在哪里,应如何改正。
java代码检错面试题

Java代码查错abstract class Name {private String name;public abstract boolean isStupidName(String name) {}}大侠们,这有何错误?答案: 错。
abstract method必须以分号结尾,且不带花括号。
2.public class Something {void doSomething () {private String s = "";int l = s.length();}}有错吗?答案: 错。
局部变量前不能放置任何访问修饰符 (private,public,和protected)。
final可以用来修饰局部变量(final如同abstract和strictfp,都是非访问修饰符,strictfp只能修饰class和method而非variable)。
3.abstract class Something {private abstract String doSomething ();}这好像没什么错吧?答案: 错。
abstract的methods不能以private修饰。
abstract的methods就是让子类implement(实现)具体细节的,怎么可以用private把abstractmethod封锁起来呢? (同理,abstract method前不能加final)。
4.public class Something {public int addOne(final int x) {return ++x;}}这个比较明显。
答案: 错。
int x被修饰成final,意味着x不能在addOne method中被修改。
5.public class Something {public static void main(String[] args) {Other o = new Other();new Something().addOne(o);}public void addOne(final Other o) {o.i++;}}class Other {public int i;}和上面的很相似,都是关于final的问题,这有错吗?答案: 正确。
java程序改错12道及答案

java程序改错12道及答案/*-------------------------------------------------------【程序改错】---------------------------------------------------------题目1:求1!+2!+3!+ (10)-------------------------------------------------------*/public class Prog1{ public static void main(String args[]){/*****************FOUND*****************/int i=-1;/*****************FOUND*****************/int sum=0,fact=1;/*****************FOUND*****************/while(i<10);{fact=fact*i;sum=sum+fact;i++;/*****************FOUND*****************/end whileSystem.out.println("和值是 "+sum);}}1)int i=1;2)double sum=0,fact=1;或long sum=0,fact=1;或floatsum=0,fact=1;3)while(i<=10)或while(i<11)4)}/*-------------------------------------------------------【程序改错】---------------------------------------------------------题目2:计算 1/1+1/2+1/3+...+1/100 的值-------------------------------------------------------*/public class Prog1{public static void main( String args[ ]){/***********FOUND***********/int sum=0.0;/***********FOUND***********/for(int i=1; i<100; i++)/***********FOUND***********/sum+=1/i;/***********FOUND***********/System.out.println( "sum=",sum );}}1)double sum=0.0;或 float sum=0.0;2)for(int i=1;i<=100;i++) 或 for(int i=1;i<101;i++)3)sum+=1/(double)i; 或 sum+=1.0/i; 或 sum+=1.0/(double)i; 或 sum+=1/(float)i;4)System.out.println("sum="+sum);/*------------------------------------------------------- 【程序改错】---------------------------------------------------------题目3:求自然数1至100之间各奇数和并输出-------------------------------------------------------*/public class Prog1{public static void main(String args[]){/***********FOUND***********/int i,j;s=0;/***********FOUND***********/i=0;while(i<100){/***********FOUND***********/if(i%2==0)s=s+i;i=i+2;}/***********FOUND***********/System.out.println("和值是:"+i);}}1)int i,j,s;或int i,s;2)i=1;3)if(i%2!=0)或if(i%2==1)4)System.out.println("和值是:"+s);/*------------------------------------------------------- 【程序改错】---------------------------------------------------------题目4:计算1到100的整数和值-------------------------------------------------------*/public class Prog1{/***********FOUND***********/public static void main (args[]){/***********FOUND***********/int n=100,sum=1;while(n>0){sum+=n;/***********FOUND***********/n++;}/***********FOUND***********/System.println("Sum is "+sum);}}1)public static void main(String args[])2)int n=100,sum=0;3)n--;或n-=1;或n=n-1;4)System.out.println("Sum is"+sum);/*------------------------------------------------------- 【程序改错】---------------------------------------------------------题目5:求1到100的偶数之和,奇数之积-------------------------------------------------------*/public class Prog1{ public static void main(String args[]){/***********FOUND***********/int i,j,sum=1;/***********FOUND***********/int product=1;for(i=1;i<=100;i++){/***********FOUND***********/if (i%2!=0)sum+=i;else/***********FOUND***********/product=i;}System.out.println("偶数之和是 : "+sum); System.out.println("奇数之积是 : "+product);}}1)int i,j,sum=0;2)double product=1;或float product=1;3)if(i%2==0)或if(i%2!=1)4)product*=i;或product=product*i;或product=i*product;/*-------------------------------------------------------【程序改错】---------------------------------------------------------题目6:计算并输出500以内最大的10个能被3或7整除的自然数之和-------------------------------------------------------*/public class Prog1{public static void main(String args[]){int k,s=0,mc=0;/***********FOUND***********/for (k=500;k>0;k++){/***********FOUND***********/if (k%3 == 0 && k%7==0){/***********FOUND***********/s=k;mc++;}/***********FOUND***********/if (mc=10)break;}System.out.println("Sum is "+s);}}1)for(k=500;k>0;k--) 或 for(k=500;k>=1;k--)2)if(k%3==0||k%7==0)3)s=s+k;或s=k+s;或 s+=k;4)if(mc==10)/*------------------------------------------------------- 【程序改错】---------------------------------------------------------题目7:打印输出如下图形:* * * * * * * * ** * * * * * ** * * * ** * **-------------------------------------------------------*/public class Prog1{/***********FOUND***********/public static void main(args[]){ int i,j;for (i=1;i<=5;i++)/***********FOUND***********/for(j=1;j<=i;j++)System.out.print(" ");/***********FOUND***********/for (j=1;j<=11-2*i;j--)System.out.print("* ");/***********FOUND***********/System.out.print();}}}1)public static void main(String args[])2)for(j=1;j<i;j++)3)for(j=1;j<=11-2*i;j++)4)System.out.println();/*------------------------------------------------------- 【程序改错】---------------------------------------------------------题目8</i;j++):在屏幕上输出如下图形** * ** * * * ** * * * * * ** * * * ** * **-------------------------------------------------------*/public class Prog1{public static void main(String args[]){ int i,j;for (i=1;i<4;i++){/***********FOUND***********/for(j=1;j<=i;j++)System.out.print(" ");/***********FOUND***********/for (j=1;j<=i-1;j++)System.out.print("* ");/***********FOUND***********/System.out.print();}for (i=1;i<=3;i++){/***********FOUND***********/for(j=1;j<i;j++)System.out.print(" ");for (j=1;j<=7-2*i;j++)System.out.print("* ");System.out.println();}}}1)for(j=1;j<=4-i;j++)2)for(j=1;j<=2*i-1;j++)3)System.out.println();4)for(j=1;j<=i;j++)/*-------------------------------------------------------【程序改错】---------------------------------------------------------题目9:水仙花是指其各位、十位和百位的立方和等于这个三位数本身的数,求出所有的水仙花数-------------------------------------------------------*/public class Prog1{/***********FOUND***********/public static void (String args[]){ int n,i,j,k;/***********FOUND***********/for(n=100,n<1000,n++){/***********FOUND***********/i=n/10;j=n/10%10;k=n/100;/***********FOUND***********/if (n=i*i*i+j*j*j+k*k*k)System.out.print(n+" ");}System.out.println();}}1)public static void main(String args[])2)for(n=100;n<1000;n++) 或for(n=100;n<=999;n++)3)i=n%10;4)if(n==i*i*i+j*j*j+k*k*k)/*------------------------------------------------------- 【程序改错】---------------------------------------------------------题目10:求下列分数序列的前10项之和2/1,3/2,5/3,8/5,13/8,21/13......-------------------------------------------------------*/import java.io.*;public class Prog1{public static void main(String args[]){int a,b,t,i;/***********FOUND***********/int sum;a=2;b=1;sum=0;for(i=1;i<=10;i++){/***********FOUND***********/sum=sum+a/b;t=a;/***********FOUND***********/a=a-b;/***********FOUND***********/b=a;}System.out.println("和值是:"+sum);}}1)double sum;或 float sum;2)sum=sum+(double)a/b;或sum=sum+a/(double)b;或sum=sum+(float)a/b;或sum...3)a=a+b;或a=b+a;或a+=n;4)b=t;/*-------------------------------------------------------【程序改错】---------------------------------------------------------题目11</i;j++):求100到200之间的素数,并以5个一行的形式显示在屏幕上-------------------------------------------------------*/public class Prog1{/***************FOUND***************/public static void main(args[]);{ int n=0,j;for(int i=101;i<200;i+=2){/***************FOUND***************/for( j=2;j<=i-1;j--)/***************FOUND***************/if( i%j!=0 )break;if (j>i-1){ System.out.print(" "+i);n++;if( n==5 ){/***************FOUND***************/System.out.print();n=0;}}}System.out.println();}}1)public static void main(String args[])2)for(j=2;j<=i-1;j++)3)if(i%j==0)4)System.out.println();/*------------------------------------------------------- 【程序改错】--------------------------------------------------------- 题目12:输出如下数字塔:11 2 11 2 3 2 11 2 3 4 3 2 11 2 3 4 5 4 3 2 1-------------------------------------------------------*/public class Prog1{public static void main(String args[]){ int i,j;for (i=1;i<=5;i++){/***********FOUND***********/for(j=1;j<=i;j++)System.out.print(" ");for (j=1;j<i;j++)/***********FOUND***********/System.out.print(i+" ");/***********FOUND***********/for (j=i;j>1;j--)System.out.print(j+" ");/***********FOUND***********/System.out.print();}}}1)for(j=i;j<=5-i;j++)2)System.out.print(j+" ");3)for(j=i;j>=1;j--)或for(j=i;j>0;j--)4)System.out.println();</i;j++)。
JAVA代码查错

JAVA代码查错(共计15题)1.abstract class Name {private String name;public abstract boolean isStupidName(String name) {}}大侠们,这有何错误?答案: 错。
abstract method必须以分号结尾,且不带花括号。
2.public class Something {void doSomething () {private String s = "";int l = s.length();}}有错吗?答案: 错。
局部变量前不能放置任何访问修饰符 (private,public,和protected)。
final 可以用来修饰局部变量(final如同abstract和strictfp,都是非访问修饰符,strictfp只能修饰class和meth od而非variable)。
3.abstract class Something {private abstract String doSomething ();}这好像没什么错吧?答案: 错。
abstract的methods不能以private修饰。
abstract的methods就是让子类implement(实现)具体细节的,怎么可以用private把abstractmethod封锁起来呢? (同理,abstract method前不能加final)。
4.public class Something {public int addOne(final int x) {return ++x;}}这个比较明显。
答案: 错。
int x被修饰成final,意味着x不能在addOne method中被修改。
5.public class Something {public static void main(String[] args) {Other o = new Other();new Something().addOne(o);}public void addOne(final Other o) {o.i++;}}class Other {public int i;}和上面的很相似,都是关于final的问题,这有错吗?答案: 正确。
Java程序设计填空和改错题(参考答案解析)

Java语言中的关键字用法1、Java语言中有4种基本的整数类型,哪种类型所占的内存空间最小,写出定义该类型的关键字_____________。
byte2、Java语言中有4种基本的整数类型,哪种类型所占的内存空间最大,写出定义该类型的关键字_____________。
long3、Java中使用_____定义的数据类型是采用Unicode编码的。
char4、Java中存在一种基本的数据类型,该类型定义的变量不能与其他类型转换,定义该类型用___________。
boolean5、布尔型定义的成员变量是有默认值的,它的值是_________。
false6、定义变量保存含有小数的数据时,使用_____定义的变量精度比较高。
double7、当一个函数没有返回值时,应该使用_______来定义该函数类型。
void8、在循环语句中,使用__________能够从循环中跳出,并结束循环。
break9、在循环语句中,使用________能够从循环中跳到循环开始位置,执行下一次循环。
continue10、当有两个比较语句需要同时满足才能得到正确结果,应使用______连接这两个比较语句。
&&11、当有两个比较语句只需要满足其中一条就能得到正确结果,应使用______连接这两个比较语句。
||12、若希望一条语句得到相反的结果时,应该在改语句前加上________。
!13、当有两个比较语句得到的结果不相同时才是正确的结果,应使用______连接这两个比较语句。
^14、在switch多分支语句中,用case后跟上各种比较的值,其余的值是使用________表示。
default15、if语句用于判断一个条件是否成立,如果成立则执行其中的语句,当不成立时执行_______中的语句。
else16、当希望一个类中的成员不能在类的外部访问时,应使用______修饰符定义该成员。
private17、使用_______修饰符定义的成员可以在类外部通过对象来直接访问。
java程序改错12道及答案

{
/***********FOUND***********/
if(i%2==0)
s=s+i;
i=i+2;
}
/***********FOUND***********/
product=i;
}
System.out.println("偶数之和是 : "+sum);
System.out.println("奇数之积是 : "+product);
3)while(i<=10)或while(i<11)
4)}
/*-------------------------------------------------------
【程序改错】
---------------------------------------------------------
题目2:计算 1/1+1/2+1/3+...+1/100 的值
-------------------------------------------------------*/
public class Prog1
{
public static void main( String args[ ])
{
/***********FOUND***********/
public static void main (args[])
{
/***********FOUND***********/
int n=100,sum=1;
while(n>0)
java判断(有答案版)

∙问题1得 1 分,满分 1 分Java中使用InputStream和OutputStream流类的对象进行字节流的读写操作。
答案所选答案:错正确答案:错∙问题2得 1 分,满分 1 分Java泛型包括:泛型类、泛型接口和泛型方法。
答案所选答案:对正确答案:对∙问题3得 1 分,满分 1 分Java中的泛型类的类参数可以是任意Java数据类型,包括基本数据类型。
答案所选答案:错正确答案:错∙问题4得 1 分,满分 1 分Java编译器总是为所有的类自动生成缺省构造方法。
答案所选答案:错正确答案:错∙问题5得 1 分,满分 1 分Eclipse只需要有JRE就可以运行,不需要安装JDK。
答案所选答案:对正确答案:对∙问题6得 1 分,满分 1 分Java基类类型无法自动转换为子类类型。
答案所选答案:对正确答案:对∙问题7得 1 分,满分 1 分Java的一个类的定义中还可以再写入另一个类的定义代码。
答案所选答案:对正确答案:对∙问题8得 1 分,满分 1 分泛型的类型参数只能是类类型(包括自定义类)。
答案所选答案:对正确答案:对∙问题9得 1 分,满分 1 分static数据只能使用类名访问答案所选答案:对正确答案:对∙问题10得 1 分,满分 1 分非静态的方法不能访问静态的方法。
答案所选答案:错正确答案:错∙问题11得 1 分,满分 1 分Java子类中使用super来调用其直接父类的构造方法。
答案所选答案:对正确答案:对∙问题12得 1 分,满分 1 分泛型的类型参数可以有多个。
答案所选答案:对正确答案:对∙问题13得 1 分,满分 1 分Java类中定义的变量,其默认初值都是确定的。
答案所选答案:对正确答案:对∙问题14得 1 分,满分 1 分AWT是Java最早的界面库。
答案所选答案:对正确答案:对∙问题15得 1 分,满分 1 分Java子类类型无法自动转换为基类类型。
答案所选答案:错正确答案:错∙问题16得 1 分,满分 1 分Java程序文件中最多只能有一个public类。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
三、判断改错题(每题2分,共20分)(正确的打√,错误的打×并改正)
1、字节码主要是由Java语言源程序经过编译器编译得到。
()
2、引用一个类的属性或调用其方法,必须以这个类的对象为前缀。
()
3、一个源程序里有且只能有一个公共类,它就是主类。
()
4、如果p是父类Parent的对象,而c是子类Child的对象,则语句p=c是正确的。
()
5、sleep和wait方法都使当前运行线程放弃处理器和它所占用的同步资源管程。
()
6、一个Java Application程序欲从某个URL地址中读取文件内容,程序需要用import语
句引入的类库只有.*。
()
7、在Applet的坐标系中,(0,0)代表浏览器左上角的像素点。
()
8、一个复选按钮实现的是“二选一”的结构,一个单选按钮组实现的是“多选一”的结构。
()
9、新创建的Frame窗框对象,会自动显示在屏幕上。
()
10、设String对象的s=“Hi,”,则语句System.out.println(s.concat(“Yohaoo!”)的输
出结果是:Hi, Yohaoo! ()
答案
1、√
2、×,在类内引用可以不用前缀。
3、√
4、√
5、×,sleep不放弃管程。
6、×,还要引入java.io.*包用于输入输出。
7、×,(0,0)代表Applet容器左上角的坐标。
8、√
9、×,新建的Frame是不可见的,需要使用setVisible(boolean)方法,并使用参数true
使之可见。
10、√
三、判断改错题(每题2分,共20分)(正确的打√,错误的打×并改正)
1.Java是一种计算机语言,只能用来编写嵌入在web网页中运行的Java 小程序。
()
2.所有的组件都具有三个特性,即属性,方法,事件。
()
3.Java的数据类型分为原始类型和引用类型。
()
4.如果程序运行到try块中的某个语句产生了异常,则流程将跳过try块后面的语句,直
接进入try块后面的catch块;如果try块中没有语句产生异常,则在执行完try块中的全部语句后,再进入try块后面的catch块。
()
5.菜单开发的五个元素分别是:菜单栏、菜单项、子菜单、分隔条和快捷键。
()
6.final类中的属性和方法都必须被final修饰符修饰。
()
7.父类代表的对象范围比子类广。
()
8.判断下面语句组的正确性。
()
a)int array[10]=new int[10];
b)array[10]=10;
9.创建Socket对象时,如果程序找不到指定的服务器,将引发UnknowHostException类
的异常。
10.文件读写时可能产生输入输出异常,所以需要把完成这些操作的语句放在try-catch
结构中,打开一个文件输入输出流时则不需要使用try-catch结构。
答案
1、×,还可以编写独立运行的Java Application程序。
2、√
3、√
4、×,如果程序没有产生异常,将不会进入try块后面的catch块。
5、√
6、×,用final修饰的类只是不能再有子类,但其属性和方法并一定是final的)
7、√
8、×,语句array[10]=10;数组下标越界
9、√
10、×,打开文件也可能引发输入输出异常,也要放在try-catch结构中。
三、判断改错题(每题2分,共20分)(正确的打√,错误的打×并说明原因)
10、所有的鼠标事件都由实现了MouseListener监听接口的监听者来外理。
()
11、在Applet中,绘制图形的语句不一定写在paint方法中,但是需要paint方法把
其Graphics对象参数g传递给这个用户自己的绘图方法。
()
12、子类拥有的成员数目一定大于等于父类拥有的成员数目。
()
13、有的类定义时可以不定义构造函数,所以构造函数不是必须的。
()
14、Java系统的标准输入对象是System.in,标准输出对象有两个,分别是标准输出
System.out和标准错误输出System.err()
15、容器Applet、Panel、Frame的缺省布局管理器都是FlowLayout。
()
16、每个try块后面都必须有至少一个catch块与之对应,当一个try块有多个catch
块与之对应时,应该把参数为父类异常对象的catch块排在后面。
()
17、一个类如果实现了某个接口,那么它必须重载该接口中的所有方法。
()
18、在Java的基本数据类型中,char型采用Unicode编码方案,每个Unicode码字符占
用2字节内存空间。
()
10、使用方法length( )可以获得字符串或数组的长度。
()
答案
1、×,鼠标移动和拖动事件由实现了MouseMotionListener监听接口的监听者来处理。
2、√
3、×,考虑父类中的私有成员就不一定了。
4、×,用户不定义时,由系统自动生成一个缺省的构造函数。
5、√
6、×,Frame的缺省布局管理器都是BorderLayout。
7、√
8、×,如果这个类为抽象类,它可以不实现接口中的所有方法。
9、√
10、×,length是数组的属性。