Topic: [经典]JAVA---SCJP考题分析

  Print this page

1.[经典]JAVA---SCJP考题分析 Copy to clipboard
Posted by: smartzhao
Posted on: 2002-08-03 03:10

由于先的JDK1.4版中去掉了I/O和AWT所以我在分析这两部分的时候没有太仔细! 其实在你考试的时候看到题目你就应该能看书考点,通过绝对没问题,反之通过也是........呵呵 JAVA语言就那么几个优点,SUN会翻来覆去的考的!

1. Given:

1. public class test (
2. public static void main (String args[]) {
3. int i = 0xFFFFFFF1;
4. int j = ~i;
5.
6. }
7. )

What is the decimal value of j at line 5?

A. 0
B. 1
C. 14
D. -15
E. An error at line 3 causes compilation to fail.
F. An error at line 4 causes compilation to fail.
//考点:按位取反的操作符使用

2. Given:

Integer i = new Integer (42);
Long 1 = new Long (42);
Double d = new Double (42.0);

Which two expressions evaluate to True? (Choose Two)

A. (i ==1)
B. (i == d)
C. (d == 1)
D. (i.equals Food)
E. (d.equals Light Bulb)
F. (i.equals (42))
//考点:==和equals方法的区别

3. Click the exhibit button:

1. public class test (
2. private static int j = 0;
3.
4. private static boolean methodB(int k) (
5. j += k;
6. return true;
7. )
8.
9. public static void methodA(int i) {
10. boolean b:
11. b = i < 10 | methodB (4);
12. b = i < 10 || methodB Musical Note;
13. )
14.
15. public static void main (String args[] } (
16. methodA (0);
17. system.out.printIn(j);
18. )
19. )

What is the result?

A. The program prints “0”
B. The program prints “4”
C. The program prints “8”
D. The program prints “12”
E. The code does not complete
//考点:或运算和短逻辑或运算

4. Given:

1.Public class test (
2. Public static void main (String args[]) (
3. System.out.printIn (6 ^ 3);
4. )
5.)

What is the output?

Ans:
//考点:异或的符号实际使用

5. Given:

1. public class Foo {
2. public static void main (String [] args) {
3. StringBuffer a = new StringBuffer (“A”);
4. StringBuffer b = new StringBuffer (“B”);
5. operate (a,b);
6. system.out.printIn{a + “,” +b};
7. )
8. static void operate (StringBuffer x, StringBuffer y) {
9. x.append {y};
10. y = x;
11. )
12. }

What is the result?

A. The code compiles and prints “A,B”.
B. The code compiles and prints “A,A”.
C. The code compiles and prints “B,B”.
D. The code compiles and prints “AB,B”.
E. The code compiles and prints “AB,AB”.
F. The code does not compile because “+” cannot be overloaded for StringBuffer.
//考点:StringBuffer类的使用方法

6. Click the exhibit button:

1. Public class test (
2. Public static void stringReplace (String text) (
3. Text = text.replace (‘j’ , ‘i’);
4. )
5.
6. public static void bufferReplace (StringBuffer text) (
7. text = text.append (“C”)
8. )
9.
10. public static void main (String args[]} (
11. String textString = new String (“java”);
12. StringBuffer text BufferString = new StringBuffer (“java”);
13.
14. stringReplace (textString);
15. BufferReplace (textBuffer);
16.
17. System.out.printIn (textString + textBuffer);
18. }
19. )

What is the output?
Ans:
//考点:String 和StringBuffer类的方法和使用

7. Click the Exhibit button:

1. public class test {
2. public static void add3 (Integer i) }
3. int val = i.intValue ( );
4. val += 3;
5. i = new Integer (val);
6. }
7.
8. public static void main (String args [ ] ) {
9. Integer i = new Integer (0);
10. add3 Light Bulb;
11. system.out.printIn (i.intValue ( ) );
12. }
13. )

What is the result?

A. Compilation will fail.
B. The program prints “0”.
C. The program prints “3”.
D. Compilation will succeed but an exception will be thrown at line 3.
//考点:原始数据类型是传值的.

8. Given:

1. public class ConstOver {
2. public ConstOver (int x, int y, int z) {
3. }
4. }

Which two overload the ConstOver constructor? (Choose Two)

A. ConstOver ( ) { }
B. Protected int ConstOver ( ) { }
C. Private ConstOver (int z, int y, byte x) { }
D. public Object ConstOver (int x, int y, int z) { }
E. public void ConstOver (byte x, byte y, byte z) { }
//考点:构造器的重载问题

9. Given:

1. public class MethodOver {
2. public void setVar (int a, int b, float c) {
3. }
4. }

Which two overload the setVar method? (Choose Two)

