質問の意図がよくわからなかったので、思いつく限りの回答をします。
java
1public class B {
2
3 public static void main( String[] args ){
4
5 A ref = new A();
6
7 int j = ref.getData();
8 System.out.println(j);
9
10 ref.setData(40);
11
12 int i = ref.getData();
13 System.out.println( i );
14 }
15}
これなら、10が表示された後、40が表示されるとおもいます。
setDataをした段階で、ref内のdataは40に置き換わっています。
したがって置き換え前のデータを保持する必要があり、このようにするととりだせます。
java
1public class B {
2
3 public static void main( String[] args ){
4
5 A ref = new A();
6
7 int j = ref.getData();
8
9 ref.setData(40);
10
11 int i = ref.getData();
12 System.out.println( i );
13
14 System.out.println(j);
15 }
16}
または、別のインスタンスから取り出します。
java
1public class B {
2
3 public static void main( String[] args ){
4
5 A ref = new A();
6
7 ref.setData(40);
8
9 int i = ref.getData();
10 System.out.println( i );
11
12 ref = new A();
13 i = ref.getData();
14 System.out.println(i);
15 }
16}
値をセットしなおす方法もあります。
java
1public class B {
2
3 public static void main( String[] args ){
4
5 A ref = new A();
6
7 ref.setData(40);
8
9 int i = ref.getData();
10 System.out.println( i );
11
12 ref.setData(10);
13
14 i = ref.getData();
15 System.out.println( i );
16 }
17}
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2015/08/18 08:12