回答編集履歴

5

注記

2017/05/26 02:14

投稿

m.ts10806
m.ts10806

スコア80850

test CHANGED
@@ -64,4 +64,14 @@
64
64
 
65
65
 
66
66
 
67
+ #注記
67
68
 
69
+
70
+
71
+ あくまでサンプルソースは現状のコードだけに焦点をあてたその場限りの打開策とご理解ください。
72
+
73
+ 既に public void execute(int userId, int followId) というメソッドがあります。
74
+
75
+ 全体の要件によってはやはり同名メソッドがあること自体に問題が発生することもあります(nob.さんのおっしゃっているように)
76
+
77
+ その場合はおとなしく処理内容にあわせたメソッド名に変更することを推奨します。

4

サンプルコード

2017/05/26 02:14

投稿

m.ts10806
m.ts10806

スコア80850

test CHANGED
@@ -18,6 +18,50 @@
18
18
 
19
19
 
20
20
 
21
- 要件はそれぞれ「フォローしているユーザーの情報」「フォローされているユーザーの情報」で「ユーザー情報を取得」という要件は同じなので、メソッドを1つにして「フォローフラグ」を渡して判断すればよいと思います。
21
+ 要件はそれぞれ「フォローしているユーザー(フォロー)の情報」「フォローされているユーザー(ふぉ露和ー)の情報」で「ユーザー情報を取得」という要件は同じなので、メソッドを1つにして「フォローフラグ」を渡して判断すればよいと思います。
22
22
 
23
23
 
24
+
25
+ # サンプル
26
+
27
+ ```Java
28
+
29
+ public int execute(int userId ,boolean followflg){
30
+
31
+ FollowDAO dao = new FollowDAO();
32
+
33
+ //フォローフラグtrueの場合「getFollowCount」を実行
34
+
35
+ if(followflg){
36
+
37
+ return dao.getFollowCount(userId);
38
+
39
+ }else{
40
+
41
+         //フォローフラグfalseの場合「getFollowerCount」を実行
42
+
43
+ return dao.getFollowerCount(userId);
44
+
45
+ }
46
+
47
+ }
48
+
49
+
50
+
51
+ //呼び出し
52
+
53
+ //フォローユーザーが欲しい場合
54
+
55
+ FollowLogic.execute(userId,true);
56
+
57
+ //フォロワーユーザーが欲しい場合
58
+
59
+ FollowLogic.execute(userId,false);
60
+
61
+ ```
62
+
63
+ ※動作確認できてないのであくまでイメージとして捉えてください
64
+
65
+
66
+
67
+

3

文章修正

2017/05/26 02:10

投稿

m.ts10806
m.ts10806

スコア80850

test CHANGED
@@ -18,8 +18,6 @@
18
18
 
19
19
 
20
20
 
21
- 要件はそれぞれ「フォローしているユーザーの情報」「フォローされているユーザーの情報」取得なので、
21
+ 要件はそれぞれ「フォローしているユーザーの情報」「フォローされているユーザーの情報」で「ユーザー情報を取得」という要件は同じなので、メソッドを1つにして「フォローフラグ」を渡して判断すればよいと思います。
22
-
23
- メソッドを1つにして、「フォローフラグ」を渡して判断すればよいと思います。
24
22
 
25
23
 

2

読み違えていたので編集

2017/05/26 01:52

投稿

m.ts10806
m.ts10806

スコア80850

test CHANGED
@@ -18,6 +18,8 @@
18
18
 
19
19
 
20
20
 
21
- もそも全く処理内容が同じなで片方は不要なのではと思います。
21
+ 要件はれぞれ「フォローしているユーザー情報」「フォローされているユーザーの情報」の取得なので
22
22
 
23
- 別の引数もっ別の処理をする要件があればその要件にあわせて書き換えてください。
23
+ メソッド1つにし、「フォローフラグ」渡して判断すればと思います
24
+
25
+

1

追記

2017/05/26 01:48

投稿

m.ts10806
m.ts10806

スコア80850

test CHANGED
@@ -9,3 +9,15 @@
9
9
  全く同じものが2つあるからでしょう。
10
10
 
11
11
  引数の型や引数などが全く同じであれば重複メソッドとして扱われます。
12
+
13
+
14
+
15
+ # 追記
16
+
17
+ > classを作ればよいのでしょうか?
18
+
19
+
20
+
21
+ そもそも全く処理内容が同じなので片方は不要なのではと思います。
22
+
23
+ 別の引数をもって別の処理をする要件があればその要件にあわせて書き換えてください。