java入门试题 | ||
选择题 1. main方法是java Application 程序执行的入口点,关于main方法的方法头以下( B ) 是合法的。 A. public static void main() B. public static void main(String[]args) C. public static int main(String[]arg) D. public void main(String arg[]) 2. 请从四个选项中选择答案,下列代码的执行结果是:( C ) public class Test{ public static void main(String srgs[]){ float t=9.0f; int q=6; System.out.println((t++)*(--q)); } } A)40 B)40.0 C)45.0 D)36.0 3. 以下声明合法的是( B ) A. default String s B. public final static native int w() C. abstract double d; D. abstract final double hyperbolicCosine() 4. 类Test1、Test2定义如下: 1. public class Test1 2. {public float aMethod(float a,float b) throws 3. IOException{ } 4. } 5. public class Test2 extends Test1{ 6. 7. } 将以下(A )方法插入行6是不合法的。 A.float aMethod (float a, float b){} //重写的方法不能小于 父类中方法的 B.public int aMethod (int a, int b) throws Exception{} C.public float aMethod (float P, float q){} D.public int aMethod(int a,int b) throws IOException{} 5. 下列关于修饰符混用的说法,错误的是( C ) A. abstract不能与final并列修饰同一个类 B. abstract类中不可以有private的成员 C. abstract方法必须在abstract类中 D. static方法中能处理非static的属性 6.关于被保护访问控制符protected修饰的成员变量,以下说法正确的是( A )。 A. 可以被三种类所引用: 该类自身、与它在同一个包中的其他类、在其他包中的该类的子类 B. 可以被两种类访问和引用: 该类本身、该类的所有子类 C. 只能被该类自身所访问和修改 D. 只能被同一个包中的类访问 7. 执行完代码"int[]x=new int[25];"后,以下( A )说明是正确的。 A. x[24]为0 B. x[24]未定义 C. x[25]为0 D. x[0]为空 8. 关于以下application的说明,正确的是( C )。 1. class StaticStuff 2. { 3. static int x=10; 4. static { x+=4;} 5. public static void main(String args[]) 6. { 7. System.out.println("x=" +x); 8. } 9. static {x/=3;} 10. } A. 4行与9行不能通过编译,因为缺少方法名和返回类型 B. 9行不能通过编译,因为只能有一个静态初始化器 C. 编译通过, 执行结果为: x=4 D. 编译通过, 执行结果为: x=3 9.以下代码完成画线功能,指出所画线的颜是( )。 1. g.d.green. cyan .yello); 2. g.drawLine(0,0,100,100); A. c.an 10. 关于以下程序段,正确的说法是( B )。 1. String s1="abc"+"def"; 2. String s2=new String(s1); 3. if(s1.equals(s2)) 4. System.out.println(".equals() succeeded"); 5. if(s1= =s2) 6. System.out.println("= = succeeded"); A. 行4与行6都将执行 B.行4执行,行6不执行 C. 行6执行,行4不执行 D.行4、行6都不执行 二、判断题 1.对象可以赋值,只要使用赋值号(等号)即可,相当于生成了一个各属性与赋值 对象相同的新对象。 ( F ) 2.Java的屏幕坐标是以像素为单位,容器的左下角被确定为坐标的起点。 ( ) 3.设String 对象s="Hello",运行语句“System.out.at("World!"));”后,String对象S的内容为“Hello world!”所以语句输出为:Hello world! ( F)//等于新建了一个s1,s1里有hello world 4.一个容器中可以混合使用多种布局策略。 ( ) 5.Java的源代码中定义几个类,编译结果就是生成几个以.class为后缀的字节码文件。( T) 6.Java的字符类型采用的是ASCII编码。 ( F ) 7.子类的变量和方法的数目一定大于等于父类的变量和方法的数目。 ( F ) 8. Java程序里、创建新的类对象使用关键字new,回收无用的类对象使用关键字free. ( F ) 9. 类及其属性、方法可以同时有一个以上的修饰符来修饰. ( T ) 10.最终类不能派生子类,最终方法不能被覆盖。 ( T) final 11.如果P是父类Parent的对象,而C是子类Child的对象,则语句c = p是正确的。( F) 12.接口是特殊的类,所以接口也可以继承,子接口将继承父接口的所有常量和抽象方法。( T ) 13. 一个Java类可以有多个父类. ( F ) 14. 当一个方法在运行过程中产生一个异常,则这个方法会终止,但是整个程序不一定终止运行. ( T ) 15. 使用方法length()可以获得字符串或数组的长度. ( F ) 16. 所有的鼠标事件都由MouseListener监听接口的监听者来处理. ( T) 17. 子类要调用父类的方法,必须使用super关键字。 ( F ) 18. 一个类如果实现了某个接口, 那么它必须重载该接口中的所有方法。 ( F ) 19. Java Applet只能在图形界面下工作. (F ) 20. 类中的属性和方法都必须被修饰符修饰. ( F ) 三.改错或写出程序的功能 1. public class Test { public static void main (String args[]) { System.out.println(TestClass.data); } } class TestClass { int data=89; } 改正如下 : _________在class TestClass这个类里,要将data这个变量声明为static,因为在Test类里直接用类名调用了此变量。__________________________________________________________ ________________________________________________________________________。 2. class WrongWhere { int data1, data2; WrongWhere() { data1=-1; } WrongWhere (int d) { this语句和super语句要放在第一句 data2=d; this(); } } 改正如下:_ 把 this();语句放到data2=d;前面___________________________________________________________________ _______________________________________________________________________。 3. public class Sum { public static void main(String args[]) { double sum=0.0; 强制类型转换时,高级向低级自动转换,可以不用显示声明; for(int i=1;i<=100; i++) 低级向高级转换时,需要显示声明。 sum +=1.0/(double) i; 此处 System.out.println("sum="+sum); } } 上面这段程序所完成的功能是:__使sum=1+1/2+1/3+1/4+……+1/99+1/100______________________________________________________ _______________________________________________________________________________。 /////*****4. public class Function { public static void main(String args[]) { int i 、j; int a[]= {32、54、7、60、31、78、3、77、39、98}; for (i=o ; i { int k=i; for (j=i; j if (a[j] int temp =a[i]; a[i]= a; a[k]=temp; } for (i=0 ; i System.out.print(a[i]+" ") System.out.println(); } } 上面这段程序所完成的功能是:________________________________________________________ ________________________________________________________________________________。 *******///////// 5. import java.awt.*; public class abc { public static void main(String args[]} { new FrameOut(); } } class FrameOut extemds Frame { Button btn; FrameOut() { super("我的标题"); btn =new Button("我的按钮"); setLayout(new FlowLayoyut()); add(btn); setSize(300,200); show(); } } 上面这段程序所完成的功能是:_____________________________________________________ ___________________________________________________________________________________。 6. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; class QuitTest { public static void main(String args[]) throws IOException { char c; BufferedReader br=new BufferedReader(new InputStreamReader(System.in)); do{ c=(char) br.read(); System.out.print(c); }while(c!='q'&&c!='Q'); } } 上面这段程序所完成的功能是:_____输入aaaaqsss输出aaaaq_________或_输入aaaaQsss输出aaaaQ________________________________________ ___________________________________________________________________________________。 7. public static void main (String args[]) { try{ char ch=(char)ad(); . . . //其它语句 } catch(Expception e) { return; } catch(IOException e) { System.out.String()); } } 改正如下:___两个catch语句颠倒一下。___________________________________________________________________ _______________________________________________________________________。 8. interface MyInterface { void method1(); } abstract class Parent implements MyInterface { //其他语句 借口必须有实现方法,抽象方法也行,留给后面的类去 } 具体实现。 class Child extends Parent { void method1() { System.out.println("I am implemented now!"); } } 改正如下:_在Parent里写一句void method1();___就可以了_______________________________________________________________________ _______________________________________________________________________________。 四、写出下面程序的运行结果 1.阅读以下程序,输出结果为_____3.21_______________________。 class Q1{ public static void main(String args[]){ double d=3.21; Dec dec=new Dec(); dec.decrement(d); 调用这个方法,把d=3.21传给decMe只不过是把3.21这个值赋给它, System.out.println(d); 现在输出“d”,d的值并未改变,只是decMe的值变成了2.21。 } class Dec{ public void decrement (double decMe){ decMe = decMe-1; } } 2.以下程序段的输出结果为___Message four________________________. class Test{ public static void main(String args[]){ int x=0,y=4,z=5; if(x>2){ if(y<5){ System.out.println("Message one"); } else { System.out.println("Message two"); } } else if(z>5){ System.out.println("Message three"); } else { System.out.println("Message four"); } } } 3.以下程序段输出结果为_parent 回车_child 回车 child__________________________. class Parent { void printMe() { System.out.println("parent"); } } class Child extends Parent { void printMe() { System.out.println("child"); } void printAll() { super.printMe(); this.printMe(); printMe(); } } public class Test_this { public static void main(String args[]) { Child myC=new Child(); myC.printAll(); } } 4.以下程序的输出结果为______ value is Hello_____________________________________________。 public class Short { public static void main(String args[]) { StringBuffer s=new StringBuffer("Hello"); if((s.length()>5)&&(s.append("there") . equals("False"))) ; //这是个空语句,什么也不执行!因为分号。 System.out.println("value is "+s); } } 5.以下程序段的输出结果为_____ Value is two.__回车____ Value is three.________________________________。 public class Test_this { public static void main(String args[]) { int j=2; switch ( j ) { case 2: System.out.println("Value is two."); case 2+1: System.out.println("Value is three."); break; default: System.out.println("Value is"+j); break; java switch case string } } } 6.以下程序段的输出结果为__false,true___________________________________________________。 public class EqualsMethod { public static void main(String args[]) { Integer n1=new Integer(50); Integer n2=new Integer(50); System.out.println(n1= =n2); System.out.println(","); System.out.println(n1!=n2); } } 五.使用Java语言编写程序(每小题10分) 1.编程求一个整数数组的最大值、最小值、平均值。 2 编写一个java程序,接收用户输入的文本,直到用户在新行中输入end为止。 3编写一个Java程序,实现把任意两个整数相加和两个浮点型数字相加,若加法调用时没有参数,则输出一个默认值0。(用函数重载实现) | ||
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论