个人sjcp总结

Question 16

Click the Exhibit button.

10. interface Foo {

11. int bar();

12. }

13.

14. public class Beta {

15.

16. class A implements Foo {

17. public int bar() { return 1; }

18. }

19.

20. public int fubar( Foo foo) { return foo.bar(); }

21.

22. public void testFoo() {

23.

24. class A implements Foo {

25. public int bar() { return 2; }

26. }

27.

28. System.out.println( fubar( new A()));

29. }

30.

31. public static void main( String[] argv) {

32. new Beta().testFoo();

33. }

34. }

Which three statements are true? (Choose three.)

A. Compilation fails.

B. The code compiles and the output is 2.

C. If lines 16, 17 and 18 were removed, compilation would fail.

D. If lines 24, 25 and 26 were removed, compilation would fail.

E. If lines 16, 17 and 18 were removed, the code would compile and

the output would be 2.

F. If lines 24, 25 and 26 were removed, the code would compile and

the output would be 1.

Answer: BEF

 

Question26

Click the Exhibit button.

1. public class GoTest {

2. public static void main(String[] args) {

3. Sente a = new Sente(); a.go();

4. Goban b = new Goban(); b.go();

5. Stone c = new Stone(); c.go();

6. }

7. }

8.

9. class Sente implements Go {

10. public void go() { System.out.println(”go in Sente.”); }

11. }

12.

13. class Goban extends Sente {

14. public void go() { System.out.println(”go in Goban”); }

15. }

16.

17. class Stone extends Goban implements Go { }

18.

19. interface Go { public void go(); }

What is the result?

A. go in Goban

go in Sente

go in Sente

B. go in Sente

go in Sente

go in Goban

C. go in Sente

go in Goban

go in Goban

D. go in Goban

go in Goban

go in Sente

E. Compilation fails because of an error in line 17.

Answer: C

 

Question 52

Given:

11. public class Test {

12. public enum Dogs {collie, harrier, shepherd};

13. public static void main(String [] args) {

14. Dogs myDog = Dogs.shepherd;

15. switch (myDog) {

16. case collie:

17. System.out.print(”collie “);

18. case default:

19. System.out.print(”retriever “);

20. case harrier:

21. System.out.print(”harrier “);

22. }

23. }

24. }

‘What is the result?

A. harrier

B. shepherd

C. retriever

D. Compilation fails.

E. retriever harrier

F. An exception is thrown at runtime.

Answer: D

Question 53

Given:

12. public class Test {

13. public enum Dogs {collie, harrier};

14. public static void main(String [] args) {

15. Dogs myDog = Dogs.collie;

16. switch (myDog) {

17. case collie:

18. System.out.print(”collie “);

19. case harrier:

20. System.out.print(”harrier “);

21. }

22. }

23. }

What is the result?

A. collie

B. harrier

C. Compilation fails.

D. collie harrier

E. An exception is thrown at runtime.

Answer: D

Question 62

Given:

11. public static Collection get() {

12. Collection sorted = new LinkedList();

13. sorted.add(’B”); sorted.add(”C”); sorted.add(”A”);

14. return sorted;

15. }

16. public static void main(String[] args) {

17. for (Object obj: get()) {

18. System.out.print(obj + “, “);

19. }

20. }

What is the result?

A. A, B, C,

B. B, C, A,

C. Compilation fails.

D. The code runs with no output.

E. An exception is thrown at runtime.

Answer: B

Question 73

Given:

11. static classA {

12. void process() throws Exception { throw new Exception(); }

13. }

14. static class B extends A {

15. void process() { System.out.println(”B “); }

16. }

17. public static void main(String[] args) {

18.A a=new B();

19. a.process();

20.}

What is the result?

A. B

B. The code runs with no output.

C. An exception is thrown at runtime.

D. Compilation fails because of an error in line 15.

E. Compilation fails because of an error in line 18.

F. Compilation fails because of an error in line 19.

Answer: F

Question 83

