質問するログイン新規登録

回答編集履歴

4

文言修正

2019/12/05 22:07

投稿

shiracamus
shiracamus

スコア5413

answer CHANGED
@@ -1,4 +1,4 @@
1
- 後から使いたい変数は、ローカル変数ではなくインスタンス変数にしておきます。
1
+ 後から使いたい変数は、ローカル変数ではなくインスタンス変数に保持しておきます。
2
2
  こんな感じでしょうか。
3
3
 
4
4
  ```java

3

説明追加

2019/12/05 22:07

投稿

shiracamus
shiracamus

スコア5413

answer CHANGED
@@ -1,4 +1,5 @@
1
+ 後から使いたい変数は、ローカル変数ではなくインスタンス変数にしておきます。
1
- こんな感じでしょうか
2
+ こんな感じでしょうか
2
3
 
3
4
  ```java
4
5
  class SampleA {

2

引数変更

2019/12/05 22:06

投稿

shiracamus
shiracamus

スコア5413

answer CHANGED
@@ -30,7 +30,7 @@
30
30
  public class SampleC {
31
31
  void methodC(String str) {
32
32
  SampleB objB = new SampleB();
33
- objB.methodB("test");
33
+ objB.methodB(str);
34
34
  objB.methodA();
35
35
  }
36
36
 

1

サンプルコード追加

2019/12/05 13:32

投稿

shiracamus
shiracamus

スコア5413

answer CHANGED
@@ -1,1 +1,41 @@
1
+ こんな感じでしょうか?
2
+
3
+ ```java
4
+ class SampleA {
5
+ String name;
6
+ int numA;
7
+
8
+ SampleA(String name, int num) {
9
+ this.name = name;
10
+ numA = num;
11
+ }
12
+
13
+ void methodA() {
14
+ System.out.println("called SampleA.methodA, " + name + ", " + numA);
15
+ }
16
+ }
17
+
18
+ class SampleB {
19
+ private SampleA objA;
20
+
21
+ void methodB(String str) {
22
+ objA = new SampleA(str, 999);
23
+ }
24
+
25
+ void methodA() {
26
+ objA.methodA();
27
+ }
28
+ }
29
+
30
+ public class SampleC {
31
+ void methodC(String str) {
32
+ SampleB objB = new SampleB();
33
+ objB.methodB("test");
34
+ objB.methodA();
35
+ }
36
+
37
+ public static void main(String[] args) {
1
- 生成済みインスタンスを、SampleCのインスタンスを呼び出すときの引数として渡せばいいです。
38
+ new SampleC().methodC("test");
39
+ }
40
+ }
41
+ ```