Java入門・初心者質問スレ Part.5at TECH
Java入門・初心者質問スレ Part.5 - 暇つぶし2ch1:デフォルトの名無しさん
17/09/29 17:53:25.24 XnizQSCA.net
Java初心者のためのスレッドです。
※前スレ
Java入門・初心者質問スレ Part.4
スレリンク(tech板)

2:デフォルトの名無しさん
17/09/29 18:02:02.32 AE5nnlzc.net
1乙

3:デフォルトの名無しさん
17/09/30 10:23:06.80 bCNd7Mo3.net
Thread thread = new Thread();
thread.res.add(">>1乙")

4:デフォルトの名無しさん
17/09/30 18:50:43.35 oMV1vB2C.net
例外について質問させて下さい。
「起動直後にIOExceptionを送出して異常終了するようなプログラムを作成して
下さい」という問題に対して、以下のようなコードを作成したのですが、
URLリンク(ideone.com)
コンパイルエラーになってしまいます。どこがいけないのでしょうか。

5:デフォルトの名無しさん
17/09/30 19:04:14.83 FJ/m3VsA.net
これスッキリの練習問題だろ
章末の解答を読めよ

6:35歳
17/09/30 20:38:00.91 y8lb5R8S.net
メソッドの練習問題を解きました評価をお願いします。
URLリンク(ideone.com)

7:デフォルトの名無しさん
17/09/30 20:41:10.40 /jgYbdHq.net
よくできました

8:デフォルトの名無しさん
17/09/30 20:45:35.27 Rtv4M1A2.net
っつーかさぁ
ほんとに勉強したいならideoneなんて使うのやめろアホか
eclipse落として来てローカルでやれ
例外のやつもideoneのトップページから初期


9:のコードと自分のコードみりゃ 何が悪いか一発でわかるのにどうやったらこんなザマになるんだよ



10:35歳
17/09/30 20:47:29.52 y8lb5R8S.net
クレリッククラスの作成例です。少し解答を参考にしましたが…。
URLリンク(ideone.com)
mainメソッドはありません。

11:35歳
17/09/30 20:50:55.33 y8lb5R8S.net
>>8
私は適正が有ると言われており、javaは一年間学習してます。
なぜ、そんなに偉そうなんですか?
おそらく、私の方が学歴が上だと思いますよ。

12:デフォルトの名無しさん
17/09/30 20:50:57.35 Rtv4M1A2.net
ゴミ
チラシの裏にでも書いてろアホ
質問以外のくだらねぇことは他所でやれカス

13:デフォルトの名無しさん
17/09/30 21:27:26.34 Mux18wQc.net
適性や学歴なんざ関係ねーよ
やるかやらないかの二択だ

14:35歳
17/09/30 22:03:09.35 y8lb5R8S.net
あぁ。。ああ。。。
すいません。頭の悪い人に対して、どの言葉を使えば良いのか分からないんです。
ところで、IF文はどうやって使うのですか?

15:35歳
17/09/30 22:18:42.58 y8lb5R8S.net
俺を肯定してくれる方には
読むにあたりストレスを与えてしまいますが、すいません。ご了承ください。
>>8,>>12みたいに世の中にはおかしな人もいるので…。

16:デフォルトの名無しさん
17/09/30 22:29:31.70 YGfpYuAo.net
頭のおかしい人は自分と違うだけで狂ってると思ってしまうものさ
多様性を排除したければ引きこもってな

17:デフォルトの名無しさん
17/09/30 22:39:58.87 u0QhnRq8.net
いきなり気持ち悪いカスが表れたな、おいwww
でもまあ、35歳って名前で固定してくれれば、透明人間にできるから助かるわ
頼むから、名前は変えないでくれよ
一番いいのは消えてくれる事だけどさw

18:35歳
17/09/30 22:40:30.15 y8lb5R8S.net
それより、>>9の評価を頂けれませんか?
コードが読めないんですか?

19:デフォルトの名無しさん
17/09/30 22:40:56.72 exgaAJX4.net
>>10
学歴は何処?

20:35歳
17/09/30 22:43:05.42 y8lb5R8S.net
無能な人間に限って「w」が多いんですよね。
可哀そうです。
>>16
気持ち悪いカスは黙っといて下さい。

21:35歳
17/09/30 22:44:00.75 y8lb5R8S.net
>>18
東京の大学です。

22:デフォルトの名無しさん
17/09/30 22:49:34.89 exgaAJX4.net
>>20
具体的な大学名は?
後、ソース見たけど、
メッセージ出てるだけでMP回復してないよね?

23:35歳
17/09/30 22:54:25.75 y8lb5R8S.net
真面目に質問してるのに、訳の解らない事を言わないで下さい。
メッセージは出てます。 怒りますよ?

24:デフォルトの名無しさん
17/09/30 22:56:56.02 9q0iHIlE.net
>>4
まずは出力されているエラーメッセージを自分がよく理解できる言語に翻訳しましょう。

25:デフォルトの名無しさん
17/09/30 23:03:59.38 exgaAJX4.net
>>22
お前のプログラムで、
>天に祈ったMPが?ポイント回復しました!
ってメッセージで出力してるけど、
何で実際のmpを回復してないの?
お前ドラクエで
MPが回復してますってメッセージが出てて
実際のMPが回復しなくてもおかしいと思わないのか?

26:デフォルトの名無しさん
17/09/30 23:04:27.32 T2YNvN1J.net
なぜ、JAVAのライブラリにはCにあるような単純なスワップメソッドが無いのでしょうか?
簡単なのだから個々で実装しなさい、ということでしょうか?

27:
17/09/30 23:08:27.22 oMV1vB2C.net
「35歳」のコテハンは私の立てたスレを荒らす愚か者です。
皆さん迷惑を掛けてすいませんでした。
お手数ですが、無視/スルーを続けて下さい。お願いします。

28:35歳
17/09/30 23:19:25.29 y8lb5R8S.net
タヒなすぞこいつ

29:デフォルトの名無しさん
17/09/30 23:21:06.02 p2BJ+7X/.net
巣に帰れよ、お前専用スレあるだろうが

30:デフォルトの名無しさん
17/09/30 23:24:59.29 u0QhnRq8.net
>>26
了解
つか、わざわざ全角で35を書き直してngから外れようとするとか、本当に迷惑なゴミクズだよな

31:35歳
17/09/30 23:26:41.64 y8lb5R8S.net
「 ◆BrBq2CJg6HGd」のコテハンは私の立てたスレを荒らす愚か者です。
皆さん迷惑を掛けてすいませんでした。
お手数ですが、無視/スルーを続けて下さい。お願いします。
>>28
タヒなすぞこいつ

32:35歳
17/09/30 23:30:35.37 y8lb5R8S.net
今日のコードです。
クレリッククラスの作成例です。少し解答を参考にしましたが…。
URLリンク(ideone.com)
mainメソッドはありません。

33:35歳
17/09/30 23:31:57.65 y8lb5R8S.net
今日のコードです。
クレリッククラスの作成例です。少し解答を参考にしましたが…。
URLリンク(ideone.com)
mainメソッドはありません。
どうして、エラーなんですか?

34:35歳
17/09/30 23:32:47.72 y8lb5R8S.net
今日のコードです。
クレリッククラスの作成例です。少し解答を参考にしましたが…。
URLリンク(ideone.com)
mainメソッドはありません。
どうして、エラーなんですか?
はやく答えて下さい。

35:35歳
17/09/30 23:33:20.28 y8lb5R8S.net
今日のコードです。
クレリッククラスの作成例です。少し解答を参考にしましたが…。
URLリンク(ideone.com)
mainメソッドはありません。
どうして、エラーなんですか?
はやく答えて下さい。
学歴が低いと答えれない内容でしたか?

36:35歳
17/09/30 23:33:55.10 y8lb5R8S.net
今日のコードです。
クレリッククラスの作成例です。少し解答を参考にしましたが…。
URLリンク(ideone.com)
mainメソッドはありません。
どうして、エラーなんですか?
はやく答えて下さい。
学歴が低いと答えれない内容でしたか?

37:35歳
17/09/30 23:34:28.04 y8lb5R8S.net
今日のコードです。
クレリッククラスの作成例です。少し解答を参考にしましたが…。
URLリンク(ideone.com)
mainメソッドはありません。
どうして、エラーなんですか?
はやく答えて下さい。
学歴が低いと答えれない内容でしたか?
すいません、頭の悪い人に何て言えば良いのでしょうか?

38:35歳
17/09/30 23:35:22.38 y8lb5R8S.net
今日のコードです。
クレリッククラスの作成例です。少し解答を参考にしましたが…。
URLリンク(ideone.com)
mainメソッドはありません。
どうして、エラーなんですか?
はやく答えて下さい。
学歴が低いと答えれない内容でしたか?
すいません、頭の悪い人に何て言えば良いのでしょうか?
数学わかります? 私は解るんですけど? 分かりませんか?

39:35歳
17/09/30 23:36:13.68 y8lb5R8S.net
今日のコードです。
クレリッククラスの作成例です。少し解答を参考にしましたが…。
URLリンク(ideone.com)
mainメソッドはありません。
どうして、エラーなんですか?
はやく答えて下さい。
学歴が低いと答えれない内容でしたか?
すいません、頭の悪い人に何て言えば良いのでしょうか?
数学わかります? 私は解るんですけど? 分かりませんか?
私は適性が有りますけど、無い人には解らない問題ですか?

40:デフォルトの名無しさん
17/09/30 23:36:27.11 p2BJ+7X/.net
spoj: The program compiled successfully, but main class was not found.
Main class should contain method: public static void main (String[] args).
エラーメッセージにダイレクトに書いてあるじゃねーかwwwwwwwwww
マジでアホやんこいつ

41:355歳
17/09/30 23:36:48.05 y8lb5R8S.net
今日のコードです。
クレリッククラスの作成例です。少し解答を参考にしましたが…。
URLリンク(ideone.com)
mainメソッドはありません。
どうして、エラーなんですか?
はやく答えて下さい。
学歴が低いと答えれない内容でしたか?
すいません、頭の悪い人に何て言えば良いのでしょうか?
数学わかります? 私は解るんですけど? 分かりませんか?

42:デフォルトの名無しさん
17/09/30 23:41:32.16 FJ/m3VsA.net
またスッキリから?

43:355歳
17/09/30 23:51:26.97 y8lb5R8S.net
人の頭が可笑しいとか、犯罪だとか言う前に
働け

44:
17/09/30 23:59:50.30 oMV1vB2C.net
>>40
分かった。お前のコードはよく出来ているから。
元のスレッドに戻ろう、な。頼むから。

45:デフォルトの名無しさん
17/10/01 00:04:41.63 PSOu2Em3.net
ドラクエとかオワコンだろUIは別に実装するとしてソシャゲで頼むわ

46:デフォルトの名無しさん
17/10/01 00:24:10.45 m+w/jR3z.net
>>43
ID変えてまで自分のコード褒めるとか大丈夫?

47:デフォルトの名無しさん
17/10/01 00:26:01.77 OSXVzYJs.net
新スレいきなり荒れて残念だな

48:
17/10/01 00:38:44.71 kAvWXYJO.net
>>45
失礼しました。ちょっとパニクってました。
何とか彼をなだめようとして自分のコードを褒めるというアホらしい結果に
なってしまいました。
あの個所は、「お前の気持ちは分かるから」、と書くべきでした。

49:デフォルトの名無しさん
17/10/01 01:07:51.07 KiopyZMH.net
こんな35歳がいるとか日本はもうだめだな

50:デフォルトの名無しさん
17/10/01 01:35:01.75 vSK6BcnW.net
>>42
犯罪地君は35歳に成り済ましてないで、
早く被害者のPCを弁償しようね

51:デフォルトの名無しさん
17/10/01 01:44:40.51 OSXVzYJs.net
Javaのように普及した大衆言語は
利用者が多いのでここの嵐のように
頭のおかしい人間も出てくる罠
犯罪者にパンや米を
食べている奴が多いのと同じ

52:デフォルトの名無しさん
17/10/01 03:43:49.92 4trAwtIa.net
かといって主食がジャガイモでも大差なし

53:デフォルトの名無しさん
17/10/01 10:26:45.06 KfqhHCI


54:u.net



55:デフォルトの名無しさん
17/10/01 10:39:52.94 IPLbJXkb.net
>>48
日本人は大人も幼稚って世界的に有名だよね

56:デフォルトの名無しさん
17/10/01 11:27:03.97 IOjVdre6.net
>>53
まあ、お前は世界を語るほど世界を知らねえけどなw

57:デフォルトの名無しさん
17/10/01 12:02:55.93 OcwEX3uj.net
世界が全て子供みたいになれば平和じゃね?

58:デフォルトの名無しさん
17/10/01 12:43:05.69 m+w/jR3z.net
>>◆BrBq2CJg6HGd
時間や年齢は関係無いと思うけど、10ヶ月でそのコードなら
もう少し、いろいろ考えた方が良い

