1 名前:デフォルトの名無しさん [2016/06/17(金) 08:16:55.52 ID:442rGUo0.net] プログラミング言語Javaに関する質問スレです。 JavaScript, Ajaxの質問は、ここでは受け付けていません。 Web製作管理 pc11.2ch.net/hp/ Webプログラミング pc11.2ch.net/php/ をご利用下さい。 よくある質問 ・「コマンドまたはファイル名が違います」 「'javac' は、内部コマンドまたは外部コマンド、 操作可能なプログラムまたはバッチ ファイルとして認識されていません。」 「Exception in thread "main" java.lang.NoClassDefFoundError: 」 (p)ttp://www.wikiroom.com/java/?path,classpath ・「\12288 は不正な文字です。」 文字リテラル以外で全角スペースは使えません。半角スペースに。 ・その他の質問→「APIのjavadoc見ろ」 ・String に == は使うな。equals() を使え。※ 質問時の心得 ・コンパイルエラーか実行時エラーか、エラーではないが意図しない動作なのかはっきりしろ。あとエラーメッセージちゃんと読め。 ・前提条件としてOS、開発環境、バージョン、使用フレームワーク等を明記。 前スレ ★★Java質問・相談スレッド177★★©2ch.net echo.2ch.net/test/read.cgi/tech/1458033246/
320 名前:デフォルトの名無しさん mailto:sage [2016/07/30(土) 23:43:22.20 ID:yqk0CHQR.net] すみません、行き詰ってしまったので教えてもらえないでしょうか。 EL式の <sql:query var="result" dataSource="${db}"> で、resultに抽出結果を格納しました。 この抽出結果にはgroupnoという列名があります。 <c:forEach>で各行に対して処理を行う際に、 groupno項目を使い判定をしたいのですが、 実行すると<c:out のところでエラーしてします。 <c:forEach var="row" items="${result.rowsByIndex}"> <tr> <c:out value="${row.groupno}"/> エラー原因「java.lang.NumberFormatException: For input string: "groupno"」 ほかのサイトでは、"${row.groupno}"で値を取得できると書いてあったのですが、 取得の方法が誤っているのでしょうか。
321 名前:デフォルトの名無しさん [2016/07/30(土) 23:58:51.48 ID:3EsQsPy/.net] クラスAを継承したクラスB・CがありクラスAはクラスX型のフィールドとそれに関連するメソッドを持ちます クラスB・Cでは実際にはクラスXではなくそれを継承したクラスY・Zのインスタンスをそのフィールドに保持したいです するとクラスX型としてフィールドを宣言しているのでクラスY・Zで追加した機能が使えません 1.クラスB・CでそれぞれクラスY・Z型のフィールドを宣言 2.クラスB・Cでダウンキャストして扱う 3.クラスAで<T extends X>としてT型のフィールドを宣言 この場合は1が正解ですか? 3の場合もゲッターで防御的コピーをするため結局クラスB・Cで実装する必要があり共通部分がクラスAで完結できません
322 名前:デフォルトの名無しさん mailto:sage [2016/07/31(日) 00:21:27.19 ID:VGHB1MRw.net] >>319 abstract class A { protected abstract X getX(); } class B extends A { private X x; @Override public X getX() { return x; } } これでいいよ もしくは共通化のための継承なんて時代錯誤なことはやめて包含
323 名前:デフォルトの名無しさん [2016/07/31(日) 00:22:51.88 ID:9Z6DmbVF.net] 馬鹿みたいだなw
324 名前:デフォルトの名無しさん mailto:sage [2016/07/31(日) 00:27:42.27 ID:VGHB1MRw.net] >>320 すまん間違えた class B extends A { private Y y; @Override protected X getX() { return y; } }
325 名前:デフォルトの名無しさん [2016/07/31(日) 00:30:33.15 ID:9Z6DmbVF.net] ほら次w
326 名前:デフォルトの名無しさん mailto:sage [2016/07/31(日) 00:37:46.32 ID:ml+ojx40.net] ありがとう
327 名前:デフォルトの名無しさん [2016/07/31(日) 00:38:15.62 ID:9Z6DmbVF.net] 糞だなw
328 名前:デフォルトの名無しさん mailto:sage [2016/07/31(日) 02:48:57.99 ID:tAwv2Thr.net] >>318 java.lang.NumberFormatExceptionでググれ
329 名前:デフォルトの名無しさん mailto:sage [2016/07/31(日) 09:37:37.39 ID:pgUfjJaM.net] 「java.lang.NumberFormatException: For input string」 についても調べています。 数値形式でない文字列を変換しようとすると このエラーが発生するみたいなんですが、 <c:out value="${row.groupno}"/>では 文字を出力しようとしているだけで、 型変換を行っていません。 実はこのc:outで型変換を行っていたりするのでしょうか。
330 名前:デフォルトの名無しさん mailto:sage [2016/07/31(日) 14:49:25.01 ID:zRCa/wW2.net] >>327 groupnoが数値型で定義されていてDBには文字列が入ってるということでは無い?
331 名前:デフォルトの名無しさん mailto:sage [2016/07/31(日) 23:10:07.40 ID:eOIO+/Cg.net] Cで作られたソースをJavaに移植しようとしてます 対象は、ファイルのヘッダ情報を読み込む処理なのですが、Cでは以下のような感じで fread()により構造体に読み込んでます struct HEADTAG { unsigned char a[4]; unsigned int b; }; のようにヘッダ情報に揃った構造体を作り、 struct HEAD_TAG head; fread(head, sizeof(HEADTAG), 1, fp); のようにしてヘッダ情報を読み込んでます その処理をJavaに書き直しており、今はヘッダ情報を1バイトずつ読んでいくメソッドを 作ったのですが、処理したいファイルは複数種類あり、そのたびにメソッドを バイト数とか数えながらいちいち対応させるのが大変なので、改善したいです readObjectを使ってみたのですが、fwrite()されたものをJavaのクラスにはめこむのは 無理そうです 改善できる手法はありますか? 教えてください
332 名前:デフォルトの名無しさん mailto:sage [2016/07/31(日) 23:17:38.77 ID:IDpOSBbN.net] クラス間の変数の受け渡し方法はわかるんですがクラス内のメソッドの中の変数を別のクラスのメソッドへと渡す方法がわかりません...
333 名前:デフォルトの名無しさん [2016/07/31(日) 23:42:57.33 ID:dAJgLCTA.net] >>330 はあ? カプセル化とデータ隠蔽したくなければ、メンバ変数にしろよw
334 名前:デフォルトの名無しさん mailto:sage [2016/08/01(月) 00:22:28.90 ID:HR3l0GRU.net] >>329 ない DataInputStreamやByteBuffer使って地道に読め
335 名前:デフォルトの名無しさん mailto:sage [2016/08/01(月) 10:33:20.25 ID:3q+qs35i.net] ファイルが10種類超えるようならワザも必要だろうけど そうでないなら単純に並べてオワリでいい そんなのよりバイト境界のアラインメント・パディングのほうを心配すべき
336 名前:デフォルトの名無しさん mailto:sage [2016/08/01(月) 10:36:09.73 ID:BivcssXD.net] Webアプリ内でのアクセスカウントをしていたのですが、 メソッドの引数内でのインクリメントってダメなんですか? カウントアップされる。 count++; session.setAttribute("count", count); カウントアップされない。 session.setAttribute("count", count++);
337 名前:デフォルトの名無しさん mailto:sage [2016/08/01(月) 10:51:40.34 ID:3q+qs35i.net] 関数呼び出し後にカウントアップされるじゃろ ++ を前置するか後置するかで意味が変わる必須知識
338 名前:デフォルトの名無しさん mailto:sage [2016/08/01(月) 11:25:08.28 ID:BivcssXD.net] あーたしかに。 //この時点でcount=0 session.setAttribute("count", count++); system.out.println(count); //ここで1になる。 基礎的なことでした。ありがとうございました。
339 名前:デフォルトの名無しさん [2016/08/01(月) 15:22:24.68 ID:J06mS2KP.net] >>332 そういやそれ俺も10年以上前に思ったんだが、リフレクション使ったりして自動でやってくれるライブラリとかないのかね? あると楽だよな。
340 名前:デフォルトの名無しさん mailto:sage [2016/08/01(月) 15:30:18.95 ID:wzv40BV/.net] >>337 リフレクションでメンバの宣言順を知る方法はないから、 全てのメンバにアノテーションでオフセットを明示的に付けとかなきゃいけない 結果、ストリームやチャネルから順番に読んだほうが楽
341 名前:デフォルトの名無しさん mailto:sage [2016/08/01(月) 15:48:35.03 ID:MZRkq7W6.net] >>332 >>337 俺もこれ思った てか今でも思ってる 何かいい方法ないかなあ 実際、ヘッダは構造体をfwrite()したバイナリ、 みたいな形式のファイルってまだまだ多いよな wavフォーマットとかだとAPIあるけど、そうでないものだと、 Cなら構造体にfread()すりゃ一発なのに…と思いつつ バイト単位に読んじゃ処理、を繰り返してる 実際のとこ、そういう処理書くときってバグが出がちだし、 Cでfread()するプログラムもデバッグで併用してるわ
342 名前:デフォルトの名無しさん mailto:sage [2016/08/01(月) 16:01:28.61 ID:JXVULl1x.net] バイトオーダーが違っていたりunsignedをどうするかで揉めたりしたな ただ読むだけでも罠があるんで注意
343 名前:デフォルトの名無しさん mailto:sage [2016/08/01(月) 16:13:03.10 ID:cKjLGiE2.net] Cでも複数OS対応やるとアーキテクチャやアラインメントの差で fread()の方が面倒だけどね 処理系毎にディレクティブで調整しないといけないし 何だかんだでバイトストリーム処理に落ち着く
344 名前:デフォルトの名無しさん mailto:sage [2016/08/01(月) 17:08:33.60 ID:NiACz+iq.net] ワンリトルインディアン、ツービッグインディアン
345 名前:デフォルトの名無しさん [2016/08/01(月) 19:21:15.41 ID:r7TDkART.net] >>338 あ、そーか。順序ね。 やっぱ設定読んでその通りに読むようなの書かないと汎用性のあるやつは作れんか。
346 名前:デフォルトの名無しさん [2016/08/01(月) 19:25:38.84 ID:r7TDkART.net] Perlのunpackのようなやつがあれば少しは楽だなと思ったが、なんとなくその程度は誰かが作ってそうな気もするな。
347 名前:デフォルトの名無しさん mailto:sage [2016/08/01(月) 19:59:38.26 ID:+SXwg/r8.net] >>338 ソースを直接読み込んでシリアライズルーチンを生成するようなツールがあってもいいかも
348 名前:デフォルトの名無しさん [2016/08/01(月) 22:52:44.49 ID:kL4mnthq.net] ぐぐってもさっぱりだったので、どなたか知恵を貸して欲しいです。 このコードを実行した時に Process process = Runtime.getRuntime().exec(
349 名前:デフォルトの名無しさん [2016/08/01(月) 22:55:55.34 ID:n+rqaJ1Q.net] ぐぐってもさっぱりだったので、どなたか知恵を貸して欲しいです。 このコードを実行した時に Process process = Runtime.getRuntime().exec(command); return process.waitFor(); このようなエラーが出たのですが、 java.lang.IllegalThreadStateException: process has not exited at java.lang.ProcessImpl.exitValue(Unknown Source) at java.lang.ProcessImpl.waitFor(Unknown Source) waitForの中でIllegalThreadStateException: process has not exitedが出るのはどういう場合でしょうか。 commmandはあるEXEに引数を渡しています。
350 名前:デフォルトの名無しさん mailto:sage [2016/08/02(火) 06:22:55.16 ID:k09SlNii.net] 「java.lang.illegalthreadstateexception process has not exited」 「java waitfor」で検索!
351 名前:デフォルトの名無しさん mailto:sage [2016/08/02(火) 09:22:55.07 ID:GqnDdCx0.net] >>337 あるけどライブラリ名忘れた。 オレオレフォーマットのバイナリファイル読むときに便利そうだと思った
352 名前:デフォルトの名無しさん mailto:sage [2016/08/02(火) 09:30:46.79 ID:W6DOqtYT.net] もうしわけありません、 javaを使っているサイトを教えてもらえませんですか。 自分のブラウザが機能しているか知りたいもので。
353 名前:デフォルトの名無しさん mailto:sage [2016/08/02(火) 09:42:56.72 ID:k09SlNii.net] paiza.IO, codepad, Ideone とか?
354 名前:デフォルトの名無しさん mailto:sage [2016/08/02(火) 09:45:04.58 ID:qgieWvrw.net] >>350 いたち
355 名前:デフォルトの名無しさん mailto:sage [2016/08/02(火) 09:47:30.99 ID:ZJ7USS9Y.net] >>350 ブラウザが機能しているのを確認するのに、そのサイトがJavaでできているかどうかは関係ないと思うが… Javaアプレットが動作するかを見たいということ?
356 名前:348 mailto:sage [2016/08/02(火) 10:14:47.55 ID:W6DOqtYT.net] >>353 Javaランタイムをインストールしたのですが、それがブラウザで機能しているかを知りたいのです。 アプレットのあるサイトならちょうどいいかと思っています。 通知領域にjavaのアイコンがでてくるのがありますよね。あれです。
357 名前:デフォルトの名無しさん mailto:sage [2016/08/02(火) 10:35:38.02 ID:3bNJYHPI.net] >>354 javaアプレット ゲーム とかでググれば往年のサイトが沢山出てくるだろ っていうか今更Javaアプレットなんか使うの? 世間じゃ完全にセキュリティホール扱いで最近のブラウザでは起動すら困難なのに
358 名前:デフォルトの名無しさん mailto:sage [2016/08/02(火) 10:38:45.77 ID:1+WRG/xH.net] Java アプレットと Flash は死んだ技術と思っていい
359 名前:348 mailto:sage [2016/08/02(火) 11:06:12.58 ID:W6DOqtYT.net] つまり、ブラウザに関する限りは、 javaはアンインストールしても生活できるということですね。
360 名前:デフォルトの名無しさん mailto:sage [2016/08/02(火) 11:16:31.38 ID:Xrtvt7f9.net] 当然
361 名前:デフォルトの名無しさん mailto:sage [2016/08/02(火) 11:29:16.14 ID:vsJc3M85.net] ✕ブラウザに関する限りは ○一般的なPCに関する限りは Javaなんかサーバーと開発者端末にだけ入ってりゃいいよ Javaアプレットは死んだが、一時期日の目を見ただけマシだ その他のクライアントJavaは始まったことすらない
362 名前:デフォルトの名無しさん [2016/08/02(火) 12:29:33.60 ID:EgQKcOSy.net] androidの根幹ではあるけどな。w ユーザーは意識する必要なし。
363 名前:デフォルトの名無しさん mailto:sage [2016/08/02(火) 19:31:08.61 ID:NfCSYQH6.net] Javaアプリはマルチプラットフォーム対応が必要なソフトにとっては 今でも有効な選択肢のひとつだけどな 現に俺その仕事今やってるし
364 名前:デフォルトの名無しさん [2016/08/02(火) 20:00:29.84 ID:vpqNpIG1.net] 最近はjsが主流な気がする デスクトップ版jsあるし
365 名前:デフォルトの名無しさん [2016/08/02(火) 20:01:43.14 ID:vpqNpIG1.net] VSCodeみたいなアプリ あれ確かJSだったよな
366 名前:デフォルトの名無しさん mailto:sage [2016/08/02(火) 20:07:23.03 ID:NfCSYQH6.net] JSは言語としてヤバ過ぎるからなあw
367 名前:デフォルトの名無しさん [2016/08/02(火) 20:20:37.18 ID:vpqNpIG1.net] TypeScript使えばまあ…
368 名前:デフォルトの名無しさん [2016/08/02(火) 20:21:47.45 ID:vpqNpIG1.net] でも標準APIが弱すぎるんだよな C#とかjavaから入った俺はかなり辛い
369 名前:デフォルトの名無しさん mailto:sage [2016/08/02(火) 23:14:28.54 ID:qyMvpHKg.net] すみません、教えてください javaクラスでselect文を実行するコードを記述したのですが 変数に代入するときにエラーが発生してします。 ResultSet rs = statement.executeQuery(sql); while (rs.next()) { if (first_flg = true) { taskname = rs.getString("TASKNAME"); grouping_id = rs.getString("GROUPING_ID"); first_flg = false; } 「rs.getString("GROUPING_ID")」でウォッチすると 「iwhile (rs.next()) {」を通過時、値が正しく設定され、 その次の「tif (first_flg = true)」を 通過すると一瞬取得中となりその後 「Exception occurred in target VM: No data found 」と なってしまいます。 1度正しく取得できているのに、なぜIF文を通過しただけで No data foundとなってしまうのかわかりません。 ちなみに、実行したSqlです。 SQL自体は正しく動くことを確認済みです。 原因はなんでしょうか。 SELECT プロジェクトcd,LEFT(ID,10) AS GROUPING_ID,TASKNAME FROM KINMUHYO WHERE LEFT(ID,3) = '10.' GROUP BY プロジェクトcd,LEFT(ID,10),TASKNAME
370 名前:デフォルトの名無しさん mailto:sage [2016/08/02(火) 23:21:23.95 ID:I7kj9PJB.net] first_flg == true
371 名前:デフォルトの名無しさん mailto:sage [2016/08/03(水) 01:08:42.82 ID:Ilb64ZBg.net] byteを連結してStringにする方法を知りたいです あるファイルabc.txtですが、内容は16進表示で以下のように書かれています 41 42 43 20 44 45 46 ※「cat abc.txt」とすると「ABC DEF」と表示されるファイル、ということです これを以下の様にして、bufに内容を読み込むことはできました FileInputStream fs = new FileInputStream("abc.txt"); BufferedInputStream bs = new BufferedInputStream(fs); byte[] buf = new byte[5]; int len = bs.read(buf); この後、buf[0]とbuf[1]とbuf[2]を繋げて作った文字列が「ABC」かどうかを 調べたいのですが、実際に比較する処理、if (○○.equals("ABC")){...}をするまでに どうしたらよいか、教えてください
372 名前:デフォルトの名無しさん mailto:sage [2016/08/03(水) 02:45:14.84 ID:XimUxRSs.net] new String(buf, 0, 3, Charset.forName("UTF-8")); かな
373 名前:デフォルトの名無しさん mailto:sage [2016/08/03(水) 07:49:57.31 ID:Bwec/Fiq.net] >>368 ありがとうございました。 while文の中で他にも比較を行っている個所があり、 「first_flg == true」と変更した後でも、 「if (grouping_id != rs.getString(
374 名前:デフォルトの名無しさん mailto:sage [2016/08/03(水) 07:50:40.27 ID:Bwec/Fiq.net] すみません、途中で切れてしまいました。 「first_flg == true」と変更した後でも、 「if (grouping_id != rs.getString("GROUPING_ID")) {」 に入ると「rs.getString("GROUPING_ID")」が 「Exception occurred in target VM: No data found 」 となります。 rs.getStringで一度値を取得するとなくなるということはないと 思うのですが、これも比較の仕方が誤っているのでしょうか。 while (rs.next()) { if (first_flg == true) { taskname = rs.getString("TASKNAME"); grouping_id = rs.getString("GROUPING_ID"); first_flg = false; if (grouping_id != rs.getString("GROUPING_ID")) { 略 } }
375 名前:デフォルトの名無しさん mailto:sage [2016/08/03(水) 08:08:21.64 ID:Ilb64ZBg.net] >>370 ありがとうございます 試してみます その後また調べ、StringやCharset.forNameはキーワードっぽいものとしては みつけたのですが、使い方がよくピンときておりませんでした 具体的な記述を示していただき、ありがとうございます
376 名前:デフォルトの名無しさん mailto:sage [2016/08/03(水) 14:30:01.95 ID:5TJZrkhI.net] 糞コードを書いてみた。構造体をファイルに書き出すC++ https://ideone.com/CidZY4 そのファイルから構造体をfreadっぽく読み込んだJava https://ideone.com/Xy1fef 構造体クラスにHEADTAGと同じサイズのバッファを設けてそこに バイト配列として一気に読み込んで、内部でメンバごとに切り分ける。 unsignedとかバイトオーダーとかの変換がやっぱり面倒だな。
377 名前:デフォルトの名無しさん mailto:sage [2016/08/03(水) 17:46:09.91 ID:dW70LiFf.net] nio使うとバイトオーダーはやってくれる https://ideo
378 名前:ne.com/UxSct1 あとnull終端調べないとjavaのStringは\0ごと取り込んでlength==4になるので注意 [] [ここ壊れてます]
379 名前:デフォルトの名無しさん mailto:sage [2016/08/03(水) 18:28:53.55 ID:35QlWMIm.net] unkて何かと思ったら 最後の0でunkoって読ませているのかw
380 名前:デフォルトの名無しさん [2016/08/03(水) 20:21:53.92 ID:a4bdwQbs.net] >>372 問題ないように思えるけど rs.getString("GROUPING_ID") これの1回目の取得が問題ないようなら String groupId = rs.getString("GROUPING_ID"); if (grouping_id.equals(groupId)) { ... } こんな感じで変数に入れて1回しか呼ばれないようしてみるとか これで問題なければ行の値は1回しか読み出しちゃいけませんってことに なるだろうけど、そんなことあるんかね
381 名前:デフォルトの名無しさん mailto:sage [2016/08/04(木) 01:54:28.73 ID:CYacPLX8.net] >>372 Exception occurred in target VM: No data found この後にエラーの詳細は出てないだろうか…。
382 名前:デフォルトの名無しさん mailto:sage [2016/08/04(木) 19:28:30.48 ID:2hvSEb5P.net] i.imgur.com/rczj4.jpg
383 名前:デフォルトの名無しさん mailto:sage [2016/08/04(木) 20:52:43.87 ID:mg6fDm+D.net] >>377 、376 お返事ありがとうございました >>372 です。 色々調べたところ、ACCESSをデータベースとしている場合、同一 ループ内でのgetStringはできないという情報がありました、、、 まさかそんな制約があるとは思いませんでした。 なんとか変数のやりくりで頑張ってみます ありがとうございました。
384 名前:デフォルトの名無しさん mailto:sage [2016/08/04(木) 22:53:24.94 ID:8F+chxLR.net] Java1.5のloggingでpropertiesファイル読み込ませた後に、ファイルの出力先だけ変えたいんだけど、出来ます? ググっても、後から変える方法が見付からなくて・・
385 名前:デフォルトの名無しさん [2016/08/04(木) 23:18:10.54 ID:KxCOPaH9.net] 教えてほしいのですが java8でOOMが発生したのでヒープダンプを解析したところメインスレッドから参照されているインスタンスが多数ありました メインスレッドから直接参照されてGCで解消されないインスタンスはどのように生成された場合に発生しますか?
386 名前:デフォルトの名無しさん mailto:sage [2016/08/04(木) 23:30:39.80 ID:1Q45SAfi.net] スタック(生存中のローカル変数)から参照されてるんだろ
387 名前:デフォルトの名無しさん [2016/08/05(金) 00:52:56.77 ID:6LlEijpk.net] 専門学校に行って習うのってメリットある?
388 名前:デフォルトの名無しさん mailto:sage [2016/08/05(金) 03:16:33.02 ID:9k3C6R28.net] お前じゃどこいっても無理だ 板名すらよめないんだもん
389 名前:デフォルトの名無しさん mailto:sage [2016/08/05(金) 06:49:38.70 ID:x8TUq60L.net] >>381 Javaの環境変数に、そういう項目は無いの? 入門から実践までJavaで学べる「ログ」の常識 www.atmarkit.co.jp/ait/articles/0801/08/news128_3.html
390 名前:デフォルトの名無しさん mailto:sage [2016/08/05(金) 07:52:48.65 ID:YTOm0VxE.net] >>384 独学でダメだったら諦めた方がいい その程度の奴はIT行っても奴隷のような勤務形態で延々単純作業をやらされた挙句に身体か精神壊して捨てられるだけだ
391 名前:デフォルトの名無しさん mailto:sage [2016/08/05(金) 08:13:33.12 ID:m10n1TDx.net] 確固たる目的があってそれに対して有効であれば行っていいんじゃない? 学びたいからとか言う謎の理由は無意味
392 名前:デフォルトの名無しさん mailto:sage [2016/08/05(金) 08:51:26.42 ID:ij72IWqm.net] Java勉強するだけならメリットはない
393 名前:デフォルトの名無しさん [2016/08/05(金) 08:59:54.49 ID:2ygfJ/wh.net] JavaのWebアプリケーションの生産性は低いからなあ。
394 名前:デフォルトの名無しさん mailto:sage [2016/08/05(金) 09:12:54.48 ID:YTOm0VxE.net] SIベンダーから見た生産性は非常に高いよ Railsなんかで作るより数倍の工数取れて、 品質品質保守性保守性言ってれば客は納得するんだからこんなに美味い商売はない
395 名前:デフォルトの名無しさん [2016/08/05(金) 09:51:05.51 ID:2ygfJ/wh.net] >>391 生産性じゃなくてぼったくりだろw
396 名前:デフォルトの名無しさん mailto:sage [2016/08/05(金) 12:43:53.38 ID:7M4UoUhy.net] 利益の生産
397 名前:デフォルトの名無しさん mailto:sage [2016/08/05(金) 13:14:22.96 ID:9cFHC08F.net] >>392 納得してるのならぼったくりではない
398 名前:デフォルトの名無しさん mailto:sage [2016/08/06(土) 01:25:18.48 ID:FfBiCVo4.net] csvファイルを読みこみ、PreparedStatementを使ってDBにどんどん insertしていってるんですが、流すたびにinsertできている件数が 違います。 全5000件のうち、1度目は300件だったり、2回目は1000件だったり、あるいは 逆だったり、、、 とにかく流すたびにinsertできる件数が違っていて規則性がないんですが、 何が原因なんでしょうか。 プログラム誤りであれば、毎回同じ件数になると思うのですが、、、
399 名前:デフォルトの名無しさん [2016/08/06(土) 01:35:44.75 ID:NlPhIpsR.net] >>395 5000件処理して300件しかデータがないってどんぶり勘定にも程があるな むかしむかしMySQLのドライバのバグで単純な挿入さえまともにできなかったことがある ドライバのバグとか、コミットがちゃんとできてないとか DBは何使ってるの?コードはどんな感じ?
400 名前:デフォルトの名無しさん mailto:sage [2016/08/06(土) 02:10:07.11 ID:FfBiCVo4.net] >>396 まさかこんな時間に返信もらえるとは思ってませんでした。 Statementで更新していた時は全件INSERTできたんですが、PreparedStatementに 変更したら、>>395 の状態となってしまいました。DBはACCESSです。 コードはこんな感じです。
401 名前:デフォルトの名無しさん mailto:sage [2016/08/06(土) 02:13:17.61 ID:FfBiCVo4.net] private void insert_task(String table, BufferedReader br) { Connection con = null; PreparedStatement pstmt_ins = null; PreparedStatement pstmt_del = null; PreparedStatement pstmt_upd = null; try { //JDBCドライバのロード //各設定 String url = "jdbc:odbc:kinmu"; String user = ""; String pass = ""; //データベースに接続 con = DriverManager.getConnection(url, user, pass); String line = ""; //一行ずつ読み込む int line_count = 1; //ヘッダーフラグ boolean delete_flg = true; //ヘッダーフラグ String sql_ins = "INSERT into KINMU values(?,?,?,?,?)"; pstmt_ins = con.prepareStatement(sql_ins); while ((line = br.readLine()) != null) { String[] strAry = line.split(",", 11); pstmt_ins.setString(1, strAry[0]); pstmt_ins.setString(2, strAry[1]); pstmt_ins.setString(3, strAry[2]); pstmt_ins.setString(4, strAry[3]); pstmt_ins.setString(5, strAry[4]); pstmt_ins.executeUpdate(); } } catch (IOException exception) {
402 名前:デフォルトの名無しさん mailto:sage [2016/08/06(土) 02:15:37.25 ID:FfBiCVo4.net] PreparedStatement pstmt_upd = null; PreparedStatement pstmt_del = null; について、実際はpstmt_upd、pstmt_delを用いて try{}の中でdelete,update処理を行っていますが、 正常に処理できているのでコードを割愛させていただきました。
403 名前:デフォルトの名無しさん [2016/08/06(土) 05:52:46.32 ID:e+VUV2JF.net] >>399 どのデータが登録されて、どのデータが登録されないのか調べて傾向を見た方がいいよ。
404 名前:デフォルトの名無しさん mailto:sage [2016/08/06(土) 06:21:01.04 ID:dbq4lnef.net] どういうテーブルか知らんけど1番目はIDかつプライマリキーにしていることが多いから setIntやsetLongを使うんじゃなかろうか
405 名前:デフォルトの名無しさん mailto:sage [2016/08/06(土) 06:31:44.35 ID:mW190j2d.net] 勤怠なら第一要素を日付としてpkにしてる可能性もある とは言え全く同じcsvを元にしてて毎回結果が異なるのはよくわからんなぁ
406 名前:デフォルトの名無しさん mailto:sage [2016/08/06(土) 08:11:45.63 ID:FfBiCVo4.net] 朝早くからこんなにお返事ありがとうございます。 >>400 Insertがされているデータは、すべての列が正確に登録されています。 >>401 、400 諸事情があり、プライマリーキーは設定しておりません。 また、全4列において、すべてテキストタイプです。 朝、PCを立ち上げ直し、2回ほど処理を回してみましたが、 1回目は538件で、2回目は990件でした。 規則性がかけらもない_| ̄|○
407 名前:デフォルトの名無しさん mailto:sage [2016/08/06(土) 08:27:11.97 ID:y/TrjN6T.net] >>403 > Insertがされているデータは、すべての列が正確に登録されています。 そう言う話じゃなくて Insert できてる奴とできてない奴でデータの違いはないのか? って話だろ > 1回目は538件で、2回目は990件でした。 ソースは同じ CSV なの? そもそもデータベース側のエラーログとかはないのか?
408 名前:デフォルトの名無しさん mailto:sage [2016/08/06(土) 08:57:34.01 ID:kzQiWQLN.net] >>403 件数ってどうやって確認してるの? insertはうまくいってて、select側に問題があるんじゃないの?
409 名前:デフォルトの名無しさん mailto:sage [2016/08/06(土) 09:03:06.59 ID:kzQiWQLN.net] >>399 deleteの部分もコード貼れるかな。 そこがおかしいんじゃない
410 名前:デフォルトの名無しさん mailto:sage [2016/08/06(土) 09:33:59.56 ID:FfBiCVo4.net] >>397 です。 お返事ありがとうございます。 なんかPCを再起動してやってみたら、コードは一つも直していないのに、全件入るようになりました_| ̄|○ しかも何回やっても全部入るみたいです。 >>404 確認したのですが1回目と2回目の差分は何の変哲もないデータで、Insertされているデータと比べ変なところはありませんでした。 また、1回目2回目共に同じデータです。 データベース側のログ、確認してみます! >>405 件数はACCESSにて全体件数が自動表示されますので、それで確認しています。 スクロールしても、やはりその件数までしかレコードが表示されていないことも確認しています。 >>406 deleteとupdateはこんな感じです。 String sql_del = "delete from KINMU where プロジェクトcd = ?"; pstmt_del = con.prepareStatement(sql_del); String sql_upd = "UPDATE LASTUPDATE SET 最終更新日時 = ? where プロジェクトcd = ?"; pstmt_upd = con.prepareStatement(sql_upd); Date date = new Date(); SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH時mm分ss秒"); String last_update = sdf.format(date); pstmt_del.setString(1, strAry[0]); pstmt_del.executeUpdate(); pstmt_upd.setString(1, last_update); pstmt_upd.setString(2, strAry[0]); pstmt_upd.executeUpdate();
411 名前:デフォルトの名無しさん mailto:sage [2016/08/06(土) 09:54:39.20 ID:kzQiWQLN.net] >>407 どういうアプリかわからないけど、常駐非対話アプリなら、別のプロセスにdeleteされてるんじゃない。 再起動してうまくいったのは、別のプロセスが終了したから。 そもそも、現状オートコミットのままだから、アプリの種類によっては、オートコミットやめた方がいいよ。
412 名前:デフォルトの名無しさん mailto:sage [2016/08/07(日) 01:35:06.14 ID:iJHIeyzf.net] 消費税引き上げ先送りも決まり,日銀とECBがしっかり資金供給を拡大してくるのでFRBの利上げは多分成功する 基調はリスクオンの株式暴騰、金暴落だね 今度の黒田砲は緩慢に効いてくる 海馬がくる,海馬がくる
413 名前:デフォルトの名無しさん [2016/08/07(日) 18:49:39.23 ID:412P3kmz.net] 誤爆か・・・
414 名前:デフォルトの名無しさん mailto:sage [2016/08/07(日) 19:21:07.99 ID:L/2xgmOS.net] >>397 です。 サーバーログを確認したところ 「[Microsoft][ODBC Driver Manager] 文字列またはバッファーの長さが無効です。」 といったエラーが出力されていました。 で、このエラーを確認したところ、ACCESSとSqlserverをDBに設定した時で、 且つx64版のJavaでVMjdbc:odbc接続を行うと発生するエラーとのことです。 ほかの方も不特定の箇所で発生しているみたいです。 ただ私の環境ではPreparedStatementの時だけこの現象が発生し Statementの環境では正常に動作するところが謎です、、、 以上、報告でした。 返信くださった皆様、ありがとうございました。
415 名前:デフォルトの名無しさん mailto:sage [2016/08/07(日) 19:28:49.45 ID:iJHIeyzf.net] >>410 すまん
416 名前:デフォルトの名無しさん [2016/08/07(日) 20:54:02.06 ID:/wJe7S0/.net] >>347 ここがよくまとまってたよ https://www.jpcert.or.jp/java-rules/fio07-j.html
417 名前:デフォルトの名無しさん mailto:sage [2016/08/08(月) 23:54:22.48 ID:50XAspjz.net] 引数でenumを受けてswitchで分岐して戻り値を返すメソッドを作っているんだけど defaultで何か値を返さないとコンパイルエラーなんだけどこういうものですか? enumが取り得る値は全部caseに書いてるからdefaultに分岐することは無いと思うのだけど
418 名前:デフォルトの名無しさん mailto:sage [2016/08/09(火) 00:14:20.76 ID:QLW4GyaM.net] >>414 switch文の中でreturnしてるのでは? その場合はdefaultで何かしらreternするかswitchの外でreternしないと全てのパスで値を返さないと判断されてビルドエラー 個人的にはswitch内では返却用変数に値を入れて、switchの外でretern。default節にはassertかな
419 名前:デフォルトの名無しさん mailto:sage [2016/08/09(火) 00:15:25.93 ID:s9poePNg.net] >>414 Castすればenumで定義してない値も渡せるから
420 名前:デフォルトの名無しさん [2016/08/09(火) 00:19:18.47 ID:h+7CEzP0.net] >>416 マジで? enumは定義した値しか無理なのがメリットと聞いたんだが
421 名前:デフォルトの名無しさん mailto:sage [2016/08/09(火) 00:26:37.78 ID:s9poePNg.net] >>417 Enum.IsDefined()かType.IsEnumDefined()を使わないと、定義された値かどうかの保証はないよ
422 名前:デフォルトの名無しさん [2016/08/09(火) 00:51:04.06 ID:h+7CEzP0.net] >>418 そうだったのかよ
423 名前:デフォルトの名無しさん mailto:sage [2016/08/09(火) 01:12:43.40 ID:mCEAgHsh.net] え、ちょっとまって、ここC#スレじゃないよね Enum.IsDefinedってC#(というか.NET)だよね docs.oracle.com/javase/jp/7/api/java/lang/Enum.html
424 名前:デフォルトの名無しさん mailto:sage [2016/08/09(火) 06:45:58.32 ID:qoHYj2J7.net] まあenumに後で値が追加された場合を考えてdefaultは必ず書いといた方がいい それが嫌なら他所でswitchは使わずにenum側にメソッドを定義する
425 名前:デフォルトの名無しさん [2016/08/09(火) 09:36:23.22 ID:h+7CEzP0.net] >>
426 名前:420 あっそっか 先頭大文字はC#か [] [ここ壊れてます]
427 名前:412 mailto:sage [2016/08/10(水) 08:47:58.34 ID:oaJhkFWS.net] レスありがとう 逆コンパイル見て納得したわ そうだよなぁ、コンパイル時に参照してるenumと実行時に参照してるenumが変わってる場合もあるもんなぁ 自分で作ってる範囲では関係ないけど
428 名前:デフォルトの名無しさん mailto:sage [2016/08/10(水) 09:04:51.85 ID:DKNr45Gr.net] CやC#のenumがタイプセーフでないと言われるのは enumが単なる数値でどんな値も取りうるからというよりもswitchを使うという行為に由来するもので 結局Javaの「タイプセーフ」enumだろうがswitch使っちゃうとタイプセーフにはなり得ないんだよな
429 名前:デフォルトの名無しさん [2016/08/10(水) 10:01:54.36 ID:ZwTZqxeT.net] switchも拡張してなんとかすればいいのにね
430 名前:デフォルトの名無しさん mailto:sage [2016/08/10(水) 14:58:25.68 ID:fFAFyiAs.net] 定義外enumのインスタンス化禁止+網羅チェックくらいの 程よい拡張ならいいけどやりすぎると結構アレなことになる wpdev.hatenablog.com/entry/2015/06/24/233854 qiita.com/shimesaba/items/55bfe911c2f86055cbe1
431 名前:デフォルトの名無しさん mailto:sage [2016/08/10(水) 15:30:44.38 ID:qErblx1T.net] >>424 それはバージョン間の互換性の問題と typesafe enum/int enumの問題とをごっちゃにしてるだけだよ。 互換性の問題をクリアできてないから万能ではない、あたりまでは言えるかもしれんが、 タイプセーフではないとか言っちゃうと……
432 名前:デフォルトの名無しさん [2016/08/10(水) 22:13:48.56 ID:UWZg55pn.net] 株式会社TOUAが2016年7月に破産 www.tdb.co.jp/tosan/syosai/4191.html
433 名前:デフォルトの名無しさん mailto:sage [2016/08/14(日) 01:00:37.40 ID:S7WS2brb.net] JFrameでウインドウを作って、そこでボタンなどを作成して時間のかかる処理をさせると、処理が終わるまでボタンが凹みっぱなしになるんですが 処理を続けつつ、JFrameを最新の状態で上書きするにはどうしたら良いですか?
434 名前:デフォルトの名無しさん mailto:sage [2016/08/14(日) 06:51:40.07 ID:EcwVprBa.net] スレッドプール使って別スレッドでやる
435 名前:デフォルトの名無しさん mailto:sage [2016/08/14(日) 19:37:47.75 ID:WKXjJIoJ.net] rxJava
436 名前:デフォルトの名無しさん mailto:sage [2016/08/14(日) 20:26:41.84 ID:5USMjBJX.net] jqueryを使って表を作成していて、 2つのプラグインを使おうとしています。 プラグイン1・・・セルが同一であれば結合する プラグイン2・・・ヘッダーでソートができる。 この時、それぞれのプラグインで <table>タグにidを設定する必要があります。 この場合、<table id=
437 名前:デフォルトの名無しさん mailto:sage [2016/08/14(日) 20:27:29.48 ID:5USMjBJX.net] すみません、途中できれてしまいました。 この場合、<table id="sample1" id="sample2"> のようにidに複数の値を設定しても問題ないものでしょうか。
438 名前:デフォルトの名無しさん mailto:sage [2016/08/15(月) 09:10:49.22 ID:kM2bYzgf.net] jQueryとJavaの関係性について
439 名前:デフォルトの名無しさん mailto:sage [2016/08/15(月) 09:43:05.50 ID:mR9WwRQ6.net] 最近のは勢いで書き込むからいけねぇよな スレタイと内容を2回確かめて書き込めし
440 名前:デフォルトの名無しさん mailto:sage [2016/08/15(月) 12:54:36.47 ID:TUIKyN4z.net] >>434 それを見つけるのがお前らの仕事だろうが怠けるな!
441 名前:デフォルトの名無しさん mailto:sage [2016/08/15(月) 12:57:19.91 ID:TUIKyN4z.net] >>435 省略したら一緒だろうが中華人民共和国と中国は一緒だろじゃあJavaとjQueryも一緒だろ!!!
442 名前:デフォルトの名無しさん mailto:sage [2016/08/15(月) 12:57:44.69 ID:TUIKyN4z.net] たわけどもが
443 名前:デフォルトの名無しさん mailto:sage [2016/08/15(月) 12:58:21.42 ID:TUIKyN4z.net] ほらさっさと答えろ
444 名前:デフォルトの名無しさん mailto:sage [2016/08/15(月) 12:59:26.26 ID:TUIKyN4z.net] グズグズすんなカスどもがライチぶつけんぞ
445 名前:デフォルトの名無しさん mailto:sage [2016/08/15(月) 12:59:40.74 ID:hCHaq+GR.net] などと意味不明な供述をしており、警視庁は薬物の乱用等の 可能性も考えられるとして、捜査を続ける方針です。
446 名前:デフォルトの名無しさん mailto:sage [2016/08/15(月) 13:11:04.11 ID:H+GaxU0A.net] 夏か
447 名前:デフォルトの名無しさん mailto:sage [2016/08/15(月) 13:32:46.04 ID:yoqsMfwQ.net] 夏か釣りかただの頭のおかしい初心者か とりあえずどれでもいいからJavaScript板池
448 名前:デフォルトの名無しさん mailto:sage [2016/08/15(月) 13:35:07.88 ID:JC0vxxja.net] そもそもhtmlの話なんじゃ…… いやよそう俺の予感だけでスレを混乱させたくない
449 名前:デフォルトの名無しさん mailto:sage [2016/08/15(月) 13:43:03.19 ID:z2kTYRxm.net] java<>javascript
450 名前:デフォルトの名無しさん mailto:sage [2016/08/15(月) 13:57:16.42 ID:hCHaq+GR.net] >>443 C#スレにワッチョイが入って追い出されてきた荒らしっす
451 名前:デフォルトの名無しさん mailto:sage [2016/08/15(月) 16:06:14.36 ID:Lesp94Jt.net] スレチと書きそうになったが、板違いだろ WebProgへ逝けよ
452 名前:デフォルトの名無しさん [2016/08/15(月) 19:27:20.47 ID:gedRg2sB.net] >>440 ライチいいねえ
453 名前:デフォルトの名無しさん [2016/08/15(月) 19:28:46.60 ID:gedRg2sB.net] >>446 ここも次スレから入れよう
454 名前:デフォルトの名無しさん mailto:sage [2016/08/15(月) 19:42:22.23 ID:yoqsMfwQ.net] そうだな
455 名前:デフォルトの名無しさん mailto:sage [2016/08/15(月) 21:02:33.39 ID:fNf3Xcjw.net] いらない
456 名前:デフォルトの名無しさん mailto:sage [2016/08/15(月) 23:44:21.60 ID:SJQb9H27.net] 荒らし本人乙 てめーの居場所なんか残してやらねえから 炎天下のアスファルトに引きずりだされたミミズみたいに 苦しみ抜いて干からびて死ね
457 名前:デフォルトの名無しさん mailto:sage [2016/08/15(月) 23:50:45.92 ID:fNf3Xcjw.net] 頭を冷やせよ、馬鹿
458 名前:デフォルトの名無しさん mailto:sage [2016/08/15(月) 23:53:08.40 ID:hCHaq+GR.net] 賛成に1票追加しといて
459 名前:デフォルトの名無しさん mailto:sage [2016/08/15(月) 23:59:20.03 ID:fNf3Xcjw.net] スレを分けよう
460 名前:デフォルトの名無しさん mailto:sage [2016/08/16(火) 00:16:54.08 ID:LvWZqoaM.net] さっそく釣れててワロタ
461 名前:デフォルトの名無しさん mailto:sage [2016/08/16(火) 01:02:40.41 ID:5k+FEGIK.net] >>455 ライチと俺のきんたまスレッドという名前にしよう 管理人は>>456 頼む快く引き受けろきんたま野郎
462 名前:デフォルトの名無しさん mailto:sage [2016/08/16(火) 03:23:29.52 ID:h0WG7d7m.net] ( ´д)ヒソ(´д`)ヒソ(д` )
463 名前:デフォルトの名無しさん mailto:sage [2016/08/16(火) 09:33:30.92 ID:CXXeizZn.net] 審議中w
464 名前:デフォルトの名無しさん mailto:sage [2016/08/16(火) 09:56:47.37 ID:TsDBY7Mt.net] 露骨なネタレスにはネタに乗るかスルーしようぜ マジレスしても詮無い
465 名前:デフォルトの名無しさん mailto:sage [2016/08/16(火) 15:30:33.33 ID:Aa6B/BKP.net] 初心者で悪いんだけど、以下のようなGoの連想配列をJavaに置き換えるにはどうすればいいの? prof['me'] = map[string]interface{}{ 'name': 'John Lennon', 'email': 'foobar@gmail.com', 'phone': '+81-90-0000-0000', 'occupation': []string{'Programmer', 'System Engineer'}, 'language': []string{'Japanese', 'English', 'Spanish', 'Chinease'}, 'hobby': []string{'Photography', 'Traveling', 'Fishing', 'Onsen'}, } のようなかたちにしたいんだけど Pythonなら my_profile = {'name': 'John Lennon', 'nickname': 'monkey', 'occupation': ('programmer', 'system engineer'), 'phone_number': '+81-90-0000-0000', 'email': 'ahoaho@gmail.com', 'language': ('Japanese', 'English', 'Spanish'), 'hobby': ('photography', 'fishing', 'traveling'), } Javaでは連想配列で調べると、HashMapが出てきて、 Map<String,String> profile = new HashMap<String,String>(); のようにするのかなと思ったけれど、 毎回profile.put('name', 'Tom');みたいにするのはめんどくさいので配列で行おうと思ったんだけど、 String[][] profile = new String[2][3];とかでは違う気がして
466 名前:デフォルトの名無しさん mailto:sage [2016/08/16(火) 16:20:15.90 ID:bpfxyFhm.net] Javaにそんな気の利いたものはない JSONファイルに外出しにするか泥臭くputしろ
467 名前:デフォルトの名無しさん [2016/08/16(火) 16:47:25.47 ID:Aa6B/BKP.net] >>462 マジで? こう言うと失礼かもしれないけれど、Javaだとこんな簡単な事を実装するのも苦労するんだね 実際こういう形が必要になった時ってJSON化とかしないといけないのか 良くある形だと思うんだけど... 教えてくれてありがと
468 名前:デフォルトの名無しさん mailto:sage [2016/08/16(火) 16:48:40.13 ID:4YjPvRoE.net] >>463 おっぱいそんでいいだろ、さようなら
469 名前:デフォルトの名無しさん [2016/08/16(火) 17:47:14.08 ID:LN6Jma9b.net] >>461 StringのキーでStringの配列が引き出せればいいんだろ?HashMap<String, String[]> でいいんじゃねえの? 初期化とか面倒ってのは表現の問題だよな。ま、なんだったら初期化の元になる配列を別に用意しておいて自分でループさせて一個づつ初期化するように書けばいいのでは? それか設定ファイルから読むように書くとか。
470 名前:デフォルトの名無しさん [2016/08/16(火) 17:48:38.77 ID:LN6Jma9b.net] 書き込んだらリロードされて既に話が終わってたorz
471 名前:デフォルトの名無しさん mailto:sage [2016/08/16(火) 17:57:57.62 ID:q8lrk+Br.net] >>463 ヘルパメソッド作ればええんやで 詳細は>>466 が知ってますよろしくお願いします
472 名前:デフォルトの名無しさん mailto:sage [2016/08/16(火) 18:07:44.65 ID:Aa6B/BKP.net] >>465 >>467 ありがと 今出先だからまた試してみる
473 名前:デフォルトの名無しさん mailto:sage [2016/08/16(火) 19:30:12.56 ID:EHdIZNTT.net] まぁでもそういう表記簡略化してくれるアノテーションプロセッサみたいなのがあってもいいよな
474 名前:デフォルトの名無しさん mailto:sage [2016/08/16(火) 20:05:03.56 ID:eooJe/za.net] lombokもまだ大したことできねえしなあ
475 名前:デフォルトの名無しさん mailto:sage [2016/08/16(火) 20:52:52.11 ID:Aa6B/BKP.net] >>465 import java.util.Map; import java.util.HashMap; public class Hai { public static void main(String[] args) { Map<String, String[]> hai = new HashMap<String, String[]>(); hai.put('name', 'Tom'); System.out.println(hai.get('name')); } } /* Hai.java:7: エラー: 不適合な型: StringをString[]に変換できません: hai.put('name', 'Tom'); ^ 注意:一部のメッセージは簡略化されています。-Xdiags:verboseで再コンパイルして完全 な出力を取得してください エラー1個 */ このエラーは理解できるんだけど、となると上で書いた俺のやりたいような事ってやっぱ難しいのかな? 連想配列で、あるキーの値はStringだけど、別のキーの値はString[]みたいな
476 名前:デフォルトの名無しさん mailto:sage [2016/08/16(火) 20:59:49.35 ID:4YjPvRoE.net] 居座る初心者
477 名前:デフォルトの名無しさん [2016/08/16(火) 21:34:57.35 ID:hU1J3joE.net] >>471 難しくない、Javaなら5秒だ https://paiza.io/projects/4rPiFWKm9zY0DyrMynLGmQ
478 名前:デフォルトの名無しさん mailto:sage [2016/08/16(火) 21:42:42.38 ID:eooJe/za.net] Objectにでもキャストしとけよ タイプセーフ嫌いなんだろ
479 名前:デフォルトの名無しさん mailto:sage [2016/08/16(火) 21:47:46.33 ID:so1Gsq4y.net] ドヤ顔で相手してる人間初心者も死ね
480 名前:デフォルトの名無しさん mailto:sage [2016/08/16(火) 23:05:21.19 ID:CFM4NC3W.net] 初心者は、初心者向けスレへ移動せよ Java入門・初心者質問スレ echo.2ch.net/test/read.cgi/tech/1462997913/l50
481 名前:デフォルトの名無しさん [2016/08/17(水) 12:22:51.42 ID:8LdosxhK.net] >>471 同じ所に違う型混ぜて入れると後で判別したり面倒だから1つでもString[]に入れとけ。 データが億単位あってそんな無駄なことは1バイトたりともできないっていうなら話は別だか、 数万とか数千なら今のPCなら気にならないぐらいの誤差みたいな大きさにしかならんよ。
482 名前:デフォルトの名無しさん mailto:sage [2016/08/17(水) 14:37:2
] [ここ壊れてます]
483 名前:5.87 ID:a7znAueU.net mailto: またズレたことを (469が)冗長(に感じるよう)なコード書きたくないって言ってんだよ ホント相手してる奴って頭悪いな 生きてる価値ないから死ねよ [] [ここ壊れてます]
484 名前:デフォルトの名無しさん mailto:sage [2016/08/17(水) 15:09:49.31 ID:5YMB8p2s.net] よーしパパも冗長なコード書いちゃうぞ https://ideone.com/UaKR5E
485 名前:496 mailto:sage [2016/08/17(水) 16:36:14.02 ID:oKUi9/GV.net] おまいらって結局は優しいんだよな コードとかもありがと どう考えても5秒ではないと思うけれどw パパもありがとね
486 名前:デフォルトの名無しさん mailto:sage [2016/08/17(水) 16:36:41.39 ID:oKUi9/GV.net] 469だった、ごめん
487 名前:デフォルトの名無しさん mailto:sage [2016/08/17(水) 17:19:41.01 ID:pMMsZ2bI.net] 相手にしている奴ら無視すればいいのに書き込んじゃうとかホント書き込んだ奴頭悪いな 地獄に落ちればいいのに
488 名前:デフォルトの名無しさん mailto:sage [2016/08/17(水) 17:39:58.35 ID:XiTPQbLr.net] 構文糖衣はともかくとしても JavaSEに不定形データ扱うライブラリが入ってないのは欠点だとは思う https://ideone.com/Z683HJ
489 名前:デフォルトの名無しさん mailto:sage [2016/08/17(水) 17:43:39.10 ID:+euenK++.net] jsonなんかいらね
490 名前:デフォルトの名無しさん [2016/08/17(水) 20:04:56.00 ID:2Z7xYVvO.net] >>478 お前も答えられないなら死ね。生きてる価値ないから。
491 名前:デフォルトの名無しさん mailto:sage [2016/08/17(水) 20:34:55.41 ID:HDxcYxzF.net] NGしてろカス
492 名前:デフォルトの名無しさん mailto:sage [2016/08/17(水) 20:50:10.27 ID:aK9XWlC8.net] わかった この話はやめよう ハイ!! やめやめ
493 名前:デフォルトの名無しさん mailto:sage [2016/08/17(水) 21:15:36.68 ID:+euenK++.net] せやなー
494 名前:デフォルトの名無しさん [2016/08/18(木) 01:07:37.15 ID:FFjclqUv.net] こんなのどう? https://paiza.io/projects/8cyMIbIQX46hs2-KJSfVPA
495 名前:デフォルトの名無しさん mailto:sage [2016/08/19(金) 20:28:45.17 ID:CkYJIhBp.net] こんな感じで不定間隔で昇順の配列があります int[] a = {1,3,7,10,12,20,24,33}; このとき指定した値に一番近い要素の番号を得たいと思ってます たとえば、3なら1、6なら2、16なら4(中間値なら小さい方)、という具合です 今は配列を走査し ・一致した要素があればその番号 ・要素間の範囲に入ってた場合は大きい値と小さい値の差分を計算して差分の小さい方の要素番号 としてるのですが、配列aの要素数が多く(実際には2000くらい)、指定される値も10万個ほどあるので 処理にかなり時間がかかってしまいます 指定される値をソートしてブロック単位で…等とも考えたのてすが、データの仕様上、無理なようです 効率のよいアルゴリズムとかAPI、ありますか?
496 名前:デフォルトの名無しさん mailto:sage [2016/08/19(金) 20:37:11.37 ID:tsEZzAHj.net] >指定した値に一番近い要素の番号を得たいと思ってます これが一回だけなのか、複数回なのかがわからないのに効率の良いアルゴリズムなんて答えられるわけがない
497 名前:デフォルトの名無しさん mailto:sage [2016/08/19(金) 20:58:16.30 ID:59AD2ZKx.net] >>491 10万回だとした場合の効率よいアルゴリズム示してみたら?
498 名前:デフォルトの名無しさん mailto:sage [2016/08/19(金) 21:04:57.74 ID:CkYJIhBp.net] >>491 何らかの値が指定される都度、一番近い要素の番号を返す その処理を、10万回繰り返すものとなります
499 名前:デフォルトの名無しさん mailto:sage [2016/08/19(金) 21:14:41.84 ID:WMQnppU0.net] とりあえず二分探索する 二分探索で我慢できなくて配列aの最大値が数万くらいなら配列を展開する int[] a = {1, 6, 9}; int[] b = {0, 0, 0, 0, 1, 1, 1, 1, 2, 2} 配列aの最大値が24万程度なら、展開した配列bに必要なメモリは2^(18+2)で1MB弱
500 名前:デフォルトの名無しさん mailto:sage [2016/08/19(金) 23:12:34.89 ID:ZqQW0r9G.net] >>494 二分探索と配列の展開、情報ありがとうございます 展開した配列を用意するためのプログラムが必要そうですが、こちらの方が性能は良さそうですね ありがとうございました
501 名前:デフォルトの名無しさん mailto:sage [2016/08/20(土) 00:08:07.91 ID:BMoP1SdH.net] 作り方がおかしいかご意見をお聞かせください。 通信関連モジュールを作成しているのですが ・通信前のデータチェックでのエラー ・通信結果の解析結果のエラー これら2つの結果を返すコールバック用のメソッドを分けて作っていたのですが 「そんなイレギュラーな作りをするな!同じメソッドで引数を変えろ!」 と言われました。 エラーが発生するタイミングが違うので同一インターフェースの中で分けたのですが、 「イレギュラー」といわれるほど変な作りなのでしょうか?
502 名前:494 mailto:sage [2016/08/20(土) 00:15:39.59 ID:BMoP1SdH.net] 関連モジュールは他にないので、「他のモジュールと比較しておかしい」というわけではありません。 あくまでもJAVAの一般論として「イレギュラー」と言われてます。
503 名前:デフォルトの名無しさん mailto:sage [2016/08/20(土) 06:53:27.62 ID:B6Zc+FaI.net] その情報だけでは必ずしもおかしいとは思わない。 メソッドを分けることで、利用者はその二種類のエラーを区別することを強制される。 だから、その二種類の区別が利用者にとって重要だと想定されるのであれば一つで分岐するより分けた方がいい。 そうでもない(利用側の処理に違いがない)なら一つでいい。
504 名前:デフォルトの名無しさん mailto:sage [2016/08/20(土) 11:38:21.48 ID:hWaMH8VG.net] >>496 MyConnector con = new MyConnector(); con.setCallback1(callback1) con.setCallback2(callback2) con.connect() みたいに必要なcallbackを追加していけるならいいけど、 con.connect(callback1, callbak2) ならまとめてもいいかな
505 名前:デフォルトの名無しさん mailto:sage [2016/08/20(土) 15:20:42.65 ID:D7SVWed1.net] まぁ俺だったらひとつにするな それで定数intとかでエラーIDを作ってそれを渡すとかするわ >>496 の考えだと今回は2件だけど3件、4件と行程が増えた数だけメソッドを作ることになる。 そもそもそれは実装する側も使用する側も手間になる。 例えばどのエラーでも同じことをしたかったとしても使用する側は、その分のコールバックメソッドを立てて、メソッド化して複数箇所で呼び出したりする必要がある。 それって手間にじゃん >>496 が作ったモジュールと実際にモジュールを使う側の関係が1:多の関係であるなら、なるべく使う側に汎用性をもたせてやるほうがいい。 今回の汎用性というのはエラーを分けるか分けないかってことね 1つまりモジュール側は必要になった時に判断できる手段を用意してあげることだとおもう
506 名前:デフォルトの名無しさん mailto:sage [2016/08/20(土) 17:44:13.96 ID:s0elS7/F.net] 10万回を前半5万回と後半5万回に分けて マルチスレッド化
507 名前:デフォルトの名無しさん mailto:sage [2016/08/20(土) 18:30:31.94 ID:06sBBxjU.net] 10万スレッド作っ(ry
508 名前:デフォルトの名無しさん mailto:sage [2016/08/20(土) 19:52:31.00 ID:maedJSZM.net] parallel入れて最適化したとしても 10万件程度では速度向上は期待できない気もする https://paiza.io/projects/N1anFUeXUTdILH0sJnwl5g
509 名前:デフォルトの名無しさん [2016/08/20(土) 21:26:00.33 ID:6io4DnXk.net] 今や求人はJavaやC#だらけですが、どうしてもJavaやC#になじめず 悩んでいます。派遣PGです。 自分なりになじめない原因を考えてみるとどうもJavaやC#に限らず ネイティブで動作していない言語に拒否感があります。 C/C++やアセンブラにはない「気持ち悪さ」とでもいうのでしょうか… もうエンジニアとして終わりなのかなとか、必要とされていないので は?という悲観的な気持ちです。 どうすれば乗り越えられるでしょうか?
510 名前:デフォルトの名無しさん mailto:sage [2016/08/20(土) 21:32:20.77 ID:DlK5hCub.net] コ ピ ペ
511 名前:494 mailto:sage [2016/08/20(土) 21:35:28.10 ID:BMoP1SdH.net] ご意見ありがとうございました。 >> 498さんのご意見が特に参考になりました。 確かに今後拡張していくと面倒なことになりますね。 良かれと思って分割したのが裏目になりそうです。 ありがとうございました。
512 名前:デフォルトの名無しさん mailto:sage [2016/08/20(土) 21:39:00.90 ID:DlK5hCub.net] 仕様がわかんねーからどうでもよさげ
513 名前:デフォルトの名無しさん mailto:sage [2016/08/20(土) 21:41:08.87 ID:DlK5hCub.net] つーか、設計が間違ってたということね
514 名前:デフォルトの名無しさん [2016/08/20(土) 22:04:50.30 ID:SbaSzAw8.net] >>504 JIT
515 名前:デフォルトの名無しさん mailto:sage [2016/08/20(土) 23:56:34.43 ID:UumqURVq.net] >>504 マジなのかコピペか釣りか知らないけど、まず板名や>>1 すら読めてないから、多分馴染めない原因は他にもあると思うよ ネイティヴじゃないとか意識する以前にね もし本当にネイティヴ非ネイティヴを意識して馴染めないのであれば残念だけどこの先やっていくのはつらいからくぎりをつけたほうがいいよ
516 名前:デフォルトの名無しさん mailto:sage [2016/08/21(日) 08:57:32.48 ID:IUzncNpZ.net] 縦書きフォント使いたいんだが、フォント読み込みから自力実装するしかない?
517 名前:デフォルトの名無しさん mailto:sage [2016/08/21(日) 10:12:08.48 ID:duM5Lppi.net] お前どこでフォントを使いたいのか 環境も書かずに答えられると思ってんの?
518 名前:デフォルトの名無しさん mailto:sage [2016/08/21(日) 10:49:45.26 ID:MeZyvK3R.net] ホント
519 名前:デフォルトの名無しさん mailto:sage [2016/08/21(日) 11:28:59.60 ID:IUzncNpZ.net] >>512 JNI等を使用しないWindowsのjava.awt.Graphics2Dで。 レイアウトとか自分でやるんで、truetype/opentypeフォントに含まれる縦書き用グリフや配置情報送り幅等を取得したい。
520 名前:デフォルトの名無しさん mailto:sage [2016/08/21(日) 12:08:10.04 ID:MeZyvK3R.net] JDKのフォント周りはホントにイミフ
521 名前:デフォルトの名無しさん mailto:sage [2016/08/21(日) 12:16:19.38 ID:xQ8AfaVf.net] @つきのフォント読み込んで90度回転で書けばいいんじゃなかったっけか? 等幅フォントなら横書き用フォント使って縦に一文字一文字書いてくのもありかもだが。 句読点や括弧をちゃんと処理せんといかんけど。
522 名前:デフォルトの名無しさん mailto:sage [2016/08/21(日) 12:46:54.85 ID:IUzncNpZ.net] @付きとかそんなものはないのです… MS 明朝等に@をつけてFont作っても存在しないフォントはDialogが使われるだけなのです… import java.awt.Font; import java.awt.GraphicsEnvironment; public class FontTest { public static void main(String[] args) { // @付きフォントなんて無い for (Font font : GraphicsEnvironment.getLocalGraphicsEnvironment().getAllFonts()) { System.out.println(font); } // @付きで指定しても存在しないフォントはDialogになる Font font = new Font("@MS 明朝", Font.PLAIN, 12) System.out.println(font.getFontName()); } }
523 名前:デフォルトの名無しさん mailto:sage [2016/08/21(日) 14:06:54.91 ID:xQ8AfaVf.net] >>517 あらごめん。 Windows7あたりからかフォントの扱い変わったらしいから、それが原因かも。
524 名前:デフォルトの名無しさん mailto:sage [2016/08/21(日) 15:02:21.58 ID:rOj1s/df.net] ろくにテストもしてないのだろう
525 名前:デフォルトの名無しさん mailto:sage [2016/08/21(日) 15:14:29.45 ID:rOj1s/df.net] oracleのやる気のなさ
526 名前:デフォルトの名無しさん [2016/08/21(日) 15:53:29.38 ID:hSejVSNi.net] >>490 , >>501 , >>503 ローカルでJITコンパイル切ってやってみたらコア数まではスケールするみたいよ おっぱいざだとJITコンパイルがあってよくわからん https://paiza.io/projects/wTqOKtC_yCz4-2Z5xCkPAw シングルスレッドでも20ミリ秒だからマルチスレッドにする意味ないかも
527 名前:デフォルトの名無しさん [2016/08/21(日) 18:00:10.89 ID:hSejVSNi.net] >>490 配列よりは遅いけどTreeMapを使うやり方もあるよてことで https://paiza.io/projects/rqnLcs9ZehOWZgOIo-WHOA
528 名前:デフォルトの名無しさん mailto:sage [2016/08/21(日) 18:12:19.70 ID:dUfPoSxX.net] javaって10万スレッドも同時に実行出来るの? メモリー量とか、そういうのは別にして。 同時に実行出来るスレッド数に上限は無い?
529 名前:デフォルトの名無しさん [2016/08/21(日) 18:20:43.74 ID:hSejVSNi.net] >>523 CPUとメモリが潤沢にあれば行けるんじゃないかな 俺の環境ではi7のCPUがフル稼働でWindowsがフリーズしかけた 必死こいてプロセス殺した >>502 みなさん2chのデマに気を付けてください
530 名前:デフォルトの名無しさん [2016/08/21(日) 19:07:34.19 ID:i9hjM3oz.net] そういや Windows 以外のXやiOSではどうなってんだろうね。
531 名前:デフォルトの名無しさん [2016/08/21(日) 19:10:29.74 ID:i9hjM3oz.net] 523はリロードしてなくて上の方のフォントの話へのレスだったが、もうどうでもよい。
532 名前:デフォルトの名無しさん [2016/08/21(日) 19:11:22.55 ID:i9hjM3oz.net] >>524 試す人がいるとは思わなかったw
533 名前:デフォルトの名無しさん [2016/08/21(日) 22:35:26.83 ID:M72PC28j.net] >>524 こちらで>>490 のやつをaが2000件bが10万件で10万スレッド作ってやるのを作ってみたが特に問題なく数秒で終わったぞ? スレッドなしのストレートなやつはもっと速く終わったけどな。w そういや>>490 のやつは数秒だったとしても時間掛かりすぎでまずいぐらいの高速性求めてたのかな?
534 名前:デフォルトの名無しさん mailto:sage [2016/08/21(日) 22:37:07.19 ID:M72PC28j.net] あ、bって指定される値の方ね。
535 名前:デフォルトの名無しさん mailto:sage [2016/08/21(日) 22:43:19.76 ID:M72PC28j.net] >>490 のやつってこんなんでいいんだよなあ?(Thread使わないストレートなやつ) https://paiza.io/projects/6k1S75kySYEpB-6n7ntBRw とても速く終わるんだが。
536 名前:デフォルトの名無しさん [2016/08/21(日) 23:16:05.19 ID:hSejVSNi.net] >>528 コードがマズかったかな そちらの10万スレッドのコード教えて もっかいやってみる 俺のi7の力を見せてやる
537 名前:デフォルトの名無しさん [2016/08/21(日) 23:50:43.54 ID:M72PC28j.net] >>531 https://paiza.io/projects/xmOg-JbIQdMhaEt9mtNy-A ただしこのサイトの実行環境ではメモリ上限を超えるようで OutOfMemoryError になる。
538 名前:デフォルトの名無しさん [2016/08/21(日) 23:55:48.92 ID:hSejVSNi.net] >>532 あざーす
539 名前:デフォルトの名無しさん [2016/08/22(月) 00:09:39.70 ID:4FCeXfXX.net] 10万スレッドで5秒だった 生のスレッド使えばいいのか マジかー
540 名前:デフォルトの名無しさん mailto:sage [2016/08/22(月) 10:01:26.36 ID:MdBT+DeE.net] ネタでやるのはいいけど コア数(HT含む)を超える数のスレッド作っても意味無いからね
541 名前:デフォルトの名無しさん mailto:sage [2016/08/22(月) 10:55:58.54 ID:C6WXEgXb.net] 酷いループを用意しても2,000×100,000で時間かかりすぎる場面が発生しない 前提条件そのものに問題がある(根本的に勘違いしている)が濃厚
542 名前:530 [2016/08/22(月) 12:51:08.04 ID:mEg9CMpU.net] >>535 いやわかってる。 530のプログラムもループさせてスレッド作った直後にすぐスタートさせてるのですぐ終わるやつは多分ループ抜ける前に終わっちゃってて同時に10万スレッドが動いていない。 同時10万を本当にやるとしたらスタート直後に待たせてメインスレッドが全体を同時に動かさせるようにする必要があるが、今のところやる気はない。w
543 名前:デフォルトの名無しさん mailto:sage [2016/08/22(月) 20:36:07.09 ID:G2Ad46dy.net] https://ideone.com/7BUuq3 バーチャルマシンにオプション付けてスレッドのスタックを 調整すると沢山同時に起動実行出来ることが分かった。 -Xss128k とか。数字は小さい方がいいみたい。ウィンドウズのタスクマネージャで 見ているとスレッド数が増えていくのが分かる。ある程度のところで java.lang.OutOfMemoryError: unable to create new native thread となった。
544 名前:デフォルトの名無しさん mailto:sage [2016/08/24(水) 19:46:51.49 ID:xJCgpC1z.net] Winで動かす場合はJavaのVM自体がいくつもスレッド使っているから Windowsの制限よりは少なくなるだろ。 https://technet.microsoft.com/ja-jp/windows/mark_04.aspx
545 名前:デフォルトの名無しさん mailto:sage [2016/08/24(水) 23:43:57.21 ID:3vGB/zKb.net] synchronized使って10万スレッドやってみたらフリーズしたw 最初何回かは大丈夫だったんだけどな。eclipseで3回目は何分待ってもマウスカーソルが動かなくてしょうがないから電源切った。w
546 名前:デフォルトの名無しさん mailto:sage [2016/08/25(木) 02:23:50.28 ID:l83TC/zZ.net] build.gradleでライブラリをcompileに書くときにバージョン番号を省略すると最新版が入りますが、入ったライブラリのバージョンを確認するにはどうすればよいですか?またライブラリはどこにダウンロードされますか?
547 名前:デフォルトの名無しさん mailto:sage [2016/08/25(木) 03:12:32.19 ID:s1NjE0Yt.net] Javaの質問と言えるのか分からんが gradle dependencisで依存関係表示 インストール先は大抵$HOME/.m2の下
548 名前:デフォルトの名無しさん mailto:sage [2016/08/25(木) 03:18:39.81 ID:l83TC/zZ.net] >>542 ありがとうございました。.gradle以下ばかり探してました。
549 名前:デフォルトの名無しさん mailto:sage [2016/08/28(日) 22:05:16.01 ID:Pr4GF7QY.net] 画像を表示するときビット配列から生み出す方法とImageオブジェクトのクラスから生み出す方法があるみたいだけど どう使い分ければいいの?ってかどう違うの?
550 名前:デフォルトの名無しさん mailto:sage [2016/08/28(日) 22:10:44.30 ID:ev9L5f83.net] 表示することを聞いてるのか生み出すことを聞いてるのか曖昧だ
551 名前:デフォルトの名無しさん mailto:sage [2016/08/28(日) 22:19:04.46 ID:ev9L5f83.net] Javaで画像っていうとBufferdImageを直にインスタンス化するか ImageIO#readメソッドを使うかだと思うけどどっちのことを言ってるん
552 名前:デフォルトの名無しさん mailto:sage [2016/08/28(日) 22:25:03.92 ID:Pr4GF7QY.net] ImageIconクラスのことです!!!!! 曖昧ですいません、始めたばっかで画像表示しようとしてるんだけどいまいちよく分かんなくて
553 名前:デフォルトの名無しさん mailto:sage [2016/08/28(日) 22:25:34.77 ID:wVJbbEHi.net] java.awt.Toolkit#createImage() ってのもあるな。
554 名前:デフォルトの名無しさん mailto:sage [2016/08/28(日) 22:29:31.96 ID:wVJbbEHi.net] >>547 んなもん使いやすい方使えばいいじゃないか。内容が同じなら最終的には違いはない。 途中の内部処理が違うだけ。
555 名前:デフォルトの名無しさん mailto:sage [2016/08/28(日) 22:35:09.24 ID:ev9L5f83.net] ソースコードによると https://github.com/frohoff/jdk8u-dev-jdk/blob/master/src/share/classes/javax/swing/ImageIcon.java Imageを受け取る方は直接loadImageというプライベートメソッドを呼んでる byte[]を受け取る方はToolkit.getDefaultToolkit().createImageでImageにしてからloadImageを呼んでる
556 名前:デフォルトの名無しさん mailto:sage [2016/08/28(日) 22:36:34.64 ID:ozGx3CHe.net] 出た後だし、泰山雷同して鼠一匹、でした
557 名前:デフォルトの名無しさん mailto:sage [2016/08/28(日) 22:40:40.16 ID:Pr4GF7QY.net] なるほどつまり内部構造的な違いができるだけで結果は同じなのね すいません助かりましたありがとう!
558 名前:デフォルトの名無しさん [2016/08/29(月) 00:03:21.66 ID:Y/vqlQ//.net] >>551 d.hatena.ne.jp/mkusunok/about
559 名前:デフォルトの名無しさん [2016/08/29(月) 17:24:53.93 ID:AcWh2Iym.net] こんにちは。 趣味でJava用ゲームライブラリlibGDXを利用してゲームプログラミングをしている者なのですが、アプリケーションの配布について質問させてください。 Java製のアプリはjar形式にて配布されることが普通かと思いますが、私はWindows向けにはexe形式にて配布したく思っております。 そのためにはlanch4jやexewrapといったツールを用いることができるかと思いますが、その際、実行環境がインストールされていないPCでも実行できるようにJREを同梱し配布することにライセンス上問題はありますでしょうか? 因みにアプリケーションは有償での配布を予定しております。 論拠などもお示し頂けると嬉しいです。 よろしくお願いします。
560 名前:デフォルトの名無しさん [2016/08/29(月) 17:53:07.10 ID:IWCj2egw.net] >>554 ライセンスは知らんがJRE配布ってどれだけ巨大になると思ってるの? 実行環境のインストールとかインストーラー起動するだけで出来るのに
561 名前:デフォルトの名無しさん mailto:sage [2016/08/29(月) 18:03:18.33 ID:C9HSRABQ.net] >>554 特に問題ないよ www.oracle.com/technetwork/java/javase/terms/license/index.html www.oracle.com/technetwork/jp/licenses/javase-dev-license-2595998-ja.html
562 名前:デフォルトの名無しさん mailto:sage [2016/08/29(月) 18:03:51.24 ID:C9HSRABQ.net] あとこれ https://www.java.com/ja/download/faq/distribution.xml
563 名前:デフォルトの名無しさん mailto:sage [2016/08/29(月) 18:07:41.39 ID:HSXk2xhn.net] 有償なら絶対にJRE配布の方がいい 動かんやないか金返さんかいボケェ!!!(JREが入ってない) 動かんやないか金返さんかいアホォ!!!(JREが古い) 動かんやないか金返さんかいドァホ!!!(JREが新しい) 動かんやないか金返さんかいコラァ!!!(JREのインストール失敗) 確実にこうなるから
564 名前:デフォルトの名無しさん mailto:sage [2016/08/29(月) 18:12:22.12 ID:C9HSRABQ.net] 経験談やめろ
565 名前:デフォルトの名無しさん [2016/08/29(月) 18:27:28.96 ID:IWCj2egw.net] >>558 そんな無能いるのか?
566 名前:デフォルトの名無しさん [2016/08/29(月) 18:28:17.44 ID:IWCj2egw.net] 動かんから金返せは動作チェック含めた体験版をWEB配布すればいいし
567 名前:デフォルトの名無しさん mailto:sage [2016/08/29(月) 18:40:23.84 ID:HSXk2xhn.net] ユーザーのITリテラシーを舐めてはいけない 機械音痴なお前の母ちゃんにプレイしてもらうくらいのつもりで丁度いい 体験版なんて「ジャカアしいわそんなもん知らんがなエエから金返せやワレェ!!!」で終わり
568 名前:デフォルトの名無しさん [2016/08/29(月) 18:44:32.90 ID:IWCj2egw.net] 購入ページに64pxくらいの赤文字で 「動作チェックの為に体験版で遊んでから購入して下さい。返金には一切応じません」って書いておけばいいやん それか体験版で遊んだら認証コードGET出来て認証コードないと買えないとか
569 名前:デフォルトの名無しさん mailto:sage [2016/08/29(月) 20:08:55.85 ID:BlZeW1Wo.net] >>553 何これ?
570 名前:デフォルトの名無しさん [2016/08/29(月) 21:14:26.99 ID:jQ52lz2j.net] JRE付きとなしを両方配布して、金はライセンスキーを売る形式にして、それは起動後に入力する事になるので多分苦情は減る。 ライセンスキー買ってくれなくても制限付きで少しは動くようにしといてそれを体験版ということにすれば良い。
571 名前:デフォルトの名無しさん mailto:sage [2016/08/29(月) 21:54:17.38 ID:ACcJrIRQ.net] 様々なご意見やご提案ありがとうございます! 大変参考になりました。 以前、同じくJavaで作ったゲームを公開した際に、フリーであるにも関わらず動作しない旨の苦情を多数頂いたもので、有償の場合どうなってしまうのかと考えたらJREを同梱してしまうのが良いのかなと思い相談させて頂きました。 これから公開方法については皆様から頂いたご意見を参考に決めたいと思います。 また、ライセンス絡みについて参考にするため、すでに公開されているJava製のゲームにJREが同梱されている例が無いか調べたところ、Windows環境下にも関わらずOracleのJREでは無くOpenJDK(?)が同梱されている例が見つかりました。 OpenJDKの理由や違いについては私の知識不足によりまだ分かっていませんが、皆様から頂いたアドバイスやURLによるとOracleのものでも全く問題はなさそうに思えるのでまた調べていきたいと思います。 ありがとうございました。
572 名前:デフォルトの名無しさん mailto:sage [2016/08/29(月) 23:00:52.88 ID:WaGPxa3J.net] 商品の管理するプログラムを考えてます 商品をオブジェクト、そのフィールドにpriceがあり、例えば日本円での価格をsetPrice()で設定したとして、 ・ある商品A、B、C は、ドルでの価格を知る必要がある ・ある商品A、 C、Dは、ユーロでの価格を知る必要がある ・それぞれのメソッドは、どの商品についても同じ処理 こういった場合のクラスの設計について、よい指針を教えてください ・商品クラスを継承したA、B、C、Dクラスに対し、A、B、CにgetDollarPrice()を、A、C、DにgetEuroPrice()をコピペで実装する ・商品クラスを継承したAC商品クラスにgetDollarPrice()、getEuroPrice()を実装。同じくB商品クラスにはgetDollarPrice()のみ、D商品クラスにはgetEuroPrice()のみを実装 ・基底の商品クラスにgetDollarPrice()、getEuroPrice()を実装する。継承したクラス側では、使わないメソッド(例えばDのgetDollarPrice())は何もしない処理でオーバーライド ・Public static calcDollar()、同calcEuro()といったメソッドを作成し、必要時に計算する 上ではドル・ユーロとしましたが、他にも元とかウォン等色々種類があり、そして商品ごとに必要な機能が不規則に異なっているので、 どう設計したらよいか悩んでいます ちなみの元のソースは、C++の多重継承を用いて実装されていました
573 名前:デフォルトの名無しさん [2016/08/30(火) 00:00:27.21 ID:vWqGzECl.net] >>567 デフォルトメソッドで多重継承できるよ 商品ごとにインタフェース実装しまくることになるから どのインターフェースを実装するか商品を階層的に分類できないときついかも すでに多重継承で実装できてるのならいけるかも!? Java9の標準ライブラリではJoda Moneyをもとにしたものが使われるんだって 中身の実装はこれとか https://java.net/projects/jjug/pages/Adopt-a-JSR-JavaSE9 www.joda.org/joda-money/
574 名前:デフォルトの名無しさん mailto:sage [2016/08/30(火) 00:00:29.88 ID:vcGs2dWd.net] >>567 getPriceがPriceクラスのオブジェクトを返す PriceクラスはasDollerやasEuroなど一通りの表現を実装するイミュータブルなクラスにする
575 名前:デフォルトの名無しさん mailto:sage [2016/08/30(火) 01:47:09.82 ID:TaoYiOtt.net] RPGのモンスタークラスと同じだろ 数百種類のモンスター型の、switch文を書きたくない場合、 数百種類のクラスを作って、自動的に各クラスが適切な処理をする つまり、仮想関数
576 名前:デフォルトの名無しさん mailto:sage [2016/08/30(火) 08:26:54.20 ID:agWpAPx4.net] getPrice(rate) return price * rate じゃだめ? 後はそれぞれの価格が欲しいところでレートを設定するだけでいいし商品クラスは常に同じ動きするし
577 名前:デフォルトの名無しさん mailto:sage [2016/08/30(火) 09:01:09.43 ID:vcGs2dWd.net] >>571 それはない それ呼び出す側がメソッド内で何やってるかを明らかに意識してるだろ 全く抽象化になってない、掛け算だけメソッド内でやる意味がない せめて変換メソッドを定義したCurrencyクラスのインスタンスを渡すとかするべき
578 名前:デフォルトの名無しさん mailto:sage [2016/08/30(火) 09:04:39.92 ID:qpyuPRUS.net] レスどうもありがとうございます >>568 interfaceの嵐になるのだろうなぁ、それでいいのかなぁ、と 悩みました リンク先など見て考えます >>569 なるほど Priceクラスもよいですね >>570 RPGは作ったことないですが、そんな風に実装されてるのですね ソースの大半がモンスタークラスの実装になりそうですね >>571 レートを換算するだけなので、実はそれでもよいです ただ、オブジェクトに換算後の値も持たせたいなぁ、と思ってます 換算すれば求まるデータならオブジェクトに持たせる必要ない、のかな?
579 名前:デフォルトの名無しさん [2016/08/30(火) 11:17:45.70 ID:vwHt2PHp.net] >>567 それ全通貨のレートを保持するクラス作っておいて、そのクラス経由で他の通貨への換算やれば良いだけでは?
580 名前:デフォルトの名無しさん mailto:sage [2016/08/30(火) 11:31:09.72 ID:xgpTgq7w.net] 個々の商品が同じレートで計算って事は現実的に無いと思うので、 void setPrice(Currency currency, String price) String getPrice(Currency currency) みたいなIFにして、内部ではHashMapで管理すれば、通貨が増えたらCurrencyのenum増やせばいいんじゃね?
581 名前:デフォルトの名無しさん [2016/08/30(火) 11:56:26.35 ID:vwHt2PHp.net] それだ
582 名前:デフォルトの名無しさん mailto:sage [2016/08/30(火) 19:05:48.03 ID:vv6Q96L1.net] javaで動いているプログラムを監視する目的で、JVMTIのMethodEntryイベントやMethodExitイベントを使って遊んでます JDIでも同じことが出来るみたいなのですが、こういったデバッガの拡張をeclipseなんかのIDEのプラグインで実装するにはどうすれば良いですか? 例えばIDEのエディタでブレークポイントを
583 名前:セットして、そのIDEでデバッグを実行したらBreakpointイベントで自分が実装した処理が行われる(ログが吐き出されるとか) 的なことがやってみたい [] [ここ壊れてます]
584 名前:デフォルトの名無しさん mailto:sage [2016/08/30(火) 19:31:07.82 ID:q9MYe/9f.net] まずは例えばで挙げられているソースコードを読んでみるのはどうですか
585 名前:デフォルトの名無しさん [2016/09/01(木) 18:07:14.17 ID:isvppOQZ.net] これを実行すると出力が1になるのですが、何故でしょうか。 @Integer inti = new Integer(0); AInteger intj = new Integer(1); Binti = intj; Cintj = 2; DSystem.out.println(inti); 自分の考えだと、 @intiが、値0のインスタンスを参照 Aintjが、値1のインスタンスを参照 Bintiが、intjが参照しているインスタンスを参照するように変更 Cintjが参照するインスタンスに値2を設定 Dintiもintjも同じインスタンスを参照してるはずなので出力は2 になるはずなんですが、1になります。
586 名前:デフォルトの名無しさん [2016/09/01(木) 18:17:12.59 ID:JZugZEHC.net] >>579 Integerは不変 もし不変じゃなかったとしても Cの所で intj.value=2;になる @intiに、値0のインスタンスの参照を代入 Aintjに、値1のインスタンスの参照を代入 Bintiに、intjのインスタンスの参照を代入(intj==intiになる) Cintjに、値2のインスタンスの参照を代入(自動ボックス化。コンパイラがnew Integer(2)に変換している) Dintiとintjは違うインスタンスを参照しているので値は1
587 名前:デフォルトの名無しさん [2016/09/01(木) 20:27:01.67 ID:K7BE+EFW.net] >>579 4の所は intj = new Integer(2); って書いてるのと同じだから。
588 名前:デフォルトの名無しさん [2016/09/01(木) 20:28:01.03 ID:K7BE+EFW.net] ってよく見たら既に書いてあるじゃないか。とほほ。
589 名前:デフォルトの名無しさん mailto:sage [2016/09/01(木) 20:52:55.20 ID:qC9ojyjS.net] ドンマイ、ガンバ
590 名前:デフォルトの名無しさん mailto:sage [2016/09/01(木) 20:53:01.09 ID:wr8HVpEY.net] とほほsan?
591 名前:デフォルトの名無しさん mailto:sage [2016/09/01(木) 21:15:27.70 ID:52Zd8aZn.net] 浦和レッズ、じゃじゃじゃじゃん
592 名前:デフォルトの名無しさん [2016/09/02(金) 10:23:18.49 ID:KWQoOgI3.net] Javaのゴミっぷりが酷い Java作ってる奴らって日本で言うところの小卒相当じゃね? 開発者とは名ばかりのゴミ集団なんだろうなJava開発団 JavaでAES暗号化したものがOpenSSLで復号できないとかJavaマジで糞すぎ まともに暗号化すらできないゴミ言語なら暗号化機能付けるな 暗号化関連のリファレンスとかあったら騙されて時間をドブに捨てる奴がいるだろうが プログラマを平均の数倍給料もらってる程有能でスキルある人材をなのにその騙して時間を無駄にした罪は重い 本当にJava作ってる奴等は頭のが馬鹿しかいないんだろうな 低機能を隠すために嘘リファレンス用意するとか人間的にも腐ってる
593 名前:デフォルトの名無しさん mailto:sage [2016/09/02(金) 11:07:29.18 ID:OcjKSC/i.net] ならば使わなければいいだけの話 選択肢色々あるので
594 名前:デフォルトの名無しさん mailto:sage [2016/09/02(金) 12:15:47.07 ID:Do4GNfXI.net] 小学生レベルだと勤め先に事欠くので選択肢はないよ
595 名前:デフォルトの名無しさん mailto:sage [2016/09/02(金) 12:37:29.73 ID:OcjKSC/i.net] そう感じるヤツがjavaを使わなければいいだけの話 利用するプログラミング言語の選択肢は色々あるので
596 名前:デフォルトの名無しさん mailto:sage [2016/09/02(金) 12:57:20.18 ID:7JZUO+bM.net] 感じる感じないではなく、無能には選ぶ権利などないってことでしゃろ それは無能なのが悪いのさハハハ
597 名前:デフォルトの名無しさん [2016/09/02(金) 13:58:50.62 ID:9E3FGjAM.net] コピペ?
598 名前:デフォルトの名無しさん mailto:sage [2016/09/02(金) 14:22:35.67 ID:K2h2z6zc.net] Integerクラスは内部で private final int value; となっている、変更できない 今回のケースでは intj = new Integer(2); ではなく intj = Integer.valueOf(2); だと思うよ。確認したければ以下を実行 Integer x_127 = 127; Integer y_127 = 127; System.out.println(x_127 == y_127); Integer x_128 = 128; Integer y_128 = 128; System.out.println(x_128 == y_128);
599 名前:デフォルトの名無しさん mailto:sage [2016/09/02(金) 14:24:42.32 ID:XtqKq5oJ.net] 実装依存な例を出してドヤ顔されましても
600 名前:デフォルトの名無しさん mailto:sage [2016/09/02(金) 14:35:56.34 ID:EpS7gvoK.net] auto boxingがどんな振る舞いなのかjavapして確認すればいいだけ
601 名前:デフォルトの名無しさん mailto:sage [2016/09/02(金) 14:46:29.69 ID:XtqKq5oJ.net] 実装依存と言われてるのにjavapすりゃわかるって見当違いにも程があんだろう https://docs.oracle.com/javase/specs/jls/se8/html/jls-5.html#jls-5.1.7 > Ideally, boxing a primitive value would always yield an identical reference. > In practice, this may not be feasible using existing implementation techniques. > The rule above is a pragmatic compromise, requiring that certain common values > always be boxed into indistinguishable objects. The implementation may cache these, lazily or eagerly. > For other values, the rule disallows any assumptions about the identity of the boxed values on the programmer's part. > This allows (but does not require) sharing of some or all of these references. > Notice that integer literals of type long are allowed, but not required, to be shared.
602 名前:デフォルトの名無しさん [2016/09/02(金) 16:08:02.77 ID:2aiJ4ZCT.net] \ ∩─ー、 ==== \/ ● 、_ `ヽ ====== / \( ● ● |つ | X_入__ノ ミ そんな餌で俺様が釣られクマ―― 、 (_/ ノ /⌒l /\___ノ゙_/ / ===== 〈 __ノ ==== \ \_ \ \___) \ ====== (´⌒ \ ___ \__ (´⌒;;(´⌒;; \___)___)(´;;⌒ (´⌒;; ズザザザ
603 名前:デフォルトの名無しさん [2016/09/02(金) 16:24:13.81 ID:2aiJ4ZCT.net] IntegerのインスタンスはStringと同様にnewした時に与えられた値を一切変更できないってだけの話。 死ぬまで産まれた時のまま変化しない。理由はそういう風に作られてるから。
604 名前:デフォルトの名無しさん [2016/09/02(金) 16:47:33.13 ID:9E3FGjAM.net] そもそも変更出来ない以前に代入しているからな〜
605 名前:デフォルトの名無しさん [2016/09/02(金) 17:27:32.29 ID:2aiJ4ZCT.net] ま、そうだね。イコール記号によって何が起きてるか理解する必要がある。
606 名前:デフォルトの名無しさん [2016/09/02(金) 20:47:33.20 ID:KWQoOgI3.net] 仕事だと好きな言語を使うわけにはいかないんだよ 多少まともなシステム組もうとするとJavaは本当に使えない こんな言語が蔓延してるのは小規模なおもちゃみたいなシステムしか作らないゴミグラマが多いからだろうな 小規模なおもちゃみたいなシステムならJavaが潜在的に持って致命的な欠陥が表面化しにくい その欠陥が表面化しないがために気付かずに使い続けてるんだろう JavaもJavaを好きで使ってるゴミグラマも業界の癌だ ゴミグラマがJava使わなければJavaはとっとと滅んで俺がJavaやることもなかっただろう もうゴミグラマになってしまった奴等はもうどうしようもないが これからピログラムを学ぼうとする初心者は絶対にJavaに手を出してはいけない 理由は明確でまともなシステムが作れないから Javaは画面のコンソールににHello World出すだけの専用言語だと思ってほぼ間違いない
607 名前:デフォルトの名無しさん mailto:sage [2016/09/02(金) 20:54:13.23 ID:BGbCtBYN.net] >>600 お勧めの言語は?
608 名前:デフォルトの名無しさん [2016/09/02(金) 20:54:50.64 ID:9E3FGjAM.net] >>600 一生PHPでも使ってろ
609 名前:デフォルトの名無しさん [2016/09/02(金) 21:26:24.38 ID:rtJoGFw4.net] >>600 サーバに画面は要らない。
610 名前:デフォルトの名無しさん [2016/09/02(金) 21:27:28.40 ID:rtJoGFw4.net] しかしピログラムを作るピログラマーは大変だなあ
611 名前:デフォルトの名無しさん [2016/09/02(金) 21:28:10.37 ID:rtJoGFw4.net] 毎日ピロピローってやってんのかなあ
612 名前:デフォルトの名無しさん mailto:sage [2016/09/02(金) 21:30:17.04 ID:Do4GNfXI.net] ピロピロ大人気で草
613 名前:デフォルトの名無しさん [2016/09/02(金) 21:32:33.55 ID:rtJoGFw4.net] 俺はペロペロしたいからペログラマーになりたいなあ
614 名前:デフォルトの名無しさん mailto:sage [2016/09/02(金) 21:36:27.49 ID:eA4EiN3M.net] お下種
615 名前:デフォルトの名無しさん [2016/09/02(金) 21:50:02.50 ID:vd1d7l3W.net] >>598 これ 不変かどうかは関係ない
616 名前:デフォルトの名無しさん [2016/09/02(金) 21:54:02.20 ID:9E3FGjAM.net] >>609 俺もjava始めた時は同じような事で勘違いしてたことあるから仕方ないんだとは思うけど 参照渡しは同じ変数なら同じ参照と思っていた
617 名前:デフォルトの名無しさん mailto:sage [2016/09/02(金) 22:05:57.89 ID:OcjKSC/i.net] >>600 仕事ならその欠陥を理論立ててプレゼンしな それで変わらないのであれば理屈が通ってない
618 名前:デフォルトの名無しさん [2016/09/02(金) 22:14:11.04 ID:9E3FGjAM.net] MSとOracleはもっと協力するべきだと思う javaAPIのほとんどをjavaで実装しているのは凄いけど文法はC#に劣る C#は逆 この二つ合わせたらもっと凄い言語出来そうだと思うけどな
619 名前:デフォルトの名無しさん mailto:sage [2016/09/02(金) 22:31:00.15 ID:LsVX2JMM.net] 言語は優秀なリーダーの独断で作ったほうがうまくいくんだよ JCPベースになって以来、JavaはIBMだのHPだのお偉いさん達が延々不毛な議論を続けるだけで完全に停滞 一方、ヘルスバーグの独裁により進化を続けるC# ただでさえグタグタなのにこのうえMSがJavaに参加したところで余計に話が進まなくなるだけ
620 名前:デフォルトの名無しさん mailto:sage [2016/09/02(金) 22:33:51.39 ID:Do4GNfXI.net] 同じ委員会による設計でも、C++は停滞期を乗り越えて前に進み始めたのに
621 名前:デフォルトの名無しさん [2016/09/02(金) 22:34:21.37 ID:9E3FGjAM.net] >>613 javaの進化が遅いのは分かる 最低限の機能追加しかしないし ただOS非依存はC#に比べて凄いよね そこはMSにも見習ってほしい
622 名前:デフォルトの名無しさん mailto:sage [2016/09/02(金) 22:36:53.73 ID:rtJoGFw4.net] MSはC#作る時にJavaも参考にしたからそうなっただけではないか? 今から更に何かをパクるってことはないと思うがなあ。
623 名前:デフォルトの名無しさん mailto:sage [2016/09/02(金) 22:37:45.17 ID:rtJoGFw4.net] >>616 は>>612
624 名前:デフォルトの名無しさん [2016/09/02(金) 22:40:05.90 ID:9E3FGjAM.net] 最低限getterとsetterくらいはいい加減実装するべきだと思うけどな 何でしないんだ
625 名前:デフォルトの名無しさん mailto:sage [2016/09/02(金) 22:44:57.42 ID:rtJoGFw4.net] そうだな。Delphiみたいなのできると書くのは楽だ。
626 名前:デフォルトの名無しさん mailto:sage [2016/09/02(金) 22:57:15.00 ID:Do4GNfXI.net] Write Once, Debug Everywhere
627 名前:デフォルトの名無しさん mailto:sage [2016/09/02(金) 23:18:36.86 ID:XtqKq5oJ.net] >>618 言語仕様見てみりゃわかるけど、1.1の段階ですでに名前空間はギッチリ使ってて 非互換な変更せずにプロパティの入れ込む余地がないからね。 非互換な変更する(最大限の互換性を残そうとするとルールが複雑になってかなり非直感的になる)か、 既存の名前空間を汚さないために .(ドット)以外の新しいセパレータ(例えば ->)使うか みたいな選択肢があったけど両方に批判意見が多数出て潰された。 この場合、C#は最初からプロパティ入ってるわけだから参考にならんし。
628 名前:デフォルトの名無しさん [2016/09/02(金) 23:33:45.29 ID:9E3FGjAM.net] >>621 そういう事だったのか 何かな…C#がOS非依存頑張っているみたいだしそっちに期待するしかない感じか
629 名前:デフォルトの名無しさん [2016/09/03(土) 20:59:43.99 ID:JL8qX3Tz.net] ritsuan.com/job/3992/ 【東京都 千代田区】IT分野/Java・Oracleでの開発エンジニア 1名以上募集 若手募集 給与 800,000円 これって高いの?
630 名前:デフォルトの名無しさん mailto:sage [2016/09/03(土) 21:05:02.63 ID:+PRxNCnW.net] 宣伝死ね いろんなスレに貼りやがって
631 名前:デフォルトの名無しさん mailto:sage [2016/09/03(土) 22:09:37.49 ID:40xaQyRE.net] 高い よってそれは大変怪しく危険を伴うと思われる
632 名前:デフォルトの名無しさん mailto:sage [2016/09/03(土) 23:39:15.67 ID:EfpbXZif.net] 安いだろ。たった80万って、アルバイトじゃあるまいし。 普通のJava開発エンジニアはそんな安月給じゃ やらねーよ。
633 名前:デフォルトの名無しさん mailto:sage [2016/09/04(日) 06:51:33.77 ID:5SDmlLW2.net] https://www.embarcadero.com/jp/products/delphi/downloads 現在、RAD Studio(Delphi、C++Builderのセット)が無料でダウンロード可能。 右側のStarter Edition100% Offをクリックするとダウンロードページに飛べます (無料ダウンロードは、2016年8月22日から9月9日までの期間限定)
634 名前:デフォルトの名無しさん mailto:sage [2016/09/04(日) 06:59:22.77 ID:5SDmlLW2.net] すいません、C++Builderはこっちです https://www.embarcadero.com/jp/products/cbuilder/downloads 現在、C++Builderが無料でダウンロード可能。 右側のStarter Edition100% Offをクリックするとダウンロードページに飛べます (無料ダウンロードは、2016年8月22日から9月9日までの期間限定) DelphiとC++Buiderは別個にダウンロードが必要な模様
635 名前:デフォルトの名無しさん mailto:sage [2016/09/04(日) 07:06:43.36 ID:5SDmlLW2.net] >>627 はDelphiのみでした
636 名前:デフォルトの名無しさん mailto:sage [2016/09/04(日) 09:46:15.11 ID:GZCXAM8t.net] ビルダー君!? クビになったはずじゃあ
637 名前:デフォルトの名無しさん mailto:sage [2016/09/04(日) 09:51:23.33 ID:QUGfdMOG.net] Javaスレまで出張して大変だなぁ
638 名前:デフォルトの名無しさん [2016/09/04(日) 13:49:17.76 ID:tMg9LZRt.net] お仕事案件 ritsuan.com/job/ JAVAを使った高収入の仕事がたくさんあるよ。
639 名前:デフォルトの名無しさん mailto:sage [2016/09/04(日) 18:16:57.65 ID:GZCXAM8t.net] 宣伝死ねって言ってんだろカス
640 名前:デフォルトの名無しさん [2016/09/04(日) 18:21:00.83 ID:sHUlk3QT.net] >>633 言ってないじゃん
641 名前:デフォルトの名無しさん mailto:sage [2016/09/04(日) 19:04:34.34 ID:QUGfdMOG.net] 翻訳職人も大変なんだなぁ
642 名前:デフォルトの名無しさん mailto:sage [2016/09/07(水) 13:24:43.50 ID:mT23pegE.net] コールバックのインタフェース実装をラムダで書くのと無名クラスで書くのはバイトコードレベルでは同じと思っていいのですか?
643 名前:デフォルトの名無しさん mailto:sage [2016/09/07(水) 13:29:37.45 ID:AYeaTwnR.net] バイトコード比べてみればいいじゃねえか
644 名前:デフォルトの名無しさん mailto:sage [2016/09/07(水) 14:40:10.63 ID:If+GZyVf.net] >>636 全然違う ラムダの実体は普通のインスタンスメソッド それをオブジェクトとして扱うために、C#のデリゲートの丸パクリに近い仕組みを導入している 今のJavaには金があるから、Sun時代のファッキンジェネリクスみたいなゴミとは違ってちゃんと根っこから作られてるんだよ その金の力をもってしても検査例外問題だけは解決できなかったみたいだけど
645 名前:デフォルトの名無しさん mailto:sage [2016/09/07(水) 16:07:32.88 ID:ADaEp/Ax.net] >>636 実装依存だからなんとも。 Java7のベータでラムダが追加されたばっかりの頃は、 将来的にはMethodHandleでやりたいけど まだ内部クラスのが早いってんで内部クラスを生成してた。 現状では java.lang.invoke.LambdaMetafactory経由で、 内部クラスのが早いままだったらそっち使って MethodHandleのが早くなってりゃそっち使うみたいな方式になってる。 これだと内部クラスとMethodHandle切り替えるときにクラスファイルを再コンパイルしなくていい。
646 名前:デフォルトの名無しさん [2016/09/07(水) 18:17:31.48 ID:j2Ek6+0O.net] timeAPIのクラスをJDBCで使うにはどうしたらいいですか
647 名前:デフォルトの名無しさん mailto:sage [2016/09/10(土) 01:46:14.32 ID:zqA5E91s.net] Windowsだと問題ないのですが、Linuxで実行するとメモリーリークが起こります。 だれか教えて
648 名前:デフォルトの名無しさん mailto:sage [2016/09/10(土) 01:57:06.97 ID:jg0zFfeW.net] Write once, run anywhere
649 名前:デフォルトの名無しさん mailto:sage [2016/09/10(土) 02:10:45.78 ID:b8k4DAtD.net] マルチポストは死んでしまえ
650 名前:デフォルトの名無しさん mailto:sage [2016/09/10(土) 03:50:00.05 ID:pSmBhaPA.net] Write once, bug anywhere
651 名前:デフォルトの名無しさん [2016/09/10(土) 05:45:34.31 ID:daVWdqqd.net] 東京電力のデータ通知遅延は一進一退、使用量の不明が5000件以上に www.itmedia.co.jp/smartjapan/articles/1609/09/news038.html まだ2/3が未確定だそうです
652 名前:デフォルトの名無しさん mailto:sage [2016/09/10(土) 11:33:39.39 ID:Jm2YrF8N.net] >>641 JavaVM の設定が違うという罠
653 名前:デフォルトの名無しさん [2016/09/11(日) 11:39:02.25 ID:mD3VVTFL.net] あー。メモリの設定とかのデフォルトが違うとか。
654 名前:デフォルトの名無しさん mailto:sage [2016/09/11(日) 11:45:21.69 ID:p4/MqqQS.net] >>465 東京電力は旧民主党が壊したという解釈でいいですか
655 名前:デフォルトの名無しさん mailto:sage [2016/09/11(日) 19:32:28.42 ID:4oqBJP6f.net] お、おう
656 名前:デフォルトの名無しさん [2016/09/11(日) 20:10:42.80 ID:PKjGYOYu.net] jsp servletでデータベースの接続の学習をしています。 以下のように、データベース接続の例外処理を行っていますが、 e.printStackTraceの情報はどこに表示されているのでしょうか? ログなど出力されるのでしょうか? try{ 接続〜SQL発行 result = prepared_statement.executeUpdate(); }catch(SQLException e){ e.printStackTrace(); }finally{ } return result; //呼び出し元に処理を戻す
657 名前:デフォルトの名無しさん [2016/09/11(日) 20:25:04.14 ID:pVB2WkOU.net] >>650 ソースはこうなってるから出力先は標準エラー出力でござる 標準エラー出力はリダイレクトとかしてなければターミナルに出力されるはずよ public void printStackTrace() { this.printStackTrace(System.err); }
658 名前:デフォルトの名無しさん mailto:sage [2016/09/11(日) 20:44:13.01 ID:559tM3Xe.net] >>650 質問とはズレるけど、それ最低最悪の例外処理だからそのまま真似しちゃダメだよ 実際にはエラーページに飛ばすとかしないと
659 名前:デフォルトの名無しさん [2016/09/11(日) 20:59:20.72 ID:PKjGYOYu.net] >>651 ありがとうでござる。 tomcatのweb server立ち上げて試しているのですが、 tomcatサービス立ち上げてもログはコンソール(teraterm)に流れてこないです。 viで試しているので、目に見えていない情報がいっぱいありそうです。 ServletからjavaBeansのモデルの中で処理を行っていますが、 Servletから出力するのは、response.getPrintWriterできますが、 モデルの中で出力するにはどうすればいいのでしょう。。 エラーの文字列返すか。。
660 名前:デフォルトの名無しさん [2016/09/11(日) 21:01:38.84 ID:PKjGYOYu.net] >>652 ありがとうございます。 そういった定石についても学んでいきたいのですが、 参考書にそう書いてあるのでとりあえず従っています。 初心者なのに、WEBアプリの開発を上流工程からさせられて、やばいです。
661 名前:デフォルトの名無しさん mailto:sage [2016/09/11(日) 21:04:52.35 ID:2XEAwmhY.net] log4jでも使えや
662 名前:デフォルトの名無しさん mailto:sage [2016/09/11(日) 21:05:59.11 ID:2XEAwmhY.net] JDKでもできるようになったっけ
663 名前:デフォルトの名無しさん [2016/09/11(日) 21:41:28.82 ID:pVB2WkOU.net] >>653 Tomcatなら標準エラー出力はcatalina.outに吐かれるんじゃないかな モデルでレスポンスを出力するならモデルにresponseを渡せばいいよ モデルから戻り値を返すのもあり なんでもあり、なんでもかんでもやってみたらいいよ
664 名前:デフォルトの名無しさん [2016/09/11(日) 22:05:33.11 ID:PKjGYOYu.net] >>657 ありがとうございます。 とりあえず、モデルにエラー変数追加して表示させました。 catalina.outにもエラーが表示されていました。 結局、テーブル名が間違っていたという単純なエラーでした。
665 名前:デフォルトの名無しさん [2016/09/11(日) 22:08:25.33 ID:PKjGYOYu.net] >>657 あと、戻り値をStringにしてエラーを返そうとしたら、 incompatible types: int cannot be converted to String String result = info.insertInfo(); となりました。 insertInfoでStringを返しているはずなのに、、、
666 名前:すとーかーっておうむのざんがい? mailto:age [2016/09/11(日) 22:21:52.89 ID:r+x1UEZu.net] ひアかレりフの輪 ざんねんきもきもがふつうぶっておめかししてすとーきんぐでちょづきまくり こうがいのすぽーつじむのしょくいんばいとはちかんちじょしかいないとくにゆとり 痴遅れの卑しい自分の子供使って付きまとう座声の面へら痴女ママ かっぷる ふうふで ぱんだでもみるように 垢の他人へのストーキングをイベントにするキショ残念愚民痴漢痴女っぷる しょうがいしゃ や しょうがいしゃあらうんど の ようは いやしい きちがいつかって ちかんちじょうかれさせて かると も きたちょうせん も ざいにち も どうわ も 『じんかくしょうがい』の く*み* すとーかーはしぬまですとーかーのきちがごきぶり ストーカーに年齢性別職掌関係なし 死ぬまで卑しい 羞恥心が乏しい地遅れだからしつこい すとーかーしねすとーかーしねすとーかーしねすとーかーしねすとーかーしね つきまといいっしんで ごまかしてこれは正当な痴漢痴女行為なんだ えっへん! 作為も卑しく残念 しねすとーかーしね^
667 名前:デフォルトの名無しさん [2016/09/11(日) 22:32:32.51 ID:pVB2WkOU.net] >>659 エラーメッセージ様はintをStringに変換できませんでしたって述べておられるから エラーメッセージを真と仮定するならinsertInfoはintを返すはずよ もっかいソースコード眺めてみたほうがいいかも
668 名前:デフォルトの名無しさん mailto:sage [2016/09/12(月) 02:29:30.20 ID:8MZ1cj6o.net] >>661 さっき、何度も見たけどString返してたけど、コンパイル通りませんでした。 多分疲れているんでまた今度試してみます。
669 名前:デフォルトの名無しさん [2016/09/12(月) 06:55:22.80 ID:cr9LkrO9.net] >>662 String result = info.insertInfo(); もしかしてここでStringと書いてるからinsertInfoでStringを返してると言ってる? int insertInfo() { ... } insertInfoの定義がこうなってるなら String result = Integer.toString(info.insertInfo()); というふうに変換しないといけないよ
670 名前:デフォルトの名無しさん mailto:sage [2016/09/12(月) 08:31:24.36 ID:8MZ1cj6o.net] >>663 メソッドの方もStringになってるです。 幻覚を見てるのかも
671 名前:デフォルトの名無しさん mailto:sage [2016/09/12(月) 11:29:35.58 ID:fvTL8pNH.net] >>664 しかしStringではないものを代入しようとしない限りコンパイラはあのエラーを出さないと思うよ。 よーく調べてみた方が良い。
672 名前:デフォルトの名無しさん mailto:sage [2016/09/12(月) 13:47:25.03 ID:8PS1rtVg.net] 自分の作ったものが正しいとかコンパイラがバグってるとか 頭にある内は見つからないよ。
673 名前:デフォルトの名無しさん mailto:sage [2016/09/12(月) 14:03:52.85 ID:B4q/HnSc.net] 日本語の文字列をmysqlのDBにutf-8で書き込む場合、 その文字列が入ったString型の変数のgetBytesメソッドでエンコーディングにutf-8を指定して、utf-8のバイト配列にしてから書き込まないと駄目なんですか?
674 名前:デフォルトの名無しさん mailto:sage [2016/09/12(月) 14:24:52.06 ID:2jOVWf1c.net] そうやってみて上手くいくならいいじゃない 何か不具合あったならエラー内容とか書かないとだめよ
675 名前:デフォルトの名無しさん mailto:sage [2016/09/12(月) 14:42:18.88 ID:B4q/HnSc.net] 回答になってねーんだよ 出来たからオッケーじゃねーんだよ このやり方が正しいのか確認するために質問してんだよ わかんねーなら回答すんなよボケ! 二度と来ねーよカス!
676 名前:デフォルトの名無しさん mailto:sage [2016/09/12(月) 14:44:25.17 ID:sJaisqrH.net] 正確さを求めるならJDBCのJavadocとコネクタドライバの仕様とMySQLのマニュアルを読むべき どこの誰とも知らない馬の骨に何を期待して質問しているのか
677 名前:デフォルトの名無しさん mailto:sage [2016/09/12(月) 19:08:16.10 ID:X9a/086M.net] >>669 ばーか、ばーか!お前のかーちゃんでーべーそー! 二度と来るな!
678 名前:デフォルトの名無しさん mailto:sage [2016/09/12(月) 22:13:59.24 ID:6644IPRT.net] みんなオールオッケー
679 名前:デフォルトの名無しさん mailto:sage [2016/09/13(火) 13:50:27.50 ID:VhMCeniD.net] Javaに標準でJSONをデコードするクラスが無いようなんですが、 外部のライブラリで一番使われてるのってJSONICですか?
680 名前:デフォルトの名無しさん mailto:sage [2016/09/13(火) 14:17:25.77 ID:Q6FjZOsZ8] 自分用にとあるアプリを作りました。 お気に入りのいいものができました。 人に見せたら自分にもくれといわれました。 でも人に渡すときってjarファイルで渡さないですよね? Vectorとかでダウンロードするときにjarファイルのものとか見たことないし。 通常はこういう時はどういう風にして配布するんですか?
681 名前:デフォルトの名無しさん mailto:sage [2016/09/13(火) 23:51:08.74 ID:7uOfP430.net] Jacksonでしょ
682 名前:デフォルトの名無しさん mailto:sage [2016/09/14(水) 11:00:08.38 ID:Ny+1w2tY.net] そもそも仕様とか詳細書かずに正確な答えを求めること自体ただの脳足りん
683 名前:デフォルトの名無しさん [2016/09/14(水) 18:08:31.13 ID:5MgbrOE1.net] 何故WEB.xmlは <servlet> <servlet-name></servlet-name> <servlet-class></servlet-class> </servlet> <servlet-mapping> <servlet-name></servlet-name> <url-pattern></url-pattern> </servlet-mapping> みたいに書かないといけないんですか? <servlet> <servlet-class></servlet-class> <url-pattern></url-pattern> </servlet> だけで十分だと思うんですが
684 名前:デフォルトの名無しさん mailto:sage [2016/09/14(水) 18:29:44.99 ID:ZbLz4+NF.net] DBの正規化と目指してる物は同じ 重複排除
685 名前:デフォルトの名無しさん mailto:sage [2016/09/14(水) 18:56:36.36 ID:HnooT/fk.net] Struts2とかでWEB.xmlをみてると、これって本当に世の仕組みを便利にしてるのか?と いつも疑問 画面デザインとビジネスロジックを分割と聞くけど、ビジネスロジックの実装側に 変なシワ寄せがいってるだけでないのかねこの仕組み XMLファイルを編集せよとか普通に解説されてるの見てると、そんなこと人間様に やらせることじゃないだろと Eclipseとかで、ソース群とかアノテーションとか見てWEB.xmlを自動編集してくれるプラグイン、 みたいなのでもあるのかな
686 名前:デフォルトの名無しさん mailto:sage [2016/09/14(水) 19:06:02.66 ID:Adg+xGfe.net] ごもっとも だから今時は、RoRやSpringのように分かりきった設定をなるべく省く「設定より規約」なスタイルが勢力を伸ばし続けている
687 名前:デフォルトの名無しさん mailto:sage [2016/09/14(水) 19:22:11.50 ID:ZbLz4+NF.net] 冗長な言語が好きな人は冗長なファイルフォーマットも好むのだろう
688 名前:デフォルトの名無しさん mailto:sage [2016/09/15(木) 00:25:54.35 ID:1vAlL3U2.net] rubyとかで作ってるとすんげぇ楽しいもんな ありゃいい意味でも悪い意味でも悪魔の言語だわ
689 名前:デフォルトの名無しさん [2016/09/15(木) 00:56:24.01 ID:oRDA5p37.net] rubyは動的なのがな scalaが本当楽しい。jvmで動くから速度はjavaと変わらない
690 名前:デフォルトの名無しさん mailto:sage [2016/09/15(木) 04:56:32.86 ID:ql+kvaik.net] そりゃ、Ruby, Python, Groovy などの設定ファイルは読みやすいし、手続きも書ける。 これらは、DSL向きの言語 Chef はRuby Ansible はPython Gradle はGroovy
691 名前:デフォルトの名無しさん mailto:sage [2016/09/15(木) 07:19:42.61 ID:Cj/yMtkH.net] AnsibleはYAMLだぞ 設定ファイルとして宣言的に書けば十分なものに手続き型言語を使うべきではない
692 名前:デフォルトの名無しさん mailto:sage [2016/09/15(木) 07:28:08.00 ID:Spuf+iD1.net] ChefのレシピはJavaやXMLの冗長さとは別方面でクソみたいな可読性だしやってらんない
693 名前:デフォルトの名無しさん mailto:sage [2016/09/15(木) 12:44:38.64 ID:Dfv6m4lx.net] そういうのは他のシステムへの移行のハードルを高くしたうえで 破壊的変更で殺しに来ると聞いた
694 名前:デフォルトの名無しさん mailto:sage [2016/09/15(木) 17:35:59.82 ID:/mm1ywhy.net] ResultSetとかPreparedStatement、Connectionをクローズしなかった場合どうなるんでしょうか? メソッド抜けた時点で勝手にクローズされますか?
695 名前:デフォルトの名無しさん mailto:sage [2016/09/15(木) 17:37:48.18 ID:Spuf+iD1.net] されない 不精せず始末せよ
696 名前:デフォルトの名無しさん [2016/09/15(木) 17:44:04.48 ID:oRDA5p37.net] CGでクローズされないの?いつもクローズしないで放置してたけど
697 名前:デフォルトの名無しさん mailto:sage [2016/09/15(木) 17:47:59.95 ID:/mm1ywhy.net] >>689 まじですか。。 ありがとうございました。
698 名前:デフォルトの名無しさん mailto:sage [2016/09/15(木) 18:49:04.26 ID:UvKwsW6o.net] finalizeメソッド内でリソースの解放は行ってくれると思うけど、自分でclose呼ぶようにする try-with-resource 使って実装すればよい
699 名前:デフォルトの名無しさん mailto:sage [2016/09/15(木) 19:13:18.95 ID:/mm1ywhy.net] >>692 これ変なインターフェース実装しなきゃならないんですね うーんありがとうございました
700 名前:デフォルトの名無しさん [2016/09/15(木) 19:36:05.11 ID:oRDA5p37.net] 変なって何が変なんだよ
701 名前:デフォルトの名無しさん mailto:sage [2016/09/15(木) 19:50:03.74 ID:1tr3czZy.net] >>690 CG でクローズされることとメソッド抜けたときにクローズされないことは矛盾しない
702 名前:デフォルトの名無しさん [2016/09/15(木) 19:54:19.82 ID:oRDA5p37.net] >>695 それはそうだけど それだと問題ある?
703 名前:デフォルトの名無しさん mailto:sage [2016/09/15(木) 20:01:26.05 ID:1tr3czZy.net] >>696 問題があるかどうかは ID:/mm1ywhy が判断すればいい
704 名前:デフォルトの名無しさん [2016/09/15(木) 20:22:59.99 ID:/kYv9QqQ.net] >>696 ガベージコレクタは呼ばれるとは限らないから すぐにプロセスが終了するようなプログラムなら 問題にならないんだけどWebアプリケーションのように ずっと稼働しててDBに接続するたびに新しいコネクション張ってたら メモリオーバーフローやコネクションプールが枯渇して 接続できなくなる可能性がある サーバでぶんぶん動作してるアプリでは死活問題 なのでプログラムで開いたものはプログラムで閉じるようにしたがよいよ
705 名前:デフォルトの名無しさん [2016/09/15(木) 20:25:17.93 ID:oRDA5p37.net] >>698 そうなのか メモリが多いとあまりGCされないとか?
706 名前:デフォルトの名無しさん [2016/09/15(木) 20:28:15.13 ID:/kYv9QqQ.net] 開けたら閉める!おトイレのように自動で止まればいんだけどね 閉じてもよいという判断を自動的に行うのは難しいのだろうね 参照カウント方式のガベージコレクタならデストラクタに お任せで行けるかもしれないけど これだけ参照カウントでーみたいな機能があればいいのに
707 名前:デフォルトの名無しさん [2016/09/15(木) 20:33:25.67 ID:/kYv9QqQ.net] >>699 うん、JVMがGCが必要じゃーと判断したときしかGCされないよ
708 名前:デフォルトの名無しさん [2016/09/15(木) 20:43:58.53 ID:oRDA5p37.net] >>701 なるほど サンクス
709 名前:デフォルトの名無しさん mailto:sage [2016/09/16(金) 08:10:33.93 ID:6a7QMzs2.net] メモリの容量が大きいほど、GCされなくなるし、 1回のGCにかかる時間が、大きくなる メジャーGCだと、1秒以上、システムが止まるんじゃね?
710 名前:デフォルトの名無しさん mailto:sage [2016/09/16(金) 09:44:01.36 ID:Yu959LLR.net] 開けたら閉じろの法則があったけど名前思い出せないわ とりあえずGCなんて往々にして意図して動いてくれない AutoClosableとかも上手く使って閉じようぜ
711 名前:デフォルトの名無しさん [2016/09/16(金) 12:34:04.73 ID:maMiAkaM.net] Java ってGCが最後まで参照してるって考え方なのかな? まあそうじゃなきゃプログラム中からの参照なくなってもまだクローズされずに残存なんてありえないか。
712 名前:デフォルトの名無しさん mailto:sage [2016/09/16(金) 13:20:35.49 ID:lB/89/ry.net] 参照カウント方式じゃないから、 他から参照されなくなったオブジェクトが即座に回収されるわけじゃないってだけ。 マークアンドスイープ方式だとGCは凄く重い処理なので 必要ないならGCしない戦略を取るってのもよくあるし。
713 名前:デフォルトの名無しさん mailto:sage [2016/09/16(金) 13:44:53.96 ID:y8tfoIHL.net] そもそもJavaのGCは種類がいくつかあるし バージョンによってデフォルトGC も変わるし(Java9でG1 GCになるし) GCでやってくれるだろうって考えはやだなぁ 閉じる処理が冗長と思うならそういう機構を作るか別の言語を使うしかない
714 名前:デフォルトの名無しさん mailto:sage [2016/09/16(金) 14:43:50.93 ID:LunKPrNc.net] >>705 GCはJVMのメモリ空間全体とその中の全オブジェクトを掌握して管理する神なんだよ オブジェクトが不要になったかどうかを決めるのもGCだ GCが参照してるとか全く見当違い
715 名前:デフォルトの名無しさん [2016/09/16(金) 16:16:35.47 ID:IBT/7Zvo.net] >>708 そりゃ表現の問題
716 名前:デフォルトの名無しさん mailto:sage [2016/09/17(土) 10:17:01.00 ID:vLB8cUPo.net] >>709 702の考え方をふまえたら どう見ても間違ってるだろう
717 名前:デフォルトの名無しさん mailto:sage [2016/09/17(土) 14:49:41.73 ID:cMEKk4hI.net] GC云々じゃなく自分でcloseしろって話 っでcloseはtry-with-resourceで行う closeもまともに出来ないなら不要な参照残してメモリリークもしてるだろうし
718 名前:デフォルトの名無しさん [2016/09/17(土) 21:42:19.54 ID:u5XAfxF2.net] >>710 間違ってないじゃん 単に考え方のこと書いてるだけだし
719 名前:デフォルトの名無しさん mailto:sage [2016/09/18(日) 01:38:39.82 ID:zGPqs7bR.net] そういえば新明解Java出てたが相変わらず演習解答は別なのね
720 名前:デフォルトの名無しさん [2016/09/18(日) 08:12:44.58 ID:PkHkhVtLw] public static void main string args signed unsigned double どんだけ無駄なオマジナイ唱えりゃ気が済むんだよこの情弱糞言語は
721 名前:デフォルトの名無しさん mailto:sage [2016/09/18(日) 12:21:31.71 ID:4g2AQj9i.net] FWやAPIの呼び出し先でcloseされる事が保証されてる場合もあるからなんでもcloseすればいいという訳じゃない。 大抵は冗長なcloseしても動作はするけど、ストリーム等を引数に持つFWやライブラリのドキュメントは読んでおいた方がいいかな。 でもドキュメントに記載なく呼び出し先でcloseしてるものも結構あるから結局ソース読むことになる。 個人的にはリソースを読み出したスコープでcloseするのがいいと思う。 レビューしてると closeしてねーじゃねーか→ライブラリのドキュメントを読む→ライブラリのソースを読む→ok or ng closeしてる→ライブラリのドキュメントを読む→ライブラリのソースを読む→冗長なcloseじゃねーか→動いているけどng出すこともある ここまでチェックするのは少し面倒なので。
722 名前:デフォルトの名無しさん mailto:sage [2016/09/18(日) 14:59:37.77 ID:mx2jBCOo.net] try-with-resources構文使えばだいたいは問題なくなるんじゃないか?
723 名前:デフォルトの名無しさん [2016/09/18(日) 16:54:15.10 ID:p7R04v9o.net] replaceAllで文字列「1900/01/00 15:00:00」の「15:00:00」だけ取り出したいんだができない。 fruit[3] = fruit[3].replaceAll("[^([0-9][0-9]:[0-9][0-9]:[0-9][0-9])]", "$1"); ↑こうじゃないの?
724 名前:デフォルトの名無しさん [2016/09/18(日) 18:26:14.39 ID:brjZnsh0.net] >>717 [^([0-9][0-9]:[0-9][0-9]:[0-9][0-9])] このパターン? なんか全体が [^ ... ] に括られているようだが、なぜそんなことをする?
725 名前:デフォルトの名無しさん [2016/09/18(日) 20:31:56.98 ID:OjVGO9qP.net] >>717 置換でやるなら文字列全部を対象にして置き換える必要があるよ replaceAll("^.*(\\d{2}:\\d{2}:\\d{2})$", "$1")
726 名前:デフォルトの名無しさん mailto:sage [2016/09/18(日) 20:53:52.07 ID:9WNYi/6w.net] 行頭から最初の1つ以上の空白文字までの削除をするだけで良いならこれでも結果は同じになる筈。 replaceFirst("^.*?\\s+", "")
727 名前:デフォルトの名無しさん mailto:sage [2016/09/18(日) 21:35:36.42 ID:JX2UIjQm.net] clone()作るとき、コピーコンストラクタ作っておいて、 clone()はコピーコンストラクタの結果を返却するだけのほうが簡単だと思うのだけど、 なんでそうしないの? スーパークラスがコピーコンストラクタを持ってるとは限らないから?
728 名前:デフォルトの名無しさん mailto:sage [2016/09/18(日) 21:39:21.29 ID:FLMBUfED.net] >>721 C#だとcloneは役に立たないということで実際非推奨になってるよ コピーコンストラクタの方が優れてる
729 名前:デフォルトの名無しさん [2016/09/22(木) 12:50:19.43 ID:m6O3ZCtr.net] H行W列の2次元配列 arr から順次に列を取得する方法を教えてくれ
730 名前:デフォルトの名無しさん [2016/09/22(木) 14:23:25.39 ID:m6O3ZCtr.net] >>723 だけど自己解決しました
731 名前:デフォルトの名無しさん mailto:sage [2016/09/22(木) 14:29:14.07 ID:7wkfE+LH.net] TemplateA<ClassA>みたいなクラスを引数に持つメソッドを使うために、とある変数をTemplateA<ClassA>へダイナミックキャストしたいのですけど、 このときの型チェックwarningを消すにはsuppresseswarningするしかないですかね? 実行時にはgenericsの型情報が失われるのでTemplateA<?>かどうかの型チェックしか実施できないのですけど それだと先のメソッドが呼べないのです
732 名前:デフォルトの名無しさん [2016/09/22(木) 16:57:50.06 ID:BB3TxeNc.net] javaでインポートする時に.*が付くものがありますが何か意味ってあるんですか? import java.awt.*; みたいなやつです
733 名前:デフォルトの名無しさん mailto:sage [2016/09/22(木) 17:23:59.61 ID:E7kraiVr.net] G○○○○ ○G○○○ ○○R○○ ○○○K○ ○○○○S
734 名前:デフォルトの名無しさん [2016/09/22(木) 18:17:21.30 ID:BB3TxeNc.net] ググってないとでも思ってんのかks 知らないなら黙ってろよハゲでデブで頭のネジが外れたアスペルガーサイコパスホモクズゴミ馬鹿低血圧野郎
735 名前:デフォルトの名無しさん mailto:sage [2016/09/22(木) 18:22:33.43 ID:m3h8CZoW.net] うーん、語彙の乏しい罵倒だ
736 名前:デフォルトの名無しさん mailto:sage [2016/09/22(木) 18:31:45.84 ID:KCZrpDJE.net] ggrと三番目にこれが出てくるが www.acroquest.co.jp/webworkshop/java_course/J_lecture13.html 追記:自己紹介は不要です
737 名前:デフォルトの名無しさん [2016/09/22(木) 18:47:37.95 ID:/puzguTR.net] >>726 全部インポート
738 名前:デフォルトの名無しさん mailto:sage [2016/09/22(木) 19:03:26.42 ID:bqhINfKV.net] 調べ方を知らないだけでボロクソ
739 名前:デフォルトの名無しさん [2016/09/22(木) 19:27:11.74 ID:/puzguTR.net] 俺も最初は意味分からなかったし、気持ちは分かる import パッメージ名.クラス名; みたいな説明してあって、ドットが沢山ある意味が分からなかった
740 名前:デフォルトの名無しさん mailto:sage [2016/09/22(木) 19:35:49.34 ID:9oQWhw/A.net] でもimportに関しては入門書の最初の方に書いてありそうな気がするなあ。
741 名前:デフォルトの名無しさん mailto:sage [2016/09/22(木) 20:33:16.67 ID:BB3TxeNc.net] 助かりましたありがとうございます。
742 名前:デフォルトの名無しさん [2016/09/22(木) 20:43:01.48 ID:/puzguTR.net] 何この態度の変わり方
743 名前:デフォルトの名無しさん [2016/09/22(木) 20:47:11.48 ID:m6O3ZCtr.net] プログラミング全般に言えるんだけど、 「俺が今やってることは、実はもっと効率的で簡単なやり方がある」って思う時、どのレベルまで調べたらいいもんかね? 思う度にチェックしてるようじゃ勉強ペースも落ちるし、だからといって次々と次の作業に取りかかって行ってたらtips的な成長が無くなる
744 名前:デフォルトの名無しさん [2016/09/22(木) 22:02:38.21 ID:kFEjEuAm.net] >>737 思う度に調べろ なんだかんだそれが一番効率的
745 名前:デフォルトの名無しさん mailto:sage [2016/09/22(木) 22:13:11.46 ID:uYY6QRZp.net] 趣味なんだから好きにすれば
746 名前:デフォルトの名無しさん mailto:sage [2016/09/22(木) 23:43:05.96 ID:9oQWhw/A.net] 仕事が滞らない程度にやればいいのでは?
747 名前:デフォルトの名無しさん [2016/09/23(金) 00:05:37.74 ID:+JsUAn66.net] mysqlのJDNI接続がうまくできなくて、いろいろネットで調べたりしてるんですけど、たくさんあってどれを参考にしたらいいかわかんないんですけど、オススメのサイトだったり参考書だったりありますか
748 名前:デフォルトの名無しさん [2016/09/23(金) 01:11:56.94 ID:wN+HuPEq.net] >>738 うそだ 絶対うそだ それで何度失敗したか
749 名前:デフォルトの名無しさん [2016/09/23(金) 01:18:01.08 ID:+JsUAn66.net] ネットで検索してその通りにやっても上手くいかないことありますよね
750 名前:デフォルトの名無しさん mailto:sage [2016/09/23(金) 01:33:34.61 ID:R5xwyRtT.net] 調べてたらいつのまにか数学の勉強始めてた
751 名前:デフォルトの名無しさん [2016/09/23(金) 02:08:55.71 ID:+JsUAn66.net] 最近は数学すすめてくるからなw
752 名前:デフォルトの名無しさん mailto:sage [2016/09/23(金) 08:59:10.42 ID:Q2M4AuON.net] プログラミングはパズルににてると思ってる
753 名前:デフォルトの名無しさん mailto:sage [2016/09/23(金) 09:21:18.36 ID:AqTRNsCZ.net] ロジックを駆使して解を導くところは似ているが 出題者という神がいない点が大きく異なる
754 名前:デフォルトの名無しさん [2016/09/23(金) 09:32:10.44 ID:5eSe/oWi.net] 出題者はクライアントじゃね
755 名前:デフォルトの名無しさん mailto:sage [2016/09/23(金) 10:31:32.00 ID:ASDlv6FX.net] >>741 環境ぐらい書けよ
756 名前:デフォルトの名無しさん [2016/09/23(金) 11:39:55.10 ID:4Bc1n1Q4.net] >>742 ,743 有象無象のブログ記事とかしか調べないからだろ 仕様書とか一次ソースを調べろ
757 名前:デフォルトの名無しさん [2016/09/23(金) 12:55:09.12 ID:zs6gGpBI.net] 条件付きでインスタンスを作成するstaticメソッドがあります class ClassFoo extends Base implements BaseIF { public static ClassFoo newInstanceWithCondition(Condition c) { /* ... */ } } class ClassBaa extends Base implements BaseIF { public static ClassBaa newInstanceWithCondition(Condition c) { /* ... */ } } このメソッドをforeachで呼びたい場合、どのようにすれば良いでしょうか // こんな感じのことがやりたい List<Base> result = new ArrayList<>(); List<Class<? extends Base>>(/* メソッド実装したクラス群 */).forEach(e -> { result.add(e.newInstanceWithCondition(c)) }); builderメソッドを別に作って全クラス列挙するのはできれば避けたいなと。。。
758 名前:デフォルトの名無しさん mailto:sage [2016/09/23(金) 15:34:09.55 ID:Dg83AA8f.net] >>751 https://ideone.com/nb6DeB リフレクションを使うとか
759 名前:デフォルトの名無しさん mailto:sage [2016/09/23(金) 16:54:14.60 ID:GrnQo8ND.net] HashMapのキーを弄ってhashCodeが変わったときは やはり消して入れ直す操作が必要でしょうか
760 名前:デフォルトの名無しさん [2016/09/23(金) 16:55:49.26 ID:Da0YgZYz.net] 可変オブジェクトをキーに使うな
761 名前:デフォルトの名無しさん mailto:sage [2016/09/23(金) 17:39:53.88 ID:wkrJ8I5/.net] >>751 リフレクション使えばいけると思うけど、あなたのやろうとしていることはそもそもJavaっぽくない 名前や引数が同じなら同じものと考えるのはRubyとか他の言語ならあるけどJavaだと別物なのだからforeachで回そうとするのがそもそも間違いだと思うよ(そもそもきっとBaseにキャストするんだろうけどそれぞれ返却する値さえ違うし....) メソッド名から鑑みるにシングルトンではなく毎回インスタンスを作成しているみたいだし、絶対に静的なファクトリーパターンが必要なのか見直してみたほうがいいと思う
762 名前:デフォルトの名無しさん mailto:sage [2016/09/23(金) 18:56:56.09 ID:ytBluy/j.net] >>751 教科書的な回答としては、Abstract Factoryでググれ
763 名前:デフォルトの名無しさん mailto:sage [2016/09/23(金) 20:54:31.63 ID:79Xjahxb.net] ID変わってるかもですが747です レスくださった方ありがとうございます リフレクション、abstract factoryどちらともやりたいことができました やろうとしていたことは動的なベルトコンベアみたいなもので、 たとえばHttpRequestに応じて必要な分だけFilterをつなぐ (1) zlib.inflate() (2) Base64.decode() (3) JSON.parse() みたいな各Filterを一番外側で必要な分だけインスタンス化してchainにつなぐイメージです 上記の例では全部Singletonでできそうですが、実際の処理はもっと複雑で毎回newする必要がありました こういうのはJavaっぽくない処理なのでしょうか・・・申し訳ありません
764 名前:デフォルトの名無しさん mailto:sage [2016/09/23(金) 21:09:12.36 ID:6jb3Iz8l.net] その質問はナンセンスだな Javaぽくなかったら止めるのか その程度だったら別の方法考えとけ
765 名前:デフォルトの名無しさん mailto:sage [2016/09/23(金) 21:11:47.41 ID:GrnQo8ND.net] なるほど ありがとうございます
766 名前:デフォルトの名無しさん mailto:sage [2016/09/23(金) 21:14:08.07 ID:xWgfj234.net] servletにはfilterがあるが www.techscore.com/tech/Java/JavaEE/Servlet/6/
767 名前:デフォルトの名無しさん mailto:sage [2016/09/23(金) 21:20:22.94 ID:wkM5dFar.net] すまん、言葉が足りなかったわ 俺がJavaっぽくないっていうのは名前や引数が同じだから一括で処理出来るって思っているところね newInstanceメソッドは名前や引数は同じだけど同じメソッドから継承されているわけじゃないでしょ(そもそも出来ないし) >>757 は条件にあったフィルターをまとめてそのあと一括で処理したいってことでいいのかな? そもそもフィルターにそれぞれ違う条件があるならフィルターをfor文で一括で作成は出来なくない? まとめたフィルターはfor文で一括で処理出来るだろうけど まぁ作成処理を共通化させたいならファクトリークラスでHttpRequest引数にListに条件に合わせてフィルター追加していけばいいんじゃないかな 条件次第で追加とかは泥臭く感じるだろうけど 泥臭い部分を逆に泥臭く書かないようにすると逆にどうしようもなくなるから泥臭く書けばいいと思う
768 名前:デフォルトの名無しさん mailto:sage [2016/09/23(金) 22:00:55.95 ID:xWgfj234.net] 素人でしたということか
769 名前:デフォルトの名無しさん mailto:sage [2016/09/23(金) 22:18:23.06 ID:79Xjahxb.net] >>761 まさにおっしゃるとおりで、staticメソッドの継承を言語機能でサポートしていないのでどうしようってところが質問のスタート地点です Base (BaseIF)に書ければよかったんですが、staticだから書けないというか意味がない、でも全派生クラスに持たせたい、どうしよう、と リフレクションの場合は直接的にできますが、無理矢理な感じがします Factoryは必要なクラスが増えるけどすんなり納得できました ただ、そもそもそういうのが必要になった時点で設計を見直すべきなのかもしれません >>760 今回JavaEEは使っていません お勉強をかねてSocket作るところから自作していますが、最終的にはNettyを使うことになるかと思います
770 名前:デフォルトの名無しさん mailto:sage [2016/09/23(金) 22:27:53.92 ID:Bla+oVr/.net] 使うとか使わないじゃなく 「実装例として参考になるんじゃね」 って、言ってるんだと思うよ
771 名前:デフォルトの名無しさん mailto:sage [2016/09/24(土) 00:01:14.92 ID:CcnATw2b.net] >>757 一昔前に流行ったDependency Injectionってやつだね。
772 名前:デフォルトの名無しさん [2016/09/24(土) 00:26:48.28 ID:V/nU9HG+.net] 【ワカヤマン】Javaプログラミング能力認定試験 [無断転載禁止](c)2ch.net hanabi.2ch.net/test/read.cgi/lic/1454946517/
773 名前:デフォルトの名無しさん mailto:sage [2016/09/24(土) 05:16:30.74 ID:Lk9DTO7g.net] HttpURLConnectionのgetInputStreamを呼び出さなかったとき 内部のストリームは自動でクローズされますか? されるとしたらどうやっているんですか?
774 名前:デフォルトの名無しさん mailto:sage [2016/09/24(土) 07:21:15.97 ID:hsY2X9yo.net] されない そもそも > 単一の要求を行う際には個々の HttpURLConnection インスタンスが使用されますが、その背後の HTTP サーバーへのネットワーク接続は、ほかのインスタンスと透過的に共有される可能性があります。 > 要求後、HttpURLConnection の InputStream または OutputStream 上で close() メソッドを呼び出すと、そのインスタンスに関連付けられていたネットワークリソースが解放される可能性がありますが、共有されている持続接続への影響はまったくありません > disconnect() メソッドを呼び出した場合、持続接続がその時点でアイドル状態になっていれば、使用していたソケットがクローズされる可能性があります。 docs.oracle.com/javase/jp/6/api/java/net/HttpURLConnection.html と書かれているように、HttpURLConnectionの背後で使用される接続(ソケットのこと)は、明示的かつ強制的には閉じることができない 逆に言えば、HttpURLConnection自体は閉じられたかどうか気にしなくてもいいってことだ
775 名前:デフォルトの名無しさん mailto:sage [2016/09/24(土) 08:06:33.34 ID:naJG8nnU.net] >Socket作るところから自作していますが 車輪を再発見したいのかw
776 名前:デフォルトの名無しさん mailto:sage [2016/09/24(土) 08:15:31.83 ID:Lk9DTO7g.net] >>768 サンクス
777 名前:デフォルトの名無しさん mailto:sage [2016/09/24(土) 13:14:31.54 ID:dERTNrXa.net] >>769 勉強のためでしかも最終的にはNettyを使うって書いてるやん
778 名前:デフォルトの名無しさん mailto:sage [2016/09/24(土) 13:20:38.45 ID:trsNBxRI.net] 素人が努力する方向を間違えてるといってるだけだよw
779 名前:デフォルトの名無しさん mailto:sage [2016/09/24(土) 14:23:50.99 ID:we2+rnF7.net] なんかjavaのアップデートできないことない?
780 名前:デフォルトの名無しさん [2016/09/24(土) 14:31:51.35 ID:cKy0IgTy.net] >>772 やめなよみっともない
781 名前:デフォルトの名無しさん [2016/09/24(土) 14:32:25.05 ID:cKy0IgTy.net] 嫉妬心で努力する人間の足を引っ張るのはみっともない
782 名前:デフォルトの名無しさん mailto:sage [2016/09/24(土) 14:45:10.33 ID:trsNBxRI.net] >>774 やめろよ、自演はw
783 名前:デフォルトの名無しさん mailto:sage [2016/09/24(土) 14:46:19.90 ID:trsNBxRI.net] 開いたstreamが塞がらないw
784 名前:デフォルトの名無しさん mailto:sage [2016/09/24(土) 15:05:25.09 ID:i7CAvt+R.net] はい
785 名前:デフォルトの名無しさん [2016/09/24(土) 15:14:51.33 ID:cKy0IgTy.net] >>776 嫉妬心で努力する人間の足を引っ張るのはみっともない
786 名前:デフォルトの名無しさん [2016/09/24(土) 15:14:59.78 ID:cKy0IgTy.net] >>777 嫉妬心で努力する人間の足を引っ張るのはみっともない
787 名前:デフォルトの名無しさん [2016/09/24(土) 15:15:20.54 ID:cKy0IgTy.net] みっともない
788 名前:デフォルトの名無しさん mailto:sage [2016/09/24(土) 15:16:42.00 ID:i7CAvt+R.net] はいはい お二人ともおつかれさまでした
789 名前:デフォルトの名無しさん [2016/09/24(土) 16:05:16.35 ID:d951yjmo.net] >>769 車輪は発明するためにある。
790 名前:デフォルトの名無しさん mailto:sage [2016/09/24(土) 16:19:33.00 ID:MU1F/mTz.net] 車輪は自動車の為にある フォード
791 名前:デフォルトの名無しさん [2016/09/24(土) 16:26:35.98 ID:bdAgONj1.net] 質問 fedora24で何回か dnf install eclipse でeclipseのインストールが出来ていたのだが、 neonにアップデートした後に初めて再インストールを試みたが、ダメ。 今はダウンロード版でrootなら動くことは確認できたが、userではeclipse-instが動かない。 かつてのように dnf install eclipse でインストールしたい。 教えてほしい。
792 名前:デフォルトの名無しさん mailto:sage [2016/09/24(土) 17:04:37.56 ID:MU1F/mTz.net] 車はガソリンで走るのです エッソ
793 名前:デフォルトの名無しさん mailto:sage [2016/09/24(土) 19:13:58.93 ID:ubw0uMWd.net] プログラミングではないんだけど、Javaランタイム落とそうとしてボタン押すと、アクセスディナイ となってアクセス出来ん どういうことなんだろう?
794 名前:デフォルトの名無しさん mailto:sage [2016/09/24(土) 19:20:30.55 ID:TOidze/l.net] >>786 今時は EV も FCV もあるけど?
795 名前:デフォルトの名無しさん mailto:sage [2016/09/24(土) 19:36:16.61 ID:wxcFZgew.net] >>787 java.comでダウンロードできないなら、oracleからダウンロードすれば良いんじゃよ。 www.oracle.com/technetwork/java/javase/downloads/jre8-downloads-2133155.html java.comからだと、You don't have permission to accessでAccess Deniedだなー
796 名前:デフォルトの名無しさん mailto:sage [2016/09/24(土) 20:19:42.32 ID:ubw0uMWd.net] >>789 まさかのお助けご返信 ありがとうございます! 調べても解らなかったので、ほんとに助かりました おかげでダウンロード出来ました ありがとうございました! しかしどういうことなんでしょうね・・・教えていただいたoracleからのダウンロードのように、前もって同意の明示とかがあるわけでもないし・・・
797 名前:デフォルトの名無しさん mailto:sage [2016/09/25(日) 09:22:52.18 ID:b/O7Qjtb.net] >>786 モービルのCMだよ
798 名前:デフォルトの名無しさん mailto:sage [2016/09/26(月) 11:39:36.16 ID:yco4jaYN.net] >>開いたstreamが塞がらないw これは素直にうまいと思いました(小並感)
799 名前:デフォルトの名無しさん [2016/09/26(月) 12:39:32.80 ID:mwa1njiS.net] まあでも座布団1枚かな
800 名前:デフォルトの名無しさん mailto:sage [2016/09/26(月) 14:05:09.09 ID:dMvvSsQ7.net] ありがとう
801 名前:デフォルトの名無しさん mailto:sage [2016/09/26(月) 18:51:06.54 ID:ZCZkJviH.net] 初歩的な質問だけど、2つの配列が同一の内容を持っていることを簡単にチェックしてくれるメソッドは無い? 例えば、 int[] a,bがあった時, int型のsize == a.length == b.lengthとする。 この時、 int i=0; for(; i<size; i++){ if(a[i] == b[i]) i++; } String ans = (i==size) ? "same" : "not same"; という普通のチェック法しか無いのか?
802 名前:デフォルトの名無しさん mailto:sage [2016/09/26(月) 19:31:03.11 ID:Tv3f4Va/.net] >>795 System.out.println(Arrays.equals(a, b));
803 名前:デフォルトの名無しさん mailto:sage [2016/09/26(月) 20:20:19.60 ID:ZCZkJviH.net] >>796 サンクス
804 名前:デフォルトの名無しさん mailto:sage [2016/09/26(月) 20:38:58.07 ID:ZCZkJviH.net] >>795 をちょっと発展させた質問だけど、 ハッシュマップのキー部分が(基本型じゃ無く)配列で定義されていたら、直感的なやり方だと上手くいかなくなってしまう 具体例 HashMap<int[], Integer> map = new HashMap<int[], Integer>() {{ put(new int[]{1, 1}, 3); put(new int[]{-1, 5}, 20); put(new int[]{10, 2}, -3); }}; System.out.println(map.get(new int[]{-1, 5})); // 出力は null これだとダメ こうしなきゃ行けないの? for (int[] a : map.keySet()) { if (Arrays.equals(a, new int[]{-1, 5})) { System.out.println(map.get(a)); } }
805 名前:デフォルトの名無しさん mailto:sage [2016/09/26(月) 21:38:11.90 ID:ZRBGeI3f.net] >>798 どっかのスクリプトから来た人? Javaでは配列をキーにするというのはまずやらない というか一般に複雑なデータ構造を配列やコレクションだけで表現することはJavaでは嫌われる 基本的に、いちいち愚直にクラスを作って冗長で明示的すぎるコードを書くのが美徳とされる 794の例だとキーのためのクラスを作ってhashcodeやequalsを猿のように実装するのが正解
806 名前:デフォルトの名無しさん mailto:sage [2016/09/26(月) 21:58:19.89 ID:NRdPNu0H.net] それより入門書でも読めよ
807 名前:デフォルトの名無しさん mailto:sage [2016/09/27(火) 00:14:41.69 ID:dNidmfNN.net] 俺プロではないからマクロな感覚分からないんだよな
808 名前:デフォルトの名無しさん mailto:sage [2016/09/27(火) 00:15:36.88 ID:dNidmfNN.net] >>799 は参考になった
809 名前:デフォルトの名無しさん mailto:sage [2016/09/27(火) 00:47:25.88 ID:aQphVoL7.net] >>796 瞬殺でワロタw
810 名前:デフォルトの名無しさん mailto:sage [2016/09/27(火) 08:42:01.16 ID:ld49Y9Vg.net] 791の時点ですでにJavaっぽくない感じがするなぁ 愚直にやるとしてもこうじゃない? String ans = ""; for (int i = 0; i < a.length; i++) {
811 名前:デフォルトの名無しさん mailto:sage [2016/09/27(火) 08:45:00.89 ID:ld49Y9Vg.net] 途中送信しちまった・・ String ans = "same"; for (int i = 0; i < a.length; i++) { if (a[i] != b[i]) ans = "not same" } 最後まで行ってからlength比較ってなんかCっぽい
812 名前:デフォルトの名無しさん mailto:sage [2016/09/27(火) 08:48:11.60 ID:aQphVoL7.net] >>805 コンパイルエラー
813 名前:デフォルトの名無しさん [2016/09/27(火) 09:03:26.00 ID:/7SET8Ca.net] てか、a[i] != b[i] が一度成立したらそこから先は比較する必要なし。
814 名前:デフォルトの名無しさん mailto:sage [2016/09/27(火) 09:22:47.94 ID:ld49Y9Vg.net] >>806 すまんセミコロンぬけてたわ こうか! String ans = "same"; for (int i = 0; i < a.length; i++) { if (a[i] != b[i]) { ans = "not same"; break; } }
815 名前:デフォルトの名無しさん mailto:sage [2016/09/27(火) 21:05:48.66 ID:Gry6xj9+.net] C/C++からJavaに移ったらクラッシュしたときに stack traceが表示されて、ソースコードのどこでクラッシュしたとか そのメソッドの呼び出し元がルートまで全部表示されて、 ぬるま湯すぎてワロタwww これってほかの言語でもあるの?便利すぎてもうこれがない言語はやりたくないsっすw
816 名前:デフォルトの名無しさん mailto:sage [2016/09/27(火) 21:08:18.00 ID:Gry6xj9+.net] C/C++だったらどこでクラッシュしたかを調べることから始めないといけないからな 至る所にprintf入れて、ここのprintfは表示されてるけどここのprintfは表示されてない、 みたいなことを繰り返して特定していかないといけない そのうえメモリ破壊してたらビルドするたびにクラッシュ箇所が変わるからprintf作戦も使えないw おまいらズルすぎ。もっと早くjavaに移ればよかった。
817 名前:デフォルトの名無しさん mailto:sage [2016/09/27(火) 21:09:13.01 ID:pJiHchri.net] Cだって Core Dumped してくれるじゃないか
818 名前:デフォルトの名無しさん mailto:sage [2016/09/27(火) 21:15:00.94 ID:Gry6xj9+.net] gdbで見るやつだっけ? javaのstack traceに比べたら手軽さが違いすぎる Segmentation faultと表示されて意味不明なアセンブラの羅列見せられても何の役にも立たん iphoneアプリ開発もやってみてるんだがC言語系なようで、 やっぱりクラッシュしたことしか教えてくれなくて、意味不明なアセンブラを見せられるのも同じ androidの方がええわ クラッシュしたときに解析効率が圧倒的に違いすぎる
819 名前:デフォルトの名無しさん [2016/09/27(火) 21:26:53.83 ID:utAkdrdU.net] >>812 え?gdbでも普通にCならCのソース出るよ。使い方知らないの? てか、この頃はIDEのデッバッグでステップやトレースをGUIの画面に出しながらできるじゃん。 Javaに限らず主要な言語はだいたい同じようにできるぞ。
820 名前:デフォルトの名無しさん mailto:sage [2016/09/27(火) 21:33:02.60 ID:Gry6xj9+.net] >IDEのデッバッグでステップやトレース ステップ実行のことを言ってる
821 名前:? デバッガの使い方の話じゃないんですが。。 [] [ここ壊れてます]
822 名前:デフォルトの名無しさん mailto:sage [2016/09/27(火) 21:35:54.74 ID:l7d7Fmom.net] Cはミスってもその場で止まらずに、後になって突然暴走したりクラッシュしたりすることがよくあるからなあ あのデバッグはまさに地獄
823 名前:デフォルトの名無しさん mailto:sage [2016/09/27(火) 21:38:24.78 ID:w5gpFchP.net] あと3時間くらいしたらスタックトレースなんかどうでもよくなって いかに相手を言い負かすかに心血を注ぐ二人の姿が見える
824 名前:デフォルトの名無しさん [2016/09/27(火) 21:39:49.73 ID:utAkdrdU.net] >>814 core dump したってデバッグオプション付きでコンパイルしてあれば gdb でソース出せるよ。
825 名前:デフォルトの名無しさん mailto:sage [2016/09/27(火) 21:45:20.26 ID:Gry6xj9+.net] crashファイル指定してgdb起動してコマンド打ち込むのが面倒 そんなことをするぐらいならprintfを至るところに入れて再実行したほうが早い そんな作業をしている間に思考が飛んで何を調べていたか分からなくなりがち クラッシュした瞬間にクラッシュダンプ表示してくれればいいのに javaのstack traceは楽
826 名前:デフォルトの名無しさん mailto:sage [2016/09/27(火) 22:01:30.85 ID:Gry6xj9+.net] ある関数が呼ばれたときに、その関数の呼び出し元をルートまで全部表示するのって Java以外でできる言語あるんでしょうか
827 名前:デフォルトの名無しさん [2016/09/27(火) 22:06:43.47 ID:tLj3yCec.net] 関数の呼び出し元を記憶しておかないと、戻れないから普通に考えたら全部出来るはずだけど
828 名前:デフォルトの名無しさん mailto:sage [2016/09/27(火) 22:16:21.97 ID:YgEqXvfd.net] >>819 そろそろ死ねよカス
829 名前:デフォルトの名無しさん mailto:sage [2016/09/27(火) 22:37:49.98 ID:Gry6xj9+.net] かかってこいよ
830 名前:デフォルトの名無しさん mailto:sage [2016/09/27(火) 22:46:28.22 ID:EXpjvHub.net] >>818 printf() はバッファリングされてるから使える場合とそうでない場合がある。 そんなことするぐらいなら gdb で core と一緒に指定して whe で呼び出し元出したり p や x で変数やメモリの内容出した方が確実。 そういうコマンド覚えられないなら IDE 使えばいい。 >>819 Cでもなんでもデバッグオプション付けてコンパイルしておいてデバッガ使えばできる。 但し、スタックを破壊するようなバグがあった場合は(OSもそれを検知できないような システムの場合は)途中から崩れて出せない場合がある。しかしそういうことが可能な 言語というとCやC++みたいな直接メモリ操作できてしまう言語だ。CやC++はそういう 安全性については言語のレベルではサポートしておらずライブラリにも使わない方が 良い関数が入っていたりする(例えば gets())。
831 名前:デフォルトの名無しさん mailto:sage [2016/09/27(火) 22:55:42.21 ID:Gry6xj9+.net] デバッガ使わなくても出せるのはjavaだけなんすか
832 名前:デフォルトの名無しさん mailto:sage [2016/09/27(火) 23:00:54.57 ID:w5gpFchP.net] 脳障害でもあんのかしら
833 名前:デフォルトの名無しさん mailto:sage [2016/09/27(火) 23:31:07.98 ID:Gry6xj9+.net] 大体デバッグビルドなんか使わねえだろ ビルド時間は伸びるわ起動時間は伸びるわで良いことなしだろ リリース版とデバッグ版で挙動が違うみたいなこともあって最早何のデバッグしてるのか分からないだろ 仕事のプログラムでもリリース版しかビルドしない現場が多かったぞ リリース版で出せないんじゃ出せないのと一緒だろ
834 名前:デフォルトの名無しさん mailto:sage [2016/09/28(水) 00:04:16.16 ID:7DkLKHaf.net] そうか 良かったな
835 名前:デフォルトの名無しさん [2016/09/28(水) 00:09:23.00 ID:WDfhJLOB.net] >>826 じゃあ Java のコンパイルも javac -g:none でやれば? デフォルトでは -g:source,lines と同じでデバッグ情報含んでるからな。
836 名前:デフォルトの名無しさん mailto:sage [2016/09/28(水) 00:13:00.14 ID:WDfhJLOB.net] C:\Temp>type Test.java public class Test { public static void main(String[] args) { int[] a = null; a[0] = 1; } } C:\Temp>javac Test.java C:\Temp>java Test Exception in thread "main" java.lang.NullPointerException at Test.main(Test.java:4) C:\Temp>javac -g:none Test.java C:\Temp>java Test Exception in thread "main" java.lang.NullPointerException at Test.main(Unknown Source) C:\Temp>
837 名前:デフォルトの名無しさん mailto:sage [2016/09/28(水) 05:46:31.44 ID:Ks5fZMDV.net] よかったね おめでとう
838 名前:デフォルトの名無しさん mailto:sage [2016/09/28(水) 18:02:08.43 ID:ZkCEt2YU.net] >>826 ビルド時にPDBとかMAPとか外部生成しておいて デバッグする時にダンプと付き合わせればいい ただし最適化のせいでぽろぽろ情報が落ちるのは仕方ない
839 名前:デフォルトの名無しさん mailto:sage [2016/09/29(木) 06:23:12.99 ID:XGa6uwRB.net] ここ使え ideone.com
840 名前:デフォルトの名無しさん mailto:sage [2016/10/01(土) 17:27:07.81 ID:Hi+y6PXx.net] int len=a.length; if(len>b.length) len=b.length; とかしないと比較が終わる前に 配列が終わるん
841 名前:デフォルトの名無しさん mailto:sage [2016/10/01(土) 19:02:48.90 ID:IMTQkm1l.net] 何言ってんの?
842 名前:デフォルトの名無しさん mailto:sage [2016/10/01(土) 19:05:23.53 ID:qVJYtxaX.net] min(a.length, b.length) とかそーゆー話じゃねーかと
843 名前:デフォルトの名無しさん [2016/10/02(日) 06:40:17.05 ID:XuZokQkz.net] Java Web startが無限に発生して固まってしまいます 助けてください
844 名前:デフォルトの名無しさん mailto:sage [2016/10/02(日) 18:40:59.78 ID:WLOGtLUz.net] Javaws 大量 でググってください。
845 名前:デフォルトの名無しさん mailto:sage [2016/10/03(月) 01:23:08.66 ID:C//SKDLf.net] 結局、equalsの使い方ってどちらが正しい?現場で今もめてるんだが 定数.equals(変数) 変数.equals(定数)
846 名前:デフォルトの名無しさん [2016/10/03(月) 02:00:52.97 ID:cT7/Wfai.net] >>838 どっちも大間違い static boolean equals(a, b) ← 大正解
847 名前:デフォルトの名無しさん mailto:sage [2016/10/03(月) 02:00:57.97 ID:hxqof8pD.net] どちらも正しい
848 名前:デフォルトの名無しさん mailto:sage [2016/10/03(月) 02:11:30.59 ID:JXOSM+f0.net] >>839 equals(定数, 変数)とequals(変数, 定数)どちらが正しいんですか?w
849 名前:デフォルトの名無しさん [2016/10/03(月) 02:34:13.30 ID:cT7/Wfai.net] >>841 どっちも大間違い static boolean equals(引数, 引数) ← 大正解
850 名前:デフォルトの名無しさん mailto:sage [2016/10/03(月) 07:56:30.98 ID:FA3Rr9+N.net] >>838 そんなん宗教の問題じゃんって前置きをしたうえで変数.equals(定数)を推す 英文法に置き換えればメソッドのオーナー(左側)が右側に依存してるわけだし 寿命が短い側が寿命の長い側を参照すべき 定数.equals(変数)は昔ながらの変数側のNULL避けでそう主張してるのだろうけど 引数チェックで最初にObjects.requireNonNull(変数)した後で Objects.equals(変数, 定数)賭するのが良い。 nullを見なかったことにするのは契約プログラミングの観点からすれば行儀が悪い。
851 名前:デフォルトの名無しさん mailto:sage [2016/10/03(月) 16:15:00.68 ID:7+HzYAQg.net] ttp://d.hatena.ne.jp/nowokay/touch/20090219
852 名前:デフォルトの名無しさん mailto:sage [2016/10/03(月) 19:29:56.73 ID:3q3IhDEc.net] トラックバック先でえらくバトってんなぁ
853 名前:デフォルトの名無しさん mailto:sage [2016/10/03(月) 20:38:09.01 ID:C//SKDLf.net] 結局誰もわからないんだね
854 名前:デフォルトの名無しさん mailto:sage [2016/10/03(月) 20:42:00.52 ID:VJUjUYX6.net] お前それは仏教とキリスト教のどっちが"絶対的"に正しいの?って聞いているようなことだって分かってんの?
855 名前:デフォルトの名無しさん [2016/10/03(月) 20:42:13.59 ID:LjbGDdSQ.net] >>846 俺にははっきりわかってる static boolean equals(引数, 引数) ← 大正解
856 名前:デフォルトの名無しさん [2016/10/03(月) 20:42:40.67 ID:LjbGDdSQ.net] >>847 仏教もキリスト教もどっちも大間違い static boolean equals(引数, 引数) ← 大正解
857 名前:デフォルトの名無しさん mailto:sage [2016/10/03(月) 20:47:46.07 ID:YrJzZRxh.net] いい加減つまんねハゲ
858 名前:デフォルトの名無しさん [2016/10/03(月) 20:48:58.78 ID:LjbGDdSQ.net] >>850 がハゲ ← 大正解
859 名前:デフォルトの名無しさん mailto:sage [2016/10/03(月) 20:50:11.16 ID:HbmexdQK.net] ハゲは関係ないだろハゲは! 俺はハゲじゃないけど ハゲの人が泣いてると思わないのか 俺はハゲじゃないけど
860 名前:デフォルトの名無しさん [2016/10/03(月) 20:51:45.60 ID:LjbGDdSQ.net] equalの意味を考えろ 左辺と右辺を入れ替えて結果が変わるとかありえないだろ なんだそのガバガバな論理は 意味を考えろ、同一に順番なんて関係ない りんごがみかんならば、必ずみかんがりんごなんだよ
861 名前:デフォルトの名無しさん [2016/10/03(月) 20:53:14.82 ID:LjbGDdSQ.net] nullオブジェクトを使ったところで結局は内部でこれ static boolean equals(引数, 引数) ← 大正解
862 名前:デフォルトの名無しさん mailto:sage [2016/10/03(月) 20:54:16.83 ID:0xD3JTi2.net] なっこれが宗教家だよ
863 名前:デフォルトの名無しさん [2016/10/03(月) 20:56:01.57 ID:LjbGDdSQ.net] 順番が関係ないものに順番の概念を持ち出すから とりとめのない水掛け論に発展する、そこに答えは1マクロンもない 大正解ロジックが唯一の大正解
864 名前:デフォルトの名無しさん [2016/10/03(月) 20:56:18.68 ID:hBEK0Of5.net] Scalaなら==だけでequals呼び出すぞ
865 名前:デフォルトの名無しさん mailto:sage [2016/10/03(月) 20:59:29.56 ID:hxqof8pD.net] 数学でもランダウ記号なんか使ってると必ずしも 「A = B ⇔ B = A」 ではないが
866 名前:デフォルトの名無しさん [2016/10/03(月) 20:59:36.92 ID:LjbGDdSQ.net] >>855 怪しいとお考えでしょう、よく言われます けれど私が言ってることは普通のことです 大小の比較であれば順番の概念が必要になります 大なり小なりは向きがありますからね しかし=には向きがありません ガラスにマジックで書いて裏側から見てください 見なくても想像できますよね、全く同じです つまり順番の概念がそもそも成り立たない static boolean equals(引数, 引数) ← つまり大正解
867 名前:デフォルトの名無しさん [2016/10/03(月) 21:03:23.11 ID:LjbGDdSQ.net] >>858 ____ / \ / ─ ─\ ? / (●) (●) \ | (__人__) | ________ \ ` ⌒´ ,/ .| | | ノ \ | | | /´ | | | | l | | | ヽ -一ー_~、⌒)^),-、 | |_________| ヽ ____,ノγ⌒ヽ)ニニ- ̄ | | |
868 名前:デフォルトの名無しさん mailto:sage [2016/10/03(月) 21:05:07.10 ID:PdXev88S.net] そうじゃない お前がやってるのがキリスト教みたいな布教活動だって言っているの
869 名前:デフォルトの名無しさん [2016/10/03(月) 21:08:40.50 ID:LjbGDdSQ.net] >>861 キリスト教によって救われた人がどれ程いることか 俺は迷えるプログラマたちを導いて救済したい
870 名前:デフォルトの名無しさん [2016/10/03(月) 21:13:26.91 ID:LjbGDdSQ.net] 論理的に導かれる唯一の大正解を示すことによって お前ら木偶の坊どもの頭にかかってる蜘蛛の巣を払いのけ 光りあふれる鮮やかな未来をお前らと共に歩んでいきたい 共に生きよう
871 名前:デフォルトの名無しさん [2016/10/03(月) 21:13:50.63 ID:LjbGDdSQ.net] static boolean equals(引数, 引数) ← 大正解
872 名前:デフォルトの名無しさん [2016/10/03(月) 21:14:40.66 ID:LjbGDdSQ.net] お前らよーく考えろよ、このスレで一番声がでかいのは誰かってこと 正解はそこにある
873 名前:デフォルトの名無しさん mailto:sage [2016/10/03(月) 21:15:54.46 ID:SLz7tpRD.net] なんかあぼーんが多いわ
874 名前:デフォルトの名無しさん [2016/10/03(月) 21:16:26.53 ID:LjbGDdSQ.net] >>866 ぇ
875 名前:デフォルトの名無しさん mailto:sage [2016/10/03(月) 21:29:22.01 ID:g+XkVx2o.net] Java7以降はObjectsクラスを使う、で終わったネタを無理に引っぱろうとしても何も出てこない なおnull許容型の議論もJava8でOptionalが追加されたので、これも解決済みだろう 今はまだよくてもJavaREPLするようになって再度蒸し返されそうな気もする
876 名前:デフォルトの名無しさん mailto:sage [2016/10/03(月) 21:33:28.66 ID:oXywut21.net] すいませんレベル高い議論の途中に低レベルな質問で申し訳ないんですが A→B→C って継承してるときにCからAのメソッド呼び出すのってどうすればいいんでしょうか superだとBのしかよべないんですが
877 名前:デフォルトの名無しさん mailto:sage [2016/10/03(月) 21:35:41.44 ID:DydELLCK.net] >>869 Bでもsuper呼ぶ
878 名前:デフォルトの名無しさん mailto:sage [2016/10/03(月) 21:38:06.52 ID:oXywut21.net] つまりBを書き換えないとそういうことはプログラム仕様上できないってことでしょうか?
879 名前:デフォルトの名無しさん mailto:sage [2016/10/03(月) 21:41:19.99 ID:DydELLCK.net] >>871 祖先のメソッドを呼びたい時点で、継承の使い方を間違えてると思われる
880 名前:デフォルトの名無しさん [2016/10/03(月) 21:42:16.50 ID:LjbGDdSQ.net] super.superでいけるだろ
881 名前:デフォルトの名無しさん mailto:sage [2016/10/03(月) 21:48:51.18 ID:oXywut21.net] コンパイルとおりませんでした
882 名前:デフォルトの名無しさん mailto:sage [2016/10/03(月) 21:52:37.82 ID:oXywut21.net] >>872 厳密にいえばそうなんですが 多重継承できない以上そういうことしたくなるときってでません? しかもABが人の書いたコードで安易に変更したくない場合とか
883 名前:デフォルトの名無しさん [2016/10/03(月) 21:54:29.44 ID:iH7XdtiT.net] >>847 お答えしよう。どちらも落とし穴があるので間違い。ただし止観の行のような効果的な修行方法も残しておいてくれた仏教の方が少しまし。
884 名前:デフォルトの名無しさん mailto:sage [2016/10/03(月) 21:57:09.89 ID:VWEC2olx.net] 呼び出したいメソッドをBでオーバーライドしてなければsuperで呼べる オーバーライドしてたら・・・そんなことあるの?設計見直した方がよくない?
885 名前:デフォルトの名無しさん mailto:sage [2016/10/03(月) 22:00:11.80 ID:DydELLCK.net] >>875 親(B)の駄目コードをスキップしたいなら、Aを継承する。契約違反してまでBを継承するのがオカシイ。 もしくは、継承でなくてコンポジション使うとか。
886 名前:デフォルトの名無しさん mailto:sage [2016/10/03(月) 22:17:26.14 ID:oXywut21.net] デザインパターン的にまずいのは分かってるんですが 言語仕様上可能なのかどうかをおききしたかっただけです 無理そうなのでおとなしく別の方法試します
887 名前:デフォルトの名無しさん mailto:sage [2016/10/03(月) 22:22:59.24 ID:Sy28Ke7B.net] >>875 そういうパッチ的な継承の使い方って今時はあんまりしないよ 継承は基本的に悪、どうしても使うなら極力制限して慎重に使えというのが最近の流れ
888 名前:デフォルトの名無しさん [2016/10/04(火) 07:46:38.77 ID:o3yJa1Hl.net] 言語的に何かの仲間を表す役目はアノテーションに移った感じはするね Springでいう@Serviceとか、@Componentとか 昔なら継承するか外部ファイルに書くしかなかった
889 名前:デフォルトの名無しさん mailto:sage [2016/10/04(火) 14:50:26.61 ID:Q/b319ee.net] 継承使うとテスト書きにくい
890 名前:デフォルトの名無しさん mailto:sage [2016/10/04(火) 23:32:34.63 ID:1OpjxEYO.net] 継承が悪ってのは初めて知った 調べよ
891 名前:デフォルトの名無しさん mailto:sage [2016/10/04(火) 23:38:30.04 ID:1BCIDfGo.net] 初心者こそ最初のうちは継承を封印するべきだな コードの再利用に継承なんか必要ないし多態はinterfaceで十分 ただ、継承を使った方がより自然に実装できるケースもあるので、 継承使わなくても全く問題なく作れることを十分理解した上でそれでも必要だと思えば使えばいい
892 名前:デフォルトの名無しさん [2016/10/04(火) 23:52:38.34 ID:cLjsChxH.net] ゲーム作るなら結構継承使うけどそれ以外だと… しかもゲームでも組み込みスクリプト使うこと多い そもそもjavaでゲーム作らない
893 名前:デフォルトの名無しさん [2016/10/05(水) 08:03:03.93 ID:W42un36/.net] interfaceがデフォルト実装もてるようになったからabstractクラスの必要性もひとつ減ったよなぁ
894 名前:デフォルトの名無しさん [2016/10/05(水) 16:43:11.96 ID:6T6LA8v8.net] 独自の機能を持ったアノテーションを定義するにはどうしたらいいでしょうか。 JDKの @interface Overrideの定義を見ても、 @Target(ElementType.METHOD) @Retention(RetentionPolicy.SOURCE) public @interface Override { } としか書かれてなくて、@Overrideをつけたメソッドが正しくオーバーライドされているかチェックするコードがどこにあるのか分かりません。
895 名前:デフォルトの名無しさん [2016/10/05(水) 16:48:13.78 ID:l2mkxdlB.net] 確か組み込み JVMの中にある 何故キーワードじゃなくてアノテにしたのかは不明だが
896 名前:デフォルトの名無しさん mailto:sage [2016/10/05(水) 17:30:41.66 ID:EDqQ344L.net] アノテーションはアノテーションそのものに機能を定義するんじゃないよ アノテーションが付いた何らか(メソッド、クラスetc)を検出して何らかの動作(オーバーライド検証、コード生成etc)をする それは884が言うようにJVMの中にあったり、外部コマンドだったり、IDEの機能だったりする
897 名前:デフォルトの名無しさん [2016/10/05(水) 18:08:17.66 ID:76uxEqiR.net] >>885 Android用ゲームでは使わざるを得ない
898 名前:デフォルトの名無しさん mailto:sage [2016/10/05(水) 18:25
] [ここ壊れてます]
899 名前::45.21 ID:WKix4XYF.net mailto: native使えばいいんでないの [] [ここ壊れてます]
900 名前:デフォルトの名無しさん mailto:sage [2016/10/05(水) 19:30:39.87 ID:R0+6OfJG.net] >>888 予約語は今更増やせないので、overrideをキーワードにするなら文脈依存のキーワード(コンテキストキーワード)として実装するしかない コンテキストキーワードはコンパイラが複雑になるし文法の一貫性を損なうので作る側としては気の進むものではない C#なんかはコンテキストキーワードまみれだけどJavaには今のところコンテキストキーワードが無いので、童貞を捨てる最初の一歩には勇気がいる @Overrideの時はその決断ができなかったわけだ まあさすがにもうそろそろ純潔守るのは限界に来てるだろうけどね
901 名前:デフォルトの名無しさん mailto:sage [2016/10/05(水) 19:58:48.66 ID:6T6LA8v8.net] アノテーションの使い方って、こういう感じでイメージしてたのですが、ぜんぜん見当違いだたのでしょうか><; //アノテーション定義 @Target(ElementType.FIELD) @interface TestAnnotation{ String value() default "あいうえお"; } //アノテーションを使う public class MainClass { @TestAnnotation("かきくけこ") public String strValue; public static void main(String[] args) { Field fields = MainClass.class.getField("strValue"); //ここでアノテーションstrの値を取得して【"かきくけこ"】だった場合だけ特別な処理を入れる } }
902 名前:デフォルトの名無しさん mailto:sage [2016/10/05(水) 20:09:51.53 ID:4jNnLSHB.net] >>887 コンパイル時に解釈するアノテーションは コンパイラAPI使ってプラグイン形式のアノテーション処理コードを書いておく、 んでjavacの時にオプションでプラグイン読み込む。
903 名前:デフォルトの名無しさん mailto:sage [2016/10/06(木) 21:19:53.14 ID:RbYddrkX.net] Javaで拡張機能(プラグインやエクステンションの類)を外部から取り込めるプログラムを考えています。 このような、プラグインなどで拡張可能なプログラムのつくり方を調べると 1. プラグイン用のインターフェースを用意する 2. プラグインはそのインターフェースを実装する 3. マニフェストファイルなどにプラグインクラスを指定しておく 4. jarにまとめる 5. メインプログラムはjarを読み込み、マニフェストファイルなどで指定されたプラグインクラスを読み込む と言ったフローのものが多く見られました。 この仕組み自体は分かったのですが、2番の「プラグインはそのインターフェースを実装する」について質問があります。 そもそもそのプラグインのインターフェースというのはメインプログラムの中にありますよね? 外部のプラグインを単体で作ろうとした時このプラグインインターフェースをどのようにimportすれば良いのでしょうか?
904 名前:デフォルトの名無しさん mailto:sage [2016/10/06(木) 21:25:22.91 ID:j4+P2uPZ.net] 意識してjar使ったことあります? あるならそのjarの中に共通で使うインターフェースを定義しておけばいいんですよ 簡単でしょ
905 名前:デフォルトの名無しさん [2016/10/06(木) 21:28:13.27 ID:nKRuE5IK.net] >>895 プラグインをなのに単体で作る時点で意味がわからない話になっちゃう 当然本体に依存してるはずだからクラスパスに本体を加えてインポートすればいい
906 名前:デフォルトの名無しさん mailto:sage [2016/10/06(木) 21:46:23.38 ID:urGcfi7o.net] 今回作っているプラグインの概要を書いておきます。 メインプログラムはテキストを読み込み、プラグインに処理させて結果をWebページに出力する プラグインは例えば「英語に翻訳する」とか「語尾を面白くする」などが考えられます >>897 メインプログラムの所有者(開発者)とプラグインの開発者が同じならそれでいいと思うのですが、例えばメインプラグインは私が作り、プラグインは不特定多数の第三者が作るというケースを考えたとき、 プラグイン開発者はわざわざプラグインインターフェースのためだけにメインプログラムをダウンロードしてクラスパスに追加しないといけないのでしょうか?
907 名前:デフォルトの名無しさん mailto:sage [2016/10/06(木) 21:54:00.66 ID:JI/tF3Y3.net] >>898 メインプログラムが無いとプラグイン実装者はどうやって動作確認するの?
908 名前:デフォルトの名無しさん mailto:sage [2016/10/06(木) 22:23:26.52 ID:j4+P2uPZ.net] あれっすねー 下手の考え何とやらにハマってますね
909 名前:デフォルトの名無しさん [2016/10/07(金) 00:08:56.29 ID:5FJeiwoZ.net] メソッド実行時のオペランドスタックの中身の推移を出力する方法はないでしょうか?
910 名前:デフォルトの名無しさん mailto:sage [2016/10/07(金) 06:40:31.98 ID:zxQdvO+A.net] >>898 どうしても本体を配布したくないのならプラグインのインタフェースだけ切り出して、本体とプラグインの両方が依存するかたちも無くはない 例えばEJBのインタフェースはそういう形が多いと思う ただ、今回のケースはプラグインだからやる理由がないんじゃないかなあ
911 名前:デフォルトの名無しさん mailto:sage [2016/10/08(土) 00:03:15.98 ID:oQZcWGv1.net] >>899 >>902 ありがとうございます メインプログラムに組み込みます
912 名前:デフォルトの名無しさん mailto:sage [2016/10/10(月) 13:43:19.79 ID:aMqBnTB0.net] 今日からJava始めました VBAやJavaScriptはやって来ましたが、楽しみです 。10年後は稼げるようになって、八丈島でフルーツ栽培しながら、稼ぎたいです 宜しくお願い致します
913 名前:デフォルトの名無しさん [2016/10/10(月) 13:44:24.93 ID:UL1Nitj4.net] 1.5年あれば稼げるようになる
914 名前:デフォルトの名無しさん mailto:sage [2016/10/10(月) 14:45:56.29 ID:huUUk9u9.net] 20年前にJavaが残るとは思わなかったよな
915 名前:デフォルトの名無しさん mailto:sage [2016/10/10(月) 21:38:43.52 ID:U0QfFrW+.net] >>906 そりゃそうだろ20年前だとJavaやってる人ほどんどいないから おれはJDK1.1.6くらいからAWTで始めて18年目くらいだけど そのころだとAWT見栄えしないし、JVM遅くて将来性は?だった 1.2になってサーブレットでサーバサイドやり始めて Javaの将来が見えてきた感じかな
916 名前:デフォルトの名無しさん mailto:sage [2016/10/10(月) 21:48:31.72 ID:hVHWJ6ju.net] 砂箱入りでなにもできなかったJavaw
917 名前:デフォルトの名無しさん mailto:sage [2016/10/11(火) 01:16:30.03 ID:yQ3A6F/6.net] iアプリで採用されたのが転機だと思う。
918 名前:デフォルトの名無しさん [2016/10/11(火) 01:55:36.64 ID:5ABVoVL2.net] Javaはサーバサイドで使われてなんとかなったな。 クライアントの方は長いこと死んでたが Android により救われたって感じか。 しかしPCのWindows上でのAppletは本当に死んだな。Firefoxの64bit版にはもうプラグインないし。
919 名前:デフォルトの名無しさん mailto:sage [2016/10/11(火) 01:56:36.56 ID:/pRFL0u6.net] iアプリw あんな超ローカルガラパゴスな需要がグローバルに影響を与えるわけないだろ 今のJavaがあるのはそれ以外の要因だろ
920 名前:デフォルトの名無しさん mailto:sage [2016/10/11(火) 06:49:09.58 ID:4KrOE+wT.net] JavaME(MIDP)はSymbian含め多くのデバイスに搭載されてるな
921 名前:デフォルトの名無しさん mailto:sage [2016/10/11(火) 07:35:43.38 ID:yQ3A6F/6.net] ガラケーだろうが何だろうが、いわゆる携帯電話にjavaアプリ載っけてなおかつ普及させたことによる他プラットフォームへの影響は計り知れないよ。
922 名前:デフォルトの名無しさん mailto:sage [2016/10/11(火) 08:01:39.43 ID:aUckxkie.net] そうか? モバイルはアンドロイドジャバモドキになって初めてJavaとしての資産を活かせるようになったけど、 それ以前は組み込み臭が強すぎて当時の遺産やノウハウなんかほとんど役に立ってないだろ
923 名前:デフォルトの名無しさん mailto:sage [2016/10/11(火) 08:09:00.13 ID:SPhMZv+b.net] >>905 となると、ガッツリ勉強すれば、早く移住出来そうだ。
924 名前:デフォルトの名無しさん mailto:sage [2016/10/11(火) 10:29:59.76 ID:fES4oS1W.net] >>913 影響が計り知れないガラパゴス携帯
925 名前:w [] [ここ壊れてます]
926 名前:デフォルトの名無しさん [2016/10/11(火) 11:18:03.04 ID:SECsCQqk.net] >>915 人による
927 名前:デフォルトの名無しさん mailto:sage [2016/10/11(火) 11:40:03.33 ID:4KrOE+wT.net] >>914 組み込み臭ってどの辺が? あとJavaMEで活かされなくてAndroidで活かされたJavaの資産ってどんなの?
928 名前:デフォルトの名無しさん mailto:sage [2016/10/11(火) 14:30:49.03 ID:rVEHRbce.net] JVMのJava heapの利用状況の監視ってみんなどうやってるの?ザビックス?
929 名前:デフォルトの名無しさん mailto:sage [2016/10/11(火) 15:11:43.99 ID:Pr2KO31B.net] JConsole
930 名前:デフォルトの名無しさん mailto:sage [2016/10/11(火) 23:44:58.92 ID:yQ3A6F/6.net] >>916 ブラウザ、メール、カメラ、音楽、決済、2次元バーコード… ガラケーと呼ばれた端末が一体どれだけ世界に影響を与えたことか。
931 名前:デフォルトの名無しさん mailto:sage [2016/10/12(水) 00:34:12.80 ID:Ho77NI7R.net] えっ?マジで言ってんの? iアプリ()ってそんなに世界的に見てもJavaの発展に寄与したと認識されてんの? もう一度聞くけどマジで??
932 名前:デフォルトの名無しさん mailto:sage [2016/10/12(水) 01:18:17.44 ID:giQELDJ8.net] iアプリ(CLDC + DoJaプロファイル)でFFが動いたことは大きな意味があったと思うぞ ケータイでのJava利用が現実的になって、確かサムスンからプラットフォームとしてJavaを利用する端末が発表されたし その流れでAndroidだって出てきたわけだし FOMAで使われてたOMAPなりARMさんはJavaのバイトコードが処理できるJazelle開発したりJava関連のテクノロジーの発展には貢献してるでしょ
933 名前:デフォルトの名無しさん mailto:sage [2016/10/12(水) 03:04:24.43 ID:QVNbloOm.net] 否定する方も肯定する方も実数を含んだソース出せ 無いから水掛論になる
934 名前:デフォルトの名無しさん mailto:sage [2016/10/12(水) 04:54:53.75 ID:gMP5GEx+.net] 別にどっちの話もしなくていい 生き残った、ほーん、で? アロエにでも話しかけてろカス
935 名前:デフォルトの名無しさん mailto:sage [2016/10/12(水) 05:36:56.09 ID:P/80LMv+.net] ♪聞いてアロエリーナ ちょっと言いにくいんだけど 聞いてアロエリーナ 聞いてくれてあーりがと アロエリーナ♪ \______ __________/ |/ ∧_∧ (○) (∀・ ) ヽ|〃 (∩∩ )  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
936 名前:デフォルトの名無しさん mailto:sage [2016/10/12(水) 05:37:48.70 ID:P/80LMv+.net] 空欄のまま書き込んでしまた…
937 名前:デフォルトの名無しさん [2016/10/12(水) 07:06:59.72 ID:/XRVlpaK.net] >>922 iアプリがなければJavaは滅びていた
938 名前:デフォルトの名無しさん [2016/10/12(水) 07:08:34.02 ID:/XRVlpaK.net] >>924 ソースはiアプリの時代を生きたこの俺だ 俺が生き証人だ アロエリーナも知っている
939 名前:デフォルトの名無しさん [2016/10/12(水) 07:09:05.04 ID:/XRVlpaK.net] アロエリーナとiアプリの時代は完全に一致する
940 名前:デフォルトの名無しさん [2016/10/12(水) 07:09:33.26 ID:/XRVlpaK.net] つまり、アロエリーナがなければJavaは滅びていた
941 名前:デフォルトの名無しさん mailto:sage [2016/10/12(水) 08:13:04.15 ID:PnrhXVwx.net] アロエリーナ知ってる! 小学生の時に懐かしCM特集ってので見たわ
942 名前:デフォルトの名無しさん mailto:sage [2016/10/12(水) 08:24:12.39 ID:Ho77NI7R.net] なんだかきなくさくなってきましたね...
943 名前:デフォルトの名無しさん mailto:sage [2016/10/12(水) 08:30:14.41 ID:demRx8+z.net] そうだね! きなくさいね!!
944 名前:デフォルトの名無しさん mailto:sage [2016/10/12(水) 13:07:30.91 ID:ZaPbWfMf.net] ここはハゲでお茶を濁さなきゃ
945 名前:デフォルトの名無しさん [2016/10/12(水) 15:21:32.12 ID:W3SF+f/q.net] ここで紹介された、すっきりわかるjava入門のおかげで、だいぶはかどりました。
946 名前:デフォルトの名無しさん [2016/10/12(水) 16:16:53.66 ID:jyq38AMU.net] >>936 それな
947 名前:デフォルトの名無しさん mailto:sage [2016/10/12(水) 18:02:46.55 ID:AGTByej+.net] すみません初心者です これから勉強してwebアプリくらいはさらっとつくれるようになりたいのですが まずはどんなものに取り組んだらよいのでしょうか なるべくなら、文法読むだけじゃなくて かんたんなゲームなどを作りながらがよいかと思っています 定番の本などはありますでしょうか
948 名前:デフォルトの名無しさん mailto:sage [2016/10/12(水) 18:12:17.48 ID:9oDwxE2X.net] まずはJavaScriptとHTML 次はNode.js, Ruby, PHPのどれか Javaはお勧めしない Javaワールドで一般的なWebアプリと呼ばれるものは君が想像してるものとは多分(悪い意味で)かなり違う
949 名前:デフォルトの名無しさん mailto:sage [2016/10/12(水) 18:32:32.26 ID:JHJttxPa.net] >>939 おまえはなぜここにいる?
950 名前:デフォルトの名無しさん mailto:sage [2016/10/12(水) 20:54:06.53 ID:n49FfGJW.net] Javaに詳しいからこそ, 別の言語使ったら?ってことが言いたいんじゃないの? 向き不向きは当然ながらあるわけだし
951 名前:デフォルトの名無しさん mailto:sage [2016/10/12(水) 21:16:15.68 ID:xLksdBN7.net] 適切なところに誘導すればいいだけじゃん
952 名前:デフォルトの名無しさん [2016/10/12(水) 21:18:08.09 ID:/S1G0fYz.net] Androidでスマホアプリでも作ればいいじゃん
953 名前:スッキリ厨 mailto:sage [2016/10/13(木) 01:41:21.73 ID:aniHJH6t.net] Webには、JSというクソ言語が、立ちはだかる。 様々な引っ掛け・回避技術の話がメインになる。 ある機種のあるバージョンでは、この処理は動かないなどの話が、延々と続く 基礎体力をつけるため、以下の順番で、読むのを薦める 1. スッキリわかる Java入門 第2版、2014 2. たのしいRuby 第5版、2016 3. みんなのPython 第3版 その次は、Haxe。 Haxe(ヘックス)はOSSで、JSに型チェックを付けたような言語で(altJS)、 JS(ES5), Flash, PHP, C++, Java, C#, Python に書き出せる。 大規模開発に強く、Windows8.1対応。IDEは、FlashDevelop このサイトで、ブラウザでプログラミングして、実行できる Try Haxe ! try.haxe.org/ Haxeプログラミング入門、尾野政樹、2015 その後、Webゲームなら、 Python風のGDScriptで書く、Godot(ゴドー) Engine か、Cocos2d-x(JS版)
954 名前:デフォルトの名無しさん [2016/10/13(木) 19:35:05.28 ID:dvRCNZ1l.net] スッキリ分かるjava入門の無印と実践と、コップ本の3冊読んでおけばok ス分からいきなりコップ本は無理だろうけど
955 名前:デフォルトの名無しさん [2016/10/13(木) 20:58:35.84 ID:s81575zl.net] すぶん・・・
956 名前:デフォルトの名無しさん [2016/10/13(木) 21:00:48.25 ID:dvRCNZ1l.net] スキjがいい?
957 名前:デフォルトの名無しさん [2016/10/14(金) 00:19:24.69 ID:SrS85Be2.net] わかりやすいjavaは?
958 名前:デフォルトの名無しさん mailto:sage [2016/10/14(金) 01:25:57.28 ID:Nxwd5+O4.net] よし俺が誰でも分かる入門サイト作るわ!
959 名前:デフォルトの名無しさん mailto:sage [2016/10/14(金) 01:27:23.11 ID:kSpw8ZOi.net] そうして見たことのあるサイトができあがる
960 名前:デフォルトの名無しさん [2016/10/14(金) 02:00:21.51 ID:JsD4EcF+.net] 入門サイトの再発明
961 名前:デフォルトの名無しさん mailto:sage [2016/10/14(金) 06:43:55.09 ID:ehiQ52H8.net] Java8以降はStreamとラムダで結構変わるんだけど 化石みたいな入門サイトと役立たずの書籍のおかげで初心者が次々と脱落してゆく まああれだ、彼らがやりたいのはJavaじゃなく泥でアプリ作りたいわけ だったらC#でもいいんだけどな
962 名前:デフォルトの名無しさん mailto:sage [2016/10/14(金) 09:48:40.96 ID:WR1Oxtue.net] 今こそKotlinの出番だァァッ!!
963 名前:デフォルトの名無しさん mailto:sage [2016/10/14(金) 10:42:41.14 ID:I7mS7s90.net] ScalaとKotlinはぜひ一度触ってみるべきだな どっちが好みかは人によるからなんともいえないけど、すくなくともpure Javaよりはずっといい え? Groovy? 君はgradleだけで十分です というかgradleももうKotlinで書けるし・・・
964 名前:デフォルトの名無しさん mailto:sage [2016/10/14(金) 12:38:37.91 ID:Nxwd5+O4.net] Streamとラムダで脱落ってどんだけよ。 1日しか勉強しない勢?
965 名前:デフォルトの名無しさん [2016/10/14(金) 14:37:08.57 ID:IKc9TcNT.net] Streamとラムダの基本はわかった。 しかしまだどんなクラスやインターフェースがあるかほとんどわかってないのでうまく使える状態ではない。
966 名前:デフォルトの名無しさん mailto:sage [2016/10/14(金) 14:38:18.70 ID:xVLObFEf.net] なんとか入門編をスッキリ読んだ。 なんとなくオブジェクト思考でのコードの書き方がわかった。
967 名前:デフォルトの名無しさん [2016/10/14(金) 18:00:41.16 ID:uMWBWHxp.net] スッキリはjavaを使ったOOPの解説みたいだよな
968 名前:デフォルトの名無しさん [2016/10/14(金) 20:22:34.83 ID:t+vmOHtU.net] おおぷ
969 名前:デフォルトの名無しさん [2016/10/16(日) 00:43:27.39 ID:FsJv6qds.net] >>952 いや、俺はJava自体を身に付けて就職時の武器にしたいんだが…。
970 名前:デフォルトの名無しさん mailto:sage [2016/10/16(日) 01:19:54.70 ID:igy7JP5N.net] >>960 今が学生で狙うのが普通のIT企業なら、これから覚えるとかいうレベルでは正直いって武器にはならんよ OracleのJava SE8認定試験のSilver持ってたら、言語とかではなく一般的な意味で目標に向かって勉強することはできるんだね、くらいの評価 今すでにJava関連のコミュニティに入っていて勉強会とかに顔だして、発表側に回るくらいでやっとJava技術者として評価されるかなくらい ちなみにうちの会社ではエントリーシートにGithubのURL載せててそれなりの活動できてるやつとそれ以外では全然扱いが違う #募集要項にもそれは書いてる
971 名前:デフォルトの名無しさん mailto:sage [2016/10/16(日) 01:55:35.19 ID:S/2DHEBe.net] 就職活動で質問なんですが、paizaとかCodeIQの問題解いて、結果の一覧見せてもダメでしょうか?
972 名前:デフォルトの名無しさん mailto:sage [2016/10/16(日) 02:05:02.60 ID:GUtPQfk2.net] 何を伝えたいの?
973 名前:デフォルトの名無しさん mailto:sage [2016/10/16(日) 07:44:21.61 ID:tkK43y5c.net] Java EEのMVC 1.0案が完全にドロップしたそうですが、Java EEに未来はありますか?
974 名前:デフォルトの名無しさん mailto:sage [2016/10/16(日) 07:49:04.36 ID:FoYCot45.net] >>962 そういうのを評価するところは問題解けるかどうかよりコードの書き方を見る 学校のアルゴリズムの授業で書いたようなのは世間一般には汚い糞コードと見做されるんだけど大丈夫か? まあプロっぽく書けといってもよく分からないだろうから、手っ取り早く確実に意識高そうに見せるなら HaskellやScalaのような関数型言語で解くのがいいんじゃないか
975 名前:デフォルトの名無しさん mailto:sage [2016/10/16(日) 12:11:18.71 ID:fIK9uXrO.net] プロっぽいw
976 名前:デフォルトの名無しさん mailto:sage [2016/10/16(日) 12:37:57.58 ID:1CeHwTTq.net] そもそもどういう会社狙ってるんだろう Javaやってる会社はCodeIQなんか見向きもしねえ気がする ※完全に個人の主観です ※実際の様子とは異なります
977 名前:デフォルトの名無しさん mailto:sage [2016/10/16(日) 13:02:10.24 ID:50CSnlxY.net] CodeIQでJavaの問題いくつかとくと Javaやってる会社に人を派遣してるとこからスカウトくるよ
978 名前:デフォルトの名無しさん mailto:sage [2016/10/16(日) 13:17:14.52 ID:vXiXdAba.net] 就職活動からプログラマを狙うのはやめた方が良いと思う 好き好きなんだろうけどさ
979 名前:デフォルトの名無しさん mailto:sage [2016/10/16(日) 15:56:42.20 ID:eUv+6F4e.net] なるほど人足の判断としてはいいね
980 名前:デフォルトの名無しさん mailto:sage [2016/10/16(日) 16:14:53.72 ID:eGY0J3Yy.net] >>964 JAX-RSで十分だからじゃないの、jersey使ったことないから知らんけど。
981 名前:デフォルトの名無しさん mailto:sage [2016/10/16(日) 17:01:55.79 ID:vrM29RHh.net] >>959 池沼
982 名前:デフォルトの名無しさん [2016/10/16(日) 17:58:45.92 ID:e1qF8gd7.net] >>972 いけぬま
983 名前:デフォルトの名無しさん [2016/10/16(日) 18:01:24.62 ID:e1qF8gd7.net] >>968 そうそう。あのサイトそんなサイトなのな。 単にクイズに答えたいだけだったのに登録で個人情報やたら入力させようとするから止めたんだ。 俺は転職したいわけじゃなかったからな。
984 名前:デフォルトの名無しさん mailto:sage [2016/10/16(日) 19:04:28.20 ID:M/DWgTU7.net] クイズが解きたいって気持ちは一生理解できないだろうなと思ってる
985 名前:デフォルトの名無しさん [2016/10/16(日) 19:07:21.97 ID:jbRBUkYK.net] アルゴリズムは基本ライブラリ使うから全く解けなかった
986 名前:デフォルトの名無しさん mailto:sage [2016/10/16(日) 19:36:17.71 ID:2HJFaHa2.net] プログラミングを完全に手段だと割り切ってると パズル的な面には興味は持てないでしょうね 特にそれが悪いとは思わないけど
987 名前:デフォルトの名無しさん [2016/10/16(日) 20:43:44.41 ID:aiyinN1S.net] >>975 え?普通になぞなぞ解きたくなるのと同じようなもんだよ。
988 名前:デフォルトの名無しさん [2016/10/16(日) 23:23:58.86 ID:DXmiytAw.net] >>964 Java EEは捨てましょう。 10年後はJava EEのWebアプリケーションはCOBOL同然の扱いになっていると思います。
989 名前:デフォルトの名無しさん [2016/10/16(日) 23:26:16.01 ID:DXmiytAw.net] 手段と目的を履き違えているやつらが多いな。
990 名前:デフォルトの名無しさん [2016/10/17(月) 00:20:39.29 ID:R5CCSZPr.net] Javaというプログラミング手段を身に付けるのが目的です。
991 名前:デフォルトの名無しさん [2016/10/17(月) 00:38:17.31 ID:IY46ZrOZ.net] >>980 COBOLも手段の一つでござろうよ
992 名前:デフォルトの名無しさん mailto:sage [2016/10/17(月) 05:30:54.04 ID:JGocT82E.net] >>979 何言ってんだこいつwe
993 名前:デフォルトの名無しさん mailto:sage [2016/10/17(月) 08:24:47.42 ID:G89YnvgI.net] 今から作って10年後も動いてるwebサービスなんて優秀やん
994 名前:デフォルトの名無しさん mailto:sage [2016/10/17(月) 08:30:24.63 ID:pGCt3vVl.net] >>981 すばらしい目的ですね! ぼくにはとてもできない
995 名前:デフォルトの名無しさん [2016/10/17(月) 11:48:13.08 ID:3pBpkkFt.net] Javaというプログラミング手段を身に付けて自慢げに知識をひけらかしみんなを思い切り見下すのが目的です。
996 名前:デフォルトの名無しさん mailto:sage [2016/10/17(月) 12:17:29.65 ID:6nmYsoEb.net] Javaでwwwwwwwww 見下すwwwwwwwwww まぁJava自体の言語仕様策定者に近いレベルまでいければ、初心者相手には可能なのかな?
997 名前:デフォルトの名無しさん [2016/10/17(月) 12:32:05.11 ID:JGocT82E.net] >>986 お前は多数の一般人から見下されてますよww なぜなら、お前はクソニートだから。
998 名前:デフォルトの名無しさん mailto:sage [2016/10/17(月) 14:01:56.76 ID:6MO+TX98.net] お前らそんなかっかするとハゲになるぞ
999 名前:デフォルトの名無しさん mailto:sage [2016/10/17(月) 14:02:43.35 ID:bmCf/FiJ.net] うるせーもう手遅れだよ!
1000 名前:デフォルトの名無しさん mailto:sage [2016/10/17(月) 14:46:38.83 ID:6MO+TX98.net] ....ごめん
1001 名前:デフォルトの名無しさん mailto:sage [2016/10/17(月) 15:40:27.48 ID:WkWdUImM.net] >>986 馬鹿乙
1002 名前:デフォルトの名無しさん mailto:sage [2016/10/17(月) 16:20:30.71 ID:a9iYQESn.net] Javaを始めたいという友人がいるんだが、Javaのプログラミング言語としての難易度はどう説明すればいいかな? 友人はCとかVBAはわかるらしいけどこっちはCとVBAはご無沙汰でもう覚えてないし…(というかプログラミングから大分離れてるからJavaもウロ覚えだし…) Javaが難しい理由を簡単な言葉で説明するとしたらどういう風に伝えるべきかな?
1003 名前:デフォルトの名無しさん [2016/10/17(月) 16:21:16.22 ID:asF6HwUk.net] まだまだ足りないな。少し拡張。 Javaというプログラミング手段を身に付けて自慢げに知識をひけらかしみんなを思い切り見下してバカにするのが目的です。 言ってみたい言葉は「こんな事もわからないの?」です。
1004 名前:デフォルトの名無しさん mailto:sage [2016/10/17(月) 16:27:16.87 ID:9gVmRPtd.net] プログラミング言語で難しいと思ったのはCOBOLくらいです(高度なギャグ)
1005 名前:デフォルトの名無しさん [2016/10/17(月) 16:45:31.45 ID:asF6HwUk.net] >>993 C出来るなら覚えるのは早いと思うよ。 ただし、なんとなく似てるけど違う部分があるのでそういうのに要注意。 多分配列やポインタや文字列の考え方や扱いの違いで混乱があると思う。
1006 名前:デフォルトの名無しさん mailto:sage [2016/10/17(月) 16:57:42.07 ID:a9iYQESn.net] >>996 説明できそう!thx!
1007 名前:デフォルトの名無しさん mailto:saeg [2016/10/17(月) 19:38:01.24 ID:5MN+i4pP.net] どうにも Java やってて面白みが感じられない。 つーか仕事以外、完全プライベートで Java 使う場面ある?
1008 名前:デフォルトの名無しさん [2016/10/17(月) 19:47:27.89 ID:R5CCSZPr.net] >>996 いやいや、Javaには、オブジェクト指向という大きなカベが…。
1009 名前:デフォルトの名無しさん mailto:sage [2016/10/17(月) 21:15:57.35 ID:3TSUYd8+.net] ★★Java質問・相談スレッド179★★ [無断転載禁止]©2ch.net echo.2ch.net/test/read.cgi/tech/1476706523/ ほい
1010 名前:デフォルトの名無しさん mailto:sage [2016/10/17(月) 21:21:36.07 ID:wBVSlf54.net] >>999 大きな壁だと思ってるようじゃ、話にならんわけだが?
1011 名前:デフォルトの名無しさん mailto:sage [2016/10/17(月) 21:23:36.20 ID:+7A/bOmy.net] でも、単にJavaの流儀に従っているっていうのと、オブジェクト指向を理解するというのは、違うのだよね
1012 名前:デフォルトの名無しさん [2016/10/17(月) 22:03:47.52 ID:6nmYsoEb.net] 999
1013 名前:デフォルトの名無しさん [2016/10/17(月) 22:04:13.17 ID:6nmYsoEb.net] ちんぽしゃぶれ
1014 名前:過去ログ ★ [[過去ログ]] ■ このスレッドは過去ログ倉庫に格納されています