之前我参加过SCJP考试,发现里面的题目并不难,但陷阱挺多的,以下是10道真题,有兴趣的可以看一下,有任何问题,欢迎找我讨论:
Question 1
Given:
1、 public interface Status {
2、 /* insert code here */ int MY_VALUE = 10;
3、 }
Which three are valid on line 2? (Choose three.)
A. final
B. static
C. native
D. public
E. private
F. abstract
G. protected
Question 2
Given:
1、 public class Bar {
2、 static void foo(int...x) {
3、 // insert code here
4、 }
5、}
Which two code fragments, inserted independently at line 3, will allow
the class to compile? (Choose two.)
A. foreach(x) System.out.println(z);
B. for(int z : x) System.out.println(z);
C. while( x.hasNext()) System.out.println( x.next());
D. for( int i=0; i< x.length; i++ ) System.out.println(x[i]);
Question 3
Given:
11. public class Test {
12. public static void main(String [] args) {
13. int x =5;
14. boolean b1 = true;
15. boolean b2 = false;
16. if((x==4) && !b2)
17. System.out.print(”l “);
18. System.out.print(”2 “);
19. if ((b2 = true) && b1)
20. System.out.print(”3 “);
21. }
22. }
What is the result?
A. 2
B. 3
C. 1 2
D. 2 3
E. 1 2 3
F. Compilation fails.
G. Au exceptional is thrown at runtime.
Question 4
4. Given:
1. // some code here
2. try {
3. // some code here
4. } catch (SomeException se) {
5. // some code here
6. } finally {
7. // some code here
8. }
Under which three circumstances will the code on line 7 be executed?
(Choose three.)
A. The instance gets garbage collected.
B. The code on line 3 throws an exception.
C. The code on line 5 throws an exception.
D. The code on line 1 throws an exception.
E. The code on line 3 executes successfully.
Question 5
Given:
10、interface Foo {}
11、class Alpha implements Foo { }
12、class Beta extends Alpha {}
13、class Delta extends Beta {
14、 public static void main( String[] args) {
15、 Beta x = new Beta();
16、 // insert code here
17、 }
18、}
Which code, inserted at line 16, will cause a
java.lang.ClassCastException?
A. Alpha a = x;
B. Foo f= (Delta)x;
C. Foo f= (Alpha)x;
D. Beta b = (Beta)(Alpha)x;
Question 6
Given:
? d is a valid, non-null Date object
? df is a valid, non-null DateFormat object set to the current locale
What outputs the current locales country name and the appropriate
version of d’s date?
A. Locale loc = Locale.getLocale();
System.out.println(loc.getDisplayCountry() + “ “+ df.format(d));
B. Locale loc = Locale.getDefault();
System.out.println(loc.getDisplayCountry() + “ “ + df.format(d));
C. Locale bc = Locale.getLocale();
System.out.println(loc.getDisplayCountry() + “ “+ df.setDateFormat(d));
D. Locale loc = Locale.getDefault();
System.out.println(loc.getDispbayCountry() + “ “+ df.setDateFormat(d));
Question 7
Given:
1、public class CreditCard {
2、 private String cardlD;
3、 private Integer limit;
4、 public String ownerName;
5、 public void setCardlnformation(String cardlD, String ownerName, Integer limit) {
6、 this.cardlD = cardlD;
7、 this.ownerName = ownerName;
8、 this.limit = limit;
9、 }
10、}
Which is true?
A. The class is fully encapsulated.
B. The code demonstrates polymorphism.
C. The ownerName variable breaks encapsulation.
D. The cardlD and limit variables break polymorphism.
E. The setCardlnformation method breaks encapsulation.
Question 8
Assume that country is set for each class.
Given:
1、public class Money {
2、 private String country, name;
3. public String getCountry() { return country; }
4、}
and:
5、 class Yen extends Money {
6、 public String getCountry() { return super.country; }
7、 }
8、 class Euro extends Money {
9、 public String getCountry(String timeZone) {
10、 return super.getCountry();
11、 }
12、 }
Which two are correct? (Choose two.)
A. Yen returns correct values.
B. Euro returns correct values.
C. An exception is thrown at runtime.
D. Yen and Euro both return correct values.
E. Compilation fails because of an error at line 25.
F. Compilation fails because of an error at line 30.
Question 9
Which Man class properly represents the relationship “Man has a best
friend who is a Dog”?
A. class Man extends Dog { }
B. class Man implements Dog { }
C. class Man { private BestFriend dog; }
D. class Man { private Dog bestFriend; }
E. class Man { private Dog<bestFriend> }
F. class Man { private BestFriend<dog> }
Question 10
Given:
1. public class Person {
2. private name;
3. public Person(String name) {
4. this.name = name;
5. }
6. public int hashCode() {
7. return 420;
8. }
9. }
Which is true?
A. The time to find the value from HashMap with a Person key depends
on the size of the map.
B. Deleting a Person key from a HashMap will delete all map entries for
all keys of type Person.
C. Inserting a second Person object into a HashSet will cause the first
Person object to be removed as a duplicate.
D. The time to determine whether a Person object is contained in a
HashSet is constant and does NOT depend on the size of the map.
Question 1
Given:
1、 public interface Status {
2、 /* insert code here */ int MY_VALUE = 10;
3、 }
Which three are valid on line 2? (Choose three.)
A. final
B. static
C. native
D. public
E. private
F. abstract
G. protected
Question 2
Given:
1、 public class Bar {
2、 static void foo(int...x) {
3、 // insert code here
4、 }
5、}
Which two code fragments, inserted independently at line 3, will allow
the class to compile? (Choose two.)
A. foreach(x) System.out.println(z);
B. for(int z : x) System.out.println(z);
C. while( x.hasNext()) System.out.println( x.next());
D. for( int i=0; i< x.length; i++ ) System.out.println(x[i]);
Question 3
Given:
11. public class Test {
12. public static void main(String [] args) {
13. int x =5;
14. boolean b1 = true;
15. boolean b2 = false;
16. if((x==4) && !b2)
17. System.out.print(”l “);
18. System.out.print(”2 “);
19. if ((b2 = true) && b1)
20. System.out.print(”3 “);
21. }
22. }
What is the result?
A. 2
B. 3
C. 1 2
D. 2 3
E. 1 2 3
F. Compilation fails.
G. Au exceptional is thrown at runtime.
Question 4
4. Given:
1. // some code here
2. try {
3. // some code here
4. } catch (SomeException se) {
5. // some code here
6. } finally {
7. // some code here
8. }
Under which three circumstances will the code on line 7 be executed?
(Choose three.)
A. The instance gets garbage collected.
B. The code on line 3 throws an exception.
C. The code on line 5 throws an exception.
D. The code on line 1 throws an exception.
E. The code on line 3 executes successfully.
Question 5
Given:
10、interface Foo {}
11、class Alpha implements Foo { }
12、class Beta extends Alpha {}
13、class Delta extends Beta {
14、 public static void main( String[] args) {
15、 Beta x = new Beta();
16、 // insert code here
17、 }
18、}
Which code, inserted at line 16, will cause a
java.lang.ClassCastException?
A. Alpha a = x;
B. Foo f= (Delta)x;
C. Foo f= (Alpha)x;
D. Beta b = (Beta)(Alpha)x;
Question 6
Given:
? d is a valid, non-null Date object
? df is a valid, non-null DateFormat object set to the current locale
What outputs the current locales country name and the appropriate
version of d’s date?
A. Locale loc = Locale.getLocale();
System.out.println(loc.getDisplayCountry() + “ “+ df.format(d));
B. Locale loc = Locale.getDefault();
System.out.println(loc.getDisplayCountry() + “ “ + df.format(d));
C. Locale bc = Locale.getLocale();
System.out.println(loc.getDisplayCountry() + “ “+ df.setDateFormat(d));
D. Locale loc = Locale.getDefault();
System.out.println(loc.getDispbayCountry() + “ “+ df.setDateFormat(d));
Question 7
Given:
1、public class CreditCard {
2、 private String cardlD;
3、 private Integer limit;
4、 public String ownerName;
5、 public void setCardlnformation(String cardlD, String ownerName, Integer limit) {
6、 this.cardlD = cardlD;
7、 this.ownerName = ownerName;
8、 this.limit = limit;
9、 }
10、}
Which is true?
A. The class is fully encapsulated.
B. The code demonstrates polymorphism.
C. The ownerName variable breaks encapsulation.
D. The cardlD and limit variables break polymorphism.
E. The setCardlnformation method breaks encapsulation.
Question 8
Assume that country is set for each class.
Given:
1、public class Money {
2、 private String country, name;
3. public String getCountry() { return country; }
4、}
and:
5、 class Yen extends Money {
6、 public String getCountry() { return super.country; }
7、 }
8、 class Euro extends Money {
9、 public String getCountry(String timeZone) {
10、 return super.getCountry();
11、 }
12、 }
Which two are correct? (Choose two.)
A. Yen returns correct values.
B. Euro returns correct values.
C. An exception is thrown at runtime.
D. Yen and Euro both return correct values.
E. Compilation fails because of an error at line 25.
F. Compilation fails because of an error at line 30.
Question 9
Which Man class properly represents the relationship “Man has a best
friend who is a Dog”?
A. class Man extends Dog { }
B. class Man implements Dog { }
C. class Man { private BestFriend dog; }
D. class Man { private Dog bestFriend; }
E. class Man { private Dog<bestFriend> }
F. class Man { private BestFriend<dog> }
Question 10
Given:
1. public class Person {
2. private name;
3. public Person(String name) {
4. this.name = name;
5. }
6. public int hashCode() {
7. return 420;
8. }
9. }
Which is true?
A. The time to find the value from HashMap with a Person key depends
on the size of the map.
B. Deleting a Person key from a HashMap will delete all map entries for
all keys of type Person.
C. Inserting a second Person object into a HashSet will cause the first
Person object to be removed as a duplicate.
D. The time to determine whether a Person object is contained in a
HashSet is constant and does NOT depend on the size of the map.