Click the Exhibit button.

10. public class ClassA {

11. public void methodA() {

12. ClassB classB = new ClassB();

13. classB.getValue();

14. }

15. }

And:

20. class ClassB {

21. public ClassC classC;

22.

23. public String getValue() {

24. return classC.getValue();

25. }

26. }

And:

30. class ClassC {

31. public String value;

32.

33. public String getValue() {

34. value = “ClassB”;

35. return value;

36. }

37. }

Given:

ClassA a = new ClassA();

a.methodA();

What is the result?

A. Compilation fails.

B. ClassC is displayed.

C. The code runs with no output.

D. An exception is thrown at runtime.

Answer: D

Question 86

Given:

1. public class Boxer1 {

2. Integer i;

3. int x;

4. public Boxer1(int y) {

5. x=i+y;

6. System.out.println(x);

7. }

8. public static void main(String[] args) {

9. new Boxer1(new Integer(4));

10. }

11. }

What is the result?

A. The value “ 4” is printed at the command line.

B. Compilation fails because of an error in line 5.

C. Compilation fails because of an error in line 9.

D. A NullPointerException occurs at runtime.

E. A NumberFormatException occurs at runtime.

F. An IllegalStateException occurs at runtime.

Answer: D

Question 88

Given:

11. class Converter {

12. public static void main(String[] args) {

13. Integer i = args[0];

14. int j = 12;

15. System.out.println(”It is “ + (j==i) + “that j==i.”);

16. }

17. }

What is the result when the programmer attempts to compile the code

and run it with the command java Converter 12?

A. It is true that j==i.

B. It is false that j==i.

C. An exception is thrown at runtime.

D. Compilation fails because of an error in line 13.

Answer: D

Question 93

Given:

11. public class Yikes {

12.

13. public static void go(Long n) {System.out.println(”Long “);}

14. public static void go(Short n) {System.out.println(”Short “);}

15. public static void go(int n) {System.out.println(”int “);}

16. public static void main(String [] args) {

17. short y= 6;

18. long z= 7;

19. go(y);

20. go(z);

21. }

22. }

What is the result?

A. int Long

B. Short Long

C. Compilation fails.

D. An exception is thrown at runtime.

Answer: A

Question 106

Given:

12. Date date = new Date();

13. df.setLocale(Locale.ITALY);

14. String s = df.format(date);

The variable df is an object of type DateFormat that has been

initialized in line 11. What is the result if this code is run on December

14, 2000?

A. The value of s is 14-dic-2004.

B. The value of s is Dec 14, 2000.

C. An exception is thrown at runtime.

D. Compilation fails because of an error in line 13.

Answer: D

同时,以前的formatter类也提供了更完善的方法来格式化,例如:

formatter.format("Pi is approximately %1$f," +

        "and e is about %2$f", Math.PI, Math.E);

 

格式化元素的构成如下:

%[argument_index$][flags][width][.precision]conversion

其中:

argument_index是一个正整数,说明了参数的位置,1为取第一个参数

width表示输出的最小字母个数

precision代表数字的小数位数

conversion代表被格式化的参数的类型:

f  float,

t  time

d  decimal

o octal

x  hexadecimal

s  general

c  a Unicode

Question 113

Given:

12. String csv = “Sue,5,true, 3” ;

13. Scanner scanner = new Scanner( csv);

14. scanner.useDelimiter(”,”);

15. int age = scanner.nextInt();

What is the result?

A. Compilation fails.

B. After line 15, the value of age is 5.

C. After line 15, the value of age is 3.

D. An exception is thrown at runtime.

Answer: D

 

Exception in thread "main" java.util.InputMismatchException

Question 132

Given:

7. void waitForSignal() {

8. Object obj = new Object();

9. synchronized (Thread.currentThread()) {

10. obj.wait();

11. obj.notify();;

12. }

13. }

Which is true?

A. This code may throw an InterruptedException.

B. This code may throw an IllegalStateException.

