1、1.What will be the output when you compile and execute the following program. public class Base private void test() System.out.println(6 + 6 + “(Result)“); static public void main(String a) new Base().test(); Select most appropriate answer. A 66(Result) B 12(Result) C Runtime Error.Incompatible type
2、 for +. Cant convert an int to a string. D Compilation Error.Incompatible type for +. Cant add a string to an int. 解答: B 考点:字符串与基本数据的链接 1.如果第一个是字符串那么后续都按字符串进行处理 2.如果第一个到第 n 个是基本数据,第 n+1 个是字符串,那么前 n个数据都按加法计算, 再与字符串链接 2.What will be the output when you compile and execute the following program. The sy
3、mbol means space. 1:public class Base 2: 3: private void test() 4: 5: String aStr = “ One “; 6: String bStr = aStr; 7: aStr.toUpperCase(); 8: aStr.trim(); 9: System.out.println(“ + aStr + “,“ + bStr + “); 7: 8: 9: static public void main(String a) 10: new Base().test(); 11: 12: Select most appropria
4、te answer. A ONE, One B One ,One C ONE,One D ONE,ONE E One , One 解答: E 通过 String bStr = aStr;这句代码使 bStr 和 aStr 指向同一个地址空间 。 String 类是定长字符串,调用一个字符串的方法以后会形成一个新的字符串。 3.Java 语言中, String 类的 indexOf()方法返回的类型是? A、 Int16 B、 Int32 C、 int D、 long 解答: C indexOf 方法的声明为: public int indexOf(int ch) 返回指定字符在字符串中第一次出
5、现的索引 ,如果未出现该字符,则返回 -1 4. 执 行下 列 代 码后 , 哪个 结 论 是正 确 的 String s=new String10; A s9 为 null; B s10 为 “; C s0 为 未定义 D s.length 为 10 解答: AD s 是引用类型, s 中的每一个成员都是引用类型,即 String 类型,String 类型默认的值为 null, s 数组的长度为 10。 5. Given: public class Test public static void main(String args) String str = NULL; System.out.
6、println(str); What is the result? A. NULL B. Compilation fails. C. The code runs with no output. D. An exception is thrown at runtime. 解答: B null 应该小写 6、 Given: public class Test public static void main (String args) class Foo public int i = 3; Object o = (Object) new Foo(); Foo foo = (Foo)o; System
7、.out.println(foo.i); What is the result? A. Compilation will fail. B. Compilation will succeed and the program will print “3” C. Compilation will succeed but the program will throw a ClassCastException at line 6. D. Compilation will succeed but the program will throw a ClassCastException at line 7.
8、解答: B 考点: 局部内部类的使用 局部内部类定义在方法中,作用域相当于局部变量的作用域 7、 Given: public class Test public static void main (String args) String foo = “blue”; String bar = foo; foo = “green”; System.out.println(bar); What is the result? A. An exception is thrown. B. The code will not compile. C. The program prints “null” D.
9、The program prints “blue” E. The program prints “green” 解答: D 采用 String foo = “blue”定义方式定义的字符串放在字符串池中,通过 String bar = foo; 他们指向了同一地址空间,就是同一个池子,当执行 foo = “green”; foo 指向新的地址空间。 8.下面哪个是正确的? ( ) A. String temp = new String “a“ “b“ “c“; B. String temp = “a“ “b“ “c“; C. String temp = “a“, “b“, “c“; D. St
10、ring temp = “a“, “b“, “c“; 解答: D A.String temp = new String “a“, “b“, “c“; B. String temp = “a“,“b“,“c“; 9.关于 java.lang.String 类,以下描述正确的一项是( ) A. String 类是 final 类故不可以继承; B. String 类是 final 类故可以继承; C. String 类不是 final 类故不可以继承; D. String 类不是 final 类故可以继承; 解答: A String 类是 final 的,在 java 中 final 修饰类的不能
11、被继承 10.从下面四段( A, B, C, D)代码中选择出正确的代码段() A abstract class Name private String name; public abstract boolean isStupidName(String name) B public class Something void doSomething () private String s = “; int l = s.length(); C public class Something public static void main(String args) Other o = new Othe
12、r(); new Something().addOne(o); public void addOne(final Other o) o.i+; class Other public int i; D public class Something public int addOne(final int x) return +x; 解答: C A.抽象方法不能有方法体 B方法中定义的是局部变量,不能用类成员变量修饰符 private D final 修饰为常量,常量的值不能被改变 11 String s = “Example”; 合法的代码由哪些? A) s=3 B) s3= “X” C) int
13、 i = s.length() D) s = s +10 解答: CD A. 移位运算,要是整数类型。 B s 不是数组 C String 类取长度的方法为: length() D. 字符串相加 12.已知表达式 int m = 0, 1, 2, 3, 4, 5, 6; 下面哪个表达式的值与数组下标量总数相等?( ) A .m.length() B.m.length C.m.length()+1 D.m.length+1 解答: B 解答:数组下标是从零开始的,但是数据 下标的总量和数据长度相同。 只有 String 类型才有 length()方法,其他的类型都是 length 属性 13.给
14、出如下代码: ) ( class Test private int m; public static void fun() /some code 如何使成员变量 m 被函数 fun()直接访问?() A.将 private int m 改为 protected int m B.将 private int m 改为 public int m C.将 private int m 改为 static int m D.将 private int m 改为 int m 解答: C 静态的方法中可以直接调用静态数据成员 14下述代码的执行结果是 class Super public int getLeng
15、th() return 4; public class Sub extends Super public long getLength() return 5; public static void main (Stringargs) Super sooper = new Super (); Super sub = new Sub(); System.out.printIn(sooper.getLength()+ “,” + sub.getLength() ; A. 4, 4 B. 4, 5 C. 5, 4 D. 5, 5 E. 代码不能被编译 解答: E 方法重写返回值类型与父类的一致 15. 指出下列程序运行的结果 public class Example String str=new String(“good“); charch=a,b,c; public static void main(String args)