A. private void setVar (int a, float c, int b) { }
B. protected void setVar (int a, int b, float c) { }
C. public int setVar (int a, float c, int b) (return aWink
D. public int setVar (int a, int b, float c) (return aWink
E. protected float setVar (int a, int b, float c) (return cWink
//考点:方法的重载

10. Given:

1. class BaseClass {
2. Private float x = 1.0f ;
3. protected float getVar ( ) ( return xWink
4. }
5. class Subclass extends BaseClass (
6. private float x = 2.0f;
7. //insert code here
8. )

Which two are valid examples of method overriding? (Choose Two)

A. float getVar ( ) { return x;}
B. public float getVar ( ) { return x;}
C. float double getVar ( ) { return x;}
D. protected float getVar ( ) { return x;}
E. public float getVar (float f ) { return f;}
//考点:方法的覆盖

11. Which two demonstrate an “is a” relationship? (Choose Two)

A. public interface Person { }
public class Employee extends Person { }
B. public interface Shape { }
public class Employee extends Shape { }
C. public interface Color { }
public class Employee extends Color { }
D. public class Species { }
public class Animal (private Species speciesWink
E. interface Component { }
Class Container implements Component (
         Private Component[ ] children;
)
//考点BlushS A的关系问题

12. Which statement is true?

A. An anonymous inner class may be declared as final
B. An anonymous inner class can be declared as private
C. An anonymous inner class can implement multiple interfaces
D. An anonymous inner class can access final variables in any enclosing scope
E. Construction of an instance of a static inner class requires an instance of the enclosing outer class.
//考点:匿名内部类的声明和存取问题

13. Given:

1. package foo;
2.
3. public class Outer (
4. public static class Inner (
5. )
6. )

Which statement is true?

A. An instance of the Inner class can be constructed with “new Outer.Inner ()”
B. An instance of the inner class cannot be constructed outside of package foo
C. An instance of the inner class can only be constructed from within the outer class
D. From within the package bar, an instance of the inner class can be constructed with “new inner()”
//考点:内部类的实例化问题

14. Click the exhibit button:

1. public class enclosingone ( 2. public class insideone{} 3. ) 4. public class inertest( 5. public static void main (string[]args)( 6. enclosingone eo= new enclosingone (); 7. //insert code here 8. ) 9. )

Which statement at line 7 constructs an instance of the inner class?

A. InsideOnew ei= eo.new InsideOn();
B. Eo.InsideOne ei = eo.new InsideOne();
C. InsideOne ei = EnclosingOne.new InsideOne();
D. EnclosingOne.InsideOne ei = eo.new InsideOne();
//考点:内部类的实例化问题

15. Click the exhibit button:

1. interface foo { 2. int k = 0; 3. ] 4. 5. public class test implements Foo ( 6. public static void main(String args[]) ( 7. int i; 8. Test test = new test (); 9. i= test.k; 10. i= Test.k; 11. i= Foo.k; 12. ) 13. ) 14.

What is the result?

A. Compilation succeeds.
B. An error at line 2 causes compilation to fail.
C. An error at line 9 causes compilation to fail.
D. An error at line 10 causes compilation to fail.
E. An error at line 11 causes compilation to fail.
//考点:接口中的变量实际上是常量

16. Given:

1. //point X
2. public class foo (
3. public static void main (String[]args) throws Exception {
4. printWriter out = new PrintWriter (new
5. java.io.outputStreamWriter (System.out), true;
6. out.printIn(“Hello”);
7. }
8. )

Which statement at PointX on line 1 allows this code to compile and run?

A. import java.io.PrintWriter;
B. include java.io.PrintWriter;
C. import java.io.OutputStreamWriter;
D. include java.io.OutputStreamWriter;
E. no statement is needed.
//考点:JAVA源文件声明先后问题

17. Which two statements are reserved words in Java? (Choose Two)

A. run
B. import
C. default
D. implement
//考点:关键字的问题

18. Which three are valid declarations of a float? (Choose Three)

A. float foo = -1;
B. float foo = 1.0;
C. float foo = 42e1;
D. float foo = 2.02f;
E. float foo = 3.03d;
F. float foo = 0x0123;
//考点:原始数据类型的声明问题及原始数据类型自动问题

19. Given:

8. int index = 1;
9. boolean[] test = new Boolean[3];
10. boolean foo= test [index];

What is the result?

A. foo has the value of 0
B. foo has the value of null
C. foo has the value of true
D. foo has the value of false
E. an exception is thrown
F. the code will not compile
//考点:BOOLEAN默认值的问题

20. Given:

1. public class test(
2. public static void main(string[]args){
3. string foo = args [1];
4. string foo = args [2];
5. string foo = args [3];
6. }
7. }

And the command line invocation:
Java Test red green blue

What is the result?

A. baz has the value of “”
B. baz has the value of null
C. baz has the value of “red”
D. baz has the value of “blue”
E. bax has the value of “green”
F. the code does not compile
G. the program throws an exception
//考点:数组下标值问题
21. Given:

8. int index = 1;
9. int [] foo = new int [3];
10. int bar = foo [index];
11. int baz = bar + index;

What is the result?

A. baz has the value of 0
B. baz has the value of 1
C. baz has the value of 2
D. an exception is thrown
E. the code will not compile
//考点:数组使用问题
22. Given:

1. public class foo {
2. public static void main (String[]args) {
3. String s;
4. system.out.printIn (“s=” + s);
5. }
6. }

What is the result?

A. The code compiles and “s=” is printed.
B. The code compiles and “s=null” is printed.
C. The code does not compile because string s is not initialized.
D. The code does not compile because string s cannot be referenced.
E. The code compiles, but a NullPointerException is thrown when toString is called.
//考点:引用型默认值问题问题
23. Which will declare a method that forces a subclass to implement it?

A. Public double methoda();
B. Static void methoda (double d1) {}
C. Public native double methoda();
D. Abstract public void methoda();
E. Protected void methoda (double d1){}
//考点:关键字使用问题
24. You want subclasses in any package to have access to members of a superclass. Which is the most restrictive access modifier that will accomplish this objective?

A. Public
B. Private
C. Protected
D. Transient
E. No access modifier is qualified
//考点:关键字问题
25. Given:

1. abstract class abstrctIt {
2. abstract float getFloat ();
3. )
4. public class AbstractTest extends AbstractIt {
5. private float f1= 1.0f;
6. private float getFloat () {return f1;}
7. }

What is the result?

A. Compilation is successful.
B. An error on line 6 causes a runtime failure.
C. An error at line 6 causes compilation to fail.
D. An error at line 2 causes compilation to fail.
//考点:方法覆盖问题
26. Click the exhibit button:

1. public class test( 2. public int aMethod()[ 3. static int i=0; 4. i++; 5. return I; 6. ) 7. public static void main (String args[]){ 8. test test = new test(); 9. test.aMethod(); 10. int j = test.aMethod(); 11. System.out.printIn(j); 12. ] 13. }

What is the result?

A. Compilation will fail.
B. Compilation will succeed and the program will print “0”.
C. Compilation will succeed and the program will print “1”.
D. Compilation will succeed and the program will print “2”.
//考点:STATIC关键字问题
27. Given:

1. class super {
2. public float getNum() {return 3.0f;}
3. )
4.
5. public class Sub extends Super {
6.
7. )

Which method, placed at line 6, will cause a compiler error?

A. public float getNum() {return 4.0f; }
B. public void getNum () { }
C. public void getNum (double d) { }
D. public double getNum (float d) {retrun 4.0f; }
//考点:方法覆盖问题
28. Which declaration prevents creating a subclass of an outer class?

A. static class FooBar{}
B. private class FooBar{}
C. abstract public class FooBar{}
D. final public class FooBar{}
E. final abstract class FooBar{}
//考点:关键字使用问题
29. Given:

1. byte [] arry1, array2[];
2. byte array3 [][];
3. byte[][] array4;

If each array has been initialized, which statement will cause a compiler error?

A. array2 = array1;
B. array2 = array3;
C. array2 = array4;
D. both A and B
E. both A and C
F. both B and C
//考点:数组声明问题
30. Click the exhibit button:

1. class super ( 2. public int I = 0; 3. 4. public super (string text) ( 5. I = 1 6. ) 7. ) 8. 9. public class sub extends super ( 10. public sub (string text) ( 11. i= 2 12. ) 13. 14. public static void main (straing args[]) ( 15. sub sub = new sub (“Hello”); 16. system.out. PrintIn(sub.i); 17. ) 18. )

What is the result?
A. Compilation will fail.
B. Compilation will succeed and the program will print “0”.
C. Compilation will succeed and the program will print “1”.
D. Compilation will succeed and the program will print “2”.
//考点:方法覆盖问题
31. Given:

1. public class returnIt (
2. returnType methodA(byte x, double y) (
3. return (short) x/y * 2;
4. )
5. )

What is the valid returnType for methodA in line 2?

A. int
B. byte
C. long
D. short
E. float
F. double
//考点:操作符号执行顺序及原始数据类型自动转换问题
32. Given the ActionEvent, which method allows you to identify the affected component?

A. getClass
B. getTarget
C. getSource
D. getComponent
E. getTargetComponent
//考点:AWT问题
33. Which is a method of the MouseMotionListener interface?

A. Public void mouseMoved(MouseEvent)
B. Public boolean mouseMoved(MouseEvent)
C. Public void mouseMoved(MouseMotionEvent)
D. Public boolean MouseMoved(MouseMotionEvent)
E. Public boolean mouseMoved(MouseMotionEvent)
//考点:AWT问题
34. Click the exhibit button:

1. import java.awt*; 2. 3. public class X extends Frame ( 4. public static void main(string []args) ( 5. X x = new X (); 6. X.pack(); 7. x.setVisible(true); 8. ) 9. 10. public X () ( 11. setlayout (new GridLayout (2,2)); 12. 13. Panel p1 = new panel(); 14. Add(p1); 15. Button b1= new Button (“One”); 16. P1.add(b1); 17. 18. Panel p2 = new panel(); 19. Add(p2); 20. Button b2= new Button (“Two”); 21. P2.add(b2); 22. 23. Button b3= new Button (“Three”); 24. add(b3); 25. 26. Button b4= new Button (“Four”); 27. add(b4); 28. ) 29. )

Which two statements are true? (Choose Two)

A. All the buttons change height if the frame height is resized.
B. All the buttons change width if the Frame width is resized.
C. The size of the button labeled “One” is constant even if the Frame is resized.
D. Both width and height of the button labeled “Three” might change if the Frame is resized.
//考点:AWT问题
35. You are assigned the task of building a panel containing a TextArea at the top, a label directly below it, and a button directly below the label. If the three components are added directly to the panel, which layout manager can the panel use to ensure that the TextArea absorbs all of the free vertical space when the panel is resized?

A. GridLayout
B. CardLayout
C. FlowLayout
D. BorderLayout
E. GridBagLayout
//考点布局管理器问题
36. Which of the following gets the name of the parent directory file “file.txt”?

A. String name= File.getParentName(“file.txt”);
B. String name= (new File(“file.txt”)).getParent();
C. String name = (new File(“file.txt”)).getParentName();
D. String name= (new File(“file.txt”)).getParentFile();
E. Directory dir=(new File (“file.txt”)).getParentDir();
String name= dir.getName();
//考点Blush/O问题
37. Which can be used to encode charS for output?

A. java.io.OutputStream
B. java.io.OutputStreamWriter
C. java.io.EncodeOutputStream
D. java.io.EncodeWriter
E. java.io.BufferedOutputStream
//考点Blush/O问题
38. The file “file.txt” exists on the file system and contains ASCII text.

Given:

38. try {
39. File f = new File(“file.txt”);
40. OutputStream out = new FileOutputStream(f, true);
41. }
42. catch (IOException) {}

What is the result?

A. The code does not compile.
B. The code runs and no change is made to the file.
C. The code runs and sets the length of the file to 0.
D. An exception is thrown because the file is not closed.
E. The code runs and deletes the file from the file system.
//考点Blush/O问题
39. Which constructs a DataOutputStream?

A. new dataOutputStream(“out.txt”);
B. new dataOutputStream(new file(“out.txt”));
C. new dataOutputStream(new writer(“out.txt”));
D. new dataOutputStream(new FileWriter(“out.txt”));
E. new dataOutputStream(new OutputStream(“out.txt”));
F. new dataOutputStream(new FileOutputStream(“out.txt”));
//考点Blush/O问题
40. What writes the text “<end>” to the end of the file “file.txt”?

A. OutputStream out= new FileOutputStream (“file.txt”);
Out.writeBytes (“<end>/n”);
B. OutputStream os= new FileOutputStream (“file.txt”, true);
DataOutputStream out = new DataOutputStream(os);
out.writeBytes (“<end>/n”);
C. OutputStream os= new FileOutputStream (“file.txt”);
DataOutputStream out = new DataOutputStream(os);
out.writeBytes (“<end>/n”);
D. OutputStream os= new OutputStream (“file.txt”, true);
DataOutputStream out = new DataOutputStream(os);
out.writeBytes (“<end>/n”);
//考点Blush/O问题
41. Given:

1. public class X (
2. public object m () {
3. object o = new float (3.14F);
4. object [] oa = new object [1];
5. oa[0]= o;
6. o = null;
7. return oa[0];
8. }
9. }

When is the float object created in line 3, eligible for garbage collection?

A. Just after line 5
B. Just after line 6
C. Just after line 7 (that is, as the method returns)
D. Never in this method
//考点:垃圾收集问题
42. Given:

3. string foo = “ABCDE”;
4. foo.substring(3);
5. foo.concat(“XYZ”);
6.

Type the value of foo at line 6.

Ans:

//考点:STRING类方法使用问题
43. Which method is an appropriate way to determine the cosine of 42 degrees?

A. double d = Math.cos(42);
B. double d = Math.cosine(42);
C. double d = Math.cos(Math.toRadians(42));
D. double d = Math.cos(Math.toDegrees(42));
E. double d = Math.cosine(Math.toRadians(42));
//考点:数学类使用问题
44. You need to store elements in a collection that guarantees that no duplicates are stored and all elements can be accessed in natural order. Which interface provides that capability?

A. java.util.Map
B. java.util.Set
C. java.util.List
D. java.util.StoredSet
E. java.util.StoredMap
F. java.util.Collection
//考点:COLLECTION使用问题
45. Which statement is true for the class java.util.HashSet?

A. The elements in the collection are ordered.
B. The collection is guaranteed to be immutable.
C. The elements in the collection are guaranteed to be unique.
D. The elements in the collection are accessed using a unique key.
E. The elements in the collections are guaranteed to be synchronized.
//考点:COLLECTION使用问题
46. Given:

1. public class IfTest (
2. public static void main(string[]args) {
3. int x = 3;
4. int y = 1;
5. if (x = y)
6. system.out.printIn(“Not equal”);
7. else
8. system.out.printIn(“Equal”);
9. }
10. )

What is the result?
//考点:=不等于= =
A. The output is “Equal”.
B. The output in “Not Equal”.
C. An error at line 5 causes compilation to fall.
D. The program executes but does not print a message.

47. Click the exhibit button:

1. public class test ( 2. public static void main(string args[]) { 3. int 1= 0; 4. while Light Bulb { 5. if (i==4) { 6. break; 7. ) 8. ++i; 9. ) 10. 11. ) 12. )

What is the value of i at line 10?

A. 0
B. 3
C. 4
D. 5
E. the code will not compile
//考点:循环嵌套问题
48. Given:

3. int i= 1, j= 10 ;
4. do (
5. if (i++> --j) continue;
6. ) while (i<5);

After execution, what are the values for I and j?

A. i = 6 and j= 5
B. i = 5 and j= 5
C. i = 6 and j= 4
D. i = 5 and j= 6
E. i = 6 and j= 6
//考点:循环嵌套问题
49. Given:

1. switch Light Bulb {
2. default
3. System.out.printIn(“Hello”);
4. )

What are the two acceptable types for the variable i? (Choose Two)

A. char
B. byte
C. float
D. double
E. object
//考点:关键字问题
50. Given:

1. public class foo {
2. public static void main (string[]args)
3. try {return;}
4. finally {system.out.printIn(“Finally”);}
5. }
6. )

What is the result?

A. The program runs and prints nothing.
B. The program runs and prints “Finally”.
C. The code compiles, but an exception is thrown at runtime.
D. The code will not compile because the catch block is missing.
//考点:TRY CATCH 例外捕捉执行顺序问题
51. Click the exhibit button.

1. import java.io.IOException; 2. public class ExceptionTest( 3. public static void main (String[]args) 4. try ( 5. methodA(); 6. ) catch (IOException e) ( 7. system.out.printIn(“Caught IOException”); 8. ) catch (Exception e) ( 9. system.out.printIn(“Caught Exception”); 10. ) 11. ) 12. public void methodA () { 13. throw new IOException (); 14. ) 15. )

What is the result?
A. The code will not compile.
B. The output is caught exception.
C. The output is caught IOException.
D. The program executes normally without printing a message.
//考点:TRY CATCH 例外捕捉顺序问题
52. Click the exhibit button:

1. public class test { 2. public static string output = “” 3. 4. public static void foo(int i) { 5. try { 6. if(i= =1) { 7. throw new Exception (); 8. } 9. output += “1”; 10. ) 11. catch(Exception e) { 12. output += “2”; 13. return; 14. ) 15. finally ( 16. output += “3”; 17. ) 18. output += “4”; 19. ) 20. 21. public static void main (string args[]) ( 22. foo(0); 23. foo(1); 24. 25. ) 26. )

What is the value of the variable output at line 24?

Ans:

//考点:TRY CATCH 例外捕捉问题
53. Given:

1. public class Foo implements Runnable (
2. public void run (Thread t) {
3. system.out.printIn(“Running.”);
4. }
5. public static void main (String[] args) {
6. new thread (new Foo()).start();
7. )
8. )

What is the result?
   
A. An exception is thrown
B. The program exists without printing anything
C. An error at line 1 causes compilation to fail.
D. An error at line 2 causes the compilation to fail.
E. “Running” is printed and the program exits
//考点:线程启动方法
54. Which statement is true?

A. If only one thread is blocked in the wait method of an object, and another thread executes the modify on that same object, then the first thread immediately resumes execution.
B. If a thread is blocked in the wait method of an object, and another thread executes the notify method on the same object, it is still possible that the first thread might never resume execution.
C. If a thread is blocked in the wait method of an object, and another thread executes the notify method on the same object, then the first thread definitely resumes execution as a direct and sole consequence of the notify call.
D. If two threads are blocked in the wait method of one object, and another thread executes the notify method on the same object, then the first thread that executed the wait call first definitely resumes execution as a direct and sole consequence of the notify call.
//考点:线程方法问题
55. Which two CANNOT directly cause a thread to stop executing? (Choose Two)

A. Calling the yield method
B. Calling the wait method on an object
C. Calling the notify method on an object
D. Calling the NotifyAll method on an object
E. Calling the start method on another Thread object
//考点:线程方法问题
56. Which two can be used to create a new Thread? (Choose Two)

A. Extend java.lang.Thread and override the run method.
B. Extend java.lang.Runnable and override the start method.
C. Implement java.lang.thread and implement the run method.
D. Implement java.lang.Runnable and implement the run method.
E. Implement java.lang.Thread and implement the start method.
//考点:创建线程方法问题
57. Given:

1. public class SyncTest (
2. private int x;
3. private int y;
4. private synchronized void setX (int i) (x=1Wink
5. private synchronized void setY (int i) (y=1Wink
6. public void setXY(int 1)(set XLight Bulb; setYLight BulbWink
7. public synchronized Boolean check() (return x !=yWink
8. )

Under which conditions will check () return true when called from a different class?

A. Check() can never return true
B. Check() can return true when setXY is called by multiple threads
C. Check() can return true when multiple threads call setX and setY separately.
D. Check() can only return true if SyncTest is changed to allow x and y to be set separately.
//考点:线程方法问题
58. Click the exhibit button:

1. class A implements runable ( 2. int i; 3. public void run () ( 4. try ( 5. thread.sleep(5000); 6. i= 10; 7. ) catch(InterruptedException e) {} 8. ) 9. ) 10. 11. public class Test { 12. public static void main (string args[]) ( 13. try ( 14. A a = new A (); 15. Thread t = new Thread Angel; 16. t.start(); 17. 18. int j= a.i; 19. 20. ) catch (Exception e) {} 21. ) 22. )

Which statement al line 17 will ensure that j=10 at line 19?

A. a.wait();
B. t.wait();
C. t.join();
D. t.yield();
E. t.notify();
F. a.notify();
G. t.interrupt();
//考点:线程方法问题
59. Click the exhibit button:

1. public class X implements Runnable (
2. private int x;
3. private int y;
4.
5. public static void main(String [] args) (
6. X that = new X();
7. (new Thread(that)) . start( );
8. (new Thread(that)) . start( );
9. )
10.
11. public synchronized void run( ) (
12. for (;(
13. x++;
14. y++;
15. System.out.printIn(“x = “ + x + “, y = “ + y);
16. )
17. )
18. )

What is the result?

A.An error at line 11 causes compilation to fail.
B.Errors at lines 7 and 8 cause compilation to fail.
C.The program prints pairs of values for x and y that might not always be the same on the same line (for example, “x=2, y=1”)
D.The program prints pairs of values for x and y that are always the same on the same line (for example, “x=1, y=1”. In addition, each value appears twice (for example, “x=1, y=1” followed by “x=1, y=1”)
E.The program prints pairs of values for x and y that are always the same on the same line (for example, “x=1, y=1”. In addition, each value appears twice (for example, “x=1, y=1” followed by “x=2s, y=2”)
//考点:循环嵌套问题
60. Which two CANNOT directly cause a thread to stop executing? (Choose Two)

A.Existing from a synchronized block
B.Calling the wait method on an object
C.Calling notify method on an object
D.Calling read method on an InputStream object
E.Calling the SetPriority method on a Thread object
//考点:线程方法问题
61. Click the exhibit button:

1. public class SyncTest{ 2. public static void main(String[] args) { 3. final StringBuffer s1= new StringBuffer(); 4. final StringBuffer s2= new StringBuffer(); 5. new Thread () { 6. public void run() { 7. synchronized(s1) { 8. s2.append(“A”); 9. synchronized(s2) { 10. s2.append(“B”); 11. System.out.print(s1); 12. System.out.print(s2); 13. } 14. } 15. } 16. }.start(); 17. new Thread() { 18. public void run() { 19. synchronized(s2) { 20. s2.append(“C”); 21. synchronized(s1) { 22. s1.append(“D”); 23. System.out.print(s2); 24. System.out.print(s1); 25. } 26. } 27. } 28. }.start(); 29. } 30. }

Which two statements are true? (Choose Two)

A. The program prints “ABBCAD”
B. The program prints “CDDACB”
C. The program prints “ADCBADBC”
D. The output is a non-deterministic point because of a possible deadlock condition
E. The output is dependent on the threading model of the system the program is running on.
//考点:线程启动方法及STRING方法问题
62. Which method in the Thread class is used to create and launch a new thread of execution?

A. run();
B. start();
C. execute();
D. run(Runnable r);
E. start(Runnable r);
F. execute(Thread t);
//考点:线程启动方法问题
63. Given:

5. String foo = “base”;
6. foo.substring(0,3);
7. foo.concat(“ket”)
8.

Type the value of foo at line 8.

Ans:

//考点:STRING类方法问题
64. Which code determines the int value foo closest to, but not greater than, a double value bar?

A. int foo = (int) Math.max(bar);
B. int foo = (int) Math.min(bar);
C. int foo = (int) Math.abs(bar);
D. int foo = (int) Math.ceil(bar);
E. int foo = (int) Math.floor(bar);
F. int foo = (int) Math.round(bar);
//考点:数学类使用问题
65. Which statement is true?

A. A flow layout can be used to position a component that should resize horizontally when the container is resized.
B. A grid layout can be used to position a component that should maintain a constant size even when the container is resized.
C. A border layout can be used to position a component that should maintain a constant size even when the container is resized.
D. The grid bag layout can be used to give a grid-like layout which differs from the normal grid in that individual rows and columns can have unique sizes.
E. If two components are placed in the same column of a grid bag layout, and one component resizes horizontally, then the other component must resize horizontally.
//考点:AWT问题
66. Given an ActionEvent, which method allows you to identify the affected Component?

A. public class getClass()
B. public Object getSource()
C. public Component getSource()
D. public Component getTarget()
E. public Component getComponent()
F. public Component getTargetComponent()
//考点:AWT问题
67. Click the exhibit button:

1. import java.awt.*; 2. 3. public class Test extends Frame { 4. public Test() { 5. add(new Label(“Hello”) ); 6. add(new TextField(“Hello”) ); 7. add(new Button(“Hello”) ); 8. pack(); 9. show(); 10. } 11. 12. public static void main(String args[]) { 13. new Test (); 14. } 15. )

What is the result?

A. The code will not compile.
B. A Window will appear containing only a Button.
C. An IllegalArgumentException is thrown at line 6.
D. A Window button will appear but will not contain the Label, TextField, or Button.
E. A Window will appear containing a Label at the top, a TextField below the Label, and a Button below the TextField.
F. A Window will appear containing a Label on the left, a TextField to the right of the Label, and a button to the right of the TextField.
//考点:AWT问题
68. Click the exhibit button:

1. class A { 2. public int getNumber(int a) { 3. return a + 1; 4. } 5. } 6. 7. class B extends A { 8. public int getNumber (int a) { 9. return a + 2 10. } 11. 12. public static void main (String args[]) { 13. A a = new B(); 14. System.out.printIn(a.getNumber(0)); 15. } 16. }

What is the result?

A. Compilation succeeds and 1 is printed.
B. Compilation succeeds and 2 is printed.
C. An error at line 8 causes compilation to fail.
D. An error at line 13 causes compilation to fail.
E. An error at line 14 causes compilation to fail.
//考点:方法覆盖及多态问题
69. Given:

1. class BaseClass{
2. private float x= 1.0f;
3. protected void setVar (float f) {x = f;}
4. }
5. class SubClass exyends BaseClass {
6. private float x = 2.0f;
7. //insert code here
8. }

Which two are valid examples of method overriding? (Choose Two)

A. void setVar(float f) {x = f;}
B. public void setVar(int f) {x = f;}
C. public void setVar(float f) {x = f;}
D. public double setVar(float f) {x = f;}
E. public final void setVar(float f) {x = f;}
F. protected float setVar() {x=3.0f; return 3.0f; }
//考点:方法覆盖问题
70. Which statement about static inner classes is true?

A. An anonymous class can be declared as static.
B. A static inner class cannot be a static member of the outer class
C. A static inner class does not require an instance of the enclosing class.
D. Instance members of a static inner class can be referenced using the class name of the static inner class.
//考点:内部类问题
71. Click the exhibit button:

1. class A { 2. public byte getNumber () { 3. return 1; 4. } 5. } 6. 7. class B extends A { 8. public short getNumber() { 9. return 2; 10. } 11. 12. public static void main (String args[]) { 13. B b = new B (); 14. System.out.printIn(b.getNumber()) 15. } 16. }

What is the result?

A. Compilation succeeds and 1 is printed.
B. Compilation succeeds and 2 is printed.
C. An error at line 8 causes compilation to fail.
D. An error at line 14 causes compilation to fail.
E. Compilation succeeds but an exception is thrown at line 14.
//考点:方法覆盖问题
72. Given:

AnInterface is an interface.
AnAdapter0 is a non-abstract, non-final class with a zero argument constructor.
AnAdapter1 is a non-abstract, non-final class without a zero argument constructor, but with a constructor that takes one int argument.

Which two construct an anonymous inner class? (Choose Two)

A. AnAdapter1 aa=new AnAdapter1(){}
B. AnAdapter0 aa=new AnAdapter0(){}
C. AnAdapter0 aa=new AnAdapter0(5){}
D. AnAdapter1 aa=new AnAdapter1(5){}
E. AnInterface a1=new AnInterface(5){}
//考点:适配器声明问题
73. Which two statements are true? (Choose Two)

A. An inner class may be declared as static
B. An anonymous inner class can be declared as public.
C. An anonymous inner class can be declared as private.
D. An anonymous inner class can extend an abstract class.
E. An anonymous inner class can be declared as protected.
//考点:匿名内部类问题
74. Click the exhibit button:

1. public class Mycircle { 2. public double radius; 3. public double diameter; 4. 5. public void setRadius(double radius) 6. this.radius = radius; 7. this.diameter= radius * 2; 8. } 9. 10. public double getRadius() { 11. return radius; 12. } 13. }

Which statement is true?

A. The Mycircle class is fully encapsulated.
B. The diameter of a given MyCircle is guaranteed to be twice its radius.
C. Lines 6 and 7 should be in a synchronized block to ensure encapsulation.
D. The radius of a MyCircle object can be set without affecting its diameter.
//考点:THIS引用问题
75. You want to limit access to a method of a public class to members of the same class. Which access modifier accomplishes this objective?

A. Public
B. Private
C. Protected
D. Transient
E. No access modifier is required
//考点:关键字使用问题
76. Click the exhibit button.

ClassOne.java 1. package com.abc.pkg1; 2. public class ClassOne { 3. private char var = ‘a’; 4. char getVar() {return var;} 5. } ClassTest.java 1. package com.abc.pkg2; 2. import com.abc.pkg1.ClassOne; 3. public class ClassTest extends ClassOne { 4. public static void main(String[]args) { 5. char a = new ClassOne().getVar(); 6. char b = new ClassTest().getVar(); 7. } 8. }

What is the result?

A. Compilation will fail.
B. Compilation succeeds and no exceptions are thrown.
C. Compilation succeeds but an exception is thrown at line 5 in ClassTest.java.
D. Compilation succeeds but an exception is thrown at line 6 in ClassTest.java.
//考点:类实例化问题问题
77. Given:

1. public class ArrayTest {
2. public static void main (String[]args) {
3. float f1[], f2[];
4. f1 = new float [10];
5. f2 = f1;
6. System.out.printIn (“f2[0]=” + f2[0]);
7. }
8. }

What is the result?

A. It prints f2[0] = 0.0.
B. It prints f2[0] = NaN.
C. An error at line 5 causes compile to fail.
D. An error at line 6 causes compile to fail.
E. An error at line 6 causes an exception at runtime.
//考点:原始数据类型默认值问题
78. Which two statements are true regarding the creation of a default constructor? (Choose Two)

A. The default constructor initializes method variables.
B. The compiler always creates a default constructor for every class.
C. The default constructor invokes the no-parameter constructor of the superclass.
D. The default constructor initializes the instance variables declared in the class.
E. When a class has only constructors with parameters, the compiler does not create a default constructor.
//考点:默认构造方法问题
79. Click the exhibit button:

1. class super { 2. public int getLength() {return 4;} 3. } 4. 5. public class Sub extends Super { 6. public long getLength() {return 5;} 7. 8. public static void main (String[]args) { 9. super sooper = new Super (); 10. Sub sub = new Sub(); 11. System.out.printIn( 12. sooper.getLength()+ “,” + sub.getLength() }; 13. } 14. }

What is the output?

A. 4, 4
B. 4, 5
C. 5, 4
D. 5, 5
E. the code will not compile
//考点:方法覆盖问题
80. Given:

1. public abstract class Test {
2. public abstract void methodA();
3.
4. public abstract void methodB()
5. {
6. System.out.printIn(“Hello”);
7. }
8. }

Which three changes (made independently) allow the code to compile? (Choose Three)

A. Add a method body to methodA.
B. Replace lines 5-7 with a semicolon (“.”).
C. Remove the abstract qualifier from the declaration of Test.
D. Remove the abstract qualifier from the declaration of methodB.
E. Remove the abstract qualifier from the declaration of methodA.
F. Remove methodB in its entirely and change class o interface in line 1.
//考点:抽象类及抽象方法问题
81. Which determines if “prefs” is a directory and exists on the file system?

A.Boolean exists=Directory.exists (“prefs”);
B.Boolean exists=(new File(“prefs”)).isDir();
C.Boolean exists=(new Directory(“prefs”)).exists();
D.Boolean exists=(new File(“prefs”)).isDirectory();
E.Boolean exists=true;
Try{
  Directory d = new Directory(“prefs”);
}
catch (FileNotFoundException e) {
   exists = false;
}
//考点Blush/O问题
82. Which two create an InputStream and open file the “file.txt” for reading? (Choose Two)

A. InputStream in=new FileReader(“file.txt”);
B. InputStream in=new FileInputStream(“file.txt”);
C. InputStream in=new InputStreamFileReader (“file.txt”, “read”);
D. FileInputStream in=new FileReader(new File(“file.txt”));
E. FileInputStream in=new FileInputStream(new File(“file.txt”));
//考点Blush/O问题
83. Which two construct an OutputSream that appends to the file “file.txt”? (Choose Two)

A. OutputStream out=new FileOutputStream(“file.txt”);
B. OutputStream out=new FileOutputStream(“file.txt”, “append”);
C. FileOutputStream out=new FileOutputStream(“file.txt”, true);
D. FileOutputStream out=new FileOutputStream(new file(“file.txt”));
E. OutputStream out=new FileOutputStream(new File(“file.txt”)true);
//考点Blush/O问题
84. Which constructs a BufferedInputStream?

A. New BufferedInputStream(“in.txt”);
B. New BufferedInputStream(new File(“in.txt”));
C. New BufferedInputStream(new Writer(“in.txt”));
D. New BufferedInputStream(new Writer(“in.txt”));
E. New BufferedInputStream(new InputStream(“in.txt”));
F. New BufferedInputStream(new FileInputStream(“in.txt”));
//考点Blush/O问题
85. Which is a valid identifier?

A. false
B. default
C. _object
D. a-class
//考点:标识符问题
86. Click the exhibit button:

1. package foo; 2. 3. import java.util.Vector; 4. 5. private class MyVector extends Vector { 6. int i = 1; 7. public MyVector() { 8. i = 2; 9. } 10. } 11. 12. public class MyNewVector extends MyVector { 13. public MyNewVector () { 14. i = 4; 15. } 16. public static void main (String args []) { 17. MyVector v = new MyNewVector(); 18. } 19. }

The file MyNewVector.java is shown in the exhibit.

What is the result?

A. Compilation will succeed
B. Compilation will fail at line 5
C. Compilation will fail at line 6
D. Compilation will fail at line 14
E. Compilation will fail at line 17
//考点:关键字使用问题
87. Given:

1. public class Test {
2. public static void main (String[]args) {
3. String foo = args[1];
4. String bar = args[2];
5. String baz = args[3];
6. System.out.printIn(“baz = ” + baz);
7. }
8. }

And the output:
Baz = 2

Which command line invocation will produce the output?

A. java Test 2222
B. java Test 1 2 3 4
C. java Test 4 2 4 2
D. java Test 4 3 2 1
//考点:主方法及数组下标值得问题
88. Given:

8. int index = 1;
9. String [] test = new String[3];
10. String foo = test[index];

What is the result?

A. foo has the value “”
B. foo has the value null
C. an exception is thrown
D. the code will not compile
//考点:数组下标值问题
89. Given:

1. public interface Foo{
2. int k = 4;
3. }

Which three are equivalent to line 2? (Choose Three)

A.final int k = 4;
B.public int k = 4;
C.static int k = 4;
D.private int k = 4;
E.abstract int k = 4;
F.volatile int k = 4;
G.transient int k = 4;
H.protected int k = 4;
//考点:接口中常量默认的存取控制符号问题
90. Given:

1. public class foo {
2. static String s;
3. public static void main (String[]args) {
4. system.out.printIn (“s=” + s);
5. }
6. }

What is the result?

A. The code compiles and “s=” is printed.
B. The code compiles and “s=null” is printed.
C. The code does not compile because string s is not initialized.
D. The code does not compile because string s cannot be referenced.
E. The code compiles, but a NullPointerException is thrown when toString is called.
//考点:引用型传址问题
91. Which of the following two are valid declarations of a char? (Choose Two)

A.char ch = “a”;
B.char ch = ‘\’ ‘;
C.char ch = ‘cafe’;
D.char ch = “cafe”;
E.char ch = ‘\ucafe’;
F.char ch = ‘\u10100’;
G.char ch = (char) true;
//考点:原始数据类型取值范围问题
92. Given:

1. String foo = “blue”;
2. Boolean[]bar = new Boolean [1];
3. if (bar[0]) {
4. foo = “green”;
5. }

What is the result?

A.foo has the value of “”
B.foo has the value of null
C.foo has the value of “blue”
D.foo has the value of “green”
E.an exception is thrown
F.the code will not compile
//考点:布尔型默认值问题
93. Click the exhibit button:

1. public class X { 2. public static void main (String[]args) { 3. String s1 = new String (“true”); 4. Boolean b1 = new Boolean (true); 5. if (s2.equals(b1)) { 6. System.out.printIn(“Equal”); 7. } 8. } 9. }

What is the result?

A. The program runs and prints nothing.
B. The program runs and prints “Equal.”
C. An error at line 5 causes compilation to fail.
D. The program runs but aborts with an exception.
//考点:EQUALS方法使用问题
94. Given:

1. public class Foo {
2. public static void main (String []args) {
3. int i = 1;
4. int j = i++;
5. if ((i>++j) && (i++ ==j)) {
6. i +=j;
7. }
8. }
9. }

What is the final value of i?

A.1
B.2
C.3
D.4
E.5
//考点:循环嵌套问题
95. Click the exhibit button:

1. public class X { 2. public static void main (String[]args) { 3. string s = new string (“Hello”); 4. modifyMoon; 5. System.out.printInMoon; 6. } 7. 8. public static void modify (String s) { 9. s += “world!”; 10. } 11. }

What is the result?

A.The program runs and prints “Hello”.
B.An error causes compilation to fail.
C.The program runs and prints “Hello world!”.
D.The program runs but aborts with an exception.
//考点:引用型传址问题
96. Which two are equivalent? (Choose Two)

A.16>4
B.16/2
C.16*4
D.16>>2
E.16/2^2
F.16>>>2
//考点:操作符号问题
97. Click the exhibit button

1. public class X { 2. public static void main (String[]args) { 3. int [] a = new int [1] 4. modifyAngel; 5. System.out.printIn(a[0]); 6. } 7. 8. public static void modify (int[] a) { 9. a[0] ++; 10. } 11. }

What is the result?

A. The program runs and prints “0”.
B. The program runs and prints “1”.
C. The program runs but aborts with an exception.
D. An error “possible undefined variable” at line 4 causes compilation to fail.
E. An error “possible undefined variable” at line 9 causes compilation to fail.
//考点:STATIC修饰符及原始数据类型默认值问题
98. Given:

13. public class Foo {
14. public static void main (String [] args) {
15. StringBuffer a = new StringBuffer (“A”);
16. StringBuffer b = new StringBuffer (“B”);
17. operate (a,b);
18. system.out.printIn{a + “,” +b};
19. )
20. static void operate (StringBuffer x, StringBuffer y) {
21. y.append {x};
22. y = x;
23. )
24. }

What is the result?

A.The code compiles and prints “A,B”.
B.The code compiles and prints “A, BA”.
C.The code compiles and prints “AB, B”.
D.The code compiles and prints “AB, AB”.
E.The code compiles and prints “BA, BA”.
F.The code does not compile because “+” cannot be overloaded for stringBuffer.
//考点:STRINGBUFFER类使用问题
99. Given:

1. public class X {
2. public static void main (String[] args) {
3. byte b = 127;
4. byte c = 126;
5. byte d = b + c;
6. }
7. }

Which statement is true?
//考点:原始数据类型取值范围问题
A.Compilation succeeds and d takes the value 253.
B.Line 5 contains an error that prevents compilation.
C.Line 5 throws an exception indicating “Out of range”.
D.Line 3 and 4 contain error that prevent compilation.
E.The compilation succeeds and d takes the value of 1.

100. Given:

1. public class WhileFoo {
2. public static void main (String []args) {
3. int x= 1, y = 6;
4. while (y--) {x--;}
5. system.out.printIn(“x=” + x “y =” + y);
6. }
7. }

What is the result?

A.The output is x = 6 y = 0
B.The output is x = 7 y = 0
C.The output is x = 6 y = -1
D.The output is x = 7 y = -1
E.Compilation will fail
//考点:操作符号与循环嵌套组合问题
101. Which statement is true?

A. The Error class is a RuntimeException.
B. No exceptions are subclasses of Error.
C. Any statement that may throw an Error must be enclosed in a try block.
D. Any statement that may throw an Exception must be enclosed in a try block.
E. Any statement that may thro a runtimeException must be enclosed in a try block.
//考点:RuntimeException 是否需要捕捉问题
102. Click the exhibit button:

1. int I=1, j=0 2. 3. switchLight Bulb { 4. case 2: 5. j+=6; 6. 7. case 4: 8. j+=1; 9. 10. default: 11. j +=2; 12. 13. case 0: 14. j +=4; 15. } 16.

What is the value of j at line 16?

A. 0
B. 1
C. 2
D. 4
E. 6
//考点:原始数据类型传值问题
103. Given:

1. switch Light Bulb {
2. default:
3. System.out.printIn(“Hello”);
4. )

What is the acceptable type for the variable i?

A.byte
B.long
C.float
D.double
E.object
F.A and B
G.C and D
//考点:传参数问题
104. You need to store elements in a collection that guarantees that no duplicates are stored. Which two interfaces provide that capability? (Choose Two)

A. java.util.Map
B. java.util.Set
C. java.util.List
D. java.util.StoredSet
E. java.util.StoredMap
F. java.util.Collection
//考点:collection 类问题
105. Which statement is true for the class java.util.ArrayList?

A. The elements in the collection are ordered.
B. The collection is guaranteed to be immutable.
C. The elements in the collection are guaranteed to be unique.
D. The elements in the collection are accessed using a unique key.
E. The elements in the collections are guaranteed to be synchronized.
//考点:collection 类问题
106. Click the exhibit button:

1. public class X implements Runnable( 2. private int x; 3. private int y; 4. 5. public static void main(String[]args) 6. X that = new X(); 7. (new Thread(that)).start(); 8. (new Thread(that)).start(); 9. ) 10. 11. public void run() ( 12. for (; ( 13. x++; 14. y++; 15. System.out.printIn(“x=” + x + “, y = ” + y); 16. ) 17. ) 18. )

What is the result?

A. Errors at lines 7 and 8 cause compilation to fail.
B. The program prints pairs of values for x and y that might not always be the same on the same line (for example, “x=2, y=1”).
C. The program prints pairs of values for x and y that are always the same on the same line (for example, “x=1, y=1”. In addition, each value appears twice (for example, “x=1, y=1” followed by “x=1, y=1”).
D. The program prints pairs of values for x and y that are always the same on the same line (for example, “x=1, y=1”. In addition, each value appears only for once (for example, “x=1, y=1” followed by “x=2, y=2”).
//考点:线程类方法使用使用问题
107. Given:

1. public class SyncTest {
2. private int x;
3. private int y;
4. public synchronized void setX (int i) (x=1Wink
5. public synchronized void setY (int i) (y=1Wink
6. public synchronized void setXY(int 1)(set XLight Bulb; setYLight BulbWink
7. public synchronized Boolean check() (return x !=yWink
8. )

Under which conditions will check () return true when called from a different class?

A. check() can never return true
B. check() can return true when setXY is called by multiple threads
C. check() can return true when multiple threads call setX and setY separately.
D. Check() can only return true if SyncTest is changed to allow x and y to be set separately.
//考点:SYNCHRONIZED关键字使用问题
108. Which is a method of the MouseMotionListener interface?

A. Public void mouseDragged(MouseEvent)
B. Public boolean mouseDragged(MouseEvent)
C. Public void mouseDragged(MouseMotionEvent)
D. Public boolean MouseDragged(MouseMotionEvent)
E. Public boolean mouseDragged(MouseMotionEvent)
//考点:AWT使用问题
109. Given:

4. String foo = “base”;
5. foo.substring(0,3);
6. foo.concat(“ket”);
7. foo += “ball”;
8.

Type the value of foo at line 8.
//考点:STRING类方法问题
110. Given:

1. public class Test {
2. public static void leftshift(int i, int j) {
3. i<<=j;
4. }
5. public static void main(String args[]) {
6. int i = 4, j = 2;
7. leftshift(i, j);
8. System.out.printInLight Bulb;
9. }
10. }

What is the result?

A.2
B.4
C.8
D.16
E.The code will not compile
//考点:操作符号使用问题
111. Given:

1. public class Foo {
2. private int val;
3. public foo(int v) (val = vWink }
4. public static void main (String [] args) {
5. Foo a = new Foo (10);
6. Foo b = new Foo (10);
7. Foo c = a;
8. int d = 10;
9. double e = 10.0;
10. }
11. }

Which three logical expressions evaluate to true? (Choose Three)

A.(a ==c)
B.(d ==e)
C.(b ==d)
D.(a ==b)
E.(b ==c)
F.(d ==10.0)
//考点:==使用问题
112. Click the exhibit button:

1. public class X { 2. private static int a; 3. 5. public static void main (String[] args) { 6. modify Angel; 7. } 8. 9. public static void modify (int a) { 10. a++; 11. } 12. }

What is the result?

A. The program runs and prints “0”.
B. The program runs and prints “1”.
C. The program runs but aborts with an exception.
D. En error “possible undefined variable” at line 5 causes compilation to fail.
E. En error “possible undefined variable” at line 10 causes compilation to fail.
//考点:STATIC变量使用问题问题
113. Click the exhibit button:

1. public class Test { 2. public static void replaceJ(string text) { 3. text.replace (‘j’, ‘l’); 4. } 5. 6. public static void main(String args[]) { 7. string text = new String (“java”) 8. replaceJ(text); 9. system.out.printIn(text); 10. } 11. }

What is the result?

A. The program prints “lava”.
B. The program prints “java”.
C. An error at line 7 causes compilation to fail.
D. Compilation succeeds but the program throws an exception.
//考点:STRING类方法问题
114. Which two are equivalent? (Choose Two)

A.3/2
B.3<2
C.3*4
D.3<<2
E.3*2^2
F.3<<<2
//考点:操作符号使用问题
115. What is the numerical range of a char?

A. 0 . . . 32767
B. 0 . . . 65535
C. -256 . . . 255
D. -32768 . . . 32767
E. range is platform dependent
//考点:原始数据类型取值范围问题
116. Given:

1. public class Test {
2. public static void main (String []args) {
3. unsigned byte b = 0;
4. b--;
5.
6. }
7. }

What is the value of b at line 5?

A.-1
B.255
C.127
D.compilation will fail
E.compilation will succeed but the program will throw an exception at line 4
//考点:关键字问题
117. Given:

1. public class Foo {
2. public void main (String [] args) {
3. system.out.printIn(“Hello World.”);
4. }
5. }

What is the result?

A.An exception is thrown.
B.The code does not compile.
C.“Hello World.” is printed to the terminal.
D.The program exits without printing anything.
//考点:实例化问题
118. Given:

1. //point X
2. public class foo (
3. public static void main (String[]args) throws Exception {
4. java.io.printWriter out = new java.io.PrintWriter (
5. new java.io.outputStreamWriter (System.out), true;
6. out.printIn(“Hello”);
7. }
8. }

Which statement at PointX on line 1 allows this code to compile and run?

A. import java.io.*;
B. include java.io.*;
C. import java.io.PrintWriter;
D. include java.io.PrintWriter;
E. no statement is needed.
//考点:JAVA原文件声明顺序问题
119. Which will declare a method that is available to all members of the same package and can be referenced without an instance of the class?

A.abstract public void methoda();
B.public abstract double methoda();
C.static void methoda(double d1){}
D.public native double methoda() {}
E.protected void methoda(double d1) {}
//考点:存取控制符问题
120. Which type of event indicates a key pressed on a java.awt.Component?

A. KeyEvent
B. KeyDownEvent
C. KeyPressEvent
D. KeyTypedEvent
E. KeyPressedEvent
//考点:AWT事件处理
121. Click the exhibit button:

1. import java.awt.*; 2. 3. public class X extends Frame { 4. public static void main (String [] args) { 5. X x = new X(); 6. x.pack(); 7. x.setVisible(true); 8. } 9. 10. public X() { 11. setLayout (new BordrLayout()); 12. Panel p = new Panel (); 13. add(p, BorderLayout.NORTH); 14. Button b = new Button (“North”); 15. p.addBeer: 16. Button b = new Button (“South”); 17. add(b1, BorderLayout.SOUTH): 18. } 19. }
//考点:布局管理器问题
Which two statements are true? (Choose Two)

A. The buttons labeled “North” and “South” will have the same width
B. The buttons labeled “North” and “South” will have the same height
C. The height of the button labeled “North” can very if the Frame is resized
D. The height of the button labeled “South” can very if the Frame is resized
E. The width of the button labeled “North” is constant even if the Frame is resized
F. The width of the button labeled “South” is constant even if the Frame is resized
//考点:布局管理器问题
122. How can you create a listener class that receives events when the mouse is moved?

A.By extending MouseListener.
B.By implementing MouseListener.
C.By extending MouseMotionListener.
D.By implementing MouseMotionListener.
E.Either by extending MouseMotionListener or extending MouseListener.
F.Either by implementing MouseMotion Listener or implementing MouseListener.
//考点:接口使用问题
123. Which statement is true?

A. A grid bag layout can position components such that they span multiple rows and/or columns.
B. The “North” region of a border layout is the proper place to locate a menuBar component in a Frame.
C. Components in a grid bag layout may either resize with their cell, or remain centered in that cell at their preferred size.
D. A border layout can be used to position a component that should maintain a constant size even when the container is resized.
//考点:布局管理器问题
124. You want a class to have access to members of another class in the same package. Which is the most restrictive access modifier that will accomplish this objective?

A. Public
B. Private
C. Protected
D. Transient
E. No access modifier is required
//考点:关键字使用问题
125. Which two statements are true regarding the creation of a default constructor? (Choose Two)

A. The default constructor initializes method variables.
B. The default constructor invokes the no-parameter constructor of the superclass.
C. The default constructor initializes the instance variables declared in the class.
D. If a class lacks a no-parameter constructor, but has other constructors, the compiler creates a default constructor.
E. The compiler creates a default constructor only when there are no other constructors for the class.
//考点:默认构造方法问题
126. Given:

1. public class OuterClass {
2. private double d1 1.0;
3. //insert code here
4. }

You need to insert an inner class declaration at line2. Which two inner class declarations are valid? (Choose Two)

A.static class InnerOne {
public double methoda() {return d1;}
}
B.static class InnerOne {
static double methoda() {return d1;}
}
C.private class InnerOne {
public double methoda() {return d1;}
}
D.protected class InnerOne {
static double methoda() {return d1;}
}
E.public abstract class InnerOne {
public abstract double methoda();
}
//考点:内部类声明问题
127. Which two declarations prevent the overriding of a method? (Choose Two)

A. final void methoda() {}
B. void final methoda() {}
C. static void methoda() {}
D. static final void methoda() {}
E. final abstract void methoda() {}
//考点:方法覆盖问题
128. Given:

1. public class Test {
2. public static void main (String args[]) {
3. class Foo {
4. public int i = 3;
5. }
6. Object o = (Object) new Foo();
7. Foo foo = (Foo)o;
8. System.out.printIn(foo. i);
9. }
10. }

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
//考点:内部类的变量使用问题
129. Which two create an instance of an array? (Choose Two)

A. int[] ia = new int [15];
B. float fa = new float [20];
C. char[] ca = “Some String”;
D. Object oa = new float[20];
E. Int ia [][

2.回复: 经典JAVA---SCJP考题分析 [Re: smartzhao] Copy to clipboard
Posted by: smartzhao
Posted on: 2002-08-03 03:12

所有答案我都用JPAD PRO测试过,同时推荐Jpad pro这个工具对学习JAVA的语法绝对有好处,而且不大耐用........
Answer Key:
1. C
2. D,E
3. B
4. 5
5. D
6. JavaJavaC
7. B
8. A,C
9. A,C
10. B,D
11. D,E
12. D
13. A
14. D
15. A
16. A
17. B,C
18. A,D,F
19. D
20. F
21. B
22. C
23. D
24. C
25. C
26. A
27. B
28. D
29. F
30. A
31. F
32. C
33. A
34. C,D
35. E
36. B
37. B
38. A
39. F
40. B
41. D
42. A,B,C,D,E
43. C
44. D
45. C
46. C
47. E
48. D
49. A,B
50. B
51. A
52. 13423
53. C
54. B
55. A,E
56. A,D
57. B
58. C
59. E
60. A,C
61. D,E
62. B
63. base
64. E
65. D
66. B
67. B
68. B
69. C,E
70. C
71. C
72. B,D
73. A,D
74. B
75. B
76. B
77. A
78. D,E
79. E
80. B,D,F
81. D
82. B,E
83. C,E
84. F
85. C
86. B
87. C
88. B
89. A,B,C
90. B
91. B,E
92. F
93. A
94. B
95. A
96. D,F
97. B
98. B
99. B
100. E
101. D
102. E
103. A
104. B,D
105. A
106. D
107. N/A
108. A
109. baseball
110. B
111. A,B,F
112. A
113. B
114. C,D
115. B
116. D
117. A
118. E
119. C
120. A
121. B,E
122. D
123. A
124. E
125. C,E
126. C,E
127. A,D
128. B
129. A,D
130. B
131. A,D
132. A,D,E,F
133. A
134. B,E
135. C
136. F
137. C
138. D
139. F
140. D,E
141. B
142. A,B
143. B,D
144. C,E
145. C
146. A,E
147. A

3.回复: 经典JAVA---SCJP考题分析 [Re: smartzhao] Copy to clipboard
Posted by: smartzhao
Posted on: 2002-08-03 03:13

转了别人翻译的东西,没办法人家比我下手快先翻译了,呵呵!SadSadSad
但很有用啊!

(1) Two public classes in the same file. (illegal)
   同一个文件里有两个public类。(非法)

(2) Main method calling a non-static method. (illegal)
   在main(String[] args)方法内调用一个非静态方法。(非法)

(3) Methods with the same name as the constructorMoon. (这种题常有)
   与ConstructorMoon有相同名字的方法。

(4) Thread initiation with classes that do not have a run() method. (常考之题)
   初始化了一个没有run()方法的线程类。

(5) Local inner classes trying to access non-final vars. (illegal)
   内部类尝试访问非final变量(非法)

Devil Case statements with values out of permissible range. (byte,int, short, chat)
   选择语句case中,没有使用允许的值。如(byte,int,short,char)等

(7) Math class being an option for immutable classes !! (totally wrong!)
   Math类作为不可改变类。(完全错误) (请提意见)

Musical Note instanceOf is not same as instanceof.
   instanceOf 不是 instanceof。

(9) Private constructors. (legal)
   私有 的Constructor。 (合法)

(10) An assignment statement which looks like a comparison.
    一个 赋值语句 看起来像 比较语句。
    比如说if(a=true),和if(a==true)。对于这种题眼睛亮一点。

(11) System.exit() in try-catch-finally blocks. (finally 不会执行)
    在try-catch-final块中的退出语句。 (finally不会执行)

(12) Order of try-catch-finally blocks matters. (若顺序错的话: error: No try before catch)
    try-catch-final块的顺序问题。

(13) main() can be declared final. (OK)
    main()方法 可以声明为 final.

(14) -0.0 == 0.0 is true.
    如题。

(15) A class without abstract methods can still be declared abstract
    没有 抽象方法的类,仍然可以定义为抽象类。

(16) RandomAccessFile descends from Object and implements DataInput and DataOutput.
    RandomAccessFile 类继承Object,并且实现了DataInput和DataOutput接口。

(17) Map does not implement Collection.
    Map 并不实现 Collection.

(18) Dictionary is a class, not an interface.
    Dictionary 是一个类,不是接口。

(19) Collection is an Interface where as Collections is a helper class. (这题我倒没见过,但还真容易看混)
    Collection是一个接口,但 Collections却是一个辅助类。

(20) Class declarations can come in any order.
     (也就是说: class Child extends Parents{}
                class Parents{}
      这种顺序是可以的.)
    可以以任何顺序申明类。

(21) Forward references to variables gives compiler error.
    把 reference 给 变量,会产生编译错误。 (请提意见)

(22) Multi dimensional arrays can be sparce.
(这句话是说: 多维数组中子数组不一定必须有一定个数的元素,比如我们把一个二维数组看成一个矩阵,那么行与列中的元素可以不完整,可以不对齐.)
    如jiayuan所说。

(23) Arrays, whether local or class-level, are always initialized.
    数组,无论是当前的,还是类等级的,都会被初始化。

(24) Strings are initialized to null, not empty string.
    String 是被初始化为 null,不是空字符。

(25) An empty string is NOT the same as a null string.
    一个空字符串 不是 一个null字符。

(26) A declaration cannot be labelled.
    一个声明语句不能被标记。

(27) "continue" must be in a loop(for, do, while). It cannot appear in case constructs.
    “continue”已经要在一个循环里(如for,do,while),它不能在case语句中出现。

(28) Primitive array types can never be assigned to each other, eventhough the primitives themselves can be assigned.
   (也就是说: ArrayofLongPrimitives = ArrayofIntegerPrimitives 会编译出错,
    但 longvar = intvar 是合法的)
    
   Primitive(int,char,long等)数组是不能互相赋值的,即使它们本身可以。
     解释见jiayuan所说。

(29) A constructor can throw any exception.
    一个Constructor可以抛出任何异常。

(30) Initilializer blocks are executed in the order of declaration.
    初始化块是按照声明的顺序执行的。(请提意见)

(31) Instance initializerMoon gets executed ONLY IF the objects are constructed.
    实例初始化语句块只有在它建立后才会被执行。

(32) All comparisons involving NaN and a non-Nan would always result false. (对大多数朋友来说这可是个盲点噢)
    所有关于 NaN(Not a Number) 和 non-NaN 的比较,都返回false.
    这条很重要。

(33) Default type of a numeric literal with a decimal point is double.
    我在这里把Java成员变量默认初始化原则写一下:
                   成员变量类型 取值
                      byte 0
                   short 0
                   int 0
                   long 0L
                   char '\u0000'
                   float 0.0F
                   double 0.0D
                   boolean false
                   所有引用类型 null

(34) integer (and long ) operations / and % can throw ArithmeticException while float / and % will never, even in case of division by zero.
    integer和long 操作 /和% 的话, 会抛出ArithmeticException,
     但是 float形不会,即使是除以0。

(35) == gives compiler error if the operands are cast-incompatible.
    ==会产生编译错误,如果两边 不兼容的话。

(36) You can never cast objects of sibling classes( sharing the same parent ), even with an explicit cast.
     你永远不可能 转化具有同一个超类的类的对象,即使是刻意转化。(请提意见)

(37) .equals returns false if the object types are different.It does not raise a compiler error.
    equals() 返回 false 如果对象类型不同,但不产生 编译错误。

(38) No inner class can have a static member.(but static inner class can)
    没有内部类 可以拥有 静态成员。(但静态内部类可以)

(39) File class has NO methods to deal with the contents of the file.(also the existing directory)
    File类没有 任何 处理文件内容的方法。(当然,存在的目录也一样)

(40) InputStream and OutputStream are abstract classes, while DataInput and DataOutput are interfaces.
    InputStream 和 OutputStream 是 抽象类,
     但是 DataInput 和 DataOutput是 接口。

4.回复: 经典JAVA---SCJP考题分析 [Re: smartzhao] Copy to clipboard
Posted by: yamakasy
Posted on: 2002-08-03 10:13

很不错噢!努力啊!可惜是转帖,要不然我就可以给你加分了,这里推荐原创,不过多转帖一些好的文章,我也会给你加分!努力吧!

5.回复: 回复: 经典JAVA---SCJP考题分析 [Re: yamakasy] Copy to clipboard
Posted by: smartzhao
Posted on: 2002-08-03 10:57

yamakasy wrote:
很不错噢!努力啊!可惜是转帖,要不然我就可以给你加分了,这里推荐原创,不过多转帖一些好的文章,我也会给你加分!努力吧!


上面的试题分析是原创啊!! 绝对的! 我自己写的! 呵呵!
考虑一下吧!

6.回复: [经典]JAVA---SCJP考题分析 [Re: smartzhao] Copy to clipboard
Posted by: Biubiu
Posted on: 2002-08-04 10:16

多谢。

7.回复: [经典]JAVA---SCJP考题分析 [Re: smartzhao] Copy to clipboard
Posted by: wunglee
Posted on: 2002-08-18 00:01

你真的都自己测试过?比如:

2. Given:

Integer i = new Integer (42);
Long 1 = new Long (42);
Double d = new Double (42.0);

Which two expressions evaluate to True? (Choose Two)

A. (i ==1)
B. (i == d)
C. (d == 1)
以上3个不能编译,原因是Wrapper类不能用==和Primeval类型的做比较

D. (i.equals Food) //不能编译,Integer类型没有的equals(Double)方法
E. (d.equals Light Bulb) //false ----如果是对象比较,equals需要重载,否则比较的是地址,和==等效
F. (i.equals (42)) //不能编译,Integer类型没有的equals(int)方法

但却会有正确答案:D、E ?!

8.回复: 回复: [经典]JAVA---SCJP考题分析 [Re: wunglee] Copy to clipboard
Posted by: smartzhao
Posted on: 2002-08-18 00:52

wunglee wrote:
你真的都自己测试过?比如:

2. Given:

Integer i = new Integer (42);
Long 1 = new Long (42);
Double d = new Double (42.0);

Which two expressions evaluate to True? (Choose Two)

A. (i ==1)
B. (i == d)
C. (d == 1)
以上3个不能编译,原因是Wrapper类不能用==和Primeval类型的做比较

D. (i.equals Food) //不能编译,Integer类型没有的equals(Double)方法
E. (d.equals Light Bulb) //false ----如果是对象比较,equals需要重载,否则比较的是地址,和==等效
F. (i.equals (42)) //不能编译,Integer类型没有的equals(int)方法

但却会有正确答案:D、E ?!

觉得你在好好看看吧! 这种题目你创造什么环境来编译啊! 只是考你的基本语法啊! 看API就能解决问题的!

9.回复: [经典]JAVA---SCJP考题分析 [Re: smartzhao] Copy to clipboard
Posted by: wunglee
Posted on: 2002-08-19 20:09

实践是检验真理的唯一标准!以上是在JBUILDER里的运行结果,这里面有问题的题目还有不少,过一段我会全部贴出

10.回复: [经典]JAVA---SCJP考题分析 [Re: smartzhao] Copy to clipboard
Posted by: jmd7
Posted on: 2002-08-19 20:41

在我这里d,e是可以正常编译的,但是返回false。我记得equals的判断应该是建立在对象类型匹配而且内在的内容一致的基础上。返回false是应该的。

其实所谓的104和147的题目是真题没错,但是标准答案并不完全统一,而且不同的试题版本题面就有出入,因为实际上考试的时候也是这样,类似的题干,但是有一些极小的差别,相信做过jcertify的朋友都清楚。

所以,弄懂就可以,有的真题的答案看似不对,但是sun的标准答案就是这样,只能死记硬背了。

我考试没得满分就错在一道争论比较厉害的线程题上,按照自己的理解做的所以错了。

11.回复: 回复: [经典]JAVA---SCJP考题分析 [Re: wunglee] Copy to clipboard
Posted by: 淡淡的忧伤
Posted on: 2002-08-19 21:33

同意老兄的意见。

无论是API DOC还是实践都说明这题有问题。

wunglee wrote:
你真的都自己测试过?比如:

2. Given:

Integer i = new Integer (42);
Long 1 = new Long (42);
Double d = new Double (42.0);

Which two expressions evaluate to True? (Choose Two)

A. (i ==1)
B. (i == d)
C. (d == 1)
以上3个不能编译,原因是Wrapper类不能用==和Primeval类型的做比较

D. (i.equals Food) //不能编译,Integer类型没有的equals(Double)方法
E. (d.equals Light Bulb) //false ----如果是对象比较,equals需要重载,否则比较的是地址,和==等效
F. (i.equals (42)) //不能编译,Integer类型没有的equals(int)方法

但却会有正确答案:D、E ?!

12.回复: [经典]JAVA---SCJP考题分析 [Re: smartzhao] Copy to clipboard
Posted by: jx_ceo
Posted on: 2002-09-05 21:38

smartzhao wrote:
76. Click the exhibit button.

ClassOne.java 1. package com.abc.pkg1; 2. public class ClassOne { 3. private char var = ‘a’; 4. char getVar() {return var;} 5. } ClassTest.java 1. package com.abc.pkg2; 2. import com.abc.pkg1.ClassOne; 3. public class ClassTest extends ClassOne { 4. public static void main(String[]args) { 5. char a = new ClassOne().getVar(); 6. char b = new ClassTest().getVar(); 7. } 8. }

What is the result?

A. Compilation will fail.
B. Compilation succeeds and no exceptions are thrown.
C. Compilation succeeds but an exception is thrown at line 5 in ClassTest.java.
D. Compilation succeeds but an exception is thrown at line 6 in ClassTest.java.
//考点:类实例化问题问题

所有答案我都用JPAD PRO测试过,同时推荐Jpad pro这个工具对学习JAVA的语法绝对有好处,而且不大耐用........
Answer Key:

76. B


I am confused by the answer B. Since package pkg1 has a default method getVar(), it is only accessible inside the package. How come the class in other package(pkg2) can get access to it?

When I compile class ClassTest, it complains getVar() is not public.

Any tricks on the answer? because I saw the same answer to the question in other places.

13.回复: [经典]JAVA---SCJP考题分析 [Re: smartzhao] Copy to clipboard
Posted by: jmd7
Posted on: 2002-09-06 01:04

在147题的答案里确实是答案B,但是104真题里的答案是A。
正确答案应该是A,我认为,原因你已经说明了,会出现两个编译错误,因为两个getVar都不能访问。如果ClassOne的getVar加上protected,会出现一个编译错误,可以通过子类访问getVar,但是通过父类引用访问父类的getVar还是不行的。只有加上public,两个类才能都正确编译。

14.回复: [经典]JAVA---SCJP考题分析 [Re: smartzhao] Copy to clipboard
Posted by: jx_ceo
Posted on: 2002-09-06 02:14

问题是,很明显不能编译,为何这么多人仍然选择B?

15.回复: [经典]JAVA---SCJP考题分析 [Re: smartzhao] Copy to clipboard
Posted by: jmd7
Posted on: 2002-09-06 09:37

人多么,没看见呀。这个真题泄露出来的时候给的答案就是B,后来没人给它修订错误,一直就错下去了。

16.回复: [经典]JAVA---SCJP考题分析 [Re: smartzhao] Copy to clipboard
Posted by: bluemud
Posted on: 2002-09-11 16:06

52题是否应为134234?
try{}catch{}finally{}结构中即使throw an exception,结构之外的代码也应该执行。不然要try干吗。


   Powered by Jute Powerful Forum® Version Jute 1.5.6 Ent
Copyright © 2002-2021 Cjsdn Team. All Righits Reserved. 闽ICP备05005120号-1
客服电话 18559299278    客服信箱 714923@qq.com    客服QQ 714923