C. This code may throw a TimeoutException after ten minutes.

D. This code will not compile unless “obj.wait()” is replaced with

“((Thread) obj).wait()”.

E. Reversing the order of obj.wait() and obj.notify() may cause this

method to complete normally.

F. A call to notify() or notifyAll() from another thread may cause this

method to complete normally.

Answer: B

Question 166

Given:

1. public class Score implements Comparable<Score> {

2. private int wins, losses;

3. public Score(int w, int 1) { wins = w; losses = 1; }

4. public int getWins() { return wins; }

5. public int getLosses() { return losses; }

6. public String toString() {

7. return “<“ + wins + “,“ + losses + “>”;

8. }

9. // insert code here

10. }

Which method will complete this class?

A. public int compareTo(Object o) {/*mode code here*/}

B. public int compareTo(Score other) {/*more code here*/}

C. public int compare(Score s1,Score s2){/*more code here*/}

D. public int compare(Object o1,Object o2){/*more code here*/}

Answer: B

Given:

1. public class Person {

2. private String name;

3. public Person(String name) { this.name = name; }

4. public boolean equals(Person p) {

5. return p.name.equals(this.name);

6. }

7. }

Which is true?

A. The equals method does NOT properly override the Object.equals

method.

B. Compilation fails because the private attribute p.name cannot be

accessed in line 5.

C. To work correctly with hash-based data structures, this class must

also implement the hashCode method.

D. When adding Person objects to a java.util.Set collection, the equals

method in line 4 will prevent duplicates.

Answer: A

10. Set<KeyMaster> set = new HashSet<KeyMaster>();

11. KeyMaster k1 = new KeyMaster(1);

12. KeyMaster k2 = new KeyMaster(2);

13. set.add(k1); set.add(k1);

14. set.add(k2); set.add(k2);

15. System.out.print(set.size() + “:”);

16. k2.i = 1;

17. System.out.print(set.size() + “:”);

18. set.remove(k1);

19. System.out.print(set.size() + “:”);

20. set.remove(k2);

21. System.out.print(set.size());

22. }

23. }

What is the result?

A. 4:4:2:2

B. 4:4:3:2

C. 2:2:1:0

D. 2:2:0:0

E. 2:1:0:0

F. 2:2:1:1

G. 4:3:2:1

Answer:

F

Answer: A

Question 174

Click the Exhibit button.

1. import java.util.*;

2. class KeyMaster {

3. public int i;

4. public KeyMaster(int i) { this.i = i; }

5. public boolean equals(Object o) { return i == ((KeyMaster)o).i; }

6. public int hashCode() { return i; }

7. }

8. public class MapIt {

9. public static void main(String[] args) {

10. Set<KeyMaster> set = new HashSet<KeyMaster>();

11. KeyMaster k1 = new KeyMaster(1);

12. KeyMaster k2 = new KeyMaster(2);

13. set.add(k1); set.add(k1);

14. set.add(k2); set.add(k2);

15. System.out.print(set.size() + “:”);

16. k2.i = 1;

17. System.out.print(set.size() + “:”);

18. set.remove(k1);

19. System.out.print(set.size() + “:”);

20. set.remove(k2);

21. System.out.print(set.size());

22. }

23. }

What is the result?

A. 4:4:2:2

B. 4:4:3:2

C. 2:2:1:0

D. 2:2:0:0

E. 2:1:0:0

F. 2:2:1:1

G. 4:3:2:1

Answer: F

Given:

classA {}

class B extends A {}

class C extends A {}

class D extends B {}

Which three statements are true? (Choose three.)

A. The type List<A> is assignable to List.

B. The type List<B> is assignable to List<A>.

C. The type List<Object> is assignable to List<?>.

D. The type List<D> is assignable to List<? extends B>.

E. The type List<? extends A> is assignable to List<A>.

F. The type List<Object> is assignable to any List reference.

G. The type List<? extends B> is assignable to List<? extends A>.

Answer: CDG

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值