59:デフォルトの名無しさん
17/10/01 12:45:14.34 qGSPhC6b.net
>>52
ゆとり言語の定義って何?

60:デフォルトの名無しさん
17/10/01 13:05:23.51 OcwEX3uj.net
動的型付けでコンパイル不要

61:デフォルトの名無しさん
17/10/01 13:54:25.71 4trAwtIa.net
>>55
いや、みんなして子供のようだから今の状態になっているだけ。

62:デフォルトの名無しさん
17/10/01 13:58:04.78 4trAwtIa.net
>>57
ゆとりと言えばみんなで手を繋いでゴールするだの円周率3で教えるだのが言われていたが、これは実際にやっている学校はなく都市伝説だったそうだな。

63:デフォルトの名無しさん
17/10/01 14:50:00.51 OcwEX3uj.net
子供って意外と差別的で残酷だったりするけどね

64:デフォルトの名無しさん
17/10/01 14:56:04.33 4trAwtIa.net
>>61
無知と誤解によってそうなってしまう。
そしてだいたいの人間はそのまま大人になる。
結果的に体の大きい歳を取った子供が世に溢れる状態になり、無知と誤解を本物の子供に植え付ける。

65:デフォルトの名無しさん
17/10/01 16:29:29.97 O1KcNr/O.net
Javaは今後消滅する可能性が非常に高い言語だけど、割とクラスのパーツをつなげる作業が暇つぶしになって面白いよな

66:デフォルトの名無しさん
17/10/01 16:59:41.15 E/2/FISs.net
消滅するとしてもC言語並みに何十年も尾を引くのではないかと思う。

67:デフォルトの名無しさん
17/10/01 17:07:23.91 E/2/FISs.net
場合によってはCOBOL並みに尾を引くかも知れん

68:デフォルトの名無しさん
17/10/01 17:35:34.78 k8w4pTeI.net
まぁ馬鹿には使いこなせない言語だからな
消えることはまずないけど使いこなせない馬鹿が勝手に消えていくから
新規案件および馬鹿が存在する前の保守案件は非常に快適なソースコードになるだろう

69:デフォルトの名無しさん
17/10/01 17:41:26.24 iOi6hm11.net
Javaは簡単な部類だと思うけどね

70:デフォルトの名無しさん
17/10/01 18:32:58.47 TmBxNMg6.net
>>66
現実を見て強く生きるんだ

71:デフォルトの名無しさん
17/10/01 18:37:34.05 k8w4pTeI.net
お前が現実を見ような
URLリンク(fossbytes.com)

72:デフォルトの名無しさん
17/10/01 19:16:09.68 E/2/FISs.net
Kotlinはまだまだ下の方だなあ。
Swiftが上がってきたな。

73:デフォルトの名無しさん
17/10/01 19:20:43.13 qGSPhC6b.net
集計方法がいまいちよくわからないんだよね

74:デフォルトの名無しさん
17/10/01 19:44:58.15 qGSPhC6b.net
ここに書いてあった
URLリンク(www.tiobe.com)

75:デフォルトの名無しさん
17/10/01 20:29:46.58 S9iaWel0.net
ぬるぽ対策が無い生のJavaってこの先生き残らないと思う。
マジョリティはkotlinで、ぬるぽと無縁なマイナー賢者はscalaかclojureに移行するだろう。

76:デフォルトの名無しさん
17/10/01 20:31:36.14 OSXVzYJs.net
>>63
言語ランキングで一番人気だぞ
あと半世紀は残るんじゃないか

77:デフォルトの名無しさん
17/10/01 20:50:14.97 TmBxNMg6.net
残ってしまう、というべきだろうね


78: COBOLと同じ立場 ほとんどウイルスのようなものだ



79:デフォルトの名無しさん
17/10/01 23:37:33.21 fsOijMh9.net
>>73
例外処理ガッんばれ

80:デフォルトの名無しさん
17/10/01 23:52:04.33 zHdBRnxy.net
Springなんかのフレームワークが息してる内は残るだろうね

81:4
17/10/02 01:12:35.76 bion7b7Q.net
レスが遅くなってしまい、すいませんでした。
>>4にレスをくれた方、ありがとうございました。
>>5
解答を見ても分からなかったので質問しました。
今は何となく理由が分かりました。
>>8
勉強自体はJDKでやっています。(コマンドプロンプトとメモ帳)
比較しても分からなかったです。
>>23
はい。やってみます。
>>56
しばらくスランプの時期もありまして…。
少し前くらいから気合入れて勉強を再開しています。
何とかしなきゃいけないというのはよく分かってますので…。

82:デフォルトの名無しさん
17/10/02 02:33:51.76 cA7Tubsm.net
だから「eclipse」っていう開発ツール落として来てそこでソースを書けって
そのレベルのくだらないエラーはコンパイルするまでもなくツールが教えてくれるから
ググってこんなことも出来ないなら向いてないからマジで諦めろ

