SCJP 1.6版考題 040

出自 陳富國維基館
前往: 導覽搜尋
1. class Foo{
2.  private int x;
3.  public Foo(int x){this.x = x;}
4.  public void setX(int x){this.x = x;}
5.  public int getX(){return x;}
6. }
7.
8. public class Gamma{
9.   static Foo fooBar(Foo foo){
10.   foo = new Foo(100);
11.   return foo;
12. } 

13. public static void main(String[] args){
14.   Foo foo = new Foo(300);
15.   System.out.print(foo.getX() + "-");
16.
17.   Foo fooFoo = fooBar(foo);
18.   System.out.print(foo.getX() + "-");
19.   System.out.print(fooFoo.getX() + "-");
20.
21.   foo = fooBar(fooFoo);
22.   System.out.print(foo.getX() + "-");
23.   System.out.print(fooFoo.getX());
24. }
25.}


What is the output?

  A. 300-100-100-100-100
  B. 300-300-100-100-100
  C. 300-300-300-100-100
  D. 300-300-300-300-100


解答


Ans: B

解說: 畫圖來看