83:デフォルトの名無しさん
17/10/02 09:17:50.27 EOa1zx84.net
     _,,...,_
  /_~,,..::: ~"'ヽ
 (,,"ヾ  ii /^',)
    :i    i"
    |(,,゚Д゚)   ・・・
    |(ノ  |)
    |    |
    ヽ _ノ
     U"U

84:デフォルトの名無しさん
17/10/02 10:44:23.50 Xes2ugBy.net
 
  ∧∧∧∧∧∧∧∧∧∧∧∧∧∧∧∧∧∧∧∧∧∧∧∧∧∧
 <JDK!JDK!JDK!JDK!JDK!JDK!JDK!JDK!JDK! >
  ∨∨∨∨∨∨∨∨∨∨∨∨∨∨∨∨∨∨∨∨∨∨∨∨∨∨∨
    、        、        、       、        、
  /っノ      /っノ      /っノ     /っノ      /っノ
 / /  ∧_∧ / /  ∧_∧ / /  ∧_∧ / /  ∧_∧ / /  ∧_∧
 \\(    )\\(    )\\(    )\\(    )\\(    )

85:デフォルトの名無しさん
17/10/02 23:42:47.15 psZRHuxF.net
        lヽ ノ l        l l l ヽ   ヽ
  )'ーーノ(  | |  | 、      / l| l ハヽ  |ー‐''"l
 / J  | | |/| ハ  / / ,/ /|ノ /l / l l l| l J ヽ
 l   ・  i´ | ヽ、| |r|| | //--‐'"   `'メ、_lノ| / ・  /
 |  D  l  トー-トヽ| |ノ ''"´`   rー-/// |  D |
 |  ・   |/     | l ||、 ''"""  j ""''/ | |ヽl  ・ |
 |  K   |       | l | ヽ,   ―   / | | l  K  |
 |  ! !  |     / | | |   ` ー-‐ ' ´|| ,ノ| | |  !! |
ノー‐---、,|    / │l、l         |レ' ,ノノ ノハ、_ノヽ
 /        / ノ⌒ヾ、  ヽ    ノハ,      |
,/      ,イーf'´ /´  \ | ,/´ |ヽl      |
     /-ト、| ┼―- 、_ヽメr' , -=l''"ハ    |  l
   ,/   | ヽ  \  _,ノーf' ´  ノノ  ヽ   | |
、_    _ ‐''l  `ー‐―''" ⌒'ー--‐'´`ヽ、_   _,ノ ノ
   ̄ ̄   |           /       ̄

86:デフォルトの名無しさん
17/10/02 23:55:56.25 Mj5pQT00.net
>>81-82
そういやFalcom Sound Team jdkは、再来年で結成から30周年を迎えるようだな

87:デフォルトの名無しさん
17/10/03 00:01:30.12 0liCQr5x.net
うるせぇよ

88:デフォルトの名無しさん
17/10/04 00:41:17.31 zeC1HQPz.net
>>78
巣に帰れ

89:デフォルトの名無しさん
17/10/04 15:01:26.75 DMSv62cB.net
>>79
初学者が迷惑するから相手するの辞めてくれ。
知らない人居るの?
◆BrBq2CJg6HGd  は無職の35歳で10ヶ月javaを勉強しています。
職歴、大学後に新卒で入社、28から35まで無職(自称、アセンブラ経験5~6年)。
就職したいですと発言し、ハロワ行きません。
体力有りませんが、靴が痛むので歩くの嫌です。
失敗するのが嫌です。10ヶ月の期間JAVAを学習しました。
先行投資と言う名目で、無職ですが親に高級ノートPC買わせました。
10ヶ月の間、プログラミングの問題といたら?→時間制限がry 失敗したく無いです。準備ができてからetc
最後は無敵の40歳までに就職します。

私たちは、つい反応したくなる気持ちをぐっとこらえ、彼らに影響されないようにする方法を見つけなくてはなりません。
彼らが私たちに影響を与えることを許してしまったら、絶えずイライラしていなくてはならないでしょう。
今後の皆さんの課題は、超然として反応しないようにすることです。

90:デフォルトの名無しさん
17/10/05 08:12:28.96 ZnOI5oFl.net
>>86
誰が誰にレスしようとその人の勝手で外野が喚く事ではない
スルーを求めるなら関連レスすらスルーしておけばいい
知らない人居るの?
真・スルー 何もレスせず本当にスルーする。簡単なようで一番難しい。
偽・スルー みんなにスルーを呼びかける。実はスルーできてない。
予告スルー レスしないと予告してからスルーする。
完全スルー スレに参加すること自体を放棄する。
無理スルー 元の話題がないのに必死でスルーを推奨する。滑稽。
失敗スルー 我慢できずにレスしてしまう。後から「暇だから遊んでやった」などと負け惜しみ。
願いスルー 失敗したレスに対してスルーをお願いする。ある意味3匹目。
激突スルー 話題自体がスルーの話に移行してまう。泥沼状態。
疎開スルー 本スレではスルーできたが、他スレでその話題を出してしまう。見つかると滑稽。
乞食スルー 情報だけもらって雑談はスルーする。
質問スルー 質問をスルーして雑談を続ける。
思い出スルー 攻撃中はスルーして、後日その思い出を語る。
真・自演スルー 議論に負けそうな時、ファビョった後に自演でスルーを呼びかける。
偽・自演スルー 誰も釣られないので、願いスルーのふりをする。狙うは4匹目。
3匹目のスルー 直接的にはスルーしてるが、反応した人に反応してしまう。
4匹目のスルー 3匹目に反応する。以降5匹6匹と続き、激突スルーへ。

91:デフォルトの名無しさん
17/10/05 19:58:22.56 xjK/Oc+X.net
質問です。
同一ディレクトリ・同一パッケージ内に、共にpublicで2つのクラス(RenshuA、
RenshuB)を作り、それぞれmethodA、methodBをpublicかつstaticで定義し、
methodB内でRenshuA.methodA();と呼ぶコードを作成したのですが、
コンパイルが通りません。
どなたか原因を教えて頂けないでしょうか。

92:88
17/10/05 20:01:15.37 xjK/Oc+X.net
それとエラーは「シンボルを見つけられません」というものです。
よろしくお願いします。

93:デフォルトの名無しさん
17/10/05 20:06:12.40 PaSIQ/4V.net
それだと推測でしか答えられないから
ソースをコピペしてほしい

94:デフォルトの名無しさん
17/10/05 20:08:27.60 qdkn4E5e.net
>>89
コンパイルはどのようにしたのか?

95:88・89
17/10/05 20:49:30.26 xjK/Oc+X.net
kenshou2という名前のディレクトリ・パッケージ内に、クラスRenshuA・
RenshuBが入っています。
以下RenshuA.javaのコード
package kenshou2;
public class RenshuA {
public static void methodA() {
System.out.println("A");
}
}
以下RenshuB.javaのコード
package kenshou2;
public class RenshuB {
public static void methodB() {
System.out.println("B");
RenshuA.methodA();
}
}
RenshuAはコンパイル通っています。
コマンドプロンプトにおいて、javac RenshuB.javaと入力しました。

96:デフォルトの名無しさん
17/10/05 22:22:46.50 Iw1gUCSC.net
>>92
javac - Java programming language compiler
URLリンク(docs.oracle.com)
| The compiler searches for class files first in the bootstrap and extension classes,
| then in the user class path (which by default is the current directory).
| The user class path is defined by setting the CLASSPATH environment variable
| or by using the -classpath command line option. (For details, see Setting the Class Path).
コンパイラは、まずブートストラップクラスと拡張クラスのクラスファイルを検索し、
次にユーザークラスパス(デフォルトではカレントディレクトリ)を検索します。
ユーザークラスパスは、CLASSPATH環境変数を設定するか、
-classpathコマンドラインオプションを使用して定義します。
クラスパスのオプションが指定されていないのでユーザクラスパスはカレントディレクトリですよと
パッケージ名がついてるときはパッケージ名と同じディレクトリがないといけないですよと
なのでこうかな
javac -cp ..\ RenshuB.java
cd ..
javac kenshou2\RenshuB.java

97:デフォルトの名無しさん
17/10/05 22:44:07.57 RWFlOlgJ.net
Java は、実際のフォルダ階層と、
各クラスのパッケージ階層を、同一にしないといけない

98:88・89
17/10/06 04:22:34.25 GT9/18A+.net
>>93 >>94
丁寧にありがとうございました。やってみようと思います。

99:デフォルトの名無しさん
17/10/06 05:37:22.47 JP/D7qWJ.net
JSFを勉強しているのですが、JSF2の参考書は分厚い難しそうなのしかないのですが、JSF1とかの参考書は
Amazonの中古で割と砕けた感じのがありとっつきやすそうなのですが、JSF1と2ではやはりだいぶ違いますか・・?
根幹とかが一緒なら、やってみたいとも思うんですが・・。

100:デフォルトの名無しさん
17/10/07 10:28:44.48 ao3GcIPR.net
>>96
俺は1覚えた状態から2を覚えたけど、今なら最初から2の方がいいでしょ。というか、俺は5年前にJSFを捨てた。当時は気に入ってたけど、今時のweb開発とは全く違うから。
内部で使う管理ツール的なアプリならいいけど、普通のアプリはちょっと辛いよ

101:デフォルトの名無しさん
17/10/08 01:10:37.77 hbsbK/yL.net
実際の現場で、新入社員等に○○されたら
ブチ切れる……みたいなことありますか?
JAVAか、少しスレちですが開発現場関係で
教えてくださいませ!

102:デフォルトの名無しさん
17/10/08 01:49:50.25 TOf4XrGv.net
少しどころではない

103:デフォルトの名無しさん
17/10/08 01:58:15.50 X3i4AnjM.net
板違いだな
マ板向きの話題か

104:デフォルトの名無しさん
17/10/08 02:05:12.73 hbsbK/yL.net
そうですか……
すみませんでした

105:デフォルトの名無しさん
17/10/08 06:48:08.91 Iqz4qArZ.net
プログラマの雑談部屋 ★16
スレリンク(prog板)

106:デフォルトの名無しさん
17/10/08 19:12:48.63 gbjNFn3Z.net
変な改行
変な顔文字

107:96
17/10/11 11:38:51.27 Ys/lPH2g.net
だいぶ亀レスですが、ご容赦ください・・。
>>97
やっぱそうですよね・・。どのWebページ見てもJSFは2からやったほうが良いようなことを書いてあります。
JSF1はくだけた解説書があるのですが、JSF2はあんまりないです(´・ω・`)…
Kindle本で評判悪いですが、あるのでやってみようと思います。KindleUnlimtedに加入すると0円らしいです・・・
お礼が遅くなりすみません。どうも体調が悪くて・・・。しかし、今時のWeb開発とは違うんですね・・。
私がやってたころは、Strutsしかなかったのに・・・。

108:デフォルトの名無しさん
17/10/11 12:44:18.73 uj1SUlbB.net
保守作業するんでもない限り今からやるならspringのほうが良いだろ
むしろspringがあるからJava使うレベル

109:104
17/10/11 15:33:31.63 Ys/lPH2g.net
>>105 Springってそんなにいいんですね。図書館にSpringの本がたくさんあったので
それやってみようと思います。J2EE関連の本はJSFばっか取り扱っているので、Springなんておまけみたいなものなんだろうと思っていました。それ、やってみます。
どうもありがとう。

110:デフォルトの名無しさん
17/10/11 20:30:44.86 QnvmwpWa.net
プログラミング GROOVY、2011
Spring Framework 4 プログラミング入門、掌田津耶乃、2014
Spring Boot プログラミング入門、掌田津耶乃、2016

111:デフォルトの名無しさん
17/10/12 02:29:30.72 uD/G1fwI.net
プログラミング速度を上げる方法を教えてください。
バリバリの初心者で、とにかくベタベタ上から書いています。
しかし、先を見据えてないので、書いて消して悩んで……で
時間だけが無駄に過ぎていきます(;;)
(料理の初心者が、あたふた料理している感じ)
何回なアルゴリズムをすぐに思いつく! ではなく……
普通のアルゴリズムの普通のソースコードを、
たんたんと書いていけるようにしたいのです。
(料理人が危なげなく、並列して料理している感じ)
みなさんは、どうやって開発、記述しているのでしょうか?

112:デフォルトの名無しさん
17/10/12 02:47:30.24 D7OLf+6g.net
>>108
行き当たりばったりに書かないで
全体から書いていくと良い
具体的にはUML(のクラス図とか)を書く
慣れたらいちいち書かなくてもいいけど
最初のうちは書いて全体の見方を覚える
そうすると料理で言ったら煮込んだり
時間のかかる調理をしながら
下ごしらえをするみたいなことができる
要するにムダがなくなる

113:デフォルトの名無しさん
17/10/12 08:39:52.77 Qd5qTvbC.net
>>108
プログラミングで言うソースは
料理で言うレシピみたいなもんだからな
慣れだよ慣れ

114:104
17/10/12 09:00:15.46 fTkEvokp.net
>>107
ありがとう。その2冊は図書館にあったので、見てみます。前から、ちょっとは見てみたいな…と思ってたやつです。
あと掌田津耶乃さんはけっこうSpringとかGroovyとか推してますよね(´・ω・`) JSFでググったときに出てきました。
一度読んでみます。ありがとう。ステマじゃないよw

115:デフォルトの名無しさん
17/10/12 09:17:19.57 uD/G1fwI.net
>>109
UMLは全図を勉強しましたが、もっぱらクラス図を見るだけですね。(~_~;)
クラス図以外は使っていないので、だんだんと記憶が……。
例えば、下記のような仕様のソースを109様が開発するときは、すらすらとクラス図にできるのでしょうか? もしコツがあるならご教授ください……! 
稚拙な例ですいません(><)
「なんでも計算機」
・基本機能は加減剰余のみ。
・プラグイン形式で数学的計算機能を追加可能。
(開発者が追加していくパターン)
・プラグイン形式でユーザー独自の関数を追加可能。
 ・方法:テキストファイルに決まった形式でユーザーが関数を書き込み、
     それを取り込み、機能を実現。
>>110
慣れ……ですか。(><)
110様の普段のコツは無いのでしょうか?

116:109
17/10/12 09:48:27.62 D7OLf+6g.net
>>112
>「なんでも計算機」
3D描画エンジンとかもそうだけど
そういう専門的なものを作る場合は
UMLとか一般的なOOP手法だけじゃなくて予備知識がいる
例というだけじゃなく本当にその仕様を実現したいなら
インタプリタとか言語処理系の知識が必要
「バリバリの初心者」向きの題材じゃない

117:デフォルトの名無しさん
17/10/12 11:06:35.94 UV6Mfibu.net
>>108
設計を学ぶ

118:デフォルトの名無しさん
17/10/12 11:18:21.19 Qd5qTvbC.net
>>112
自分用にあったら便利そうな小さなツールから作っていく
次第に「あれとあれ組み合わせたらいいのできるかも?」みたいに思いつくから
段々規模を大きくしていく
でももし趣味とか好きだからじゃなく仕事で仕方なくとかなら思いつきにくいかも
後々土台の変更が必要になったりしてもいいなら
まず単純に加減乗除の式だけテキストから読み込んで実行できるようなのを作ったら
後は機能追加でいいから土台だけでもやってしまうとか
何桁まで扱うようにするのかとか多倍長整数まで扱うのかとかも要検討かな

119:デフォルトの名無しさん
17/10/12 11:18:29.49 Aq/Tc0l7.net
>>98 >>108
誰かに怒られたのか?

120:デフォルトの名無しさん
17/10/12 11:21:03.26 W4Y9jhaF.net
面白いことに「数式を入力して計算するアプリを作る」よりは「色々な数式ボタンをつけた電卓を作る」ほうがずっと簡単なのだ
テキストパーサの知識はゆくゆくはあったほうがいいが、初心者がやるもんじゃねーな
んで、もし
プログラミング行為自体が遅い(1時間に打つ文字数が少ない、等)と思った場合:
・ 文字列やコレクションが持つメソッドの動作、高度な制御構造の使い方だけは絶対に記憶しておく
(書き方は覚えなくていい。「配列を○○する方法ってそういえばあったな」と気付ける程度でいい)
・ メジャーなデザインパターンを、これまた基本的な動作だけやって納得しておく(書けなくていい)
7割くらい機能ができた時点でかなり消して3割くらいから書き直すが動かない、みたいなことが頻発する場合:
・ gitや、gitや、あとgitのようなバージョン管理システムを利用する
(git類は「ここまでできたので保存しておく」「壊してしまったので保存時点まで戻す」「試しにコピーして改造する」がすぐできる。必須)
・ 上記に関し、メソッド単位で編集保存するという作り方を心掛ける(いきなりあちこち書き換えない)
メソッドAを使うメソッドBを作ったのだがそのまま動くと思ったメソッドAでエラーが出る、みたいな「このメソッドいきなり動かなくなった」が多発する
・ "ユニットテスト"を導入する。小難しい議論が大量にあるが当座「このメソッドはこの引数Aの時戻り値Bを返す、Cのときは実はD」という使い方でいい
UMLやクラス構成図を使っているのにぐちゃぐちゃになるという場合:
・いまのあなたに必要なのはもっと自由ならくがきである可能性が高い。方眼プロジェクトペーパーと書きやすいペンを用意しよう

121:デフォルトの名無しさん
17/10/12 11:46:27.97 UV6Mfibu.net
UMLは設計を整理したり人に伝えた�


122:閧キるもので それ自体が分析設計を生み出すものではない 分析設計を生み出すのは開発手法 RPとかOMT



123:デフォルトの名無しさん
17/10/12 14:10:31.81 o8TlX9Z0.net
>>108
大きな問題を小さな問題に段階的に繰り返し分解する
十分に粒度の小さな問題の解法は何度も必要になるのでメモするなりしてすぐ参照できるようにする
>>117が書いてるような文字列操作・コレクション操作・制御構造なんかはこのレベル
少しやってれば上のようなレベルは資料を見なくてもすぐ出来るようになるので
次はそれらの小さな問題を集めたもう少し粒度の大きい問題を解くパターンを認識して
それらをメモするなりしてすぐ参照できるようにする
これを繰り返していけば問題に対する解法をすぐに思いつけるようになる
それぞれの解法に対応したスニペットや汎用的な抽象化コードを用意しておけば
考える速度だけじゃなく書く速度も上がる
小中学校の算数・数学の問題を速く解くための勉強方法と基本的に同じ

124:デフォルトの名無しさん
17/10/12 14:27:19.38 W4Y9jhaF.net
もしにひょっとしてIDEを使っていないのならIDEは使ったほうがいいよ
IDEなしにいまどきのJavaなんてタチの悪い修行だよ
書かないと覚えないだろなんてのはその「書くべきこと」が1行で済むような場合だけだ
IDEの使い方(正確には実行設定の仕方)とトラブル対処を覚えないといかんのでちょっとアレなのだけれど、そこをなんとか

125:デフォルトの名無しさん
17/10/12 21:08:07.21 chOTaJW5.net
「あるサブクラスのオブジェクト」から、
「そのスーパークラス」や「スーパーのスーパークラス」の
属性やメソッドを使用するのが苦手です。
サブクラス上から見えないからです。
エディタなどで上手く一覧する機能ありませんか?
importしたライブラリのメソッドや属性もどういう構成になっているか
がわかりません。

126:デフォルトの名無しさん
17/10/12 22:53:15.60 jZh2ph1X.net
ide

127:デフォルトの名無しさん
17/10/13 00:22:43.72 uBikma4h.net
そもそも実装を継承しないのが良い
「継承より委譲」

128:デフォルトの名無しさん
17/10/13 00:24:47.19 24qBoS+k.net
>>123
継承を委譲に互換できるようにリファクタリング
する方法はありませんか?

129:デフォルトの名無しさん
17/10/13 00:39:26.87 uBikma4h.net
普通に継承を委譲(集約)に
置きかえていけばいいんだよ

130:デフォルトの名無しさん
17/10/13 08:37:40.23 xmEIYn5a.net
>>113
なんとこの例は専門的なものだったんですね。
思いつきで考えた例なので申し訳ありませんでした。
>>114
設計がうまくなりたいです。
そうすれば眠る時間も増えそうです……。
(z_z)
>>115
小さなツールというのは再利用可能なクラスということでしょうか?
正直、私の作ったクラスはネストと専用処理だらけで再利用できないのです……。
>>116
怒られたというか、注意されました。
上司、先輩に確信を持ってコーディングしろと……。
担当レベルで「バグ0」にして提出と言われたので、今回のような
質問をしたら、「根性で学んでこい、とにかく動けばいい」と……。
根性で何を学んだらいいのか教えてもらえませんでした。
スレのみなさんの意見で、たぶん「設計」を学ぶと良いのかなと思いました。

131:デフォルトの名無しさん
17/10/13 08:38:26.90 xmEIYn5a.net
>>117
丁寧に助かります。
GIT調べてみます。
ユニットテストはprintlnでログを確認してます。
私の開発手順は……
・口頭で「xxxなクラスを作ってくれ」と指示を受ける。
・クラス名を考えて、とりあえず必要そうなフィールドを書く。
・ここで手が止まる。(何か書かなきゃ、そうだ! アクセッサ!)
・全フィールドのアクセッサをかく。(焦る。とにかくメソッド書かなきゃ!)
・時価の商品価格を計算するとしたら、メソッド名(calcPrice)を書く。
・とりあえず分岐はするはず! そうだif文の枠だけ書こう!
・(省略)以下、確信なく恐怖でベタベタ書く……
・ifネスト、forネスト、switchネストな恐ろしいメソッドが1つできあがる。
(アクセッサ抜かすと、大抵はpublicメソッドが1~2個しかない)
・printlnでログみてテスト。一応動くが、確信は無い。
・(そして大抵は)仕様変更、追加のお知らせが届き、デスマーチへ。
(合間に結果としてのエラーも当然でて、ブレークでトレースしてると
あっというまに1時間経ってます……)
>>118
RP、OMT、調べて参考書探してみます。
>>119
その粒度を小さくするという作業が「設計」ということでしょうか?
数学(簡単なもの)ならその分解作業が可能なのですが、
ことシステム設計になると、とっかかりが見つからないのです……。(><)
数学で言えば、計算式は解けるが、文章題から計算式が導けない感じです。
>>120
エクリプス使っています。
といっても、フォルダ管理と構文チェック、結果ログ見る程度です。

132:デフォルトの名無しさん
17/10/13 09:32:14.92 GrUYgy4I.net
>・口頭で「xxxなクラスを作ってくれ」と指示を受ける
この時点で既に常識的な開発現場としてありえないんだが
ユニットテストまでやって仕様変更云々って言ってるってことは
もう詳細レベルまで落とし込んだ仕様があるのに口頭でやってとかありえんだろ
詳細設計書あるならどういう作りすればいいか壊滅的な馬鹿でもない限り誰でもわかるし
作り終わったらテスト仕様書作ってテストするから仕様変更やデスマーチも糞もねぇだろっていう
お前のところ色々おかしいかお前が意地悪されてるか敢えて何かを試されてるか何かだと思うわ

133:デフォルトの名無しさん
17/10/13 09:44:47.25 GrUYgy4I.net
ネストしまくるような複雑な条件の仕様を口頭で言うとかありえないから
とりあえず実際にどういう指示されたか書いてみ

134:デフォルトの名無しさん
17/10/13 09:51:55.46 1VCWZvPT.net
>>128
いやテストしてないと思う
"ユニットテスト"ってきちんと書かれてるのに「プログラムの動きをテストすること」だと思ってる(だからprintlnという頓珍漢な答が)
URLリンク(qiita.com)
ともあれ最初の業務でやってるのならツール的なアドバイスは無駄かもしらんね

135:デフォルトの名無しさん
17/10/13 10:37:26.01 a1m8Fd6w.net
配列定数はイニシャライザーにおいてのみ使用可能です
これどういう意味ですか?

136:デフォルトの名無しさん
17/10/13 11:20:18.34 1VCWZvPT.net
>>131
それ自体はそのまんまの意味だが、配列リテラルを代入し損ねてるときに言われることが多い
その代入の書き方は本当に合ってる? arrじゃなく arr[ ] とかが必要なんじゃない??

137:デフォルトの名無しさん
17/10/13 15:38:08.18 +zTlsJiZ.net
>>127
>その粒度を小さくするという作業が「設計」ということでしょうか?
設計の一部だけど全部じゃない
一つの問題に対して解法は一つではないので
複数ある選択肢からどの解法の選択するかが設計の核
問題の分解方法は解法選択の一部

>数学で言えば、計算式は解けるが、文章題から計算式が導けない感じです。
これは問題を明確に定義できてないから
明確に定義されてない問題は解けない
「xxxなクラスを作ってくれ」と指示を受けたらまず以下3点を明確にする
1. なぜそのクラスが必要なのか? クラスの責務は何か?
2. そのクラスに必要なパブリックインターフェースは?
  - 例外を含めた入力・出力の型(メソッドシグニチャ)
3. どういうテストをパスしたら十分なのか?
  - 事前条件、事後条件、不変条件
3点とも指示を出した側に質問する必要がある(嫌がられてもしつこく)
特に3の何ができたら問題を解けたと言えるのかを明確にするのが一番大事

問題の定義と解法の選択、解法の選択の主要な方法として問題の分解がある
算数で考えればものすごく当たり前だよね

138:デフォルトの名無しさん
17/10/13 16:00:23.53 uBikma4h.net
>>126
設計を考える上で標準ライブラリを参考にするといい
たとえばどの言語でも日付なんかは標準になってる
そういう共通してて何度もおこなう処理を考えよう
たとえば価格の計算であちこちで何度も
税額を算出してるならメソッドにくくり出すとか
>>127
とりあえずクラス使ってるってだけで手続き的な
オブジェクト指向らしくないコードのようだね
なるべく深いネストは外していこう
メソッドに抽出してその組み合わせで処理する
そうして粒度を細かくすると
クラスやメソッドの数が増えて不安かもしれないが
重複が減るし読み書きしやすいから
その方が全体として作業量は減っていく

139:デフォルトの名無しさん
17/10/13 21:11:04.47 xmEIYn5a.net
皆様、いろいろご丁寧にありがとうございます。
指示は先輩が手帳を見ながら口頭で伝えられるので、
それを急いでメモするという感じです。とにかく忙しそうです。
具体的な内容は業務内容に触れてしまうので控えさせてください。
とりあえず、下記のことをやってみようと思います。
・設計の本で良いのがないか本屋で探す。
・仕様詳細をもっと聞く。
・まずクラス図を書いて、責務の粒度を細かくする。
・再利用できるメソッドを作るよう心がける。
 (といっても、どうやればいいのか……)
あとは、みなさんのレスを反芻していきます。
本当にありがとうございました。
最後の質問ですが、設計に関してのおすすめの書籍はありますか?
ぜひ、購入したいと思います。

140:デフォルトの名無しさん
17/10/13 21:36:38.72 uBikma4h.net
>>135
>設計に関してのおすすめの書籍
まずJavaやOOP自体に慣れてないなら
『スッキリ Java』が一番やさしい
狭義の設計じゃないけど設計力の土台になるのが
『Javaで学ぶアルゴリズムとデータ構造』
本題の設計は難解な本が多いから
UMLの本とかデザインパターンの本とか個別のテーマで
やさしそうな本から読んでいくのがオススメ
メソッドの抽出とかは『リファクタリング』に
いろんな手法が載ってるから
ある程度JavaやOOに慣れたら読んでみよう

141:デフォルトの名無しさん
17/10/13 23:16:37.77 JHJOvcP0.net
>>127
アクセッサは、アノーテーションを付けるだけだろ
テスト駆動開発(TDD)でやる。
最初は関数で処理を作っていき、だんだん高度になってくると、クラスにする

142:デフォルトの名無しさん
17/10/14 03:37:43.62 mgPn9dNJ.net
書いてる内容見る限り、立ち位置的に設計云々とかクラス図とか
考えるレベル以前の問題で職場の奴はそういうのは求めてないように見える
言われて作ったクラスがどういう使われ方してるのかもよくわからんし
書いてる事から想像するに、勉強も兼ねた誰かの手伝いとして適当に使われてるだけだろ
いずれにしても作業指示の仕方が糞すぎるからそこは辞めた方がいいよ

143:136
17/10/14 04:10:51.25 ZBYXJflL.net
>>136
>『Javaで学ぶアルゴリズムとデータ構造』
あっ今検索したら同名の書籍があったけど
望洋の明解シリーズの奴ね
図解が多くて分かりやすいから

144:デフォルトの名無しさん
17/10/14 09:07:23.00 9JuWfEXp.net
>>135
> ・再利用できるメソッドを作るよう心がける。
1, これは再利用するだろうなってのをメソッド化
2, この処理は別の所でもやったなってのをメソッド化
3, 機能毎にメソッド化(分割や統合)できそうだなってのをメソッド化
他にもあるだろうけどこんな感じでいいよ

145:デフォルトの名無しさん
17/10/14 09:38:10.74 5+/c+cYf.net
自宅で自分用の(自分で勉強するための)プログラムを書いて慣れるというのがいちばんだと思う
業務指令で範囲限定されたコードだけ書いててもまっっっったくメソッド感覚(?)は身につかないよ
だって「そんなことしなくても動く」もの、業務中にやる理由ないよね

146:デフォルトの名無しさん
17/10/14 10:59:53.02 K4XROtS+.net
口頭で伝えるのは後から改変するための常套手段
証拠は残さない

147:デフォルトの名無しさん
17/10/14 11:03:35.03 K4XROtS+.net
なぜこのクラスが必要なのですかと訊くと
キレ気味にいいから黙ってやれと言われる
別にイヤとかやりたくないとかじゃないんだけど適当な仕様だと文脈背景わからないと間違いの元
他の奴が黙ってやっちゃうから味を占めたんだろうな
また無駄な後戻り工数が生まれて実装のせいにされる

148:デフォルトの名無しさん
17/10/14 11:22:15.08 +XwGR1nT.net
わかってないだけだって
人はわからないことを聞かれた時に不機嫌になるってのはわかるだろ

149:デフォルトの名無しさん
17/10/14 11:24:26.80 +XwGR1nT.net
>>142
そのせいなのかメールで聞くと返事が返ってこないやつはマジでイラつく
そういう奴は無責任の意気地なしとみなす

150:デフォルトの名無しさん
17/10/14 13:23:40.40 ZBYXJflL.net
>>135
>・再利用できるメソッドを作るよう心がける
間違ってもいないんだけど実際には
最初から再利用を目指すより
リファクタリングで重複した処理を
メソッドに切り出す方が簡単なんだけど
「動いた物をいじるな」という職場だと
まあそっちもそっちで難しいよな

151:デフォルトの名無しさん
17/10/14 13:24:19.64 lMgWewwv.net
>>145
口頭で聞いた後に
先程の備忘です。
認識齟齬などあれば返信にて訂正願います。
とかなんとか理由付けてこっちからメール送ればいい
一手間かかるけどある程度身を守れる

152:デフォルトの名無しさん
17/10/14 13:44:26.23 YpZiBRe4.net
>>142
じゃあ録音しとけ。
または忘れやすいということにして詳細にメモをする。

153:デフォルトの名無しさん
17/10/14 19:47:58.75 /I4SGVxg.net
>>136
書店で推薦書を購入し、
1「スッキリ」の2冊
2「Javaで学ぶアルゴリズムとデータ構造(明快シリーズ)」
の順番が良いかと思いましたので、
本日からスッキリを学んでいこうと思います。
ありがとうございました。
>>138
おっしゃる通り、重要業務は任されていないと思います。
今はとにかくスキルを上げたいと考えています。
>>140
たぶん再利用可能メソッドは標準ライブラリで提供されているような
ものだろうと思っています。
なんとかくくり出せるように考えてみます。
>>146
デザインパターンをマスターすると保守しやすいクラスや
メソッドになると知りました。
デザインパターンとリファクタリングも学んだほうが良いようですね。

154:デフォルトの名無しさん
17/10/15 01:07:03.66 y0fiNdyH.net
今から「スッキリ」で勉強を始める、素人か。
そんな奴に、一々説明していたら、数年かかる
オブジェクト指向を知らない奴は、仕事でプログラミングしたら、いけないレベル
少なくとも、Java の本を10冊読んで、資格や数年以上の経験が必要

155:デフォルトの名無しさん
17/10/15 01:23:31.23 hZRxEBGG.net
本10冊くらいはそりゃ読む必要あるけど
資格や経験年数はほとんど関係ないよ
本人の素質と努力次第

156:デフォルトの名無しさん
17/10/15 01:38:06.25 h2ngFzeR.net
新卒?中途採用?
何歳か知らんけどプログラミングほとんどやったことないなら
普通研修みたいなの1か月ぐらいは与えられるもんだが今がそれなのか?

157:デフォルトの名無しさん
17/10/15 01:56:56.82 ZgJv24or.net
その辺はその会社次第なんじゃないの? 教育やる余裕がない小さい会社とか
大きくてもその辺のこと分かってない会社とか色々あるだろうし。
ま、しかし、基本的にワザは教えて貰うよりは盗んだ方が良いだろうな。
自分で求めてこうだと分かったことなら忘れないが教えて貰ったことは忘れるから。
なんてことをこの前テレビで坊さんが言っているのを聞いてその通りだと思った。

158:デフォルトの名無しさん
17/10/15 02:43:30.36 XpJLTK+d.net
Javaの「スッキリ」はRPGで言うと
「ひのきの棒」や「竹のやり」みたいな初期装備だが
丸腰よりはるかにマシ
「明解」でやっと「銅のつるぎ」
ファウラーの「リファクタリング」や
GOFのデザパタやエヴァンスのDDD本は
もっと高級な剣だが
レベルが足りないと装備できない

159:デフォルトの名無しさん
17/10/15 08:18:45.28 RBDvyi+r.net
ひのきの棒という役割を演じるゲームか
シュールだな

160:デフォルトの名無しさん
17/10/15 15:24:42.40 atfl3lAe.net
>>154
そのスッキリは入門編(黄緑の方)のことですよね?

161:デフォルトの名無しさん
17/10/15 18:51:46.03 XpJLTK+d.net
>>156
そうだよ
でもスッキリ2冊読んで終わりとか
それほど甘くはないよ
スッキリは基本的に初心者向け

162:デフォルトの名無しさん
17/10/15 18:53:06.03 XpJLTK+d.net
>>155
本が役割ってのがよく分からない

163:デフォルトの名無しさん
17/10/16 16:09:19.43 4dXapby2.net
オブジェクト指向はあまり良くないだろな。
GUIと相性が良かっただけで、その他一般的な問題とは親和性が低い。

164:デフォルトの名無しさん
17/10/16 19:04:15.39 BLPcXnhp.net
オブジェクト指向が一番汎用的だと思う
DDDがOOメインなのもそこだし

165:156
17/10/16 20:19:21.78 tOLHzrTo.net
>>157
レスが遅くなってすいません。
そうですよね、ありがとうございます。
でも今の自分には実践編(緑の本)の中盤以降が結構難しいです…。

166:デフォルトの名無しさん
17/10/17 14:09:59.12 ywtVys1/.net
オブジェクト指向がマッチしないと言っているのは
設計を構造化とかどやっといて
オブジェクト指向プログラミング使えないと言ってる奴がよくいる
機能とか流れって出てきたら注意

167:デフォルトの名無しさん
17/10/17 14:22:15.60 H+HUM8Ad.net
オブジェクト指向がよくわかってないからマッチさせられないだけではないか?

168:デフォルトの名無しさん
17/10/18 10:19:44.01 LGKAL/cG.net
>>156
リストの頭だけを掻き集めてリスト化したような良書ではある

169:デフォルトの名無しさん
17/10/18 11:33:37.26 NAca40Iu.net
Javaスレ少なくなったなあ。

170:デフォルトの名無しさん
17/10/18 12:05:23.13 W6T+19ej.net
ことりんに横取りされちゃう

171:デフォルトの名無しさん
17/10/18 12:11:48.42 NAca40Iu.net
メモリー使用量が個人利用の壁になっているんだろうな。

172:デフォルトの名無しさん
17/10/18 18:27:07.39 cbmCwNcY.net
Javaの個人利用が難しいのは
安いレンサバで使えないのが大きいのでは

173:デフォルトの名無しさん
17/10/18 22:32:18.55 FgeE42WT.net
大抵PHP.良くてPython.ruby止まりかな

174:デフォルトの名無しさん
17/10/19 03:47:23.04 ymhc97rd.net
何故使えるようにならなかったのか考えないのがJavaユーザぽくていいよね。

175:デフォルトの名無しさん
17/10/19 09:32:34.88 vpgxLHGK.net
スクリプト言語はその場で書き直しゃ動くからねぇ
JavaとかC#とかはビルド→デプロイまたは
ビルド→パッケージング→デプロイとか面倒
GAEはどこまでショートカットしてくれるのか知らん

176:デフォルトの名無しさん
17/10/19 12:11:01.39 gt24D1Vb.net
俺って大体そこらへんの能無しより2倍ぐらい仕事早いほうなんだけど
金融系の内部管理システムで1画面にボタンが20個ぐらいあって
段階的に5回ぐらい認証する機能で鬼のように状態持ってるから
設計書の相関チェックも凄いことになってて当然こんなレベルの機能だと
設計書にも不備ありまくりで実装してく度に何十回も設計者と確認しないといけないレベルで
外部結合で持ってくる情報も鬼の用にあるからSQLも100行超えるわ
外部ファイルも取り込んだりするわでエビデンスのページ数も余裕で100ページ越えるレベルで
これが最初テスト完了まで2週間ぐらいの線表で
毎日残業して1か月かけて作ったらプロパーが後ろで「こんだけ時間かけられるとは思わなかったわ」とか
嫌味言ってくるのが典型的な能無し無能システム会社なんだよな

177:デフォルトの名無しさん
17/10/19 12:22:12.67 gjuTpzaj.net
で?

178:デフォルトの名無しさん
17/10/19 12:24:42.39 ScM6nrf0.net
そういう無理のあるものを断れない立場に居ること事態が既に能のある状態とは言えない

179:デフォルトの名無しさん
17/10/19 12:41:04.00 gt24D1Vb.net
過疎ってるから暇つぶしに書いただけだ
プログラムやらず嫌いのプロパーしかいない無能会社の中でも大ハズレの部類
当たりはバグ調査が全然できないプロパーがいるところのバグ調査担当

180:デフォルトの名無しさん
17/10/19 12:43:13.55 PZ5DzTeM.net
書かなくていいです

181:デフォルトの名無しさん
17/10/19 12:47:12.90 q54VEuRQ.net
JDK 8u151と8u152、2つ出てるけどどっちをインストールすればいいの?

182:デフォルトの名無しさん
17/10/19 12:59:35.28 ymhc97rd.net
リリースノート。

183:デフォルトの名無しさん
17/10/19 14:39:13.91 wexIKijw.net
>>171
スクリプトでもバージョン管理してるから他で書いてやっぱりデプロイしてる
個人でも

184:デフォルトの名無しさん
17/10/19 18:18:57.97 r3vXhCvd.net
ストリームバッファについて質問です。どれがいいのでしょうか?
FileInputStream fis=new FileInputStream("file");
0.
InputStreamReader r=new InputStreamReader(fis);
1.
InputStreamReader r=new InputStreamReader(new BufferedInputStream(fis));
2.
BufferedReader r=new BufferedReader(new InputStreamReader(fis));
3.
BufferedReader r=new BufferedReader(new InputStreamReader(new BufferedReader(fis)));
そもそもバッファの効果もよくわかってません

185:デフォルトの名無しさん
17/10/19 18:21:13.65 r3vXhCvd.net
訂正
3.
BufferedReader r=new BufferedReader(new InputStreamReader(new BufferedInputStream(fis)));

186:デフォルトの名無しさん
17/10/19 18:53:03.92 QK/nH8m0M
String型の数字をInt型で格納するソースファイルを作りたいと思っているんですが
以下の様に記述せずNumberFormatExceptionはソースファイルで解決する方法はどうしたらよろしいでしょうか


String[] num = {"1000","","aaa"};
try{
    setInt(Integer.parseInt(num[0]));
    setInt(Integer.parseInt(num[1]));
    setInt(Integer.parseInt(num[2]));
} catch(NumberFormatException e) {
setInt(0);
}

187:デフォルトの名無しさん
17/10/19 21:44:03.04 dFFGzMdP.net
BufferedReader br = Files.newBufferedReader(path,charset)

188:デフォルトの名無しさん
17/10/20 09:35:26.11 swuaN5aR.net
>>180
バッファがあると一回の読み書きに時間が掛かる機器の場合に効率が良くなって速度が上がる可能性がある。
例えばHDD。一回の読み書きが遅いのでまとめて読んだり書いたりした方が速度は上がる。
ということでファイル入出力にはバッファがあった方が良い。

189:デフォルトの名無しさん
17/10/20 09:42:05.09 VprmOZRL.net
どのくらい早くなりますか?

190:デフォルトの名無しさん
17/10/20 10:04:52.52 D9t+ZWOa.net
その手の質問には「1万回繰り返すと2倍くらい違う」と答えることにしてる

191:デフォルトの名無しさん
17/10/20 10:20:18.18 VprmOZRL.net
100回繰り返した場合はどうですか?

192:デフォルトの名無しさん
17/10/20 10:30:19.12 D9t+ZWOa.net
割合算でいいんじゃないの
つまり速い方に書き換えると「その部分だけが」2%くらい速い
そこの処理が0.03秒だった場合は処理速度が0.0294秒になって0.0006秒の改善になる
どっちかってと速度なんかじゃなくHDDとメモリ酷使するのを良しとするかどうかで動作決めていいよバッファ系は

193:デフォルトの名無しさん
17/10/20 10:40:23.48 VprmOZRL.net
OSはバッファしないのですか?

194:デフォルトの名無しさん
17/10/20 12:01:07.16 PeRsjtc9.net
ググレカス

195:デフォルトの名無しさん
17/10/20 12:44:07.68 q2wuGssb.net
>>189
するよ
そこまで行ったならオブジェクト生成コストやGC負荷とアルゴリズム、加えて「コ ン パ イ ラ が 完 全 最 適 な オ ブ ジ ェ ク ト 構 成 に 置 き 換 え て く れ る」まで考えて、
結局は実際に計測して遅くなきゃいいや、人力脳内最適化は無意味でクソである、といういま一番トレンドな結論に至る
おめでとう

196:デフォルトの名無しさん
17/10/20 12:44:37.57 Gvoola1V.net
ヨハン・セバスチャン

197:デフォルトの名無しさん
17/10/20 13:02:09.19 PCOS2CdI.net
>>185
接続されてるHDDやプログラムがどのぐらい細切れにデータを読み書きするかで変わる。
ま、なんだったら自分でバッファありとなし作って試してみな。だいたいはバッファありの方が速くなる筈。
速度差が出ないとか、むしろ遅くなる場合はバッファの大きさがそのプログラムでの一度の読み書き量に対して適切ではないとか接続されているHDDに対して適切ではないのかも知れない。
あるいは最初から適切だったためにバッファありにしても殆ど変わらないかかな。固定長の大きな電文を自分で作ってその単位で読み書きする場合はその電文の塊がバッファみたいなものなので変化がないかも知れない。

198:デフォルトの名無しさん
17/10/20 14:59:15.51 vmKCrAVU.net
特定環境だけ意識するのか

199:デフォルトの名無しさん
17/10/20 16:29:37.22 umJD7f7O.net
HDDはあまり関係ないような気がする。

200:デフォルトの名無しさん
17/10/20 16:37:33.80 umJD7f7O.net
OSはほぼ確実にバファリンしてるのでHDDの読み書きではなく、システムを呼び出すオーバーヘッドで
変わるだけじゃないだろか。

201:デフォルトの名無しさん
17/10/20 16:42:56.58 umJD7f7O.net
BufferedReaderを使うとシステム呼び出し回数が減らせるのでスレッドの切り替え確率が
減るという説明のほうが納得がいくような気がスルスル。

202:デフォルトの名無しさん
17/10/20 22:57:05.24 h7aVEIq7.net
OS・HDD は、バッファリングしてる
だから突然の電源断により、書き込まれない事があるため、
必ず正常にシステムを終了させること
普通OSは、5秒ごとに、HDDに書き込む
フラッシュメモリーには、書き込み回数の上限があるため、
SSD の書き込み回数が気になるなら、15秒ごとに書き込むように設定できる

203:デフォルトの名無しさん
17/10/21 02:10:59.27 x42CzbVN.net
Javaの最大の欠点は100kbのデータを扱うプログラムにGBクラスのメモリーが必要になるような
効率の悪さ。

204:デフォルトの名無しさん
17/10/21 02:34:16.89 mk4nuw3r.net
?

205:デフォルトの名無しさん
17/10/21 02:58:50.47 g5bh72yL.net
URLリンク(i.imgur.com)
大学の課題なんだが、for文のi<5のあとにlengthをつけなくてもこの課題は解決できるのかを教えてくれ。

206:デフォルトの名無しさん
17/10/21 03:49:35.47 W+SO0xqJ.net
>>199
どういう場合にそうなんの?
普通なら大丈夫なんじゃね

207:デフォルトの名無しさん
17/10/21 03:59:19.02 W+SO0xqJ.net
>>201
この問題
「am[0]」の使い方に違和感があるな
AMCounterクラスとか作って
カウントの責務を分離したい感じがする

208:デフォルトの名無しさん
17/10/21 04:08:37.48 g5bh72yL.net
>>203
3つ目のクラスを作るってことか?それはまだ習ってないからそうしないのかも。

209:デフォルトの名無しさん
17/10/21 04:20:38.55 xu+p9cdr.net
>>203
ああ。違和感あるな。これダメな設計だよなあ?
am[0].countAutomobile() や am[0].countHeavy() でカウントした結果が出るということは
new Automobile() した時にコンストラクタで Automobile クラス内にある static のクラス変数の
カウントをしていて countAutomobile() や countHeavy() メソッドでそれを読み出すという
ことになるが、そんなクラスは一つのVMで同時に一つしか動かせない。複数のスレッドで
同時に使おうとすると意図した通りに動かない。Java のクラスとしてはなんだかとても
嫌なクラスだ。

210:デフォルトの名無しさん
17/10/21 10:41:58.06 PVB7G2Ex.net
ハイエークラスに集計メソッドを持たせてはどうか。

211:デフォルトの名無しさん
17/10/21 10:42:56.10 PVB7G2Ex.net
せっかくだからシークエルを渡せるようにしてはどうか。

212:デフォルトの名無しさん
17/10/21 14:19:09.90 L87nxTYD.net
>>201
可能
5台と固定だから付ける意味ないんじゃないかな
クラス変数の挙動を知る課題かな
その使い方や設計としては悪いが

213:デフォルトの名無しさん
17/10/21 15:37:16.16 ej0bNcSX.net
>>201
amもweightも同じ要素数だから5回繰り返せばぴったりじゃん

214:デフォルトの名無しさん
17/10/21 15:47:20.68 PVB7G2Ex.net
ぴったりじゃん?

215:デフォルトの名無しさん
17/10/21 16:49:24.05 oMtVUNUR.net
何この糞問題wwwひっでぇな・・マジで
これ作ったの教員?生徒?
なんで配列の一要素でしかないクラスが配列全体の情報を持ってこれるんだよw
こんなレベルだと生徒もダメになるゴミ問題だな

216:デフォルトの名無しさん
17/10/21 16:53:51.90 oMtVUNUR.net
しかもこれで大学だからなwww
>201も相当な馬鹿っぽいし100%Fランだなw

217:デフォルトの名無しさん
17/10/21 16:58:21.30 oMtVUNUR.net
あーこれあれかw
最初から車の総数と大型車の台数わかってるから
countAutomobileとcountHeavyは5台と2台を直打ちで返すようにしてるだけなのかwww
中学校のマイコン倶楽部の問題かよwwwwwww

218:デフォルトの名無しさん
17/10/21 17:35:53.13 g5bh72yL.net
>201です。みんな色々とありがとう。まあFランなのは否定しないですw lengthなくてもいけるのはわかったのでもうちょい頑張ってみます

219:デフォルトの名無しさん
17/10/21 17:58:44.98 ZBz0JWdz.net
countAutomobile()やcountHeavy()は
コレクションクラスに持たせるのが普通でしょ
AMCounterクラス作って切り出すほどでもない
この規模ならHighwayクラスのメソッドでも十分
for文の中括弧省略はアンチパターン
あと大型車を数えるのにcountHeavy()という名前は不適切

220:デフォルトの名無しさん
17/10/21 18:16:41.12 g5bh72yL.net
>>215
まあ一応課題に沿って作成しないといけないんで与えられたクラス内でやるしかないみたいです。ご指摘ありがとうございます。

221:デフォルトの名無しさん
17/10/21 18:22:53.02 W+SO0xqJ.net
>>205
その通りだね
課題の範囲だとstatic使うくらいしかないよな
>>206 それもアリだと思う countメソッドはAutomobileよりかは Highwayが持つ方が自然 ただ何を作るかにもよるけど Highwayが将来的に肥大化しそうだから Counterクラスに切り出す場合もありそう



223:デフォルトの名無しさん
17/10/21 18:27:25.26 W+SO0xqJ.net
>>215
コレクションクラスでもいいというか
課題だとそっちの方がいいね
ただ課題のはサンプルコードで超小規模だけど
実用的なプログラムだと
カウントの仕方が多種類で複雑になるから

224:デフォルトの名無しさん
17/10/21 18:28:53.58 CGeTMVG8.net
俺様が素晴らしい解答を用意してやったぞ
但し実行結果は見てない
class Automobile {
private static AtomicInteger count = new AtomicInteger();
private static AtomicInteger weight = new AtomicInteger();
public Automobile(int weight) {
this.weight.addAndGet(weight);
}
public int countAutomobile() {
return count.incrementAndGet();
}
public int countHeavy() {
return this.weight.get();
}
}

225:デフォルトの名無しさん
17/10/21 18:37:22.59 CGeTMVG8.net
よく考えたらincrementAndGetはコンストラクタでやるしかねえな
オブジェクト作る意味無いコード書いたの初めてだから中途半端なコードになっちまった

226:デフォルトの名無しさん
17/10/21 18:42:09.63 oMtVUNUR.net
ダメだ・・このあまりに低レベルな流れ見てると吐き気がしてくる・・
問題の質があまりに低レベルなの見れば設計とかそういう以前の問題で真面目に考える余地なんかないのに
staticだのコレクションだの将来性だのアホか・・

227:デフォルトの名無しさん
17/10/21 19:10:52.71 3cF6dV6+.net
>>221
だったら参加しなきゃいいのに
この話題が何日も続くわけじゃあるまいし

228:デフォルトの名無しさん
17/10/21 19:17:48.71 L87nxTYD.net
スレタイ読めない奴は国語の勉強から初めた方がいいと思うの

229:デフォルトの名無しさん
17/10/21 20:07:37.18 mG9cdR79.net
国語よりJavaのほうが必修だろ。

230:名無しさん@そうだ選挙に行こう! Go to vote!
17/10/22 09:20:00.50 TMuVy25k.net
>>221
高レベルなレス期待してるわ

231:名無しさん@そうだ選挙に行こう! Go to vote!
17/10/22 10:10:46.11 kBkM80le.net
>>221
初心者スレに何を求めてるの?

232:名無しさん@そうだ選挙に行こう! Go to vote!
17/10/22 12:27:36.98 /zkBCLsm.net
初心者どうこういう以前にお前等のその解釈って無駄というか”無意味”なんだよね
問題文がインスタンス作りましょうとかっていうレベルのものなのに
問題に書かれない範疇のことまで勝手に想像を膨らませてあーだこーだ考えて
逆に質問者を混乱させ、陥れる無能の典型というか馬鹿の代表というか
なんだろうねこのド素人特有の客観的に問題点とそれに対する回答を指摘できない低知能ぶりは

233:名無しさん@そうだ選挙に行こう! Go to vote!
17/10/22 12:33:56.55 dJ6mfyJW.net
いや学校の課題の質問だったから
わざとやってんだよ……

234:名無しさん@そうだ選挙に行こう! Go to vote!
17/10/22 12:57:00.14 87G6xIOf.net
>>199
普通のパソコンが512mbくらいしか積んでなかったときからjavaは動いていたと思うが・・・
お前はどの世界線から来たんだ?
それとも、ただのうすら馬鹿か?

235:名無しさん@そうだ選挙に行こう! Go to vote!
17/10/22 13:31:52.16 hgYX0k8x.net
>>229
昔のjava重かっただろ

236:名無しさん@そうだ選挙に行こう! Go to vote!
17/10/22 13:51:31.80 xuXRPzMa.net
ただの口の悪いだけの奴だから気にするな

237:名無しさん@そうだ選挙に行こう! Go to vote!
17/10/22 13:57:03.56 87G6xIOf.net
嘘を放置するのはよくないと思わんの?

238:名無しさん@そうだ選挙に行こう! Go to vote!
17/10/22 14:05:17.09 xuXRPzMa.net
仮にまともなこと言っていても口が悪い奴の相手するのは時間も精神的にも無駄

239:名無しさん@そうだ選挙に行こう! Go to vote!
17/10/22 14:32:44.32 87G6xIOf.net
嘘つきがチヤホヤされるべきだとでも言うんかね
このバカは
つか、お前がうすら馬鹿かよwww

240:名無しさん@そうだ選挙に行こう! Go to vote!
17/10/22 14:33:57.23 87G6xIOf.net
あ、うすら馬鹿に話しかけられると鬱陶しいから、消えてくれよな
頼むわw

241:名無しさん@そうだ選挙に行こう! Go to vote!
17/10/22 14:40:05.22 Nwk+EhzR.net
>>227
>>211-213のレスも無意味やで
自分のやることには意味があると信じたいんだろうけど、もう少し客観的になろう

242:名無しさん@そうだ選挙に行こう! Go to vote!
17/10/22 14:50:54.26 dJ6mfyJW.net
>>236
そうそう
空気読めないだけ

243:名無しさん@そうだ選挙に行こう! Go to vote!
17/10/22 16:33:04.80 ACH5Qj3i.net
なんかさぁ
俺はjavaを勉強してるつもりだったのに気づいたらSQLやHTML/CSSの本を読んでるんだが間違ってないよな・・・?

244:名無しさん@そうだ選挙に行こう! Go to vote!
17/10/22 16:45:56.69 kBkM80le.net
バカがたむろってる所でしか粋がれないやつなんだからほっといてやれよ

245:名無しさん@そうだ選挙に行こう! Go to vote!
17/10/22 18:06:04.46 TMuVy25k.net
>>227
そういうのは回答を指摘してから言え

246:名無しさん@そうだ選挙に行こう! Go to vote!
17/10/22 18:17:46.07 /zkBCLsm.net
入門書未満のくだらない質問の回答はお前等馬鹿の担当だけど
それですらまともにできないから呆れるわ
いつ見てもアホしかいない

247:名無しさん@そうだ選挙に行こう! Go to vote!
17/10/22 18:20:42.92 kBkM80le.net
>>241
じゃあお前は何でここにいるの?

248:名無しさん@そうだ選挙に行こう! Go to vote!
17/10/22 18:29:26.25 cbaZLKfH.net
>>238
CLI、GUIアプリ系の本を選べばだいたいJavaで完結する
あとは隠蔽するようなフレームワークとか使えば、とりあえずは知らなくてもできる

249:名無しさん@そうだ選挙に行こう! Go to vote!
17/10/22 19:11:00.87 xuXRPzMa.net
>>238
web系なら他言語行ってもつぶし効くから損はないと思う

250:名無しさん@そうだ選挙に行こう! Go to vote!
17/10/22 19:31:25.01 AUtmH3Uy.net
>>238
いいじゃん。全部覚えろよ。

251:デフォルトの名無しさん
17/10/22 20:21:51.73 8vyNBiTj.net
>>222
初心者スレに必ず湧く奴だよ。

252:デフォルトの名無しさん
17/10/22 22:19:13.28 2tnXS/Sc.net
gradleの使い方って覚えといて損はない?

253:デフォルトの名無しさん
17/10/23 00:52:06.58 Zv+DKPlp.net
>201です。もう無理だw大学で配られた資料だけじゃだめだ、理解が追いつかない。本とか買わないとまずいかな。まあ勉強不足なのはわかってるんだがやっぱ無理なもんは無理だ。誰か教えて…

254:デフォルトの名無しさん
17/10/23 01:05:36.93 u5IDZl2p.net
>>248
実現するならstatic変数を作ってコンストラクタでインクリメントするだけ
staticを解説するためだけのアンチパターンな設計だから深く考えたらだめなやつ

255:デフォルトの名無しさん
17/10/23 01:06:44.62 y4/LHG7i.net
>>248
とりあえず何がわかんないのか箇条書きで書いて見なよ
親切なおじさんと不親切なおじさんがレスするから

256:デフォルトの名無しさん
17/10/23 01:14:38.16 Zv+DKPlp.net
>>250
まず、合計台数だけを出力するプログラミングを作ろうと思ったんですけど、
整数型配列の初期化とかはあってるはずなんだけど、Automobileクラスでint countAutomobile(){(←コンストラクタ?)内で何を打てばいいのかわからないです。ただ、return weightだと配列の1つ目の値だけが出力されますので。
URLリンク(i.imgur.com)

257:デフォルトの名無しさん
17/10/23 01:16:06.32 Zv+DKPlp.net
>>250
もちろん課題の内容としてはさらに大型車の台数も出力しないといけないんですけど、まず簡単なとこからと思って合計台数だけをやり始めたらそこすらできない次第です。

258:デフォルトの名無しさん
17/10/23 01:17:56.31 Zv+DKPlp.net
>>251
コンストラクタじゃなくて、インスタンスフィールド?適当なこと言ってすみません…

259:デフォルトの名無しさん
17/10/23 01:23:14.60 y4/LHG7i.net
>>251
なるほど、それほど筋悪く無いと思うよ
他の人がいろいろ書いてるように1台の車を表現してるAutomobileクラスのインスタンスが
全部で何台あるのかを把握してること自体がおかしい、つまり課題のコードのほうがおかしい
だからそこは分からないほうが普通というか
100人いたら100人ともam[0].countAutomobile()とは書かないから
他のやり方したらいいんでないの?

260:デフォルトの名無しさん
17/10/23 01:29:14.79 u5IDZl2p.net
Automobile(int g)がコンストラクタだよ
int weight → static int weight って変えてみたらわかると思う
253が言うように筋はいいと思う
>>254
残念ながら課題として出てるのでこれに回答せねばならないんだよ
とてつもなく不服だがな

261:デフォルトの名無しさん
17/10/23 01:29:54.34 Zv+DKPlp.net
>>254
課題がおかしいんですかね…どこか一部を直せばいいんでしょうか?それか他の意見でもあったように新しいクラスを作るべきなのでしょうか?たびたびすみません。

262:デフォルトの名無しさん
17/10/23 01:33:18.03 Zv+DKPlp.net
>>255
そちらがコンストラクタでしたか、ご指摘ありがとうごさいます。

263:デフォルトの名無しさん
17/10/23 01:38:13.20 y4/LHG7i.net
>>256
HighwayクラスにcountAutomobile()やcountHeavy()を作って上げるのが一番簡単
どうしても課題のコードに従ってやるならAutomobileクラスに
クラスレベルの変数として台数合計を管理するものを用意する

264:デフォルトの名無しさん
17/10/23 01:55:19.63 Zv+DKPlp.net
>>258
前者の方法についてもう少し詳しく教えていただけませんか?自分の解釈ではまずHighwayクラス内にint countAutomobile()と int countheavy()をつくる。

265:デフォルトの名無しさん
17/10/23 01:55:42.85 Zv+DKPlp.net
>>258
countAutomobileに関してはreturn weightで返して、heavyに関してはif文で大型車の時だけreturn で返せる。と考えたのですが、あってますでしょうか?無知ですみません

266:デフォルトの名無しさん
17/10/23 01:57:12.01 u5IDZl2p.net
int weight → static int weight って変えてみたらわかると思う

267:デフォルトの名無しさん
17/10/23 02:00:11.05 Zv+DKPlp.net
>>261
先ほどの画像にstaticを足してみたところ5つ目の配列の要素が表示されたのですが、どこがおかしいんですかね?

268:デフォルトの名無しさん
17/10/23 02:01:39.23 Zv+DKPlp.net
>>262
配列の5つ目と言ったほうが正しいでしょうか

269:デフォルトの名無しさん
17/10/23 02:05:09.61 u5IDZl2p.net
>>262
8って出たならあってるよ
出力してるところでは1番目を指定してるのに5番目が出たってところが大事

270:デフォルトの名無しさん
17/10/23 02:06:00.66 yUlbauj/.net
またアホどもが初心者を混乱させてるwww
問題が糞で最初から台数わかってんだから台数はハードコーディングングでそのまま返せばいいんだよ
なんでsataticにすんだよ阿呆

271:デフォルトの名無しさん
17/10/23 02:07:20.46 Zv+DKPlp.net
>>264
まだ途中の段階ってことですか?結果は8と表示されました。

272:デフォルトの名無しさん
17/10/23 02:07:26.45 u5IDZl2p.net
>>265
ちげぇねぇwww
その発想はなかったわ

273:デフォルトの名無しさん
17/10/23 02:11:15.70 u5IDZl2p.net
>>266
まだまだ途中
そもそも台数を出すのであれば重さを設定する必要はない
static int weight → static int weight=0 って変えて
weight=g → weight++ って変えてみな

274:デフォルトの名無しさん
17/10/23 02:20:42.33 Zv+DKPlp.net
>>268
言われた通りやってみたのですが、コンパイルでエラーが出てしまいました。int countAutomobile()の()内のintを消したのがまずかったでしょうか?
URLリンク(i.imgur.com)

275:デフォルトの名無しさん
17/10/23 02:21:38.59 y4/LHG7i.net
>>260
Automobileの配列使わないと

276:デフォルトの名無しさん
17/10/23 02:23:07.33 T8WMGQAM.net
>>269
yes
int gは消さずにそのまま
後で必要になるからね

277:デフォルトの名無しさん
17/10/23 02:24:18.98 Zv+DKPlp.net
>>271
いけました!まあこれもまだ途中だと思うと…
しっかり5台と表示されました!

278:デフォルトの名無しさん
17/10/23 02:28:32.08 c0Vu/KQR.net
>>272
ok
じゃあ次は
weight++ → if(11<=g) weight++ って変えてみな

279:デフォルトの名無しさん
17/10/23 02:28:43.54 Zv+DKPlp.net
あとはint countHeavy()を作るだけでしょうか?

280:デフォルトの名無しさん
17/10/23 02:29:42.89 y4/LHG7i.net
>>268
せめて static int total = 0 とかにして

281:デフォルトの名無しさん
17/10/23 02:31:28.73 Zv+DKPlp.net
>>273
変えたところ2と出てきました。

282:デフォルトの名無しさん
17/10/23 02:34:41.53 c0Vu/KQR.net
>>275
ひとまず、な
できるだけ手を加えずまずは動き
命名も大事だがまずは動かすことを目的とした
>>276
後はstatic変数を増やして
さっき5台って出たものと今2台って出たモノを組み合わせれば完成

283:デフォルトの名無しさん
17/10/23 02:37:41.34 yUlbauj/.net
キモすぎてもう見てられん・・早く終わってくれ
public class Automobile {
static int TotalMobile = 0;
static int TotalLargeMobile = 0;
Automobile(int weight){
TotalMobile++;
if(weight >= 11){
TotalLargeMobile++;
}
}
public int countAutomobile(){
return TotalMobile;
}
public int countHeavy(){
return TotalLargeMobile;
}
}
public class Highway{
public static void main(String[] args) {
Automobile[] am = new Automobile[5];
int[] weight = {1, 15, 12, 5, 8};
for(int i=0; i<5; i++){
am[i] = new Automobile(weight[i]);
}
System.out.println("自動車総数:" + am[0].countAutomobile() + "台");
System.out.println("うち大型車:" + am[0].countHeavy() + "台");
}
}

284:デフォルトの名無しさん
17/10/23 02:39:17.36 c0Vu/KQR.net
>>278
おーいいタイミング
ありがとな~

285:デフォルトの名無しさん
17/10/23 02:42:53.75 Zv+DKPlp.net
皆さんありがとうございます!おかげでどうにか出来ました!この恩は一生忘れないです!

286:デフォルトの名無しさん
17/10/23 02:45:26.99 c0Vu/KQR.net
>>280
恩は忘れていいのでこの問題の設計はウンコだって事だけ覚えててくれ

287:デフォルトの名無しさん
17/10/23 02:48:37.75 Zv+DKPlp.net
>>281
けれどこんなヽ(・∀・)ノウソコ設計でもみなさんちゃんと理解して完成まで持ってけるなんてほんとにすごいと思います。

288:デフォルトの名無しさん
17/10/23 02:51:09.46 yUlbauj/.net
お前と課題出した奴が馬鹿すぎるだけ

289:デフォルトの名無しさん
17/10/23 02:54:14.67 c0Vu/KQR.net
こちとら仕事でこんなもんじゃないレベルのウンコを相手にしてるからな
本来いらないスキルだからお前は真っ当に育ってくれ

290:デフォルトの名無しさん
17/10/23 03:03:23.53 Zv+DKPlp.net
>>283
反論の余地もないです。これからも精進します…

291:デフォルトの名無しさん
17/10/23 03:04:25.94 Zv+DKPlp.net
>>284
センスないと言われたらそこまでですが、将来IT系で働きたいと考えているのですがどう思いますか?ちな理系です。

292:デフォルトの名無しさん
17/10/23 03:11:54.62 c0Vu/KQR.net
>>286
働くだけなら誰でも行けるよ
スキルは後から付ければいいけどあればあるだけ有利にはなる

293:デフォルトの名無しさん
17/10/23 03:19:06.59 Zv+DKPlp.net
>>287
なるほど、ありがとうごさいます

294:デフォルトの名無しさん
17/10/23 04:09:38.68 H84xHXVr.net
>>282
完成については最初に問題を見た直後に大半のやつはわかっていて、
それだからクソだと言っていたのだ。この程度は誰でも慣れてくると
すぐに頭に浮かぶようになる。というか見た直後にまず違和感を覚える。
それからその違和感の原因はなんだろうと心の中を探り、それから
ソースを二度見して気づく。

295:デフォルトの名無しさん
17/10/23 04:25:40.26 yUlbauj/.net
ネットで色々調べ物してたら大学生とか院生でも仕事でjavaってる奴よりも
遥かに賢いコード書いてる奴が腐るほどいるのに
大学で出る課題がこれでそれに悪戦苦闘してる奴が仕事とか夢見すぎだろ

296:デフォルトの名無しさん
17/10/23 05:17:21.22 c0Vu/KQR.net
初心者が突然理解してたら勉強する意味ないだろ

297:デフォルトの名無しさん
17/10/23 08:14:26.60 uG4wXav9.net
>>290
皆出来るような事は仕事にはならない。

298:デフォルトの名無しさん
17/10/23 12:06:33.05 Lz0ZCAGx.net
初歩中の初歩的なことで申し訳ないんですが、Windows 10上でのJava開発環境の構築は
a. JDKインストール → Eclipseインストール →Pleiades プラグインインストール (一般的?)
b. Pleiades All in One [Eclipse 4.7] Java (Full Edition)
どちらの方法がお勧めでしょうか?最近まで開発にMacを使っていたものでどうすべきか悩んでいます。
後者は最初からよく使うプラグイン類が導入済で便利とは聞きますが...

299:デフォルトの名無しさん
17/10/23 12:18:29.77 QxUDS6F0.net
>>293
本当の初心者とか楽したいなら後者
開発経験あるなら前者で必要なプラグインだけ選出して入れる

300:デフォルトの名無しさん
17/10/23 16:12:01.87 QKnEuIrp.net
必要ないプラグインは外せる
だからプラグインと呼ぶ
学校でのプログラミングの課題はあくまで穴埋め的に特定手法の記憶度を見るものであり
独習時の問題とも業務実習時の課題とも違うものだから出来不出来は気にしないのがよい
ネイティブだろうがプロ翻訳家だろうが「学校の」英語「習熟度ドリル」は満点取れなかったりするものだ

301:デフォルトの名無しさん
17/10/23 16:23:54.92 t7W7X0PH.net
あー。帰国子女で日本語片�


302:セのやつがなぜか満点取れないと。



303:デフォルトの名無しさん
17/10/23 17:06:17.83 8jJ9zkLD.net
日本人が全員国語満点じゃないのと一緒

304:デフォルトの名無しさん
17/10/23 18:36:46.88 NKAmnKE1.net
この課題はインスタンス変数とクラス変数の違いを知るためのものだから
こういう間違えをして調べるのを期待してるんだろ

305:デフォルトの名無しさん
17/10/23 19:16:35.52 YIhcz2Te.net
ま、しかし、もうちょっとましな課題作れないもんだろうか。
疲れてたのかな。

306:デフォルトの名無しさん
17/10/23 19:31:38.35 Pe+98mGG.net
やっと流れに追いついた
>>201のは、設計がどうのという以前に
キチガイの所業
あるいはお前らの脳を疲弊させるための実験
お前らマトモにとりあってたらダメだぞ

307:デフォルトの名無しさん
17/10/23 19:40:11.90 YIhcz2Te.net
あー。そうか。スレを活性化させるために投下された燃料だったのか。

308:デフォルトの名無しさん
17/10/23 20:12:20.31 y4/LHG7i.net
一般的にこういう課題ってam[0]の箇所を
自分なりに修正して提出したら減点対象になるの?
もしそうなら大学レベルの教育方法ではないよね

309:デフォルトの名無しさん
17/10/23 20:22:05.75 YIhcz2Te.net
わからんな。先生の気分次第なんじゃないか?

310:デフォルトの名無しさん
17/10/24 00:45:00.97 MROfWTvM.net
配列ってホッチキスで止められた書類みたいなもんだから最近嫌いだわ

311:デフォルトの名無しさん
17/10/24 01:07:41.88 37YlkQhq.net
List使えばいいじゃん。
これにて一件落着

312:デフォルトの名無しさん
17/10/24 02:48:33.95 UVHXr0A6.net
[[[[[[[[[

313:デフォルトの名無しさん
17/10/24 23:49:49.40 ++BilNP+.net
>>305
要素一つ一つaddする地獄もなくなったし、これからはListの時代

314:デフォルトの名無しさん
17/10/25 06:04:04.53 ZfgKJLFw.net
質問です。
ファイル圧縮処理を行う下記のコードで、
URLリンク(ideone.com)
close処理をfinally文ではなくcatch文の中に記述されているのですが、
問題無いのでしょうか?

315:デフォルトの名無しさん
17/10/25 07:05:25.56 KHRIvL/L.net
>>308
処等後にプロセスがすぐに死ぬなら
閉じる必要もないでしょ
flushだけでいい
キャッチはまるまるいらない

316:デフォルトの名無しさん
17/10/25 09:26:51.00 Q7ime0JM.net
closeとセットで作るようにしないといつかclose忘れ起こすと思うけど

317:デフォルトの名無しさん
17/10/25 09:39:29.54 nJqgcJg9.net
try-with-resources でやるのが良い
URLリンク(www.task-notes.com)

318:デフォルトの名無しさん
17/10/25 09:44:49.84 ZmgYAolO.net
まあ実際的にも教育的にも「closeなんてしなくていいよ」ということはないな
自動でcloseしてくれる普段使い用コンビニエスメソッドが本家でもあるべきではあるが

319:デフォルトの名無しさん
17/10/25 10:10:23.11 QmdhvvJR.net
Javaってc#のusingみたいな構文ないんだっけ?

320:デフォルトの名無しさん
17/10/25 11:01:31.98 lQVA76dW.net
>>312,313
直前のレスくらい読もうぜ

321:デフォルトの名無しさん
17/10/25 18:36:25.22 9pgp/kzo.net
プログラミング完全初心者でこれから始めようと思っているんですが
何を何からやれば良いでしょうか
お勧めの本やサイト等もご教授ねがいます
OSはLinux Mintでとりあえずeclipseというのとopen java8というのを入れました

322:デフォルトの名無しさん
17/10/25 18:38:25.23 0GYD+24d.net
>>315
プログラミングで何をやりたいの?
学ぶ目的は?

323:デフォルトの名無しさん
17/10/25 18:44:11.98 MjxzUPyN.net
C#と座間林が話題になってたからそっちのほうがいいのかも

324:デフォルトの名無しさん
17/10/25 18:54:09.43 ZmgYAolO.net
>>315
>何を何からやれば良いでしょうか



325:>お勧めの本やサイト等もご教授ねがいます 全部おんぶに抱っことかアフィかッ! やんわりマジレスすると最初の最初はJavaでないほうがいいよ これはたとえ小難しくても業務でカッチリ書けるという面が重宝された言語だから、個人がいきなり趣味でやるとしんどい ひょっとしたらアンドロイドアプリが頭にあるかもしれないけど、もしゲームならUnityがいいよ



326:デフォルトの名無しさん
17/10/25 19:02:06.72 ZmgYAolO.net
環境見てなかったwwww
もしリッチなマシンがLinuxマシンしかなく、それでもGUIアプリを世に出したいのだとしたらJava...しかないかなあ
アンドロイドアプリをLinuxで作りたいなら実質Java/Kotlinしかないよ
ただ、あなたの中では知名度ないかもしれないけど Python をやるという手もあるよ
よかったら検討してくれ

327:デフォルトの名無しさん
17/10/25 19:08:59.03 9pgp/kzo.net
ありがとうございます
webアプリ作成、Androidアプリ作成、機械学習をやってみたいと考えております
調べていてpythonというのも候補には挙がったんですが
javaをやると基礎がしっかりつくと聞いてjavaにしてみようかなと思いました
学生で新しいパソコンを買う余裕がなく、お下がりのにlinuxを入れて使っています

328:デフォルトの名無しさん
17/10/25 19:37:30.37 9pgp/kzo.net
すいませんちょっと嘘つきました
お金がないよりも、勉強の邪魔になるからって買わせて貰えない
の方が正しかったです

329:デフォルトの名無しさん
17/10/25 19:47:59.66 ZmgYAolO.net
学生さんならJavaなんてやるのは勿体ないよ
あとLinuxでのアンドロイドアプリ作成はメモリ4GB必要だから気をつけてね

330:307
17/10/25 20:18:00.51 ZfgKJLFw.net
何件かレスを頂き、ありがとうございます。
仕事でJavaを使う際、catch文の中にclose処理を入れるのは有りなんでしょうか?
引き続きで恐縮ですが、皆様の見解をよろしくお願いします。

331:デフォルトの名無しさん
17/10/25 20:28:08.31 lZypkF1g.net
>>323
規約と契約による
あなたの会社がしても良いといえばどっかのJavaのエラい人がなんと言おうとあなたの会社では正しいし
Javaのエラい人が顔をしかめネットで炎上し掲示板で荒らし扱いされる手法であっても上司がそのようにしてくれと言えばあなたはその書き方をすべきである

332:デフォルトの名無しさん
17/10/25 20:30:59.72 zzC6q5u4.net
>>318
え?Javaってそんなに難しいか?
まあでも元の質問してる人はOSがLinuxなので多分何も知らない初心者じゃないと思うぞ。
多分他の言語はわかるんじゃないか?

333:デフォルトの名無しさん
17/10/25 20:36:12.40 zzC6q5u4.net
あ、ごめん。リロード忘れてた。なんでLinuxか書いてあったな。
まあでもLinux入れてまで使おうとするやつはもはや初心者ではないと思うが。

334:デフォルトの名無しさん
17/10/25 20:40:19.16 lZypkF1g.net
>>325
まーなんだ、「小難しい」のは間違いないな
1行実行するために10行書くような言語だ
IDEがあるとはいえ学生さんにはもっと前のめりな言語で遊んでほしいところ
あと君が何歳かは知らないけど今のデスクトップ用Linuxのインストールと使用はスマホの設定変更くらいの難易度だぞ

335:デフォルトの名無しさん
17/10/25 20:56:31.41 zzC6q5u4.net
>>327
いや、今時のLinuxはインストール始めれば後はだいたいマウスポチポチ押してればなんとかなる事は知ってる。
しかしPC初心者は普通はLinuxの存在すら知らない。あるいはWindowsの上で動くソフトだと誤解していたりする。
そういう誤解がないということはそれなりにわかっていると考えて良かろう。

336:デフォルトの名無しさん
17/10/25 21:17:12.51 QmdhvvJR.net
>>328
いまはWSLあるしなー

337:デフォルトの名無しさん
17/10/25 21:45:19.10 /TUaBfz7.net
314です
泥アプリの作成にもRAM4GB必要だそうなので何とかしてもうちょっと新しいPC手に入れて出直してきます
ありがとうございました

338:デフォルトの名無しさん
17/10/25 22:42:58.25 RILf1WwA.net
泥アプリ開発ならvsでxamarinとかブラウザでmonacaみたいな選択肢もあるし
一旦言語選択から考え直してみたら

339:スッキリ厨
17/10/25 23:26:15.55 M2TcZ1xf.net
>>315-322
まずこの本で、オブジェクト指向を学ぶ
スッキリわかる Java入門 第2版、2014
その後、この2冊をこの順に読む
たのしいRuby 第5版、2016
みんなのPython 第4版、2017
ここまでが基礎で、実際にアプリを作れるようになるには、数年掛かる。
アルゴリズム・OS・環境構築運用で、少なくとも数年は掛かる

340:デフォルトの名無しさん
17/10/26 00:28:50.10 qkSUMYmO.net
クラス名からインスタンスを生成して、
そのインスタンスが保持するフィールドにダミーの値をセットする機能を作りたいのですが、
privateなメンバ変数にも値をセットすることはリフレクションで出来ますか?
class Entity{
@getter @setter
private Long age;
}
があったときnew Entity()のインスタンスとその中のageに何か数値が入っている状態にしたいです

341:デフォルトの名無しさん
17/10/26 00:42:22.95 qkSUMYmO.net
自己解決した ありがとう

342:デフォルトの名無しさん
17/10/26 01:29:13.40 N/UTfD1S.net
>>315
Progate行ってこい
やれそうだと思ったらスッキリ入門編

343:デフォルトの名無しさん
17/10/26 09:58:09.89 /KWiwsxI.net
>>334
どうやって解決したかを書け

344:307
17/10/26 20:11:51.32 DirVuC/B.net
>>324
分かりました。ありがとうございました。

345:デフォルトの名無しさん
17/10/29 00:13:25.42 jaLMlrXm.net
H2 Databaseに接続するプログラムをコンパイルし実行したいのですが、
クラスパスを何て書けばいいか調べても分かりません。
どなたか教えて頂けませんでしょうか?

346:デフォルトの名無しさん
17/10/29 11:34:08.81 oFRxn/Jf.net
>>338
ここにいきなりこう書いてあるが?
URLリンク(www.h2database.com)
Add the h2*.jar to the classpath (H2 does not have any dependencies)

347:337
17/10/29 12:46:42.34 jaLMlrXm.net
>>339
レスありがとうございます。
具体的には、javac -cp h2*.jar Main.java (Main.javaはクラス名)と入力し、
java -cp h2*.jar Main と入力すればいいんですか?

348:デフォルトの名無しさん
17/10/29 13:08:40.31 cRJ4aa/x.net
今時クラスパスを手動で解決するとは
mavenとかgradle使え

349:デフォルトの名無しさん
17/10/29 13:18:28.37 oFRxn/Jf.net
>>340
いや、h2*.jar が入っているディレクトリごと指定しないと普通はダメなのでは?
カレントディレクトリにあるならそれでも良いのかも知れんが。

350:337
17/10/29 15:33:37.93 jaLMlrXm.net
コンパイルは通るのですが、実行できませんでした…。
ClassNotFoundExceptionとSQLExceptionが発生してしまいます。
どなたかヒントを下さい。
ソースコードは以下です。
URLリンク(ideone.com)

351:337
17/10/29 15:35:28.67 jaLMlrXm.net
>>341
すいません、今回はコマンドプロンプトで書かせて下さい。

352:デフォルトの名無しさん
17/10/29 15:57:54.47 0Uo9CHxR.net
>>343
javacで取り込むわけではないので
javaで実行時にもCLASSPATHを通して見つかるようにしてやる必要がある

353:デフォルトの名無しさん
17/10/29 16:23:24.35 oFRxn/Jf.net
>>343
コンパイル時と同じ classpath にしてもダメなの?

354:337
17/10/29 16:26:53.49 jaLMlrXm.net
>>345
はい。それは分かります。javacと同じクラスパスをjava実行時にも付けて


355:います。 実は根本的に、h2*.jarファイルがどこにあるのかよく分かってない気もするんですが、 H2 DatabaseのホームページからDL出来るh2-setup-2017-06-10.exeファイルの 中にあるんですよね?



356:337
17/10/29 16:32:10.42 jaLMlrXm.net
>>346
はい。
なのでjarファイルの位置指定がそもそも間違ってるんじゃないかと思い始めて
いるんですが…。.jarという拡張子のファイルが見当たらないんです。

357:デフォルトの名無しさん
17/10/29 17:11:13.08 0Uo9CHxR.net
>>347
知らないけど
それは自己解凍ファイルなのかな
検索して実際のjarファイルを探してみればいい
コンパイル時はインタフェースさえわかればいいから
その実装のclassには通ってない可能性がある
ちゃんと何してるかから理解した方がいいと思うぞ

358:337
17/10/29 20:16:42.57 jaLMlrXm.net
>>349
あれからいろいろ調べて、Cドライブを検索した結果、h2*.jarファイルが
見つかりました!やはり.exeファイル内には無かったようです。
クラスパスを更新したら実行(javaコマンド)も無事成功しました。
回答して頂いた方々、ありがとうございました。

359:デフォルトの名無しさん
17/10/29 22:13:14.03 ZPOHC70p.net
コンストラクタで引数チェックをし、例外を投げることは設計上良くないのでしょうか?例えば
class hoge {
private final int i;
hoge(int i) {
if(i >= 0)
this.i = i;
else
throw new IllegalArgumentException
}
}
フィールドiに負の数を持たせたくない場合このようにするのが自然かなと考えたのですがいかがでしょうか?

360:デフォルトの名無しさん
17/10/29 23:14:29.92 ILWFk/IO.net
>>351
クソだと思う
値をチェックする責務は専用のクラスに任せて
それ以外のクラスに持ち込むべきじゃない

361:デフォルトの名無しさん
17/10/30 00:07:29.30 RKfFK5VC.net
>>351
別にいいと思うぞ
作ってからIsValidで確認するか
そもそも作らせないようにするかの違い
どっちのやり方も良し悪しがある

362:デフォルトの名無しさん
17/10/30 00:34:24.41 EdHEI0+x.net
空のオブジェクト作って後でsetter使って入れるのも微妙だしコンストラクタで値チェックとかしていいと思うぞ
俺ならPattern.compileメソッドみたいに自分自身を返すstaticメソッドで価チェックする

363:デフォルトの名無しさん
17/10/30 00:44:57.12 sRaOGV/D.net
>>351
有り得ない状態で存在できるより良い

364:デフォルトの名無しさん
17/10/30 00:45:02.55 eddodMAs.net
>>352
値チェック専用のクラスを作る場合どのように作るべきでしょうか
値チェッククラスでOKだった数値(正の数)をどのようにhogeのコンストラクタに渡すのかいまいち正しいイメージがつかめません
値チェッククラスのインスタンスをhogeの内部に持たせる(フィールドとコンストラクタの引数を変更する)のが良いのでしょうか?
とんちんかんな質問かもしれませんがよければお答えいただけると嬉しいです
>>353
なるほど
isValidメソッドであとからチェックするというのは思い付きませんでした

365:デフォルトの名無しさん
17/10/30 01:04:31.28 JH+/yPWP.net
>>351
>コンストラクタで引数チェックをし、例外を投げる
問題ない
バグでおかしくなるのが一番の問題

366:デフォルトの名無しさん
17/10/30 01:12:17.89 RKfFK5VC.net
Hibernate Validatorみたいなバリデーションフレームワークは一般的に作ってから確認する方式
そもそも作らせないようにするのは”always valid”と呼ばれてる
“always valid model”とかで検索すれば参考になるサイトが出てくる
長所短所を理解して使い分ける


次ページ
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch