◎正当な理由による書き込みの削除について:      生島英之とみられる方へ:

★★Java質問・相談スレッド181★★ ->画像>5枚


動画、画像抽出 || この掲示板へ 類似スレ 掲示板一覧 人気スレ 動画人気順

このスレへの固定リンク: http://5chb.net/r/tech/1518252580/
ヒント:5chスレのurlに http://xxxx.5chb.net/xxxx のようにbを入れるだけでここでスレ保存、閲覧できます。

1デフォルトの名無しさん
2018/02/10(土) 17:49:40.56ID:l9ZzjyKP
プログラミング言語Javaに関する質問スレです。
JavaScript, Ajaxの質問は、ここでは受け付けていません。
Web製作管理    http://pc11.2ch.net/hp/
Webプログラミング http://pc11.2ch.net/php/
をご利用下さい。

よくある質問
・「コマンドまたはファイル名が違います」
 「'javac' は、内部コマンドまたは外部コマンド、
 操作可能なプログラムまたはバッチ ファイルとして認識されていません。」
 「Exception in thread "main" java.lang.NoClassDefFoundError: 」
 (p)http://www.wikiroom.com/java/?path,classpath
・「\12288 は不正な文字です。」
文字リテラル以外で全角スペースは使えません。半角スペースに。
・その他の質問→「APIのjavadoc見ろ」
・String に == は使うな。equals() を使え。※

質問時の心得
・コンパイルエラーか実行時エラーか、エラーではないが意図しない動作なのかはっきりしろ。あとエラーメッセージちゃんと読め。
・前提条件としてOS、開発環境、バージョン、使用フレームワーク等を明記。

前スレ
★★Java質問・相談スレッド180★★
http://2chb.net/r/tech/1492780397/
2デフォルトの名無しさん
2018/02/11(日) 01:19:57.46ID:pgvJ3Hcm
Java SE 8 Date and Timeについて教えてください

String型の"平成元年1月8日"という値をLocalDate型に変換したいのですが
DateTimeFormatterを使って変換する方法を教えてください
お願いします
3デフォルトの名無しさん
2018/02/11(日) 01:33:03.69ID:B0DbdRYG
そういやそれやってみたけどどうやっても「元年」がダメだったな。「1年」ならできたんだけどな。
何か方法はあると思うんだけど今のところわからない。
4デフォルトの名無しさん
2018/02/11(日) 04:56:25.67ID:3iWAD1Pj
Javaのファイル型KVSめちゃくちゃ遅くないですか?
KyotoCabinetとかの1000分の1レベル・・・
たぶんstaticにインデックスを持ってないのかな
組み込み型かつファイル型で何かいいのありますか?
5デフォルトの名無しさん
2018/02/11(日) 07:12:11.17ID:Dl6onReq
LocalDate.parse(text.replace("元年", "1年"), formatter);
オラクルに文句言うしかないね
6デフォルトの名無しさん
2018/02/11(日) 07:19:28.55ID:fidWsgUl
>>4
javaのkvsが遅いってどういうことよ。
公式のライブラリなんてないでしょ。
7デフォルトの名無しさん
2018/02/11(日) 08:23:10.55ID:3iWAD1Pj
javaのプログラムといったとき公式のプログラムだけを指すわけではありません
8デフォルトの名無しさん
2018/02/11(日) 10:15:34.56ID:fidWsgUl
つまり、4が勝手に選んだ3rdパーティのkvsが遅いと言いたいわけではなく、
javaによるkvs実装は一般的にインデックスがなくて遅いって言いたいの?
9デフォルトの名無しさん
2018/02/11(日) 12:45:16.73ID:ELb3bzVx
javaってなんか有料になるんですか?
10デフォルトの名無しさん
2018/02/11(日) 13:45:44.84ID:pgvJ3Hcm
>>3
>>5
ありがとうございます
11デフォルトの名無しさん
2018/02/11(日) 23:30:55.85ID:uxIefof+
今Open javaというのを使っているのですがOracle javaというのを使った方がいいのでしょうか
ざっと調べてみたのですがどちらにすべきというのがいまいちわかりません
12デフォルトの名無しさん
2018/02/12(月) 06:49:36.37ID:IgpM8r15
例外の使い方どうすればいいですか?
falseやnullを返していくか、例外を投げるか。
例えばDBへのトランザクションで複雑な内部処理の中だとして、
処理の失敗に応じてコミットするか選択しないといけない。
例外のベストプラクティスが知りたい
13デフォルトの名無しさん
2018/02/12(月) 12:47:18.02ID:qekpeHDJ
それが判断できるところでcatchして、適切な処理をしてから再throwすればいいと思うよ
14デフォルトの名無しさん
2018/02/12(月) 23:58:43.00ID:CWNu4mBa
パッケージ名の付け方について自身の持つドメインを逆からという風に聞いたのですが
個人開発等でドメインを持っていない方々はどうされているのでしょうか?
ユニーク性から考えてメアドを利用するというのを思いついたのですが
何か作法はありますか?
15デフォルトの名無しさん
2018/02/13(火) 01:17:29.42ID:ItXL3xp2
>>12
場合による.
16デフォルトの名無しさん
2018/02/13(火) 01:23:39.93ID:uX7IZed7
>>14
何でも好きなの作ればいいじゃん。特に制限があるわけじゃないし。
公開して多くの人に使わせることを目的としたライブラリなんかはそういう風に名前付けといた方が分かりやすいし他と衝突する事もないだろうからそうした方が良いだろうけどね。必ずしもそうしなけりゃいけないわけじゃない。
17デフォルトの名無しさん
2018/02/13(火) 01:54:37.39ID:/bOHErQ9
そもそも例外ていちいちthrowする必要あります?
例外なんだから、コーディングされていない遷移じゃないですか?
NPEとかClassCastとかもチェックせずに、全部上で捕まえて処理してください、
じゃだめですか?
18デフォルトの名無しさん
2018/02/13(火) 02:15:44.45ID:FRKwtYnc
>>17
それも場合によるかな
処理しなくていい例外とかもあるからねぇ
19デフォルトの名無しさん
2018/02/13(火) 04:06:37.94ID:uX7IZed7
>>17
ま、なんというか、その辺はJavaでは今更どうにもならんのでKotlinとか使えば良いんじゃないかな。
20デフォルトの名無しさん
2018/02/13(火) 08:59:03.90ID:/bOHErQ9
log4j2のxmlが反映されない・・・
LogManager.getLoggerした時点で狂ったようにログ吐くからなんとかしたいんだけど
これでtraceをinfoにしても止めれないんだけどなぜですか?
<Loggers>
<Root level="trace">
<AppenderRef ref="console" level="trace"/>
</Root>
</Loggers>
21デフォルトの名無しさん
2018/02/13(火) 09:31:34.49ID:jLCpX7pa
場合による、便利な言葉ですねえ
22デフォルトの名無しさん
2018/02/13(火) 12:05:27.36ID:AHnFnr3H
>>14
sofだと、ドメイン取ったほうがええよ。でもとれないならメアドか自分のプロジェクトレポジトリのurlを使いなよ、って回答に人気があるね。
23デフォルトの名無しさん
2018/02/13(火) 12:27:53.31ID:IoOWXwkE
例外は、基本的に戻り値ではなく、try-catch で囲む。
戻り値で返すとわかりにくいから、例外構文ができた

あとは君が考える

入力値エラー、0 除算、ファイルが存在しない、
メモリが足りない、型変換エラーの場合に、君はどうする?
24デフォルトの名無しさん
2018/02/13(火) 13:55:34.17ID:O++cRC/Q
>>11
11以降はオラクル版の提供やめるみたいよ。
25デフォルトの名無しさん
2018/02/13(火) 20:12:23.22ID:bGWlvAgR
>>16
>>22
ありがとうございます
参考にします
26デフォルトの名無しさん
2018/02/14(水) 08:19:05.85ID:IbDcUCKa
Booleanとbooleanとかオブジェクト型とプリミティブ型の使いわけどうすればいいですか?
性能的にシビアなところはプリミティブのほうがいいですか?
27デフォルトの名無しさん
2018/02/14(水) 08:27:53.52ID:/di6HjOp
Listに入れるとかnullが必要なパターンじゃない限りbooleanでok
28デフォルトの名無しさん
2018/02/14(水) 08:39:24.34ID:xRv25q5d
>>26
基本プリミティブ型だけ使う。ジェネリクスの型宣言するときだけラッパー型使えばいいよ。
29デフォルトの名無しさん
2018/02/14(水) 10:32:08.01ID:xbUNXEcU
>>26
主に他の言語やら他のアーキテクチャと連携するときとかに使う
データ通信時にtrue/falseを文字列でやり取りしたりもすることもあるので使えるようになると便利

他のラッパークラスも一緒
30デフォルトの名無しさん
2018/02/16(金) 04:25:55.90ID:PIB5v9ZW
バッチ処理とJavaでする処理ってなにか違いがあるんでしょうか
よく「夜になったらバッチが動いてデータを処理してくれる」とかありますが「夜になったらJavaがデータを処理してくれる」とかでも良いように見えて違いがわからないです
31デフォルトの名無しさん
2018/02/16(金) 06:51:31.03ID:UxRi07OK
>>30
「バッチ」は処理方式の話
「java」は言語の話

観点が違う
32デフォルトの名無しさん
2018/02/16(金) 10:23:33.09ID:OW1usLwi
夜になるとバッチ処理でJavaのプログラムが起動して、なんてこともありうる。
33デフォルトの名無しさん
2018/02/16(金) 10:43:37.31ID:OVf/pPmf
バッチこい
34デフォルトの名無しさん
2018/02/21(水) 18:43:46.25ID:Ho2ISOMi
Java終わりかな
35デフォルトの名無しさん
2018/02/21(水) 19:34:28.74ID:2C7myRiq
普通に考えて中々終わらんだろう。
Androidも健在だしな。Kotlin使うとしても新規プログラムからばかりでこれまでにJavaで作ったやつを変換してまで乗り換えるようなのはあまりないと思うよ。
36デフォルトの名無しさん
2018/02/21(水) 21:00:30.83ID:aRBSqY5R
「バッチ処理」で検索!

プログラムによる自動処理
37デフォルトの名無しさん
2018/02/22(木) 17:39:01.87ID:XBqMjBt+
文字の連結、追加で
ab+=cd
と記述できますが
ab=ab+cd
この記述と違ってメモリ幅の変動がなく
連続して前者の追加加算をしてもそれほど速度低下にはならないもんなんでしょうか?
内部を知ってる方に伺いたいです
38デフォルトの名無しさん
2018/02/22(木) 17:49:43.91ID:gz5vdKLC
どっちも同じバイトコードになるに決まってんだろアホ
39デフォルトの名無しさん
2018/02/22(木) 17:59:09.72ID:XBqMjBt+
書いてあるようにメモリ幅と内部のやりくりについての質問です
全くの見当違いの人はレス不要です
わからない人でなくわかっている人に聞いています
40デフォルトの名無しさん
2018/02/22(木) 18:24:41.64ID:Rqvcd5k2
両方書いてコンパイルしてバイトコード出して見比べてみたら?
41デフォルトの名無しさん
2018/02/22(木) 20:36:01.87ID:i8z+ldk3
わからない人は答えないでください(上から目線)
42デフォルトの名無しさん
2018/02/22(木) 21:30:20.55ID:gkrr6Csx
「それほど」がどの程度の速度低下まで許容されるのかをちゃんと定義してくれないと(すっとぼけ)
43デフォルトの名無しさん
2018/02/22(木) 21:52:44.46ID:IYnEzTFC
「メモリ幅」ってなんのことだ?
44デフォルトの名無しさん
2018/02/22(木) 23:26:05.38ID:YcYRar81
確保するメモリのサイズのことじゃなかろうかと知らんけど
45デフォルトの名無しさん
2018/02/22(木) 23:26:40.80ID:YcYRar81
「メモリ幅」ってなんのことだ?
46デフォルトの名無しさん
2018/02/22(木) 23:27:09.12ID:YcYRar81
同じバイトコードになるという答えが見当違いとは思えない
47デフォルトの名無しさん
2018/02/22(木) 23:53:50.86ID:K6gwUVsb
メモリ幅なんて言う奴は、CPU・RAM を分かっていない

どの言語でも、そんなの保証していない
48デフォルトの名無しさん
2018/02/22(木) 23:54:13.94ID:ylubyEbg
>>39
ほんこれ
わからないなら初心者版行けとしか
49デフォルトの名無しさん
2018/02/23(金) 06:23:51.21ID:Brpvjprl
java 文字列連結 最適化
でググった方が早いよ。
50デフォルトの名無しさん
2018/02/23(金) 08:13:48.99ID:oHNB0pIN
そもそも ab+=cd と ab=ab+cd の違いが問題になるほどのプログラム組んでるのかよ w
大量の文字列追加があるならStringBuilder使えや
51デフォルトの名無しさん
2018/02/23(金) 09:42:52.51ID:HSy+CPfQ
「わからない人は答えないでください」は知恵遅れでよく見るけどそれが掲示板にも流れてきてるのか
そういうやつが「普通」になっているのか、どっちなんだろう?
52デフォルトの名無しさん
2018/02/23(金) 11:27:53.19ID:mFZl6vMq
>>45
ほら、目盛りの幅。3cmとか。
53デフォルトの名無しさん
2018/02/23(金) 11:54:49.01ID:zNsQyXzG
>>50
これ
54デフォルトの名無しさん
2018/02/23(金) 18:05:40.89ID:tsgXcJ7V
質問スレ 「わからない人は答えないで下さい」

ま、まあそうだな…
55デフォルトの名無しさん
2018/02/23(金) 19:26:11.88ID:Py5a3myD
String a = "わからない人は";
String b = "答えないでください。";

a += b;
56デフォルトの名無しさん
2018/02/23(金) 19:37:01.17ID:Jw2VdbNh
ふう
57デフォルトの名無しさん
2018/02/23(金) 22:52:04.40ID:IHdQ8A6l
>>55
ベストアンサー
58デフォルトの名無しさん
2018/02/24(土) 06:52:39.70ID:Fw6wAD1s
>>37
周辺のコードとJavaコンパイラのバージョンによって変わったりするからそれだけの情報だと何とも
つまりは>>50の通り
>>38は間違ったこと言ってないからね

メモリ幅?:Stringが確保する領域のこと?
内部のやりくり?:GCのタイミングの話?
連続して~?:ループ処理の内部を+=か+で変えるってこと?それなら38の通り

何を持って見当違いだと判断したのだ
59デフォルトの名無しさん
2018/02/24(土) 07:22:33.34ID:BKLSO8lU
>37は人気者だね!
60デフォルトの名無しさん
2018/02/24(土) 07:44:29.29ID:UzdWcVQE
わからないの群れを見越して質問者に先に釘をさされるようじゃここも終わりだな
61デフォルトの名無しさん
2018/02/24(土) 08:10:48.12ID:8SGsAbML
質問内容があの走ってる電車のレール長は変わりますか?どのように変わりますか?
に対して38のこたえが レールの上を走ってるに決まってんだろ だからじゃね
頓珍漢と思われても仕方ない
62デフォルトの名無しさん
2018/02/24(土) 08:12:05.24ID:MAo3e6Of
僕の頭の中がわかる人だけこたえてください
63デフォルトの名無しさん
2018/02/24(土) 08:36:28.75ID:CuRF79s8
わざわざ言わんでも、「メモリ幅」が何を意味しているのか推理できる人しか答えられないのは確かだな。
64デフォルトの名無しさん
2018/02/24(土) 08:40:19.77ID:nsuuekrF
>>60
お前はどこにいるのw
65デフォルトの名無しさん
2018/02/24(土) 08:54:31.97ID:Fw6wAD1s
>>61
その例えはおかしいわ
この場合、性能が同じaの電車とbの電車があります。同じ回数走ったらレールの長さや電車の速度はかわらないんでしょうかと言ってるようなものだぞ
当然、レールの長さは変わらない
66デフォルトの名無しさん
2018/02/24(土) 08:58:48.32ID:Fw6wAD1s
いや、やっぱなんか違うな
無理やり例えるのは良くないな
67デフォルトの名無しさん
2018/02/24(土) 18:13:10.60ID:IGnDdAZf
>>61
お前もわかってないからそんな頓珍漢な例えになるんだよ
同じバイトコードになるってことは、それが元々 a += b と書かれてたか a = a + b と書かれてたかなんてJVMにはわからないし、
JVMが同じものとして解釈する以上、メモリ幅の変動(?)も速度低下(?)もないわけで

>>37が言ってるのは、同じバイトコードになる、よってそのコードは等価
お前の例えは、レールの上を走ってる、よってなんなの?
68デフォルトの名無しさん
2018/02/24(土) 18:16:34.78ID:dm+ZE7MQ
電車から逃げ出した痴漢だろ
69デフォルトの名無しさん
2018/02/24(土) 20:20:05.65ID:BKLSO8lU
っていうかメモリ幅ってなにさ?
70デフォルトの名無しさん
2018/02/24(土) 21:19:43.00ID:mD86uI0D
SIMMの幅のことだろ
71デフォルトの名無しさん
2018/02/24(土) 22:08:13.59ID:01A04fC8
むかしパソコン詳しい人に教えてもらったっけ
メモリは机の広さで多くのファイルを広げられるから作業が速くなる
机が小さかったら使わないファイルや文房具をしまったりするから効率が悪くなるって

なるほどなーって思った
それでうちの机はあまり大きくないからメモリ少なめのパソコン買ったよ(^o^)
72デフォルトの名無しさん
2018/02/25(日) 03:42:22.23ID:PW98pIgG
なんで主記憶容量の話に
73デフォルトの名無しさん
2018/02/25(日) 10:14:47.10ID:+Ur3vkTA
アホの議論だから
74デフォルトの名無しさん
2018/02/25(日) 11:16:42.37ID:59jeAjzx
でもパソコンのメモリって減らないからすごいよな!
スマホは毎月7ギガとか減るのに
75デフォルトの名無しさん
2018/02/25(日) 11:25:47.01ID:251p5lsj
ポータブルハードディスクって幅小さくて持ちやすいよな
76デフォルトの名無しさん
2018/02/25(日) 13:39:46.79ID:8xIV5yfC
>>71
ちょっとだけクスッとした。
77デフォルトの名無しさん
2018/03/03(土) 17:37:02.43ID:V2kYq93l
だから?
78デフォルトの名無しさん
2018/03/03(土) 18:03:32.42ID:h2dbhV1r
★★Java質問・相談スレッド181★★ 	->画像>5枚
79デフォルトの名無しさん
2018/03/10(土) 00:24:37.51ID:J3fnbe39
java勉強中の初心者です
javaEEのservletの“doDelete”について質問です。
勉強のためcurdを実装しているのですが、
post(c),get(r),はhtmlのform,hrefから送信できたのですが、
htmlからdelete(d)を送信し"doDelete”に渡したいのですがどの様にすればいいのでしょうか。
そもそも、考え方が間違っているのでしょうか。
アドバイス、参考などがありましたらご教授お願いします。
80デフォルトの名無しさん
2018/03/10(土) 00:34:48.00ID:q/evhJ6x
ご教示
81デフォルトの名無しさん
2018/03/10(土) 00:50:58.87ID:aNTnNw8G
>>79
JavaScriptで
デベロッパーツールとjQueryでREST APIのテストリクエストを実行
http://dim5.net/programming/using-ajax-request-on-js-console.html
82デフォルトの名無しさん
2018/03/10(土) 10:31:42.46ID:vFw8BYES
>>79
HTTPメソッドのDELETEに対応して実装されているのでしょう
確かリソース自体の削除だったか
実際に使われるのはGETとPOSTがほとんど
負荷が高いとHEADで対応はあるかも

データの削除はPOSTによるコマンド的なものでやる
またはURL末尾にdeleteとかメソッドっぽく含める
という方が見かける

URLの設計次第ではアリだと思うけどブラウザがあまり対応してないのかな
2015-07-22 [html/css] httpのフォームでDELETE やPUTのメソッドを送る方法
http://portaltan.hatenablog.com/entry/2015/07/22/122031
83デフォルトの名無しさん
2018/03/10(土) 10:33:16.22ID:vFw8BYES
>>79
HTTPメソッドのDELETEに対応して実装されているのでしょう
確かリソース自体の削除だったか
実際に使われるのはGETとPOSTがほとんど
負荷が高いとHEADで対応はあるかも

データの削除はPOSTによるコマンド的なものでやる
またはURL末尾にdeleteとかメソッドっぽく含める
という方が見かける

URLの設計次第ではアリだと思うけどブラウザがあまり対応してないのかな
2015-07-22 [html/css] httpのフォームでDELETE やPUTのメソッドを送る方法
http://portaltan.hatenablog.com/entry/2015/07/22/122031
84デフォルトの名無しさん
2018/03/10(土) 18:28:38.86ID:32LTkPVU
>>79
hrefはGETのみ、formはGETかPOSTしかサポートしてない
htmlからPUTやDELETEメソッドを使いたければXMLHttpRequest(XHR)を使う
>>81で書いてるjQueryは内部的にXHRを使ってる

サーバーAPIの単純な動作確認が目的ならhtmlじゃなく
cURLやPostmanのようなhttpクライアントを使ったほうが簡単
85デフォルトの名無しさん
2018/03/10(土) 23:13:45.90ID:J3fnbe39
>>84
>>83
そうなんですね。
聞きかじったRESTfullとhtmlのhref,formを混同していました。
新たにクラスを作っていhrefからdoGETにパラメータを渡して処理するようにしました。

しかし、なぜformからGETとPOSTしかサポートされないでしょうかね。
正直、釈然としません・・・

スレ違いだったらスルーしてください
86デフォルトの名無しさん
2018/03/11(日) 11:18:11.36ID:u0Fc0bsI
>>85
2014-03-29 なぜ html の form は PUT / DELETE をサポートしないのか?
http://jxck.hatenablog.com/entry/why-form-dosent-support-put-delete
87デフォルトの名無しさん
2018/03/11(日) 13:58:39.70ID:91F3yKR+
よくインターネット上の広告で半年でエンジニアに!みたいなのあるけど、インターネット不得手、プログラム未経験者が真剣に半年頑張れば本当にそんなこと可能なんですか?
可能ならその理由はなんでしょう?人材が足りていないというのは存じ上げていますが
88デフォルトの名無しさん
2018/03/11(日) 13:59:53.47ID:XNLW8FjI
IT土方、昔は元コンビニ店員(未経験)といたけど
89デフォルトの名無しさん
2018/03/11(日) 14:17:33.20ID:OHQW+NNW
半年でエンジニアになる理由?
90デフォルトの名無しさん
2018/03/11(日) 14:19:09.66ID:OHQW+NNW
1年よりも半年がいいし
半年よりも1ヶ月がいいだろうけど
半年かかるってことなんじゃ
91デフォルトの名無しさん
2018/03/11(日) 15:07:12.87ID:u0Fc0bsI
>>87
スキルシートに○○開発半年と書ければ派遣できるからじゃないか
92デフォルトの名無しさん
2018/03/11(日) 15:59:35.51ID:FcyL3wwo
あれ?デジャ・ビュか?どこかで同じ書き込みを見たような・・・
93デフォルトの名無しさん
2018/03/13(火) 18:07:26.87ID:cTFPDQau
javaというより数学の話に近いかもしれんのだがこれ答え間違ってるよね?
http://tech.pjin.jp/blog/2017/10/30/java-programing-exercise-8/
94デフォルトの名無しさん
2018/03/13(火) 18:32:22.59ID:LC30GjQR
>>93
え?どれが?
95デフォルトの名無しさん
2018/03/13(火) 18:57:50.45ID:jO7pAkit
答えが正である理由が分からないわ。と思ったが
差は大きな数字から小さな数字を引くことだと今になって初めて知った。ボクは恥ずかしい女ですw
96デフォルトの名無しさん
2018/03/13(火) 20:35:25.12ID:XMKMH3bD
>>95
お前はおっさんです!
97デフォルトの名無しさん
2018/03/13(火) 20:40:24.25ID:/ChP+Vc3
状況によると思う
基準値からの差とか言う時に絶対値だけだと色々不便だし
98デフォルトの名無しさん
2018/03/13(火) 22:18:55.48ID:wTdUbQ7M
>>94
例えば+xと-yだとしたらx+yになって差になってないと思うけど…
出題者と自分とで「差」の認識が違ったのかな
いろいろ場合分けしてたから「え?これでいいの?」って拍子抜けだった
99デフォルトの名無しさん
2018/03/13(火) 22:30:12.11ID:Q4D8j7yB
>>98
君が考えた差を計算するソース見せて
100デフォルトの名無しさん
2018/03/13(火) 22:35:23.36ID:jO7pAkit
ユーザや設計者から指定された「差」の定義や例文がないと混乱するわね。
以上以下と未満ですら怪しい人が多いから
>>96
僕はボクっ子だもん
101デフォルトの名無しさん
2018/03/13(火) 22:36:24.93ID:9h29uVxq
おいおい中一レベルだぞ
102デフォルトの名無しさん
2018/03/14(水) 00:02:50.00ID:5wanHWIv
>>99
ちょっと考えたら自分が見当違いのことしてたの分かったからもう許して
103デフォルトの名無しさん
2018/03/14(水) 21:36:07.79ID:V4ac6dGx
xとyの値次第でintの範囲に収まらなくなる可能性あるから
あんまり良くないなこれ
104デフォルトの名無しさん
2018/03/15(木) 22:43:23.98ID:jcS43Jhh
> 差を求めるということは大きい値から小さい値を引いた結果になります。

この定義には驚きだね。差の絶対値じゃん。
105デフォルトの名無しさん
2018/03/15(木) 22:45:38.78ID:jcS43Jhh
プログラム視点でもintの演算を勝手にunsignedにしてるし
106デフォルトの名無しさん
2018/03/15(木) 22:46:20.74ID:85Z09i/Z
ものを知らないだけ
辞書引けよ
107デフォルトの名無しさん
2018/03/27(火) 00:04:41.18ID:LxXLqxse
>>95
>差は大きな数字から小さな数字を引くことだと今になって初めて知った。ボクは恥ずかしい女ですw
それだと負数考慮してないでしょ。差は被減数から減数を引くこと。

>>93
問題文が悪いのよこれ。

数学的には「差」は減法の答え(減算の結果)で、
国語的にはただ「差」といった場合には隔たりの事、数の差と言った場合には2つの数の距離の事
(この距離を表す数は数学的にはベクトルになるけど、これが国語的な2者間の数の隔たりを表す)だけど、
一方がゼロ点であるとは限らないから、結局数学と同じ意味になる。
多分、この問題文考えたのも>>95と同じ様に負数の概念がすっぽ抜けてんだよ。>>93は正しい。
108デフォルトの名無しさん
2018/03/27(火) 03:43:48.88ID:cnMXkmda
>>107
その話題もう終わってるから
109デフォルトの名無しさん
2018/03/27(火) 06:37:48.65ID:UWBQsjyU
>>108
別に良いと思う
時間も空間も超越するのが5chの醍醐味やで
お前老害や
110デフォルトの名無しさん
2018/03/28(水) 01:09:27.59ID:hR1N5KW+
リストでループ途中に要素が追加されてもループするのはどうすればいいんですか?

forEachでもIterattionでもmodifiedなんちゃらエラーになるんですよね
昔ながらのVectorでfor(int i = 0; i < size(); i++) elementAt(i) とかしなきゃだめですか?
111デフォルトの名無しさん
2018/03/28(水) 01:21:01.26ID:7s/C1dYs
>>110
追加されたものもループで処理したいん?
112デフォルトの名無しさん
2018/03/28(水) 07:58:42.47ID:hR1N5KW+
そうです

有限グラフ探索で隣接ノードをリストにためて順番に処理していきたいので
最初は開始ノードのみで途中でどんどんふえていく感じにしたくて
113デフォルトの名無しさん
2018/03/28(水) 08:23:59.58ID:7oWFtssG
>>110
追加中にバッファが再確保される可能性があるから仕方ない。
つList#listIterator()
114デフォルトの名無しさん
2018/03/28(水) 09:46:54.23ID:fhRmItKh
>>110
それ要素が処理している所よりも手前に挿入されたらダメだよね。必ず最後に追加しかされないことが保証されているリストならいいけど。
それと、削除もできないようになってないと処理中に削除される可能性がある。

ということで、処理する側と完全に連携可能なやつを自作した方が良いのでは?
115デフォルトの名無しさん
2018/03/28(水) 12:02:29.13ID:B/xf69WY
いやList#listIteratorつかおうよ
116デフォルトの名無しさん
2018/03/28(水) 13:23:01.36ID:/IZ3VKI9
キューをwhileで処理するんがええんじゃなかろうかと
117デフォルトの名無しさん
2018/03/28(水) 19:27:30.32ID:hR1N5KW+
>>114,116
もちろん自作してもいいし実現方法はいくらでもある話なんですけど
java8の拡張文で用意されてるクラス使ってきれいにかけないのかなとちょっと思っただけでした
118デフォルトの名無しさん
2018/03/29(木) 11:20:13.01ID:QwxffFOd
Collecionから一致したデータを取り出すのってどうすればいいですか?

Stringをextendsして情報を追加したクラスのCollectionから
Stringで検索してデータを取り出したいんですけど
自作するしかないですか?
119デフォルトの名無しさん
2018/03/29(木) 12:35:43.41ID:Zp+X1sFq
>>118
それHashMapは使えないの?KeyからValue引っ張り出すようなやつ。
120デフォルトの名無しさん
2018/03/29(木) 14:23:38.22ID:QwxffFOd
>>119
やっぱりそうするしかないかな

その場合 HashMap の Key にも Value にも同じ文字列もつことになるのでデータの無駄な気がして…

String + Iformation だけのクラスにわけて Map でもつことも考えたけど
length とか charAt とか使うから結局中で文字列ももたないといけないんですよね

そこそこデータ数が多いので文字列をテーブルに2個もつのはさけたかった…
121デフォルトの名無しさん
2018/03/29(木) 17:22:09.18ID:wUwtUNlx
>>120
文字列複数とはいってもStringのインスタンスは一つで二ヶ所から参照されるだけだからたいしてメモリ食わないのでは?
122デフォルトの名無しさん
2018/03/29(木) 17:45:33.63ID:QwxffFOd
そうなんですね
じゃあMapで組みなおしてみます

ありがとうございました
123デフォルトの名無しさん
2018/03/29(木) 18:51:34.60ID:yhEgq3Dh
文字列の内容が同じ時に必ず同じStringのインスタンスにしたい場合は String#intern() を使うと良い。
124デフォルトの名無しさん
2018/03/29(木) 19:16:34.30ID:+yEHtKmw
拡張したStringクラス内でアップキャストして比較すればいけない?
125デフォルトの名無しさん
2018/03/29(木) 19:38:33.67ID:LS3RTWy4
Stringって継承できるの?finalじゃなかった?
俺が古いのかな
126デフォルトの名無しさん
2018/03/29(木) 19:39:40.10ID:vAfgGUZ/
研究でAIのチューニング用UIつくってるんですが
部品のレイアウトがうまくいかないです

最初の画面にはききたいことの入力欄だけあって

入力すると次のページに数件予想質問と結果を表示して
候補にあれば選択ボタン
なければ全部NGボタンをおしてから正解の答えを入力する

ってしたいんですが
どうしても部品が画面外にでたり重なったりします

FlowLayout BoxLayout setBounds指定とかいろいろためしたんですがうまくいきません
どこが悪いか教えていただけませんか

http://fast-uploader.com/file/7077868223948/
パス 1234
デバッグ用にGUI部分だけ抜き出してみたんですが…
127デフォルトの名無しさん
2018/03/29(木) 19:51:18.47ID:eXpBCev1
finalだったわ
継承はできないな
128デフォルトの名無しさん
2018/03/29(木) 21:51:33.13ID:eXpBCev1
>>126
74行目でFrame自体ののレイアウトをFlowLayoutにしてるのが主な原因

あとテキストボックスのwidthサイズが大きい

レイアウト関連は背景色とかつけると解決しやすい
129デフォルトの名無しさん
2018/03/29(木) 21:58:16.46ID:eXpBCev1
ソース整形したから74行目じゃなかった
まぁその辺りでthisに対して突っ込んでるレイアウト設定が原因ってことで
130デフォルトの名無しさん
2018/03/30(金) 09:25:26.93ID:bu98gf73
126です

アップしたのがたまたまそうなってただけで
レイアウトをいろいろ変更してみてるんですが全くうまくいかないです…

そもそもsetSizeがぜんぜんきいてないんですが
全部のパネルをsetLayout(null);
にしてもきかないのはなぜなんでしょうか
131デフォルトの名無しさん
2018/03/30(金) 13:02:53.26ID:vz0AgFHK
これが参考になるかもしれません。
https://stackoverflow.com/questions/3692987/why-will-boxlayout-not-allow-me-to-change-the-width-of-a-jbutton-but-let-me-chan
132デフォルトの名無しさん
2018/03/30(金) 13:22:52.68ID:bu98gf73
自己解決しました

setSize()はきかなくてsetPreferredSize(new Dimension())
を使えばサイズだけは反映するようになりました

位置の調整方法はわかりませんがとりあえずデフォルトレイアウトで
はみだしたり重ならず全部のパーツが表示されました
133デフォルトの名無しさん
2018/03/31(土) 07:53:45.76ID:DDP7B6Z+
日時の文字列を生成するのに、DateFormatクラスとかを使えば標準的なフォーマットで出力されて
あと言語が変わっても大丈夫(自分でローカライズする必要がない)じゃないですか。

似たような感じで時間の長さ、例えば "2時間36分" をAPIで作れるといいと思っているのですが
そういうものはありますでしょうか。これが英語になると勝手に "2 hours 36 minutes" になるみたいな。
134デフォルトの名無しさん
2018/03/31(土) 10:01:25.54ID:376M7ais
つDuration.parse
135デフォルトの名無しさん
2018/04/01(日) 18:17:02.75ID:QRZAvcI4
>>134
どうもです。しかし最終的に普通の時刻の文字列をDurationのインスタンスから
生成する方法がわからないのですが... ??

Duration duration = Duration.parse("PT2H36M"); とかしたとして、
toString()も単に"PT2H36M"を返しますよね。
もしかして toHours() -> 2, minusHours(2).toMinutes() -> 36 とかでで2と36を取り出し、
その後これらから文字列をなんとか作るという話でしょうか?

経過時間の計算そのものでなく、時間と分の数値は最初から与えられたとして、経過時間
の文字列の生成を如何に楽に行うかに興味があるのですが...
136デフォルトの名無しさん
2018/04/05(木) 14:05:21.72ID:MD4dwdXJ
XPにはJava8インストールできないの?
137デフォルトの名無しさん
2018/04/14(土) 11:08:12.71ID:Z+3xnQ4k
デザインパターンをインターフェースから説明した良心的なブログ
途中で息切れしてるみたい??

https://blogs.yahoo.co.jp/kamyu_2010/35417803.html
138デフォルトの名無しさん
2018/04/23(月) 21:12:23.63ID:Hmrq+5/s
だから?
139デフォルトの名無しさん
2018/04/24(火) 08:31:35.21ID:zK8TVl/a
良心的なブログよりためになるブログが良い
デザインパターンを書き写しただけのゴミを見せられる
読者の立場にもなれ
140デフォルトの名無しさん
2018/04/24(火) 08:38:42.87ID:aRpe9XKh
初心者向け解説ばかりの時代
141デフォルトの名無しさん
2018/04/24(火) 21:36:06.09ID:0Hi7fk6J
>>142
で?
142デフォルトの名無しさん
2018/04/24(火) 22:44:47.72ID:IYsMY8oH
>>141
え?オレ何か言ったっけ?
143デフォルトの名無しさん
2018/04/25(水) 00:58:24.44ID:g4RvSF2y
つまらぬわ!
144デフォルトの名無しさん
2018/04/25(水) 08:46:24.05ID:xbNGGQDl
>>144
せやね
145デフォルトの名無しさん
2018/04/25(水) 12:55:05.40ID:aMC3Bhoy
>>144
面白くない奴の便乗なんて寒いだけだからやめとけ
146デフォルトの名無しさん
2018/05/06(日) 11:09:29.87ID:PC9jam24
データベースに保存したいJavaのオブジェクトが大量にあるのですが
直列化ではコーディングやデバグにかかる時間がかかりすぎるので
もっと簡単に永続化できるライブラリかフレームワークなどはありますか
147デフォルトの名無しさん
2018/05/06(日) 11:13:54.12ID:PC9jam24
オブジェクトが大量にあるというかオブジェクトの雛形になる
クラスが大量にあるということです
148デフォルトの名無しさん
2018/05/06(日) 11:51:06.89ID:/6fg2Qhj
まず高速プリンターを用意します
149デフォルトの名無しさん
2018/05/06(日) 12:11:54.48ID:yG5Sy7/7
150デフォルトの名無しさん
2018/05/06(日) 13:47:11.04ID:XXaq/T45
>>146
ObjectOutputStreamのwriteObject()呼び出すだけなわけだが、
コーディングに時間が掛かるとか、もっと簡単にとはいったい?
ここに書いてない要望が他にもあるんじゃないの?
151デフォルトの名無しさん
2018/05/06(日) 14:33:54.08ID:kuy66ISG
>>150
顧客が本当に欲しい物は、
クラスを指定したらシリアライズ処理を自動で吐き出してくれるプラグインとか
そういうものなんじゃないかね
152デフォルトの名無しさん
2018/05/06(日) 15:02:54.32ID:i9j42Pj0
ここに質問するのが適切なのか悩ましいのですが…
OpenJDKは再頒布可能なのでしょうか?

個人の趣味で作ったアプリケーションに同梱して配布してよいのかな?と思い調べているところです。
自分でビルドしたOpenJDKなら再頒布可能、CentOSなどが公開しているOpenJDKは再頒布不可などあるのでしょうか。
153デフォルトの名無しさん
2018/05/06(日) 15:56:01.81ID:Ba+o29Eu
ディレクトリ a にある a.jar のなかの A.class (package a)
ディレクトリ b にある b.jar のなかの B.class (パッケージ宣言なし)
を使ったディレクトリ c にある c.jar ってどうやって実行すればいいですか

はるか昔に作って昔は動いてたはずなんですけど実行の仕方がわからなくなりました
154デフォルトの名無しさん
2018/05/06(日) 16:09:20.09ID:yRUrTeQA
>>150-151
対象となるクラスがあまりにも多くてreadObjectとwriteObjectを
いちいち宣言するのが面倒くさい上に
少しでも書き間違えたときにIDEが検出してくれないし
デシリアライズに失敗したときに原因となったクラスを特定するのが困難だしで
その辺の手間を楽をする方法を探していたんだけど
JAXBでXML化する方法を思いついたので自己解決しました

ありがとうございます
155デフォルトの名無しさん
2018/05/06(日) 17:01:33.93ID:Bse1bLkg
>>153
その jar ファイルを全てクラスパスに指定すればいいのでは?
環境変数 CLASSPATH かコマンドラインで -cp (java -help の出力またはドキュメント参照)。
156デフォルトの名無しさん
2018/05/06(日) 18:35:06.08ID:Ba+o29Eu
>>155
動きました
パスってディレクトリに通すものかとおもってたんですがjarファイル自体を指定するんですね
ありがとうございました
157デフォルトの名無しさん
2018/05/06(日) 19:08:09.02ID:hMxfhnzD
>>156
.jarとか.zipはそれ自体がフォルダーみたいなもんだから
158デフォルトの名無しさん
2018/05/10(木) 16:22:03.34ID:TnST3c7c
GatlingとかLoad Runner、JMETERの動作テスト、Javaのスレッドダンプ取得とかの練習をしたいと思ってます

そのターゲットとなるWebアプリを探してます

今のところFessという、Tomcat上で動いてるWebアプリは見つけました
他にオープンソースで、Javaでうごいていて、Gatlingなんかの練習に使えるWebアプリについて情報ほしいです
どんなものがありますか?
159デフォルトの名無しさん
2018/05/10(木) 17:36:39.17ID:1aaKaop2
普通自作すんだろ
160デフォルトの名無しさん
2018/05/11(金) 09:01:56.54ID:ou2CAaSI
tools.jarはLinux,Mac,Winで互換性がありますか?
161160
2018/05/11(金) 09:34:33.65ID:ou2CAaSI
あるいは、JavaCompiler単体のjarか独自のJavaCompilerは公開されていますか?
Java9からアプリ側から利用できなくなったそうなので。
162デフォルトの名無しさん
2018/05/11(金) 09:57:35.61ID:BZrCuED6
javax.swing.JPopupMenuを直接show()で表示させてます
問題はマウスをメニューアイテムの上に乗せても、クリックしても色が変転しない
設定で定義しないといけない事があるのでしょうか?
163デフォルトの名無しさん
2018/05/11(金) 13:18:37.00ID:Kz4/xaqB
>>158
Githubで言語絞れば一発
今聞かれて俺が思いつくような有名なOSSって規模が大きかったり環境整えるのが厄介だったりするのが多いから、
簡単に動かせそうなしょぼいのを適当に自分で選んだほうがいい
164デフォルトの名無しさん
2018/05/12(土) 08:20:02.64ID:gX8J6qxW
>>162
addMouseListenerで e.getComponent().setBackground(Color);
で反転するようになった
165デフォルトの名無しさん
2018/05/12(土) 10:58:22.92ID:pDgCeBjY
共同ツール 1
https://seleck.cc/685

https://trello.com/
ボードのメニュー → Power-Upsから拡張可能 Slack DropBoxなど
Trello Chrome拡張機能 elegant
http://www.kikakulabo.com/service-eft/
trelloのオープンソースあり

共同ツール 2
https://www.google.com/intl/ja_jp/sheets/about/

共同ツール 3
https://slack.com/intl/ja-jp
https://www.dropbox.com/ja/
https://bitbucket.org/
https://ja.atlassian.com/software/sourcetree
https://sketchapp.com/extensions/plugins/
http://photoshopvip.net/103903

https://goodpatch.com/blog/sketch-plugins/
166デフォルトの名無しさん
2018/05/12(土) 12:02:34.73ID:XqIGE8bt
Javaのデザインパターンのブログ(ヤフーブログ)・・・・なかなか良い。

https://blogs.yahoo.co.jp/kamyu_2010/35442561.html
167デフォルトの名無しさん
2018/05/12(土) 13:54:22.02ID:UoMtV9Kh
          ∧_∧
    ∧_∧  (´<_`  ) また宣伝書き込み? 
うん ( ´_ゝ`) /   ⌒i
   /   \     | |
  /    / ̄ ̄ ̄ ̄/ |
__(__ニつ/  FMV  / .| .|____
    \/____/ (u ⊃
168デフォルトの名無しさん
2018/05/23(水) 19:25:05.40ID:Au5e7VGg
僕の知り合いの知り合いができたパソコン一台でお金持ちになれるやり方
役に立つかもしれません
グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』

0XZ3H
169デフォルトの名無しさん
2018/05/23(水) 19:53:26.57ID:iVq3rLr7
          ∧_∧
    ∧_∧  (´<_`  ) 儲かるなら自分でやればいいじゃんな。 
うん ( ´_ゝ`) /   ⌒i
   /   \     | |
  /    / ̄ ̄ ̄ ̄/ |
__(__ニつ/  FMV  / .| .|____
    \/____/ (u ⊃
170デフォルトの名無しさん
2018/05/24(木) 05:14:55.03ID:iSd0paxF
https://ideone.com/fOelKc
除数が変数の%演算子がなんか遅かったからこんなん作ったんだが、もうちょっと速くならんかな?

被除数の範囲は0以上Long.MAX_VALUE以下、
除数は16ビットくらいまでの範囲が使えて速ければよす


うちの環境だとマイクロベンチで4倍
実際に組み込んで全体の速度が2倍くらいにはなったんだが (とボトルネックをいじってるよアピールw
171デフォルトの名無しさん
2018/05/24(木) 20:56:47.08ID:iSd0paxF
ideoneでパラレルストリーム使えない・・・?
https://ideone.com/YpKyd3

paizaは普通に使える
https://paiza.io/projects/bgjMxfyxPJmc3vxGYiH8ug
172デフォルトの名無しさん
2018/05/25(金) 10:54:04.75ID:Sw3LTZE2
>>171
ideoneはメインスレッド含めて8スレッド(論理コア分)アクティブになるとダメっぽい
んで、パラレルストリームで使われる共通ForkJoinPoolが論理コア-1個スレッドを起動するから、
メインスレッドと合わせて論理コア分アクティブになってアウト

スレッドプールの数を6でForkJoinPoolを作ってそれを使ってStream動かせば大丈夫っぽい…めんどくせw
173デフォルトの名無しさん
2018/05/28(月) 17:05:15.50ID:ykC4rFCg
記述がFXで申し訳ないのですが、ご教授宜しくお願いします

★★Java質問・相談スレッド181★★ 	->画像>5枚

A面は↓の回転値でいけるかと思うのですが
B面の回転ってどのように指定すればいいのでしょうか?
色々値を変えてみたのですがなかなか上手くいかず…

//画像
Image img = new Image( new File("ファイル.png").toURI().toString() );
ImageView imgv = new ImageView( img );
imgv.setTranslateX( 70 ); imgv.setTranslateY( 1300 ); imgv.setTranslateZ( -48 );

//回転
imgv.setRotationAxis( new Point3D( 1.0, 0.0, 0.0 ) );
imgv.setRotate( 90.0 );
174デフォルトの名無しさん
2018/05/29(火) 17:30:52.67ID:/gnVbstm
一晩寝たら自己解決しました
175デフォルトの名無しさん
2018/05/29(火) 17:36:59.04ID:jtMR10Pr
よろしい
176デフォルトの名無しさん
2018/05/29(火) 19:26:49.25ID:cb/igs7S
寝ることは重要だな
177デフォルトの名無しさん
2018/05/29(火) 21:00:56.09ID:YUEvTtOX
乗り物にのる、トイレに行くも
178デフォルトの名無しさん
2018/05/31(木) 09:29:18.82ID:P1af5ns+
プログラムの中でswingによるGUIを表示させ、ユーザにラジオボタン・リストから値を選択してもらい、その値を後続の処理に使用したいと思ってるんですが
GUI表示してそのまま後続の処理が続いてしまいます
表示した時点で処理を停止させ、ユーザが値を選択してOKボタンを押したら処理が再開するようにすることはできますか?
179デフォルトの名無しさん
2018/05/31(木) 09:50:40.39ID:v2P/wDLY
ESP、ESP、ESP
180デフォルトの名無しさん
2018/05/31(木) 11:35:44.34ID:qv6ph+UR
どういう処理にしてるかわからないから正確なアドバイスは出来ないけど
guiの変更イベントで処理すれば出来るんじゃない?
181デフォルトの名無しさん
2018/05/31(木) 12:34:12.85ID:1EOK+kFV
GUIプログラムはパネルを表示したらループ状態を続ける
処理は各コンポーネントのリスナーにどう処理するかを登録して
ボタンやリストを選択したら登録されてる処理を実行する
ボタンならaddActionListenerを使うんじゃないの
182デフォルトの名無しさん
2018/05/31(木) 13:23:37.92ID:XsftK6MO
>>178
それいわゆるダイアログってやつだよね。
183デフォルトの名無しさん
2018/06/01(金) 12:00:41.25ID:SFIgpc6j
>>178
JDialogを継承したクラスで作る。
コンストラクタで modal を true にするか modlity type をブロックするやつにする。
更に OK ボタン等が押されてダイアログを閉じるときは dispose() するように書く。
その他ラジオボタンなど必要なものを配置し、内容を外部から取得可能にするためにgetterを作っておく。

このダイアログをsetVisible(true)するとdispose()されるまで帰ってこない。
帰ってきたらgetterを通して内容を読む。
184デフォルトの名無しさん
2018/06/01(金) 16:28:58.34ID:4jGKb4xs
はぇ~
JFrameじゃないヤツ使うんですね
ありがとございます
185デフォルトの名無しさん
2018/06/02(土) 16:27:10.30ID:49Aq679E
ラジオボタンじゃなくても良いのなら JOptionPane を使うという手もある。
これだと showInputDialog() や showOptionDialog() を使えば複数項目から選択して一つ入力するダイアログになる。
自分でダイアログ作る必要がない。
https://www.javadrive.jp/tutorial/joptionpane/index12.html
https://www.javadrive.jp/tutorial/joptionpane/index13.html
186デフォルトの名無しさん
2018/06/03(日) 20:18:35.08ID:3rEkE1iw
今アプレット動く環境ってありますか?
IEだけはサポートされてるみたいなんですけど
昔動いたはずのアプレットタグとjarをおいてもなぜか動かないんですよね
IEでアプレット動かしたときのエラーメッセージの見方もわかれば教えてほしいです
187デフォルトの名無しさん
2018/06/03(日) 21:06:43.44ID:m3SIxw/I
>>186
何故かうごかないって、ブラウザは?
そしてそのブラウザにプラグインはインストールされている?
単にされてないだけでは?もちろんそのブラウザ用のプラグインが今は開発されてないってこともあり得るが。
188デフォルトの名無しさん
2018/06/03(日) 23:44:08.17ID:3rEkE1iw
>>187
Windows7 IE8 でツール インターネットオプションのなかに
アプレット有効にするってのにチャックはいってます
アプレットページひょうじすると表示領域の枠はでてるんですけど左上に赤い×マークがでてます

これプラグインがよみこめてないんでしょうか
アプレットの中のエラーで落ちてるんでしょうか
189デフォルトの名無しさん
2018/06/04(月) 00:50:30.53ID:fspoOmUI
その×にマウスカーソルを持って行ってクリックすると何か出ない?
190デフォルトの名無しさん
2018/06/04(月) 19:58:49.32ID:Mxq+Oh0H
何も反応ないですね
191デフォルトの名無しさん
2018/06/04(月) 20:36:43.25ID:a6R/84He
X<-mouse
192デフォルトの名無しさん
2018/06/04(月) 22:24:19.20ID:AidiJH9V
7か8か忘れたけど結構前から証明書必須になったし
9で非推奨、11で削除されるぞ。

jnlp出てからsunがずっとjnlp使えと言い続けてたんだから
jnlp(実装はweb start)使え。
193デフォルトの名無しさん
2018/06/05(火) 01:07:27.61ID:6uzbBGLs
どうやって作ればいいんですか?
HelloWorld的なサンプルコードってあったりしますか?
194デフォルトの名無しさん
2018/06/05(火) 01:49:45.76ID:6uzbBGLs
調べて jnlp ファイルっていうのかいてみたけどセキュリティどうこうで動かないみたいです

同じサーバー内にあるデータを読んで表示して
処理した結果をCGIに送って保存するみたいなアプレットだったんですけど
URLのOpenStreamの読み書きもセキュリティ的にアウトな感じなんでしょうか

昔かいたプログラムが実務で使えそうだったので
うまくウェブアプリとして動いてくれればよかったんですが
長いことJavaさわってなかったせいで分からないことだらけで時間ばかりかかってまったく進まない

おとなしく javascript でかきなおしたほうがよさそうですね…

15年前はこれからのウェブはアプレットの時代だとかいって大学でもアプレット教えてたし
当時作ったコードが全部再利用すらできないゴミになったかと思うと憂鬱だ
195デフォルトの名無しさん
2018/06/05(火) 03:44:17.72ID:HABwZRW3
javaScriptで書き直したコードも15年後にはゴミになってると思うよ
196デフォルトの名無しさん
2018/06/06(水) 23:02:07.48ID:c8dAN/Mm
アプレットどころか、今やJRE自体が一般ピープルのPCにとってはウィルス扱いだぞ
JavaFXも事実上廃止されてJavaを簡単にアプリにバンドルする方法も無くなり、クライアントは完全に終わった
197デフォルトの名無しさん
2018/06/07(木) 00:11:58.98ID:23ZUqsYw
「JavaFXも事実上廃止」ってどゆこと?
198デフォルトの名無しさん
2018/06/07(木) 03:27:56.30ID:VEx/11mP
Oracleがバンドルしなくなる。
フルーソフトだからなくなりはしないだろうけどね。
199デフォルトの名無しさん
2018/06/07(木) 03:28:26.90ID:VEx/11mP
うはw 変な編集ミスしたw
200デフォルトの名無しさん
2018/06/07(木) 06:34:03.30ID:zhEE1GLq
JavaFXどうなっちゃうんだろうな
OpenJDK11と一緒にopen-jfx11のバイナリもリリースしてくれるといいが

現状もLinuxディストリビューションのいくつかはopen-jfcパッケージ提供してるけど
Windows用の権威あるopen-jfxバイナリなくて不便なんだよね
Windows用にもopen-jfxの野良バイナリがいくつかあるようだけど
201デフォルトの名無しさん
2018/06/07(木) 09:18:14.94ID:6qWq6S5o
権威のある君が作れば良い
202デフォルトの名無しさん
2018/06/07(木) 17:57:57.97ID:G8YxR6Qt
それもそうだな!
203デフォルトの名無しさん
2018/06/07(木) 20:12:42.53ID:E34l5tNQ
頑張れ
204デフォルトの名無しさん
2018/06/08(金) 01:33:25.23ID:xsX40G/R
ここでいいのかよくわからないのですが教えて下さい。

AndroidでSDカードのフォルダが
/storage/47D2-1300
みたいに表示されます。
この場合、
47D2-1300
は、このSDカード固有の番号で、他のAndroid機に刺しても
47D2-1300
のように表示されるのでしょうか?
205デフォルトの名無しさん
2018/06/08(金) 03:31:28.12ID:rrKZq6Yq
ブラウザ上でJava起動する方法ってもうないの?
206デフォルトの名無しさん
2018/06/08(金) 03:57:47.64ID:xsX40G/R
そういうのは、Javaスクリプトっていうんじゃないの?
207デフォルトの名無しさん
2018/06/08(金) 06:43:18.81ID:dTeFfRCY
Java アプレットか

ここ10年は、聞かないな
208デフォルトの名無しさん
2018/06/08(金) 07:09:41.59ID:uSJSyiA7
on error goto みたいなの無いの? そのルーチン内ならどこでエラー発生してエラー処理に向かう、みたいな
それともtrycatchに全部入れちゃう?
209デフォルトの名無しさん
2018/06/08(金) 08:13:31.47ID:/bqVuVHr
>>206
JavaとJavaScriptは全く別のものだ。
210デフォルトの名無しさん
2018/06/08(金) 08:18:34.82ID:/bqVuVHr
>>208
そう。

それかメソッドに throws Exception 付けておくかかな。するとそのメソッド内で例外発生すると呼び出し側に帰って例外処理になる。
211デフォルトの名無しさん
2018/06/08(金) 08:23:59.92ID:BDVSM83M
On Error Gotoはtry catchで代用できるけど
On Error Goto + Resume Nextの代用がないだよね
1ステートメントごとにtry catch書かにゃならん
212デフォルトの名無しさん
2018/06/08(金) 10:38:05.74ID:oMLODkzi
>>204
スレチ
213デフォルトの名無しさん
2018/06/08(金) 11:28:05.06ID:1PlqYTvd
>>204
そんなもんは知らん。機種によってマウントされるディレクトリは違うのでは?
214デフォルトの名無しさん
2018/06/08(金) 13:10:14.04ID:OTaRl1LS
>>204
Androidのジャヴァモドキは正規のライセンスを受けていない違法な海賊版なんだよ
JavaスレでAndroidの質問をするのはバカが違法ダウンロードを自慢するようなもの
215デフォルトの名無しさん
2018/06/08(金) 13:33:32.61ID:1PlqYTvd
>>214
JavaVMって独自に作っちゃいけないんだっけ?
216デフォルトの名無しさん
2018/06/08(金) 13:34:45.49ID:2yGpvne7
>>215
いけない
217デフォルトの名無しさん
2018/06/08(金) 13:37:08.24ID:1PlqYTvd
>>216
それはどういう法律に反するのか?
218デフォルトの名無しさん
2018/06/08(金) 13:38:29.60ID:2yGpvne7
>>217
オラクルさんによると特許侵害と著作権侵害
219デフォルトの名無しさん
2018/06/08(金) 13:46:03.43ID:1PlqYTvd
>>218
同じ動きをする全く別のプログラムは著作権の問題はないよな?もしこれにあったら OpenJDK もあり得ないわけだし。
特許はどこにあるのか?それとその特許は OpenJDK の方では避けられているのか?
220デフォルトの名無しさん
2018/06/08(金) 15:16:14.07ID:2yGpvne7
>>219
避けられてないよ
あくまで「OracleがリリースしたOpenJDK」に対して特許の利用が認められている
OpenJDKを勝手に弄って配布したら特許侵害
221デフォルトの名無しさん
2018/06/08(金) 16:29:34.75ID:xsX40G/R
プログラミングではないのですが教えて下さい。

Androidのアプリで、
マップルという地図ソフトがあります。
起動後、地図データへのパスを求められます。
大容量の地図データなのでSDカードへ入れます。
と、そのパスの形式が
/storage/47D2-1300
みたいな感じで、
SDカード固有の数字で、「数字4桁-数字4桁」のディレクトリを調べないといけないのです。
「数字4桁-数字4桁」を調べるにはどうすればいいのでしょうか?
222204
2018/06/08(金) 16:32:38.13ID:xsX40G/R
↑、失礼、間違えた。
Androidスレで改めて質問し直します。

>>212-214
どうもでした。
223デフォルトの名無しさん
2018/06/08(金) 17:26:47.40ID:Ayrw+LdJ
すいません jar の作り方がよくわからないので教えてください

packege util の Util.class が
util/uti.jar にはいっていて

それを使っているメインプログラムがパッケージなしで

main / Main.java

にあるんですがダブルクリックするだけで動く jar を作るにはどうしたらいいんでしょうか
224デフォルトの名無しさん
2018/06/08(金) 17:46:45.50ID:rAAW+Mj8
GGRKS
225デフォルトの名無しさん
2018/06/08(金) 18:07:30.25ID:BDVSM83M
>>219
そうなのか?
OpenJDKはGPLだろ?
GPLに従う限り二次派生の作成も配布も問題ないはずだ
OpenJDKというJava実装はオープンで公開していながら
Googleに対してはJavaのAPIはOracleの著作だからお金払ってね♡
ってわけがわからないよ
226デフォルトの名無しさん
2018/06/08(金) 18:15:27.87ID:iLNCpvye
>>221
目的も書いたほうがいいと思うよ。

↓で解決するんじゃないの?
https://stackoverflow.com/questions/3348643/how-to-read-the-sd-card-id-number
227デフォルトの名無しさん
2018/06/08(金) 18:33:06.83ID:Ayrw+LdJ
>>224
ぐぐっていろいろ変えてみてるんですけどうまくいかないんです

作ったフォルダの中でダブルクリックすると動くんですが
他のフォルダにうつすと動かなくなって
メインクラスがロードできないっていわれます

jarの作り方の記事自体はたくさんでてくるんですが
他のjarに依存する場合の書き方があまりでてこなくて
MANIFESTにクラスパスをかけばうまくいきそうなのにかいてもうまくいかなくて困ってます
228デフォルトの名無しさん
2018/06/08(金) 20:22:18.43ID:tnZm4LxR
>>224 ググれクスに見えるな。やっぱ、ググレカスの場合は小文字じゃないとな。
229デフォルトの名無しさん
2018/06/08(金) 20:29:27.65ID:pdRgGEa3
>>227
MANIFESTの仕様見たか、素人には無理かもね
230デフォルトの名無しさん
2018/06/08(金) 20:41:54.79ID:TV1o73xX
>>221
ファイルマネージャとかでSDカード内を確認してフルパス取得すれば済む話じゃないの?
231デフォルトの名無しさん
2018/06/08(金) 21:37:01.47ID:uQFFSCdV
>>220
あれは GPL だけど特許はそのままのものなのか?
232デフォルトの名無しさん
2018/06/08(金) 21:43:47.18ID:LHC1uZZ8
>>220
ひょっとしてGPL知らんのか?
改編不可なんてポリシー上あり得ないんだが w
233デフォルトの名無しさん
2018/06/08(金) 21:56:44.25ID:uQFFSCdV
訴訟についてはこれか。

OracleとGoogleのJava著作権侵犯裁判の現状を知る(2018年版)
http://www.orangeitems.com/entry/2018/03/28/173616
234デフォルトの名無しさん
2018/06/08(金) 23:41:54.50ID:2yGpvne7
>>232
GPLv2はあくまで著作権の利用許諾でしかなく、特許の利用について何も保証しない。
GPLソフトウェアを使った者を特許侵害で訴えることは普通に可能。
その問題を解決することを意図して特許までカバーしたGPLv3ができたんだけど、OpenJDKは残念ながらv2だ。
理由はもちろんそういうこと。
235デフォルトの名無しさん
2018/06/08(金) 23:48:44.16ID:Ayrw+LdJ
お願いします  どなたか助けてください 課題の提出期限がすぎそうです;;

原因きりわけのために使ってるjarと同じ階層構造の
以下のような最小セット構成でコンパイルしてるんですがjarにすると動きません

a/A.class (packege a)
b/B.class (パッケージなし) ソースをみると import a.* を使ってる
Main.java 今回つくったプログラムでパッケージ宣言なし B を使用

> javac -cp .;b Main.java でコンパイルは通る
> java -cp .;b Main → 動く

---MANIFEST.MF---
Manifest-Version: 1.0
Class-Path: . b
Created-By: 1.8.0 (Oracle Corporation)
Main-Class: Main

> jar cvmf META-INF/MANIFEST.MF main.jar *.class a b でjarを作成
> java -jar main.jar でも > java -cp .;b -jar main.jar でも
Exception in thread "main" java.lang.NoClassDefFoundError: B
というエラーが出ます

クラスファイルの状態だと動くのにjarにすると動かない原因がどうしても分かりません
MANIFESTをかくのがはじめてなので根本的に何か間違ってる気もするんですが
Class-Path の書き方は何度もぐぐってスペースあけて並べるとあったんですがためしに .;b にしてもダメでした
解凍する前にb.jarをクラスパスで指定してたときは同じフォルダ内であれば動いたことがあったのですが
今は同じフォルダ内でも動きません

http://fast-uploader.com/file/7084024397219/
最小セットにしたファイル一式です
236デフォルトの名無しさん
2018/06/09(土) 00:15:06.79ID:dWoOad5I
「java exception in thread main java.lang.noclassdeffounderror」で検索!

一言一句正確なエラーメッセージで検索するのが、基本!
237デフォルトの名無しさん
2018/06/09(土) 00:24:38.54ID:AVDHrvoe
>>236
もう何か芋検索しているんですが原因はパスとおってないってことしかでてこないです
実際そうなんだと思うんですがjarを作るのがはじめてで何が足りないのかがさっぱりわかりません

MANIFESTにかくのと 実行時 cp オプションをかく意外に何か必要なんでしょうか
あるいは指定の書き方が間違っているのでしょうか
スペルミスなんかは何度も確認しているんですが…

もう課題の提出期限すぎちゃったのでわかりませんでしたってかいてレポートかいちゃいましたが
今後のためにも知っておきたいなと
238 ◆QZaw55cn4c
2018/06/09(土) 00:50:21.88ID:BV3WmSRm
>>234
>GPLソフトウェアを使った者を特許侵害
GPL は「特許」ではなく著作権の方だと思うのですが
239デフォルトの名無しさん
2018/06/09(土) 02:02:10.81ID:ljDu8qs0
>>238
そうだよ
だから著作権の使用はGPLに従うことで許諾されるけど特許は関係ない
240デフォルトの名無しさん
2018/06/09(土) 05:21:33.40ID:uYb8xFM5
>>235
Class-Path の所の b を b/ にするとどうなる?
241デフォルトの名無しさん
2018/06/09(土) 05:40:26.23ID:AVDHrvoe
>>240
同じフォルダ内であれば動くようになりました
最後に / つけるだけでかわるんですね

ただやはり別のフォルダにうつすとスタンドアロンでは動かないみたいです
ためしにクラスを消去してみるとアーカイブに入ってるはずなのに同じフォルダでも動かなくなります

>javac -cp .;b Main.java

>jar cvmf META-INF\MANIFEST.MF main.jar *.java *.class a\*.java a\*.class b\*.class b\*.java
マニフェストが追加されました
Main.javaを追加中です(入=83)(出=72)(13%収縮されました)
Main.classを追加中です(入=281)(出=214)(23%収縮されました)
a/A.javaを追加中です(入=106)(出=95)(10%収縮されました)
a/A.classを追加中です(入=381)(出=272)(28%収縮されました)
b/B.classを追加中です(入=249)(出=191)(23%収縮されました)
b/B.javaを追加中です(入=79)(出=68)(13%収縮されました)

>java -jar main.jar
Hello World

>del *.class a\*.class b\*.class

>java -jar main.jar
Exception in thread "main" java.lang.NoClassDefFoundError: B
at Main.main(Main.java:3)


http://fast-uploader.com/file/7084045860348/ (パス jartest)
242デフォルトの名無しさん
2018/06/09(土) 10:09:51.63ID:Naz/3W/N
>>241
なるほど、そうすると
MANIFEST.MFのClass-Pathはjar内のパスを指定するものではなくて
jarの外のパスを指定するものだってことになるかと
jar内のパスはあくまでもpackageでやりましょうということなんじゃないかな
243デフォルトの名無しさん
2018/06/09(土) 10:24:49.37ID:Naz/3W/N
packageはディレクトリで示されるのでデフォルトパッケージのB.classが
b/の下にあるのがおかしいのでしょうね
244デフォルトの名無しさん
2018/06/09(土) 15:10:59.27ID:AVDHrvoe
>>242,243
わああ うごきました!!!!!

パッケージがついてないソースを全部同じフォルダに展開しただけで動くようになりました
コンパイルにパスの指定も必要なくなったし
パッケージ構成とフォルダ構成をあわせる必要があったんですね

課題用に配られたソースだったので自分で描いたコードと分けておいた方がいいのかなと思ったんですが
そのせいでまる1日どはまりしてしまった

教えていただいてありがとうございました
ほんとに助かりました
245デフォルトの名無しさん
2018/06/09(土) 22:39:02.82ID:ExnJNgW8
クラスパスに指定するjarの扱いはディレクトリのようなもんなんだよ。
main.jar内にb/B.classが入っていて、デフォルトパッケージのBってクラスを
使いたいんだったら、kラスパスは main.jar:b (正確な書き方は忘れた)
みたいに書かないとダメなんだよ。
246デフォルトの名無しさん
2018/06/09(土) 23:22:00.71ID:dWoOad5I
>パッケージ構成とフォルダ構成をあわせる必要があったんですね

入門書にも書いてあるのに、説明書を読まずにやっているから出来ない。
プログラミングのほとんどは、説明書を読むかどうかだけ

読まない人は、出来ない

学校の勉強と同じ。
教科書を読まない人は、出来ない
247デフォルトの名無しさん
2018/06/09(土) 23:28:53.67ID:AVDHrvoe
まだ学生なのでそんなに本にお金かけたりできないんですけど
もしお勧めの本があったら紹介していただけませんか?

パッケージを作るときにフォルダ構成をあわせるのは知ってましたが
a/A.java の構成はそうなってる

他の人が作ったパッケージ宣言されてないソースを使うときに
トップディレクトリに展開しないとjarにはできないとは思わなかったので…

ディレクトリとパッケージを合わせることが自然なことは本にかかれてるかもしれませんが
他に方法がないというのはそう自明なことではないと思います
248デフォルトの名無しさん
2018/06/09(土) 23:36:10.70ID:K+9PZeFb
調べ方をしらねーだけなんだからカリカリすんなよ
本を読むだけでできるようになるんなら職業プログラマなんかいらねーんだよ
249デフォルトの名無しさん
2018/06/09(土) 23:52:15.00ID:MhKfyDgC
>>247
俺はJavaは知らないのだけど、一般的な方法を。

> 課題用に配られたソースだったので自分で描いたコードと分けておいた方がいいのかなと思ったんですが
> そのせいでまる1日どはまりしてしまった

これは割とよくあるパターンで、

・環境の立ち上げは、基本的に 『かなり詳しくないと』 はまる
・環境ではまったら、初心者だけで復旧は不可能

だから、自分が初心者だと分かっているうちは、出来るだけ環境問題に遭遇しないようにするのが基本。
つまり、

・与えられたソースをその場で改変する
・元ソースと比較したい場合、元ソースを ***.org とかいう風にしてコピーしておく
 (元環境と同じファイル名/ディレクトリ構造でコンパイル出来る状態で編集する
 =元ソースはファイル名そのままで編集する。あくまでコピーを別名で持つ)
・インストール時にデフォのパスがあるのなら、つべこべ考えずそのままそこにインストールする

てな感じ。
俺は本を読む前に味見するのも良いことだと思うぜ。
そして上記の通り、地雷を避ける方法も知っておけばいいだけだ。
250デフォルトの名無しさん
2018/06/10(日) 01:00:23.21ID:ucpSsdvT
>>247
技術習得中はどれが問題解決に必要な情報なのかわからないんだからあまり気にしなくていい
むしろ問題解決に必要な情報が出せれてるから問題ない
最近はそれがなかなかできないやつが多いからなぁ

んで、お金がないから本を変えないつーことならちょい難易度高いが教科書+公式ドキュメント+サンプルっぽいソース探すのがおすすめ
251デフォルトの名無しさん
2018/06/10(日) 04:48:20.36ID:n5chgHA2
Java の定本は、
スッキリわかる Java入門 第2版、2014

基本はエラーメッセージで検索して、自分で調べること。
それでもわからないなら、ここで聞く
252デフォルトの名無しさん
2018/06/10(日) 11:22:51.08ID:9LY18awe
>>251
マ板の35歳がそれ読んで荒らしに来るから紹介は控えて欲しい
253デフォルトの名無しさん
2018/06/10(日) 12:06:59.34ID:IhVDvYTT
スッキリ厨は話を聞かないことで有名だからなあ
254デフォルトの名無しさん
2018/06/10(日) 12:26:24.21ID:5WgF/CDS
こいつAIだからね
255デフォルトの名無しさん
2018/06/10(日) 12:46:21.18ID:Jwj29J+R
インスタンスの配列定義について教えてください

①と②はどう違うのでしょか?

(1行目のカッコの位置です)

①カッコが左のAnimalにある
Animal[] vc = new Animal[2];
vc[0] = new Animal();
vc[0].name = "neko";
vc[0].age = 5;
・・・・

②カッコが左の変数にある
Animal vc[] = new Animal[2];
vc[0] = new Animal();
vc[0].name = "neko";
vc[0].age = 5;
・・・・

上記2つでコンパイルエラーになりません。
違いはなんですか?
256デフォルトの名無しさん
2018/06/10(日) 13:08:57.02ID:5WgF/CDS
>>255
同じ
②はC言語に慣れた人のための書き方で、意味的には完全に間違っている
使った瞬間バカ認定されるから絶対に使ってはいけない
今すぐ忘れていい
257デフォルトの名無しさん
2018/06/10(日) 13:19:30.60ID:Jwj29J+R
>>256
教授が使っていたので、びっくりしました。
ありがとうございました。
258デフォルトの名無しさん
2018/06/11(月) 02:02:24.99ID:jMVvjS0U
>>256
意味的に完全に間違ってる?
文法上許されてるし何の問題もないと思うが?
259デフォルトの名無しさん
2018/06/11(月) 02:11:29.76ID:dheNLGIF
>>258
例えばメソッド名の先頭が小文字でもコンパイルは通るから何の問題もないと考える人?
260デフォルトの名無しさん
2018/06/11(月) 02:11:56.91ID:dheNLGIF
間違えた
メソッド名の先頭が大文字でも、ね
261デフォルトの名無しさん
2018/06/11(月) 02:54:29.89ID:MB0XDzKq
>>259
ああ。文法上は問題なかろう。慣習には反するかも知れないが間違いではない。
262デフォルトの名無しさん
2018/06/11(月) 08:24:25.82ID:2EYG9KU5
>>258
Animal配列型の変数vcだから
Animal型の配列変数vcという書き方は良くないという話だよ

そもそも配列変数なんてものは存在しないからね
シンタックスシュガーでC風の書き方ができるだけ
この構文を積極的に使う理由なんてないよ
263デフォルトの名無しさん
2018/06/11(月) 09:20:40.77ID:318FxA/J
>>262
良し悪しは君の宗教の問題だよね。
264デフォルトの名無しさん
2018/06/11(月) 09:44:57.19ID:dHlcwcTY
おましゅうw
265デフォルトの名無しさん
2018/06/11(月) 13:07:23.49ID:UTAA5EZY
var vc:Array<Animal>

Haxe では、
var 変数名:型
266デフォルトの名無しさん
2018/06/11(月) 13:12:24.89ID:NAfddAYi
だから?
267デフォルトの名無しさん
2018/06/12(火) 06:53:24.64ID:aW1GuOgP
Javaでチャートを表示したくて
javafx.scene.chart.LineChart ってのをはじめて使ったんですけど
これアニメーションで使うにはどうすればいいんでしょうか

Scene scene = new Scene(lineChart,800,600);
stage.setScene(scene);
stage.show();

でグラフが表示されるんですが
そのあとで

try { Thread.sleep(2000); } catch(Exception e) {}
//データ更新
stage.show();

をやったところスリープ中に何も表示されず最後のデータだけが表示されます

あるいはJavaFXではなくawtパネルや
単にImageを生成するようなライブラリがあったら教えていただけると助かります
268デフォルトの名無しさん
2018/06/12(火) 23:10:11.67ID:Ci7qqtSg
>>267
意味がわからん。

なんでこれでアニメーションされると思ったのかと何がしたいのか具体的に説明してくれ。
> try { Thread.sleep(2000); } catch(Exception e) {}
> //データ更新
> stage.show();
269デフォルトの名無しさん
2018/06/12(火) 23:49:25.09ID:v+Py2umn
>>268
気持ちはわかるだろ
なんでできないのかもったいぶらず教えてやれよ
270デフォルトの名無しさん
2018/06/13(水) 01:20:05.91ID:kTav0878
>>268
マイク入力をよんでスペクトルをリアルタイムで表示するようなのを作りたくて

while() {
 // 音声ラインから一定サイズよみこみ
// フーリエ変換
 // グラフ表示更新
}

みたいなプログラムをかいたんですがグラフがまったく変化しなくて
原因を追究して >>267 みたいなプログラム内でブロックするような処理があっても
それが終わるまでグラフが一切表示されないのが原因みたいです

スレッドをわけてみたりもしたんですけどよくわからないエラーが出たりでうまくいかなくて
JavaFXで検索もしてみたんですが表示して終わりばかりで表示更新を扱ってるブログも少なくて困ってました
271デフォルトの名無しさん
2018/06/13(水) 07:01:52.40ID:VFl3aAKI
java8でメモリリークを強制的に発生させる良い方法ってありますか?
Webシステムでリークが発生している場合のヒープサイズの変化を
明示的に出したいです。
272デフォルトの名無しさん
2018/06/13(水) 07:46:18.02ID:Y8lO4wwX
static ArrayList<byte[]> leak = new ArrayList<>();
while (true) leak.add(new byte[1000000]);
273デフォルトの名無しさん
2018/06/13(水) 15:36:01.51ID:GZrsiOY9
リークっていうか、とにかくメモリ使ってどこかから参照されっぱなしになればいいだけだよな。
274デフォルトの名無しさん
2018/06/13(水) 18:36:45.27ID:2UGtKAD3
数スレ前にもJavaFXで画面更新したいって質問あったけどまともなレスついてなかったし
誰も使ってないんだろうなー

自分もサーバーサイドばっかりでGUIとか数年かいてないわ
275デフォルトの名無しさん
2018/06/13(水) 18:54:23.13ID:WGknwRIf
もうJavaFXはJavaの一部ではなく単なる野良ソフトウェアの一つだしな
初心者なら今からクライアントJavaに手を出すなんて時間の無駄だからやめた方がいい
煽りでも何でもなく、公式に完全に終わってる
276デフォルトの名無しさん
2018/06/13(水) 21:13:38.37ID:JYmIyEqB
Androidアプリがあるんだよなー
277デフォルトの名無しさん
2018/06/13(水) 21:33:45.35ID:e5+CMljH
だな
278デフォルトの名無しさん
2018/06/13(水) 21:40:10.81ID:4ZMiG1ZW
だね
279デフォルトの名無しさん
2018/06/14(木) 00:42:43.69ID:/66BxFoU
Kotolin
280デフォルトの名無しさん
2018/06/14(木) 01:45:12.12ID:irmUauXJ
Javaの文法でwidowsライクなアプリ作れるから俺はSWT一択だね(キリッ
281デフォルトの名無しさん
2018/06/14(木) 01:55:14.23ID:+qJR6f8p
>>270
わかった。
> try { Thread.sleep(2000); } catch(Exception e) {}
> //データ更新
> stage.show();
とは全然関係ないのな。

自分で言ってる以下のループの中身を...
>while() {
> // 音声ラインから一定サイズよみこみ
>// フーリエ変換
> // グラフ表示更新
>}
javafx.animationでやればいい。
これでも読んどけ。
https://docs.oracle.com/javase/jp/8/javafx/visual-effects-tutorial/animations.htm#JFXTE149
https://docs.oracle.com/javase/jp/8/javafx/user-interface-tutorial/bar-chart.htm

>>271
ファントム参照の中身をルートから辿れるところに
参照させればリークできるけど本当に開放する手段ないぞ。
282デフォルトの名無しさん
2018/06/14(木) 08:25:26.24ID:34zOJI5o
親言語か?
283デフォルトの名無しさん
2018/06/14(木) 08:50:36.59ID:NWhPjGfV
子言語
284デフォルトの名無しさん
2018/06/14(木) 09:41:16.14ID:PKegBamu
シン言語
285デフォルトの名無しさん
2018/06/14(木) 12:18:42.38ID:QNww5TEq
超セン言語
286デフォルトの名無しさん
2018/06/14(木) 12:58:51.92ID:cl/4FuwJ
もう一つの真言語
287デフォルトの名無しさん
2018/06/14(木) 16:58:58.79ID:Gr9d0Yf1
>>281
リプありがとうございます

このtimelineの使い方がよくわからないんですけど
ブロックは音声読み込み側でやっちゃうので
timelineでディレイをかけるとリアルタイム性が確保できなくないですか?

timelineの中で音声読み込みをすればできなくはなさそうですけど
大幅にプログラムを書き換えないといけないし
処理と表示の分離もしにくくなると思うんですがそれしか方法はないんでしょうか

音声読み込みするスレッドから何かメソッドをよんで即時表示更新ってのはできないものなんでしょうか

while() {
 // 音声ラインから一定サイズよみこみ
// フーリエ変換
 // なにかメソッドをよべばグラフ表示更新
}
288デフォルトの名無しさん
2018/06/14(木) 17:26:03.40ID:WQ1Bw7bI
>>287
Platform.runLater
でアプリケーションスレッドで処理を実行できるみたいっすよ
289デフォルトの名無しさん
2018/06/14(木) 19:46:03.94ID:Gr9d0Yf1
>>288
わわわ 神様だー!
ありがとうございました!
ようやくやりたいことができましたー!
もうあきらめかけてたんですけど質問してよかったです
290デフォルトの名無しさん
2018/06/14(木) 20:18:06.09ID:Gr9d0Yf1
何度もすいません

void f(int[] a) {
for(i : a) {
double d = (double)i
同じ処理
}
}

void f(double[] a) {
for(d : a) {
同じ処理
}
}

みたいにintとdouble配列を受け取って同じ処理するだけの関数が必要なんですが
まとめて記述することってできないでしょうか
そこそこ速度が要求されるので最初にキャストした配列を作って渡すのも若干無駄だし

関数型言語風にかくなら

void f_core(<T>[] d, Function<<T>, double> cast) {
for(x : a) {
double d = cast.apply(x);
同じ処理
}
}

void f(int[] a) { f_core(a, x => (double)x); }
void f(double[] a) { f_core(a, x => x); }

みたいにかければいいんですけどJavaで任意型のメソッドって作ったりうけわたしたりってできますか?
291デフォルトの名無しさん
2018/06/14(木) 20:47:40.32ID:RvC/sBQ5
>>290
Number[] で受け取って doubleValue() で取り出す。
その代わりプリミティブ型の配列は渡せないが。
292デフォルトの名無しさん
2018/06/14(木) 20:48:57.71ID:KBTpBKAk
>>290
普通にその関数型風のコードのようにジェネリクスとラムダを使えばできるけど、
Javaのファッキンなんちゃってジェネリクスだと必ずボックス化が入るからクッソ遅くなるよ
NumberやObjectを使っても同様
諦めて別々のメソッドにして「同じ処理」の部分だけをメソッドに括り出して共通化しなさい
293デフォルトの名無しさん
2018/06/14(木) 21:03:26.94ID:Gr9d0Yf1
>>291,292
やっぱりプリミティブ型のジェネリクスは無理なんですね
ありがとうございました
294デフォルトの名無しさん
2018/06/15(金) 04:17:05.36ID:DGyfb6tU
だめだー

せっかく教えてもらったのに0.1秒で4000個のデータ描画表示すら間に合わない
AWTでdrawLineとか使って直書きなら8000ぐらいでも間に合うのに

JavaFX のチャートの設定で何か軽くなる設定とかってあったりしますか?
せっかく苦労したのにAWTに戻すことになりそう
295デフォルトの名無しさん
2018/06/15(金) 06:35:09.89ID:DwlS46FN
仕事の相談をここでするなよマヌケ
296デフォルトの名無しさん
2018/06/15(金) 07:30:56.95ID:K3OjyI6B
>>295
え?
297デフォルトの名無しさん
2018/06/15(金) 08:34:10.18ID:DHgdPMs1
>>294
JavaFXの唯一の正しい使い方は、全面にWebViewを貼り付けてHTMLで全てを作ること。
誰も使ってないJavaFXなんかより遥かに速くて快適なUXを実現できる。D3.jsとか使えばチャートも簡単爆速美麗。
馬鹿馬鹿しいと思うならSpring Bootにでも乗り換えてJavaらしく普通にWebアプリにしよう。
298デフォルトの名無しさん
2018/06/15(金) 10:34:32.18ID:uIGrLsPa
共同ツール 1
https://seleck.cc/685

https://trello.com/
ボードのメニュー → Power-Upsから拡張可能 Slack DropBoxなど
Trello Chrome拡張機能 elegant
http://www.kikakulabo.com/service-eft/
trelloのオープンソースあり

共同ツール 2
https://www.google.com/intl/ja_jp/sheets/about/

共同ツール 3
https://slack.com/intl/ja-jp
https://www.dropbox.com/ja/
https://bitbucket.org/
https://ja.atlassian.com/software/sourcetree
https://www.sketchapp.com/
http://photoshopvip.net/103903
https://goodpatch.com/blog/sketch-plugins/

Trello Chrome拡張機能プラグイン集
https://chrome.google.com/webstore/search/trello?_category=extensions

Slackプラグイン集
https://slack.com/apps

Sketchプラグイン集
https://sketchapp.com/extensions/plugins/
https://supernova.studio/
299デフォルトの名無しさん
2018/06/15(金) 16:20:39.46ID:DGyfb6tU
>>295
ぜんぜん仕事とかじゃなく
いまvtuberはやってるじゃないですか
でも地声でやるの恥ずかしいからボイスチェンジャーつくりたいなーって完全に趣味です

>>297
学生あがりでJavaとCしかかけないです
ウェブアプリってサーバーがHPの表示する内容かえるみたいなかんじですよね
そもそもサーバーがない

まあ普通にAWTでGraphics.drawLineでCanvasに描画すれば間に合ったので
JavaFXのチャートあるならスケーリングやメモリの描画までやってくれて
見た目もきれいかなと思った程度なのでJavaFXのことは忘れます
300デフォルトの名無しさん
2018/06/15(金) 17:03:56.08ID:oVnAseDc
たまには思い出してあげてください
301デフォルトの名無しさん
2018/06/15(金) 21:58:12.68ID:ymZBnmIf
皆、無料のRails チュートリアルをやってる。
サーバーなんて、Ruby のSinatra でも良いし

Rubyでも、Node.js, jQuery, Vue.js など、JavaScript(JS) は必須。
D3.js を使っても良いんじゃない?

VSCode だって、Electron だし、
Python のJupyter Notebook(IPython Notebook) だって、JSだろ

ほぼすべての言語で、画面には、JSを使う
302デフォルトの名無しさん
2018/06/15(金) 22:06:24.60ID:HtPJG7wE
>>301
Rubyはオワコン
10年遅い

今のトレンドはJava
303デフォルトの名無しさん
2018/06/15(金) 23:00:02.92ID:7wMYYvtj
いや、JavaはKotlinに食われつつある。Androidに関してはかなり征服された。
304デフォルトの名無しさん
2018/06/15(金) 23:04:11.35ID:/HLz/tc5
>>302
トレンドwww
305デフォルトの名無しさん
2018/06/20(水) 19:47:48.12ID:g4/OGHNt
>>304
多分JavaとRUBYと
あべこべに書いてしもたんやろな
306デフォルトの名無しさん
2018/06/20(水) 20:42:50.22ID:id/YgeM/
両方オワコンだから間違えようがない
一部の狂信的な信者以外は
307デフォルトの名無しさん
2018/06/20(水) 20:52:23.72ID:3OmsLPWp
Nettyの質問なんだけど
https://netty.io/wiki/user-guide-for-4.x.html
俺の理解だと、サーバーは受信時にInbound、送信時にOutbound。
ところがこのサンプルのtimeserverhandlerはInboundHandlerでレスポンスをしているように見える。
そもそもサーバーのOutboundHandlerはどんな時に呼び出されるんだろうか?
クライアントはまずOutboundが呼ばれてレスポンスがあった場合のみInboundが呼ばれるのだろうと思う。
サーバーのOutboundは何をトリガーにするのか?レスポンスしない場合もあるだろう。
サーバーのOutboundHandlerのサンプルが見つからない。

このあたり分からないので誰か教えてください。
308デフォルトの名無しさん
2018/06/20(水) 20:55:46.07ID:+mTfQ/rg
そんなものがあるんだ
309デフォルトの名無しさん
2018/06/20(水) 20:58:29.56ID:3ZXb2ep/
>>307
オープンソースなんだからソース読めよカス
310デフォルトの名無しさん
2018/06/20(水) 21:44:01.80ID:eL2b037p
>>307
サーバは受信イベントに反応して応答を返すものなのだから、InboundHanderを継承して応答を返すように実装するのは自然と思うよ。

~handlerとか~listenerとあったら、~イベントに対する処理をするものと言う意味。

あと、OutboundHandlerの例は下に書いてある。
サーバレスポンス(outbound)を横取りして書き換えたい場合に使えるようだ。
311デフォルトの名無しさん
2018/06/20(水) 22:31:03.15ID:t5KVEVLK
>>309
分らんのなら引っ込んでろよチンカス
312デフォルトの名無しさん
2018/06/21(木) 14:33:49.08ID:zmvzH3Nu
と真性包茎のキモデブが申しております
313デフォルトの名無しさん
2018/06/21(木) 19:02:53.39ID:LmBngzCG
https://docs.oracle.com/javase/jp/9/docs/api/com/sun/net/httpserver/HttpExchange.html
簡易メソッドclose()はこれらのタスクをすべて実行します。
要求本体のすべてを使用せずに交換を閉じてもエラーではありませんが、
基本となるTCP接続を次の交換用に利用できなくなる場合があります。
交換の終了に失敗した場合の結果は定義されていませんが、
通常はリソースの解放や再利用に失敗します。

これどういうこと?例えば特定のアクセス元じゃなければclose()するということをやると、
メモリリークのようなことになっていくということ?リソースの解放や再利用に失敗するとは?
HttpServerにおいて特定条件を満たしていない場合に拒絶する書き方が知りたい。
314デフォルトの名無しさん
2018/06/21(木) 19:45:52.69ID:+kp8giCs
http要求ー応答の処理中に処理完了する前にcloseしたことを説明してるんじゃない?
想定外のcloseした場合、メモリ状態は分からないから正常に開放できるか不明、ゴミデータ残って一度利用したインスタンスで再通信できるか不明ってことじゃ?
315デフォルトの名無しさん
2018/06/22(金) 02:08:36.03ID:6X1MAqKl
https://docs.oracle.com/javase/7/docs/jre/api/net/httpserver/spec/com/sun/net/httpserver/HttpExchange.html
英語版をgoogle翻訳してみたりstackoverflowで調べたところ、
getRequestBody()でえられるinputStreamは使えば自動的にcloseされる。
getResponseBody()でえられるOutputStreamは使った後手動でcloseする。
エラー等で処理を終える場合、HttpExchangeを必ずcloseする。
そして、どうやらgetRequestBody()を必ず使わなければならない?ようだ。
しかしそのような内部的な問題は基本的に気にする必要が無く、
HttpExchange#close()はそのgetRequestBody()の消費処理すらもやってくれる、と書いてあるように読める。
結局HttpExchange#close()を必ずどこかで呼べということな気がする。
316デフォルトの名無しさん
2018/06/22(金) 11:57:36.33ID:hcBKEl3e
正誤判定プログラム作っているけど上手く表示できない
正解入力すると正解ですって表示されますが、間違い入力しても
不正解ですとは表示されず、例外のア、イ、ウ、エで入力してくださいって表示になる。
分からないので教えていただけないでしょうか?

do{
String answer = br.readLine();
if (qs.correctAnswer.equals(answer)){
System.out.println("正解です。");
break;
}
else if((answer == qs.wrongAnswer1) || (answer == qs.wrongAnswer2) || (answer == qs.wrongAnswer3)){
System.out.println("不正解です。");
}
else{
System.out.println("ア、イ、ウ、エで入力してください。");
}
317デフォルトの名無しさん
2018/06/22(金) 12:08:24.12ID:OFAJDNNU
>>316
なんで正解判定で使ってるequalsを不正解判定では使わないんだ…
318デフォルトの名無しさん
2018/06/22(金) 12:35:39.34ID:hcBKEl3e
>>317
助言ありがとうございます!
解決できました!
319デフォルトの名無しさん
2018/06/22(金) 15:31:22.98ID:3EtLvxAt
switch使おうよ。
320デフォルトの名無しさん
2018/06/22(金) 15:40:49.23ID:fTGbKFWm
Java7から使えるようになったんだっけ?
321デフォルトの名無しさん
2018/06/22(金) 20:42:54.95ID:J+Abs19H
やっぱり35歳はipの出ないこっちに来るんだな
322 ◆BrBq2CJg6HGd
2018/06/23(土) 19:05:17.20ID:H68Z4zsJ
>>321
俺じゃないぞ
323デフォルトの名無しさん
2018/06/23(土) 20:24:44.15ID:lx4N25iu
Javaの入力値チェックの方法についてご相談です。

ユーザーから手入力された値をインスタンス変数に代入後、チェックする処理を記述しようと思っているのですが、方法として以下の3つを考えています。
※setter のアクセスレベルはprivateにしています。

① 検査対象のインスタンス内でチェック用のメソッドとsetter をそれぞれ定義する

② 検査対象のsetter 内に、チェック処理のロジックを記述する(チェック処理の内包)

③ チェック処理をする責務を持つクラス(インスタンス)を別で作成し、検査対象を引数として与える

3つの方法に対してのご意見、ご指摘を頂きたいです。
そもそも、setter に値をセットする以外の処理を含めて良いものか悩んでおります。
可能であれば、setter の件についてもご意見頂ければと思います。

長文となってしまいましたが、皆様よろしくお願いします。
324デフォルトの名無しさん
2018/06/23(土) 22:44:16.49ID:5c71PR8X
java bronzeを受けようと思い黒本過去問10周くらいして
理解できたと思いますが、似た問題が多いでしょうか・・
合格した方はどれくらい勉強したか教えてください。
325 ◆BrBq2CJg6HGd
2018/06/23(土) 22:52:16.17ID:H68Z4zsJ
>>324
それなら多分大丈夫だと思います
俺は翔泳社の問題集を3回ぐらい解いて受かりました
326デフォルトの名無しさん
2018/06/24(日) 11:46:06.34ID:MQB4VaSY
>>323
ユーザの入力値受け取るクラスならprivateじゃなくてpublicなsetter作るような気がするんだけど
ちょっと状況が分からない
どういうクラスかもう少し書ける?

setterに処理を含めること自体は問題ない
327デフォルトの名無しさん
2018/06/24(日) 12:47:58.04ID:I6qT+7Vz
>>323
時と場合により全部使う
プレゼンテーション層での検証は主に①と③
ドメイン層での検証は主に②(setterは基本的に非公開だが)
328デフォルトの名無しさん
2018/06/24(日) 14:33:44.94ID:pKame5cc
setterにロジック含めていいかどうかで悩むとかアホか
ロジック含める可能性がないならsetter通さずにフィールドにそのまま大入すればいいだろアホ
329デフォルトの名無しさん
2018/06/24(日) 15:04:34.13ID:dY9pVmNf
本当のことをいうなよ(笑)
330デフォルトの名無しさん
2018/06/24(日) 18:01:03.69ID:5i39kBRv
IPっつったら、IDEAPOCKETが真っ先に思い付くわ・・
331デフォルトの名無しさん
2018/06/25(月) 09:12:54.69ID://DXoKuS
大入袋
332デフォルトの名無しさん
2018/06/25(月) 20:05:59.87ID:6QnNrYn1
すみません、いくつか質問させてください。

<クラスパス(ビルドパス)について>
・eclipseの「ビルドパスに追加」したフォルダが複数登録されており、
・それらの中に全く同じパッケージに有る同じクラス名が合った場合、
 どのような優先順位で1つのクラスが選ばれるのでしょうか。
・また全く同じパッケージ・クラス名で、 .jarのライブラリがインポート
 されていて、それとは別にフォルダ構造のパッケージの中に、
 バラの.classファイルが配置されていた場合、これらの優先順位
 はあるのでしょうか。
・コンソールでjavaを実行するのではなくTomcatがjavaを
 実行する場合、どのディレクトリからjavaを実行しているのでしょうか?
・.jspファイルは「ビルドパスに追加」をフォルダに置く必要が
 あるのでしょうか。それとも「ソースフォルダの追加」に登録
 フォルダの配下にあるべきなのでしょうか。
・gitなどでバージョン管理をする際に、.classファイルや .jarなどの
 バイナリファイルを複数人で別々のバイナリを生成して
  コンフリクトした場合、マージされるのでしょうか。
DBに保存されたバイナリデータもマージされるのでしょうか。
・eclipseで設定したブレークポイントでソースが停止した場合、
 その実際の.classファイルあるいは.jarファイルはどこにあるのか
 特定できるでしょうか。
 
333デフォルトの名無しさん
2018/06/25(月) 20:10:33.03ID:DmsWJyBV
長文に付きスルーさせてください
334初心者
2018/06/25(月) 20:16:03.04ID:6QnNrYn1
<eclipseの「ソースフォルダの追加」について>
・「ソースフォルダに追加」したフォルダの配下にある.javaコードは
  eclipseのブレークポイントで止まってくれますが、
  これは「ソースフォルダに追加したソースから生成された.class
あるいは.jar」が実行されていなければソースは特定できないので
  しょうか。
・「ソースフォルダに追加」した時点でそのソース群から生成された
  .classファイルがもしビルドパスに登録されているフォルダ配下
  に生成されるようになっていなければ、自動的にビルドパスに
  追加されるのでしょうか?
・それとも単純に同名のパッケージ名、クラス名が実行された場合、
 ソースフォルダに登録したフォルダから検索して、名前の一致だけで
 特定しているのでしょうか。
・もし名前の一致だけで特定している場合、同じ名前の別のソースから
  生成された.classファイルに中身が書き換わってしまい、
  ソースフォルダに追加している.javaと.classの中身が全く
  対応しなくなっている状態になると、デバッグは失敗するのでしょうか。
・「ソースフォルダに追加」で複数のフォルダを追加して、
 別々の場所に同じパッケージ名、クラス名の.javaファイルが複数あった
 場合、デバッグ時に呼び出されるのはどの.javaファイルになるのでしょうか。
335デフォルトの名無しさん
2018/06/25(月) 21:24:25.00ID:cnz2hUoM
>>332
>>334

自分で試して下さい
336デフォルトの名無しさん
2018/06/25(月) 21:38:05.82ID:mHx9ED9l
>>332
ビルドパスの優先順はビルドパスのダイアログにOrder and Exportというタブで指定したとおりだよ
クラスパスは先に指定したものから順番に検索される、先に見つかったものが使われる
337デフォルトの名無しさん
2018/06/25(月) 22:00:32.20ID:XS6tlG59
githubでC#で書かれたソースコードを見るとVisual Studioで作成したファイルが見当たらないんですが、
Visual Studioを使わないほうがいいんでしょうか?
338デフォルトの名無しさん
2018/06/25(月) 22:00:51.60ID:XS6tlG59
すれ間違えました
339デフォルトの名無しさん
2018/06/25(月) 23:33:17.67ID:lTrbOz9W
>全く同じパッケージに、同じクラス名がある
パッケージはフォルダ、クラスはファイル名に相当するから、
同一フォルダ内に、同一のファイル名は、絶対に存在できない

>コンソールでjavaを実行するのではなくTomcatがjavaを実行する場合、
>どのディレクトリからjavaを実行しているのでしょうか?
pwd のような、Linux コマンドを実行すれば、カレントディレクトリを表示するはず。
それか、そういう環境変数を探す

これら以外の質問は、実際に起こった場合の、エラーメッセージで検索して
340デフォルトの名無しさん
2018/06/26(火) 09:24:15.65ID:4BKP4Htb
そういや試したことないが、2つの別々のjarファイルの中のディレクトリとクラスファイルが同じだったらクラスローダーがエラー出すんだろうか?

あ、コピーしてやってみればいいだけだな。時間があったらやってみよう。
341デフォルトの名無しさん
2018/06/26(火) 10:03:27.13ID:HJBlnKJN
>>339
それはクラスパスが1つだけと仮定したときの話でしょ?
複数のクラスパスに中身が違う同じパッケージ空間のクラスが存在できるじゃん。

eclipseの「Javaリソース」「参照ライブラリー」「ライブラリー」
「JREシステム・ライブラリー」「Web Appライブラリー」
って何が違うのか気になるわ。
あとそれぞれのアイコン
・田んぼの「田」みたいなアイコン(茶色/白)
→パッケージだけど色の違いは・・・?
  茶色い田はフォルダで中に.classファイルが入っている。
  白い田はファイル?なのかよくわからない。
  フォルダ名の名前空間を表している?
・フォルダ内に「田」が入っているアイコン
・本が積み上げられているようなアイコン
→これは「ライブラリー」か
  フォルダの中に「本」が入っているようなアイコンもあるがこれは何?
・ビンのアイコン
 →これは.jarだけど.jarってライブラリーのことじゃないのか?
  .jarと本のアイコンの違いは何だ?
・「.classファイル」のアイコンも2種類ある。
 →1つは「J 01」というファイルのような形のアイコン
  もう一つはツリーのような形をした黄色、ピンク、青のアイコン。
  これらの違いは何?

イメージとして.classファイルを集約するフォルダがパッケージ(田)
で、パッケージを集約するのが「.jar」で、
.jarを集約するのが「本のアイコン」でいいの?
本のアイコンとフォルダ内に田があるアイコンの違いもよくわからない。

ファイルシステム上ではどれも単なる「フォルダ」似すぎないものの
分類が多すぎて混乱するわ。
342デフォルトの名無しさん
2018/06/26(火) 10:30:20.48ID:pRC7dJe/
あきらめろん
343デフォルトの名無しさん
2018/06/26(火) 11:37:57.95ID:B6D+LuS4
>>341
eclipseの「Javaリソース」「参照ライブラリー」「ライブラリー」
「JREシステム・ライブラリー」「Web Appライブラリー」
って何が違うのか気になるわ。
→どういった機能があるライブラリーなのか分類分けしてるだけ。WebかいはつしないならWeb Appライブラリーをビルドパスから除外するなど

あとそれぞれのアイコン
→ただ単に状態を表してるだけ。田の白茶は直下にクラスファイルが有るか無いかだけだったと思う、ほかはないを言ってるかよくわからない

ファイルシステム上ではどれも単なる「フォルダ」似すぎないものの
分類が多すぎて混乱するわ。
→慣れろ
344デフォルトの名無しさん
2018/06/26(火) 13:01:07.58ID:WhDx7ogM
>>340
んなわけねえだろ初心者
345デフォルトの名無しさん
2018/06/26(火) 13:09:23.95ID:4BKP4Htb
>>340を試してみたらエラーにならなかった。
で、クラス名同じで内容が違う状態で実行して判別できるようにして調べたら -cp で先に指定した方が有効になるだけだった。
単純に頭からクラスの検索しているだけみたい。
346デフォルトの名無しさん
2018/06/26(火) 13:10:10.27ID:4BKP4Htb
>>344
いやあ、しかし、エラーになってほしいものではあるよな。
347デフォルトの名無しさん
2018/06/26(火) 13:54:20.46ID:FzhS8Jns
馬鹿ほど自説に拘る
348デフォルトの名無しさん
2018/06/26(火) 14:58:42.92ID:6dkY69Bf
>>332
ここで聞けよ
★★Java質問・相談スレッド181★★
http://2chb.net/r/tech/1518252580/
349デフォルトの名無しさん
2018/06/26(火) 14:59:34.79ID:6dkY69Bf
>>332
ここで聞けよ
Eclipse統合M36【Java/C++/Ruby/Python/Scala】 [無断転載禁止]©2ch.net
http://2chb.net/r/tech/1503723668/
350デフォルトの名無しさん
2018/06/26(火) 17:25:51.93ID:QQQU3toQ
てかマジにパッケージの役割をまるで理解できてない自分が怖い。
他のプロジェクトのクラス利用するみたいな時に役立つんですかね。
351デフォルトの名無しさん
2018/06/26(火) 17:59:26.14ID:svNbpPIp
PCではクラスが重複していてもエラーにならずどっちがロードされるか分からんけど
Googleさんはそんな曖昧なことを許さず
Androidアプリをビルドするときはクラスが重複してるとエラーになる
352デフォルトの名無しさん
2018/06/26(火) 19:49:21.17ID:EJ9QuCpH
さすが
353デフォルトの名無しさん
2018/06/26(火) 20:41:39.98ID:nfkVtLx6
アホ
354デフォルトの名無しさん
2018/06/28(木) 21:25:44.96ID:RNZwZaAN
java有料化と聞いたのですが個人使用やAndoroidなら無料ですよね
355デフォルトの名無しさん
2018/06/28(木) 22:30:12.31ID:AdRGOVMD
>>354
こちらで聞かれてはいかがでしょうか

Java入門・初心者質問スレ Part.8
http://mevius.2ch.net/test/read.cgi/tech/1528370228/
356デフォルトの名無しさん
2018/06/28(木) 22:34:14.17ID:mQsBu3Yx
>>354
OracleJDKは個人使用だろうと有料
OpenJDKは無料だけどサポート期間が半年で切れ、その都度最新版に乗り換えないといけない
AndroidのJavaは元々違法だから関係ない
357デフォルトの名無しさん
2018/06/28(木) 22:54:20.28ID:HobEbqhl
先週OracleがJDK11の扱いを新たに発表したよ
これまではOracleJDKを有償サポート契約者にしか提供しないと言っていたのだが
デモや評価目的でOracleJDKを使うことができると表明した
これにより誰でもOracleJDKをダウンロードできるのではないかと見られている
(ただし未契約ではサポートは受けられない)

またOpenJDKについてもOracleがビルドした(ほぼ公式)バイナリが提供される
OpenJDKについては他にもzuluなどいくつかのディストリビューターがビルドバイナリを提供している

JDK11以降も商用サポートが受けられないというだけでJavaはこれからも自由だよ!
358デフォルトの名無しさん
2018/06/29(金) 07:17:30.07ID:1gf7wGhW
>>357
でも後から高額請求がOracleテンプレ
359デフォルトの名無しさん
2018/06/29(金) 08:36:33.86ID:ViTU2kZO
>>358
使ったことないくせにw
360デフォルトの名無しさん
2018/06/29(金) 10:11:27.83ID:ZWZ4pa9t
Eclipseがただで使えるようにしてくれるさ(遠い目)
361デフォルトの名無しさん
2018/06/29(金) 11:27:33.30ID:OTypfvcs
>>357
評価目的ってことは、配布した時点で請求が来るのかな?
362デフォルトの名無しさん
2018/06/29(金) 12:28:18.43ID:04kXi5pA
払えばサポート受けられるだけで払わなくても商用利用出来る

という認識でok?
363デフォルトの名無しさん
2018/06/29(金) 13:38:34.81ID:cRGLx+38
>>362
サポートって電話したらオラクルのお姉さんと話せるサービスを想像してる?
セキュリティパッチの提供も含まれるんだぞ
364デフォルトの名無しさん
2018/06/29(金) 13:47:32.74ID:GBe1xLaa
片言の日本語w
365デフォルトの名無しさん
2018/06/29(金) 17:19:15.96ID:y/uBajUK
>>363
セキュリティパッチ無ければ無料です
と言ったら無料選ぶのが客

無料ならjavaで良いね
366デフォルトの名無しさん
2018/06/29(金) 18:20:16.36ID:6OZlBNWi
>>362
OracleJDKをデモ・評価の範囲を超える配布等の商用利用したらアウトだろう
サポート不要で商用利用する場合はOpenJDKだな
367デフォルトの名無しさん
2018/06/30(土) 00:45:39.52ID:SNP/nySb
プログラミング超初級です
これからプログラムを学びたいと思って、progateというサイトで練習しています

JavaⅠは楽しく学習できたのですが、JavaⅡでifやfor等、多様な構文が出てきて
頭でうまく整理が付きません
プログラム向いてないんでしょうか?
368デフォルトの名無しさん
2018/06/30(土) 02:30:39.07ID:yaCLVjK3
むりやりやらされてるの?
たった数時間の勉強で向いてないんじゃないかと心配するほどモチベーションが低いことのほうが、問題だと思うよ。
369デフォルトの名無しさん
2018/06/30(土) 07:16:04.14ID:g3zvEcdN
むいていません
370デフォルトの名無しさん
2018/06/30(土) 12:00:29.96ID:Wg+LSNTR
ちんちんの話
371デフォルトの名無しさん
2018/06/30(土) 12:32:57.67ID:dqROe96n
高州クリニック
372367
2018/06/30(土) 12:40:24.30ID:SNP/nySb
>>368
仰るとおりですね、根を上げるには早すぎると思います
まだまだ時間を使って、一つ一つを学習していきたいと思っています

Javaに触れてみて思ったのですが、自分はプログラムってもっと数学的なものだと思っていたのですが
英語の文法を覚えるのに近そうですよね
私は数字には強いですが、英語などの言語が超苦手なので向いてないのかなと思いました

Javaが苦手なのか、プログラム全般が向いてないのかが重要だと思ってるのですが
Java以外の他の言語なら、また違うでしょうか?
373デフォルトの名無しさん
2018/06/30(土) 12:48:51.27ID:SopNOlss
数字にも弱そう
374デフォルトの名無しさん
2018/06/30(土) 12:52:04.34ID:dqROe96n
頭が弱いんだろう
375 ◆QZaw55cn4c
2018/06/30(土) 12:59:15.79ID:BPi0VHAg
>>367
一度でマスターできないのは当たり前で、なんどとなくいろんな課題に適用していくことで理解した思えるようになります
そういう課題は自分でみつける必要はありますが

>>368
モチベーションは自分の意志ではどうしようもない、天から降ってくるものなのでは?
376デフォルトの名無しさん
2018/06/30(土) 14:22:19.92ID:Ms0oF+PT
>>372
数学の教科書だって自然言語で書いてあるでしょ
プログラミング言語の文法程度のことが覚えられないなら
知的労働には向いてないよ
377デフォルトの名無しさん
2018/06/30(土) 15:59:07.87ID:SNP/nySb
ありがとうございます
数をこなしていくことで覚えていきたいと思います

https://prog-8.com/users/sign_in#/42
しかし、やはりというかprogateのJavaⅡの総合問題が、何度挑戦しても難しすぎます

慣れている人なら、こういう難問でもスラスラとコード書けちゃうんですかね?
問題が難しすぎるだけだったりしますか?
378デフォルトの名無しさん
2018/06/30(土) 16:04:02.42ID:SNP/nySb
https://gyazo.com/83d101ee56f11287ec9aee0bfc828a43
https://gyazo.com/54345b19217af83466321965324e5f15

ちな、躓いてる問題はこれです
379デフォルトの名無しさん
2018/06/30(土) 16:11:33.20ID:+7yWvOia
>>378
この程度なら文系大卒未経験でも新人研修3日目くらいには余裕でできる
中にはできない奴もいるが、経験上、そういう奴は最後まで決してできるようにはならず、試用期間切りかスタッフ職
380デフォルトの名無しさん
2018/06/30(土) 17:24:21.46ID:oywXZrZh
奇数の和は26です
偶数の和は23です

このくらいのギャグをかますセンスが欲しいところだ。
381デフォルトの名無しさん
2018/06/30(土) 18:35:48.68ID:m2uqFRio
>>377
大量のデータを条件によって分けて処理するのはよくあることだからできないとお話にならない
382デフォルトの名無しさん
2018/06/30(土) 18:59:47.95ID:Zdmuabpa
この問題みてて、そういえばStreamって分岐できないんだよなぁ、
ってことを思った。
383デフォルトの名無しさん
2018/06/30(土) 20:08:19.22ID:SNP/nySb
今2週目をやってみたのですが、昨日のことがウソのように
スラスラと解けました
こんな簡単な問題に頭を抱えて悩んでいる人たちがいると思うと、笑えてきますね
プログラムって、ちょろいかもしれません
384デフォルトの名無しさん
2018/06/30(土) 20:14:34.40ID:F25j7Nhc
よかったね(棒)
385デフォルトの名無しさん
2018/06/30(土) 20:49:57.22ID:jGkoPtEg
がんがれ
386デフォルトの名無しさん
2018/06/30(土) 21:02:19.65ID:ZTLc6SDl
俺もjava始めたばっかりの初心者なんだがこの問題解けないわ
387デフォルトの名無しさん
2018/07/01(日) 04:20:22.19ID:jYTqh5wD
なんだかなあー
388デフォルトの名無しさん
2018/07/01(日) 12:11:03.57ID:oSgDfxs0
Java少し前に始めたけどprogateより参考書読んだ方が圧倒的に理解できるぞ
始めるきっかけでprogateは悪くはないと思うけど
389デフォルトの名無しさん
2018/07/01(日) 14:26:54.09ID:yaDvqYhr
参考書を読む、試す、の繰り返しで良いんではないかな。
390デフォルトの名無しさん
2018/07/02(月) 02:35:42.18ID:M/CoMLX8
余計に難しくしたりして
https://paiza.io/projects/bYleHtpEAoWpjbnGsIOBiQ
391デフォルトの名無しさん
2018/07/02(月) 08:23:40.31ID:G0LOf4TF
スッキリわかるjava入門の命令実行の文の所の後半よくわからないんですが
読み飛ばしても後々問題ないですか?
392デフォルトの名無しさん
2018/07/02(月) 09:02:02.26ID:Wn9e2nCl
問題なし
393デフォルトの名無しさん
2018/07/02(月) 09:42:59.20ID:/q8FZihl
その本に何が書いてあるかわからないので読み飛ばして良いかどうかもわからない。
その本が出る前に初心者ではなくなってしまったのでその本をこれから買う気は起きない。
394デフォルトの名無しさん
2018/07/02(月) 09:47:04.17ID:HD8gmjU2
JVMが実行されるときにパイプライン上で分岐が生じるかどうかを聞いてるのだと思うけど(すげー適当)
395デフォルトの名無しさん
2018/07/02(月) 10:23:37.86ID:G0LOf4TF
>>393
すいません。この本はjavaの初心者入門書で
System.out.println();←こんな感じの命令実行文の説明してる章(第2章)みたいなんですけど何を伝えたいのかよく分からなくて^^;
他にもSystem.out.printとかint. =Math.max (?)のこととか書かれてるんですけど…
こういう命令文もあるんだ~程度に覚えて次に進んでも問題ないですかね・・それともガッツリ覚えてから行かないとどっかで躓きますかね・・・ 
396デフォルトの名無しさん
2018/07/02(月) 11:34:34.56ID:9wGdj7CA
Ruby で書くと、
puts "あいう"

画面表示するだけの関数だから、一々、覚えなくてよい
397デフォルトの名無しさん
2018/07/02(月) 11:57:56.38ID:G0LOf4TF
ここが命令を実行させる文とだけ覚えておけば問題ないですか・・ね
初心者すぎる質問でしたが答えていただきありがとうございました
398デフォルトの名無しさん
2018/07/02(月) 12:27:22.30ID:HeCnpISr
良くできた本は最初から順にひとつづつ読んでいくのが一番良い。
このタイプの良本は教科書やロングセラーに多い。
適当に思い付きを並べた糞本は順に読んでも意味がない。
というかどう読んでも意味がない。
399デフォルトの名無しさん
2018/07/02(月) 12:30:28.20ID:lnZ1z9Nk
良くできた本とは?
400デフォルトの名無しさん
2018/07/02(月) 12:31:28.49ID:HeCnpISr
>>399
たとえばドラゴンブックはよくできた本の一つだな。
401デフォルトの名無しさん
2018/07/02(月) 12:44:32.96ID:7ATQpDYX
普通はわからない所が出てきたら手前の方のページに説明が書いてあると思うのでそれ見れば良い。
必ずしもそうとは限らないが。その場合は索引見ればいいかな。
402デフォルトの名無しさん
2018/07/02(月) 13:03:39.93ID:CzcwSgJn
その章の冒頭にどういった意図で内容を説明しているとか書いてないのん?
403デフォルトの名無しさん
2018/07/02(月) 15:34:52.77ID:6MU/ELtX
>適当に思い付きを並べた糞本は順に読んでも意味がない。
Effective Javaのことか?w
404デフォルトの名無しさん
2018/07/03(火) 13:59:37.26ID:CyvRpAiw
System.out.printlnはその本の後半で説明してるれるから飛ばしても問題ないよ
自分もその本の読んだけど個人的にはモウチョイ詳しく書いてほしかったな
printとprintlnの違いについてすら書いてなかったし
405デフォルトの名無しさん
2018/07/04(水) 21:56:46.88ID:gFgZc5FG
NJG
406デフォルトの名無しさん
2018/07/05(木) 16:27:14.96ID:AeL6VB/V
NJG
407デフォルトの名無しさん
2018/07/07(土) 16:05:41.45ID:aa52jsH+
よろしくお願いします

public class HelloSampleActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
(略)
Button btClick=findViewById(R.id.btClick);
AListener listener=new AListener();
btClick.setOnClickListener(listener);
}
private class AListener implements View.OnClickListener{
@Override
public void onClick(View view){
}
}
}
onCreateメソッド内のsetOnClickListenerに関しての質問です。
Button型のインスタンス btClickが、なぜ(どうやって?)set.OnClickListenerメソッドを使えるようになっているのでしょうか?
408デフォルトの名無しさん
2018/07/07(土) 16:09:36.17ID:JIJEiIS6
>>407
>>214参照
409デフォルトの名無しさん
2018/07/07(土) 16:11:02.58ID:d6cBu3i8
>>407
スレチ
410デフォルトの名無しさん
2018/07/07(土) 16:19:54.19ID:9/rBHklo
>>407
ButtonがViewを継承してるからじゃねっすか
411デフォルトの名無しさん
2018/07/08(日) 11:19:35.63ID:Lc8bP1H3
>>407
Button->TextView->View
Viewのメソッドが使える
412デフォルトの名無しさん
2018/07/08(日) 20:49:11.79ID:jlZqZIEk
ラズパイ+Netbeans+JavaFXでGUIアプリを作りたいんですけど、どうしても環境が作れません。

https://netbeans.org/kb/73/java/javafx-setup_ja.html
ここに従って新しいJavaプラットフォームを作るように言われて作るのですが、JavaFXタブがありません。
上記の環境を構築できた方いらっしゃらないでしょうか。
413デフォルトの名無しさん
2018/07/08(日) 21:20:13.85ID:ijnRC5hf
>>412
javaFxとかやめとけ
414デフォルトの名無しさん
2018/07/08(日) 21:51:32.10ID:jlZqZIEk
>>413
じゃあ、javaでGUIはどうしたらええのん?
昔のSwingとかを使うのが正しいのん?
415デフォルトの名無しさん
2018/07/08(日) 22:05:34.71ID:ijnRC5hf
>>414
javaでGUIとかやめとけ
416デフォルトの名無しさん
2018/07/08(日) 22:06:11.29ID:i8SXyieH
NetBeansとかIntelliJ IDEAとかはSwing製なので
まだまだイケるんじゃないかな
417デフォルトの名無しさん
2018/07/08(日) 22:09:01.70ID:ijnRC5hf
>>416
やめてさしあげろ
418デフォルトの名無しさん
2018/07/08(日) 22:20:42.99ID:jlZqZIEk
やめとか、以外で実現方法の知識がある方いましたらお願いいたします。
419デフォルトの名無しさん
2018/07/08(日) 23:31:34.26ID:XkcpXb4y
普通にHTMLでよくね?
配布するならElectronとかでバッケージ化したくなるけど、
ラズパイならどうせ固定用途だろうからローカルサーバーで何の問題もないでしょ
420デフォルトの名無しさん
2018/07/08(日) 23:32:43.59ID:Sc2HkkvQ
ラズパイって何するんですか…?
電気工作?
ロボットでも作るんかね
421デフォルトの名無しさん
2018/07/08(日) 23:36:30.10ID:jlZqZIEk
条件は変えないで、知識が在る方がいましたらアドバイスお願いします
違う方法のアドバイスはご遠慮します

>>419
できない

>>420
GPIOが必要な案件で尚且つGUIが必要
422デフォルトの名無しさん
2018/07/08(日) 23:38:58.97ID:toxXARvC
JavaでGUIか
JavaFXのWebViewのみを使ってElectronみたいなのはアリかもな
Electronとの違いはJavaScriptではなくJavaで書けること
423デフォルトの名無しさん
2018/07/09(月) 00:00:21.92ID:QE5s+I3Z
>>421
なぜ今から負の遺産を作ろうとするの?
424デフォルトの名無しさん
2018/07/09(月) 00:09:15.98ID:AUfS73UG
ラズパイだとnode-redとかじゃねーかな
javascriptとcになっちゃうけど
425デフォルトの名無しさん
2018/07/09(月) 06:48:47.54ID:wOPKveTX
>>421
何ができないんだろう?
Spring Bootとかで普通にWebアプリとして作れば裏側はJavaで書けるしローカルで完結して動かすこともできるしライブラリがあればGPIOも使える
条件は完全に満たしてる
Javaのクライアントテクノロジなんて今から絶対に手を出してはいけない
426デフォルトの名無しさん
2018/07/09(月) 13:53:15.39ID:RPo/jFjY
今は、クライアントを、Java にはしない

Ruby, Python, Java など、すべての言語で、HTML, CSS, JavaScript。
どのフレームワークでもそう

Rails でも、Node.js が必須。
jQuery, Vue.js とか

電子工作なら、Python
427デフォルトの名無しさん
2018/07/09(月) 14:01:10.35ID:RPo/jFjY
5ch ブラウザなど、Java で画面を作っているアプリもあるけど、
結局、誰も保守できなくなるから、開発者がいなくなる

こういうのを技術的負債と言う

君「誰か、JavaでGUI を作れる人、いませんか?」
全員「いません!」w
428デフォルトの名無しさん
2018/07/09(月) 14:52:34.10ID:5GBDda87
5chの専ブラは2chの頃にクローズドにしてフリーソフト閉め出したという特殊な事情があるからここで挙げる例としては適切ではないと思う。
429デフォルトの名無しさん
2018/07/09(月) 16:11:42.84ID:OMEWQnbN
これまじでいい
https://goo.gl/uAcy7u
430デフォルトの名無しさん
2018/07/09(月) 16:32:18.13ID:DEtXSfUS
>>421
知恵遅れで聞け厨房
431デフォルトの名無しさん
2018/07/09(月) 16:36:36.00ID:H+d2FLX/
基本情報とりたいし、phpとかrubyじゃなくてjavaやろうと思うんだがこれでいいの?CtoCのWebサービス作りたい
432デフォルトの名無しさん
2018/07/09(月) 16:54:57.75ID:49BAkqpD
>>431
できなくはない
適切な答えを返すためには質問がいくつかある

・なぜ基本情報を取りたいのか?
・基本情報を取るかwebサービスを作るかどちらしかできないとしたらどちらをやる?
・html、css、javascriptを深く理解する気があるか否か
・そのサービスのスマホ連携の有無
433デフォルトの名無しさん
2018/07/09(月) 16:56:51.39ID:DEtXSfUS
>>432
お前の知識の披露はどうでもいい
434デフォルトの名無しさん
2018/07/09(月) 17:03:21.82ID:H+d2FLX/
>>432
・基本情報は就職用。
・どっちかだけっていうならwebサービスを作りたい。
・html/cssは一通り勉強した。あれを深く理解するっていうのの意味がわからない…
・スマホとは連携させたい。

同じような自問をしたことがあるけど、やっぱり基本情報は表計算で乗り切ってphpとか勉強した方が良いんだろうか…
435デフォルトの名無しさん
2018/07/09(月) 17:09:23.33ID:49BAkqpD
>>434
大体わかった
それを踏まえて最後の質問だ

・phpやrubyを使うであろうWeb系とjavaを使うであろう業務システム系、どちらに就職するつもり?
436デフォルトの名無しさん
2018/07/09(月) 17:12:52.53ID:H+d2FLX/
>>435
webかなあ
437デフォルトの名無しさん
2018/07/09(月) 17:17:21.98ID:DEtXSfUS
夏厨の季節
438デフォルトの名無しさん
2018/07/09(月) 17:18:59.36ID:49BAkqpD
>>436
OK
そうするとお前が学ぶ意味があるのはphpかrubyで間違いない
基本情報の資格はお前のキャリアに必要ない。当然javaに手を出す必要もない

ただしjavaやって資格取って業務系で食うよりも人生の難易度は上がるだろう
何か質問はある?
439デフォルトの名無しさん
2018/07/09(月) 17:22:25.10ID:H+d2FLX/
>>438
特にない。ハードモード楽しみます。参考になりますた。
440デフォルトの名無しさん
2018/07/09(月) 18:38:38.94ID:w6/Jy163
どや
441デフォルトの名無しさん
2018/07/09(月) 18:54:45.22ID:rKnQV5/G
いやWeb系でも自社事業やってるようなとこだとJavaや.NET使ってるのも珍しくないぞ
Web制作に近いようなとこより、大抵そういうとこの方が金払いいいし技術レベルも高い
442デフォルトの名無しさん
2018/07/09(月) 19:13:17.65ID:Tspph/eO
そんなとこ一握りしか入れないでしょ
443デフォルトの名無しさん
2018/07/09(月) 19:24:11.29ID:mEAcYnRs
その一握りに入れないならWeb系に行く意味なんかないでしょ
大したスキルもなく裁量もなくゴミのような単価でクソを垂れ流すだけ
業務系の方が遥かにマシだ
444デフォルトの名無しさん
2018/07/09(月) 20:00:35.79ID:YKnsTZY9
IT土方を増やすゴミ
445デフォルトの名無しさん
2018/07/09(月) 20:47:54.96ID:UfJ//8VP
無職が答えるIT進路相談
446デフォルトの名無しさん
2018/07/09(月) 21:27:57.70ID:qFtb42UW
>>441
Javaと.NETをひとくくりにしない方がいい
447jlZqZIEk
2018/07/09(月) 21:50:21.93ID:AGPubLJK
もう諦めてSwingで書くことにしました
JavaFX、NetBeans、RaspberryPiで検索すると海外でも同じことで悩んでいる人がいるみたいだけど、
どうにもならないみたいですので
みなさん、ありがとうございました。
448デフォルトの名無しさん
2018/07/09(月) 22:19:29.31ID:pecpw2yU
>>446
Java土方と.NET土方にレベル差なんてないよ
449デフォルトの名無しさん
2018/07/09(月) 23:17:51.97ID:QE5s+I3Z
>>448
Java土方おつ
450デフォルトの名無しさん
2018/07/10(火) 06:54:08.49ID:wRoCk71p
>>441
作るのは派遣だよ
正社員の仕事は設計とダメ出し
451デフォルトの名無しさん
2018/07/10(火) 07:44:34.52ID:LbQkaO6y
>>431-439
まずこの本で、オブジェクト指向を学ぶ。
スッキリわかる Java入門 第2版、2014

基本情報処理なら、スッキリで十分だろ

その後「たのしいRuby 第5版、2016」を読んで、
無料のRails チュートリアルをやる
452デフォルトの名無しさん
2018/07/10(火) 09:20:13.80ID:yvVWnyin
>>451
お前自覚ないかもしれないけど知的障害者だから精神科行ったほうが良い
453デフォルトの名無しさん
2018/07/10(火) 09:26:50.98ID:lWNPDM52
>>450
自社サービスは自分で設計して自分で作るぞ
うちもエンジニアの大半は社員で全員コード書いてる
自社サービスには人員需要の波がないからエンジニアを抱えることに対して抵抗がないんだよ
454デフォルトの名無しさん
2018/07/10(火) 11:08:35.50ID:4FJ8yfil
と火曜の9:30に会社から書き込みをしている社蓄が申しております
455デフォルトの名無しさん
2018/07/10(火) 12:53:17.79ID:lacLn2e2
9:30なら俺はまだ通勤の電車の中だな
456デフォルトの名無しさん
2018/07/10(火) 14:04:41.34ID:O9mvfp6X
>>452
さわっちゃだめw
457デフォルトの名無しさん
2018/07/11(水) 21:35:10.75ID:sDWfv/VL
mainメソッド内の処理において、ポリモーフィズムでnewの使い分けする時ってif文使わない方が良い?
やはりファクトリクラス作って、ファクトリのメソッド内でif文使うべきなのか?
458デフォルトの名無しさん
2018/07/12(木) 09:34:46.57ID:nIR9VMIg
規模や使用頻度によるのでは?
459デフォルトの名無しさん
2018/07/12(木) 10:58:16.24ID:4F2HS+4d
良いか悪いかで行ったら、別に構わない
460デフォルトの名無しさん
2018/07/12(木) 11:40:10.49ID:BouHXjkD
まとめるとどうでもいい
461デフォルトの名無しさん
2018/07/13(金) 01:27:43.49ID:xF0Xme8F
返答ありがとう
mainメソッドにif文はあまりつけないべきか悩んでいたのだが、そんなに拘るものでもないのかな
参考になりました
462デフォルトの名無しさん
2018/07/13(金) 16:30:20.76ID:GBG+HB3a
よろしくお願いします。

Intent intent=getIntent();
String stdNo=intent.getStrintExtra("stdNo");

2行目のintentがインスタンスとして使われてるように見えるのですが
1行目のintent=getIntent();は、getIntent()というメソッドを変数intentに代入して
2行目で代入したgetIntent()のメソッド、getStrintExtra()を使っているということなのでしょか?
463デフォルトの名無しさん
2018/07/13(金) 16:37:43.58ID:7jgvez+k
Javaではメソッドを変数に代入することはできない
getIntent()はIntentのインスタンスをreturnするメソッドなんだろ
getStrintExtra()でStringのインスタンスがreturnされてきて変数stdNoに入ってる二行目と一緒やん?
464デフォルトの名無しさん
2018/07/13(金) 16:49:49.29ID:GBG+HB3a
>>463
ありがとうございます。1行目のintentはインスタンスなのですね。
インスタンスはnewで生成する以外にもreturnで取得する方法もあるのですね、勉強になります。
465デフォルトの名無しさん
2018/07/13(金) 19:55:16.73ID:RuIPz3dA
考え方が完全に間違ってる
回答してる方も知識不足
466デフォルトの名無しさん
2018/07/13(金) 20:01:27.97ID:DcLn1CNl
文句があるなら今からでも君が答えなさい
467デフォルトの名無しさん
2018/07/14(土) 00:49:26.90ID:Qt+zgvv2
jdk11でjavafxが分離されるという話があるけど、
アプリにjavafxのライブラリを同梱するという形態になるんですか?
468デフォルトの名無しさん
2018/07/14(土) 01:52:18.14ID:6eX3jxiA
>>467
分離じゃなくて廃止ね
オラクルとしては開発を放棄し、OpenJFXだけ残して提供終了
でOpenJFXというのはOracleの開発成果をGPLの下でソースを公開するだけの実体のない組織なので、開発継続の見込みはゼロ
もう無理や
469デフォルトの名無しさん
2018/07/14(土) 06:08:21.38ID:KbpgtKf9
windowsでコマンドライン引数とかコンソールへの出力にユニコード使ってると、正しく処理できないっぽいですが、
そういうのちゃんとやってくれる定番のライブラリとかありますか?
470デフォルトの名無しさん
2018/07/14(土) 06:22:15.87ID:re2UFOkZ
unicodeを使うとな?
471デフォルトの名無しさん
2018/07/14(土) 08:24:20.86ID:rKXc4KlJ
>>467
これ俺も気になってる
JavaFXってJARだけでなくDLLなどのネイティブライブラリも必要なので
JavaFX(openjfx)使ったアプリの配布はプラットフォーム別に用意しないといけなくなるのかな?
472デフォルトの名無しさん
2018/07/14(土) 10:21:43.78ID:zOneeAc4
OpenJDKやOpenJFXに部外者が参加しようと思ったら、私が提供する著作物はオラクル様が自由に使えます
絶対に訴えたりしませんっていう誓約書にサインしなきゃいけない
あれを見直さない限りコミュニティプロジェクトとしての発展はありえない
ただでさえJDK11の件でオラクルに対する不信感が高まってるのに今更誰がオラクルにケツを差し出す気になるだろう
473デフォルトの名無しさん
2018/07/14(土) 12:00:32.99ID:vl2S9Vhv
>>472
FAXで送るやつだっけ?
474デフォルトの名無しさん
2018/07/14(土) 12:57:15.02ID:Qt+zgvv2
JavaFXのJDKから廃止というのはJREからも廃止ですか?

OpenJDKのインストール方法を調べたらRedHatからダウンロードしろと。
しかもそれは開発者向けでエンドユーザー向けじゃない。
エンドユーザー向けJavaアプリが生き残る方法はあるのか?
475デフォルトの名無しさん
2018/07/14(土) 13:00:03.16ID:cKSt/K6L
嘘書くなよ
476デフォルトの名無しさん
2018/07/14(土) 13:01:17.39ID:Qt+zgvv2
どれが嘘だと思いましたか?
477デフォルトの名無しさん
2018/07/14(土) 13:11:09.79ID:Qt+zgvv2
エンドユーザー向けのOpenJDKのインストール方法は見つからない。
つまり、環境変数の設定やコマンドラインを必要としないインストール方法が無い。
478デフォルトの名無しさん
2018/07/14(土) 13:19:39.74ID:cKSt/K6L
すまん、oracleだね
479デフォルトの名無しさん
2018/07/14(土) 13:23:07.56ID:6PGIbnJP
>>468
君がやればいい。

これにて一件落着。
480デフォルトの名無しさん
2018/07/14(土) 13:28:52.18ID:Qt+zgvv2
公式が配布するOpenJDKはtar.gz形式でwindowsの標準機能で解凍できない。

GPL感染はプロセスを超えないそうなので、
OpenJDKをパッケージに同梱してしまうのは解決策になるかもしれない。
その場合、起動スクリプトを組み込む必要があるし、OpenJDKのアップデートにどう対応するのかという問題がある。
windows向けOpenJDKインストーラ&アップデータを誰かが作る事も考えられる。
しかし、公式サイトへのポーリングや自動的なファイルのDLをしていいのかどうか。
481デフォルトの名無しさん
2018/07/14(土) 13:30:03.02ID:6PGIbnJP
>>469
windows でも cygwin 使ったり wsl 内で動かせば問題なくできるのでは?

ていうかそういうOSとか実行環境の問題をそこの中で動かされるプログラムでなんとかしようというのは考え方がおかしいのではないか?
どうしようもない場合は別としても、やはり実行環境側でやらねばならない事は実行環境側でやるべきだろう。
482デフォルトの名無しさん
2018/07/14(土) 13:38:51.88ID:6PGIbnJP
>>480
そういうの主要な Linux ディストリビューションだと悩まなくていいのにな。ネットワーク経由でアップデートする yum だの apt だのがあるから。
Windows には Windows Update があるが、あれはMS専用でMSが受け入れてセットしてくれない限り使えないよな。
483デフォルトの名無しさん
2018/07/14(土) 13:39:28.58ID:a3ey9pgq
ライセンス気にするようなアプリ開発するならOracleと契約結べよw
484デフォルトの名無しさん
2018/07/14(土) 13:44:48.39ID:Qt+zgvv2
本当に自分の中でLinuxの評価が上がってる。
みんなそろそろLinuxデスクトップに移行すべきじゃないか。
ゲームエンジンはLinux向けビルドが出来るし、古いゲームでもおおむねWineで動く。
485デフォルトの名無しさん
2018/07/14(土) 13:58:16.02ID:LIsDU/xs
>>474
スタンドアロンなJREは廃止
Java SE Subscription を契約した上でアプリに同梱して配布するのが正解
価格は、開発環境も実行環境も(!)PC1台一月あたり2.5ドルから
一日10円の御賽銭でオラクル神の手厚いサポートが受けられるんだから安いもんだよね
486デフォルトの名無しさん
2018/07/14(土) 14:01:28.17ID:6hlqR+Me
Javaの文化変えるなよ、Java終わりか
487デフォルトの名無しさん
2018/07/14(土) 14:06:15.27ID:upwDNa7V
リナックスでもマックでもウインドウズでも
動くソフトはこれから何で作ればいいの?
488デフォルトの名無しさん
2018/07/14(土) 14:15:19.81ID:Qt+zgvv2
OpenJDKを使うしかない。
アプリに同梱するんだが、アップデータもJavaだから、恐らくOpenJDKを2個インストールして、
Aでアップデータを実行してBをアップデート、
次にBでアップデータを実行してAをアップデート、みたいにやるしかないだろうw
489デフォルトの名無しさん
2018/07/14(土) 14:19:55.25ID:LIsDU/xs
>>487
Electron
490デフォルトの名無しさん
2018/07/14(土) 14:54:39.00ID:Qt+zgvv2
OpenJDK+OpenJFXをアプリ同梱、
起動スクリプトでOpenJFXのDLLにパスを通してOpenJDKからアプリのjar起動。
とかでいける・・・のか
491デフォルトの名無しさん
2018/07/14(土) 15:09:18.44ID:Qt+zgvv2
JavaでDLLとかのネイティブコードをアプリ毎に用意させるのは例外的で
そういう方法は確立していないし、
JavaFXのようなクライアントソフトで使われる機能は
エンドユーザー環境で構築しなきゃいけないことが多々あるわけで、
全く破滅的としか思えないが、
JavaFXは情熱的で盛り上がっているコミュニティだとか言われてる。

JavaFXはOracleJDKでしかサポートされてなかったがそれが有償化される、
しかも自分が払えばいいだけじゃなくエンドユーザーもオラクルに金払わないと使えない、
やはりクライアントソフトで使われる技術で大量のエンドユーザーが居る事が多い、
JavaFX開発者は一番フェイント食らっただろう。
492デフォルトの名無しさん
2018/07/14(土) 15:37:51.51ID:gXqo7TYC
予想だにしない事態
493デフォルトの名無しさん
2018/07/14(土) 15:42:21.59ID:4RxIMQwD
GUI は、HTML, JavaScript が基本。
Rails でもそう。Vue.js でも使えば?

>>480
ファイルの圧縮解凍なら、7-zip を使えば?

Windows のパッケージマネージャーなら、
NuGet, Chocolatey, Microsoft Web Platform Installer, Scoop とか

Windows10 では、NuGet, Chocolatey を使った、
MS 製のPackageManagement(OneGet)が標準搭載された
494デフォルトの名無しさん
2018/07/14(土) 16:15:15.01ID:Qt+zgvv2
解凍処理はアップデータが動作できてる時点でなんかライブラリ使えばいいんだけど。

DLLの問題は、JNIのDLLロードと違って、JavaFXはエントリーポイントからJavaFXのクラスだから、
起動前にDLLのパスが分かっている必要がある。
だから、起動スクリプトでやることになるだろう。
しかし起動スクリプトはOS毎に用意する必要があり、Javaのメリットが薄れる。
もしオラクルがJDK11で何かそのあたりの対策を発表しなかったら、杜撰としか言いようがない。
495デフォルトの名無しさん
2018/07/14(土) 16:28:29.02ID:gXqo7TYC
eclipse辺りに移行すんだろ
496デフォルトの名無しさん
2018/07/14(土) 16:40:59.62ID:40AkJIOi
swtのことであると超良心的に解釈
497デフォルトの名無しさん
2018/07/14(土) 17:04:10.87ID:Qt+zgvv2
498デフォルトの名無しさん
2018/07/14(土) 17:09:59.99ID:FtH+pgzS
今更騒いでもなあ
Oracleに買われた時点でクライアントJavaに未来がないことなんか分かりきってたでしょ
次は乗る船を間違えないこと、間違えたと分かったらすぐに降りること
だいじなことだぞ
499デフォルトの名無しさん
2018/07/14(土) 17:14:54.56ID:Qt+zgvv2
まだJavaで正解だったとは思ってんだよなあ
500デフォルトの名無しさん
2018/07/14(土) 17:30:58.33ID:Q0JU5eRb
あるライブラリを使う必要が出てきて、C++用のがなくて、C#にするかJavaにするか迷って、結局Javaにしたんだけど、道を誤ったか。
また環境構築や言語の勉強に何か月もかけるなんて、うんざりするわ。
501デフォルトの名無しさん
2018/07/14(土) 17:51:59.42ID:gXqo7TYC
FXだけだろ
502デフォルトの名無しさん
2018/07/17(火) 19:12:47.68ID:sYfkxtZj
>また環境構築や言語の勉強に何か月もかけるなんて
なんでそんなに時間掛かるの?
二つ目以降でそんなに時間掛かるとしたら能力無さすぎ。
503デフォルトの名無しさん
2018/07/17(火) 19:36:53.79ID:FdTz4k3A
>>502
Javaを見限ったくらいでそんなに怒らないでよ、ジャバラーさん(笑)
504デフォルトの名無しさん
2018/07/17(火) 19:45:05.49ID:lbJGoJLr
伸びたり縮んだりしそうだな
505デフォルトの名無しさん
2018/07/17(火) 20:23:05.97ID:xA2MutdF
配列も自由に伸び縮みしてほしい
506デフォルトの名無しさん
2018/07/17(火) 20:35:07.91ID:uV16APrp
うまいこといった、座布団一枚山田君
507デフォルトの名無しさん
2018/07/17(火) 20:53:49.04ID:BDOR0qc4
>>503
よう、無能。
何カ月もかけるとかねーわ。
Javaは最も習得が楽な部類の言語だから他の言語は1年はかかるんじゃないかと思うけど頑張ってな。
508デフォルトの名無しさん
2018/07/17(火) 20:57:13.31ID:KCeYVDaR
javaはOS環境の細かいこと覚えなくていいから楽だよな
509デフォルトの名無しさん
2018/07/17(火) 21:20:10.72ID:lbJGoJLr
Javaそのものは楽だがライブラリが多くて最初は何をやる時に何を使ったら良いかよく分からなくて大変かも。
わからなくて自作してしばらくしてからライブラリの中から発見するとかなw
510デフォルトの名無しさん
2018/07/17(火) 21:22:14.95ID:fsANPbWs
>>507
それを◆BrBq2CJg6HGdに言い聞かせていただけますか
511デフォルトの名無しさん
2018/07/17(火) 21:30:04.34ID:WkP7uW+n
Javaは完ぺきな言語に見えたけど、色々建て増しして便利にはなったけど当初の完全さが失われていったな。
512デフォルトの名無しさん
2018/07/17(火) 22:04:55.58ID:kkggISKf
そうかな?
俺が使い始めた頃は重くて使い物にならんってのが評価だったような
513デフォルトの名無しさん
2018/07/18(水) 04:38:41.12ID:md6d4tqx
せやね、セキュリティもがちがちだったし
514デフォルトの名無しさん
2018/07/18(水) 08:20:05.70ID:WrUVLEXC
C#でいいよ
速いし楽だしMicrosoftの安心感最高
515デフォルトの名無しさん
2018/07/18(水) 08:35:05.13ID:ouSD5X5G
ハハワロスwww
516デフォルトの名無しさん
2018/07/18(水) 08:56:30.75ID:2isplW6I
スレチ、おま宗
517デフォルトの名無しさん
2018/07/18(水) 09:10:55.41ID:qdiAbYc/
正直オラクルに比べたら100倍マシ
今は亡きJ#のように、Javaを.NET Core上に実装してみんなで移住するのが一番幸せな形だと思うわ
オラクルはAPIの著作権とかいう謎ワードで潰しにくるだろうけど
518デフォルトの名無しさん
2018/07/18(水) 09:53:18.89ID:9IEVAZpR
>>512
Java Applet がブラウザで動いたお陰で世に広まりはしたが初期化で時間が掛かりすぎ、そのため Java は遅いという印象もより多くの人に広めることになってしまったのではないかと思う。
そして確か1998年にはLinusがJavaは死んだと言っている。20年前だ。確かにPCのデスクトップ環境では死んだも同然だった。
まあしかしLinuxもクライアント環境としては市場に受け入れられず死んだも同然で、みんなしてサーバや組み込み機器に逃れた感じではある。
クライアント環境でのLinuxとJavaはAndroidとしてスマホに組み込まれなければこんなに広まることはなかったかも知れない。
519デフォルトの名無しさん
2018/07/18(水) 11:17:49.53ID:ouSD5X5G
>>517
30億のデバイスで使われてるんだが?
520デフォルトの名無しさん
2018/07/18(水) 11:18:55.86ID:ouSD5X5G
ロンドン証券取引所で大失敗したドトネトは信用できぬ
521デフォルトの名無しさん
2018/07/18(水) 11:32:18.31ID:7RCNVxRQ
>>518
20年前っていうとダイアルアップ主流の時代だっけ?
時代を先取りしすぎたんだなぁ
どっちにしろセキュリティ的にだめな気がするけど
522デフォルトの名無しさん
2018/07/18(水) 12:06:42.81ID:tghCYv44
失敗例でいうとJavaはあちこちで失敗してるね
日常すぎてわざわざ話題にならんけど
523デフォルトの名無しさん
2018/07/18(水) 12:37:19.55ID:ouSD5X5G
>>522
NASDAQはJavaで動いています
Javaの失敗例なんて聞いたことないわ
524デフォルトの名無しさん
2018/07/18(水) 13:33:17.95ID:9IEVAZpR
Write once, Bug anywhere.

OS毎にバグの入り具合が違う。
525デフォルトの名無しさん
2018/07/18(水) 13:55:40.65ID:imuZ+lX2
初心者質問で恐縮ですが、世間様では初期化不要なコンストラクタも一応書くのでしょうか?省略するのでしょうか?

派遣の年上の人からルールだから書けと言われ気になりまして
526デフォルトの名無しさん
2018/07/18(水) 14:24:01.60ID:JHZwBCBg
>>523
だからわざわざ話題にするほど珍しくないってことだよ
527デフォルトの名無しさん
2018/07/18(水) 15:01:03.41ID:hQiorlXz
IBMとかしょっちゅう失敗してるな
528デフォルトの名無しさん
2018/07/18(水) 15:09:29.88ID:ouSD5X5G
>>526
失敗例ないじゃんw
529デフォルトの名無しさん
2018/07/18(水) 15:10:24.92ID:ouSD5X5G
Javaの有名な失敗例を一つでもいいから挙げてみろよ
530デフォルトの名無しさん
2018/07/18(水) 15:11:32.95ID:ouSD5X5G
>>527
IBMはセールスフォースでも裁判沙汰だから
言語の問題じゃない、マネジメントの問題
531デフォルトの名無しさん
2018/07/18(水) 15:13:11.38ID:ouSD5X5G
伊達に30億のデバイスで動いてるわけじゃねえぞ
てめえらあんま舐めてっとあれだからな
532デフォルトの名無しさん
2018/07/18(水) 15:14:21.70ID:ouSD5X5G
>>525
一般的には書かなくていいものは書かない
533デフォルトの名無しさん
2018/07/18(水) 15:35:58.01ID:6/qiKP15
>>525
「初期化不要」とはどういう意味?
フィールドが一切なく、static(みたいな)クラスのことか?
デフォルトコンストラクタのことなら、「初期化不要」とは言わないぞ。
534デフォルトの名無しさん
2018/07/18(水) 16:30:02.33ID:4ELcifB5
ぺろぺろ
535デフォルトの名無しさん
2018/07/18(水) 17:47:21.24ID:ouSD5X5G
あんあん!
536デフォルトの名無しさん
2018/07/18(水) 17:57:49.02ID:OmO21Xy3
なんとかぎゃふんといわせたい(笑)
>派遣の年上の人からルールだから書けと言われ気になりまして
537デフォルトの名無しさん
2018/07/18(水) 20:28:43.76ID:E4ArJsFy
8月からIT企業に入社します
研修があるので、早めに予習しておきたいのですが
開発環境をどうしたらいいか困ってます

VBAでjavaをすると電話で聞いたのですが
見たところjavascriptでしか見たらず、開発環境はイクリプスでしかネットでも記事が出てきません
VBAで開発環境にしている方はどのように行ってますでしょうか
538デフォルトの名無しさん
2018/07/18(水) 20:39:16.63ID:U6m34nVN
次の仕事を探す
539デフォルトの名無しさん
2018/07/18(水) 20:39:56.57ID:3T+bsJq5
>>537
>VBAでjavaをする

それは一体どういう状況なのか?
何か聞き間違えていないか?

それと、開発環境は君が決めても構わないのか?
普通は会社で指定されてたりしないか?
540デフォルトの名無しさん
2018/07/19(木) 00:23:47.65ID:WcB0Ld3E
>>539
予習するだけです
C#は余裕してるので問題ないんですが
そもそもVBAでjavaを作動させることはできるんでしょうか?
541デフォルトの名無しさん
2018/07/19(木) 00:47:04.50ID:I2KiLRYY
VBAからJavaで作ったアプリを起動する…とかなのか?
VBAやるならMSExcelが必要
542デフォルトの名無しさん
2018/07/19(木) 07:30:41.13ID:X7flfBN8
>>533
はいフィールドのない小さいクラスのデフォルトコンストラクタです

アクセサメソッドみたいに丁寧に書くのがしきたりなのか世間様の動向を知りたく
543デフォルトの名無しさん
2018/07/19(木) 07:39:20.31ID:B62Oo3TM
>>542
仕事の規模にもよるが、ソースコードを保守しやすくするためにコーディングの方法が決められている(コーディング規約がある)現場が殆ど
ちゃんと統一されてるなら従ったほうが無難

仮にバグが発生してあなたの追加部分が規約に従ってない場合、面倒くさいことが発せあする可能性がある
544デフォルトの名無しさん
2018/07/19(木) 08:01:56.49ID:X7flfBN8
>>543
なるほど、そこはルールに従うのが無難ということですね

参考になります
545デフォルトの名無しさん
2018/07/19(木) 08:06:40.53ID:SUmbWwrd
>>542
フィールドがないならインスタンス生成を禁止するためにprivateコンストラクタを必ず定義すべきなんじゃないの?
546デフォルトの名無しさん
2018/07/19(木) 08:14:00.46ID:H+BjTpO8
そんな細いことまで規約で定めている現場はソフトウェアの品質が低い
俺の経験ね

品質管理担当とか専任者がいても規約に沿っているかという杓子定規な現場が多く
規約化できないビジネスロジックの妥当性はなぜかチェックしない傾向あり

しょーもない規約がなる揺らぎを許容する現場は
チェックリストに沿った均一的な検査はできないものの
分かっている人がビジネスロジックを査読しようとする傾向がある
547デフォルトの名無しさん
2018/07/19(木) 08:16:26.97ID:MYiqAgsV
ルールに従っている限り、問題が起きた場合はルールを作った奴の責任
これ典型的なSI業界の考え方
上から下までSIに身を置く限りは極めて重要な大原則ではあるが、悪く言えば責任逃れだ
この例に限って言えばわざわざ破って余計なリスクを負うほどの価値があるとは思わないが、今後同様に自分で責任を負わないという判断をするときには
それがエンジニアとしての自分の価値を下げているということを頭の片隅に置いておいたほうがいい
どんな業界でも、本当に上へ行く奴は自己責任でやるもんだ
548デフォルトの名無しさん
2018/07/19(木) 08:21:20.97ID:B62Oo3TM
>>544
俺も大体>>546と同じ考えだから「規約!」「厳守!」という凝り固まった考えにはならないように注意な

チェックする側が知識ない人って事もあるから余計に規約に従ってるか重視するんじゃないだろうか
549デフォルトの名無しさん
2018/07/19(木) 08:38:28.86ID:B62Oo3TM
>>544
後あれだ
なんでこんな規約があるんだって考えるのも最初は勉強になるぞ

件のデフォコン必須!とかはリフレクション多用してて落ちたことがあったからそのまま規約になった~とか理由があるかもしれない
550デフォルトの名無しさん
2018/07/19(木) 08:46:17.55ID:5x41Wecj
javaはもうwebの世界でしか生きていけないのかな
551デフォルトの名無しさん
2018/07/19(木) 08:53:04.66ID:Op5duy3q
>>550
kindleもandroidもJavaで動いてるし
ただ単にwebアプリが増えてるだけだと思う
552デフォルトの名無しさん
2018/07/19(木) 08:55:07.02ID:Op5duy3q
webに向いてるというよりはwebの世界が広がっただけ
553デフォルトの名無しさん
2018/07/19(木) 08:59:35.72ID:Op5duy3q
>>547
話を一般化しすぎじゃないか
SIを嫌ってるだけだろ
554デフォルトの名無しさん
2018/07/19(木) 09:02:43.68ID:Op5duy3q
スカラより簡単ピエチピより厳密
アプリサーバがたくさんあって人材も豊富
作っているのは世に名も高きオラクル
Java最強伝説
555デフォルトの名無しさん
2018/07/19(木) 10:26:37.51ID:BQmzByzh
雑談終了
556デフォルトの名無しさん
2018/07/19(木) 11:32:42.94ID:MIkQQrXR
Kotlinもよろしく
557デフォルトの名無しさん
2018/07/19(木) 12:41:54.56ID:hUcifAQw
>>551
Andoroidのjavaはもう終わりかな
558デフォルトの名無しさん
2018/07/19(木) 13:22:28.48ID:KtebpVot
AndroidはもうKotlinでいいしな
559デフォルトの名無しさん
2018/07/19(木) 13:35:56.12ID:lzwulHPo
Javaの知識があってのKotlinだけどな。
Nativeは知らんけど。
560デフォルトの名無しさん
2018/07/19(木) 14:46:46.68ID:Op5duy3q
>>557
終わらぬだろ、終わらぬよ
終わりません!
561デフォルトの名無しさん
2018/07/19(木) 18:49:13.04ID:6E4STiKC
googleはjavaでオラクルに一兆円の損害賠償払うのにjavaは捨てられないのかな
562デフォルトの名無しさん
2018/07/19(木) 18:52:53.52ID:6E4STiKC
オラクル社長はドラ息子に巨万の富を残してるのにまだ足りないみたいね

andoroidの巨額提訴にjava有償化に
563デフォルトの名無しさん
2018/07/19(木) 20:41:02.41ID:m5MPu7YP
>>546
良いこと言うね
Java使いにもまともな人居たんだ
564デフォルトの名無しさん
2018/07/19(木) 21:52:48.51ID:Sjf7ku63
寝言は寝て言え
565デフォルトの名無しさん
2018/07/20(金) 03:33:50.65ID:KKufvgV7
Java使いに「も」って、まともな人が居ない事前提?

36歳がそうだからと言って全体を括るのは乱暴かと
566デフォルトの名無しさん
2018/07/23(月) 06:03:22.92ID:a5odQemo
javaの致命的に糞な所を3つ挙げるとしたら何?
おまけで他言語よりこここだけは良いということ1つ
有料化になること以外でよろ
567デフォルトの名無しさん
2018/07/23(月) 07:40:33.50ID:tja2UxRY
糞なところ
・貧弱なジェネリクス、極めて非直感的なワイルドカード
・直交性が目的化していて利便性が犠牲になっている標準ライブラリ群
・プログラマの平均スキルの低さ
良いところ
・安い単価でプログラマを大量に調達できる
568デフォルトの名無しさん
2018/07/23(月) 07:46:24.27ID:r2NgEomY
致命的と思うところはない
だって致命的な欠点があったらJava使うのやめてるだろ

Javaの良いところはクラスライブラリと開発コミュニティ
Java自体の言語仕様は今となっては秀でている点はなく後発言語のほうが優れている
しかしJavaの豊富なクラスライブラリに多言語が追い付くの容易ではない

Java開発者は標準クラスライブラリに沿って・似せてクラス設計する人が多い印象
そのため外部ライブラリを見つけてきてもインターフェイスに一貫性があり使いやすいことが多い

昔、Perlでもモジュールを集めるCPANというものがあったけど一貫性がなくモジュールごとに作法がバラバラだった

Javaの良さは世界中の開発者が設計ポリシーを共有していて作られたライブラリが相互運用しやすいエコシステムにある
569デフォルトの名無しさん
2018/07/23(月) 11:24:26.77ID:ZjQpUEmE
オラクルかな
570デフォルトの名無しさん
2018/07/23(月) 18:43:51.10ID:dX14gRVE
それをいっちゃあおしめえよ
571デフォルトの名無しさん
2018/07/23(月) 19:32:54.33ID:IsAC2rDC
変数宣言が冗長すぎ
Date date = new Date()
Date型って最初に宣言してんだからnewもDateで基本問題無いやろ
572デフォルトの名無しさん
2018/07/23(月) 19:50:26.60ID:EvGqybr2
>>571
Object o = new String() ;
ってやりたいこともあるから。
573デフォルトの名無しさん
2018/07/23(月) 19:56:00.68ID:dX14gRVE
型推論してくれるKotlinはナイスだな
574デフォルトの名無しさん
2018/07/23(月) 20:09:10.55ID:stexMLiC
君らvar使ってないのか
575デフォルトの名無しさん
2018/07/23(月) 20:11:54.87ID:RCR4OhGD
moduleが難しすぎて突破できないから
Java8で行くお!
576デフォルトの名無しさん
2018/07/23(月) 20:14:19.78ID:cHxBvLXH
そういや最近宣言と同時にnewってあんましてないな
577デフォルトの名無しさん
2018/07/23(月) 20:17:45.49ID:m6zef+c0
varはポリモーフィズムとは相容れないから。
578デフォルトの名無しさん
2018/07/23(月) 20:27:02.30ID:ddy5leO9
>>577
相容れないなんてことは無いだろ。
限られたシチュエーションで使えないだけだ。
579デフォルトの名無しさん
2018/07/23(月) 22:14:25.10ID:IsAC2rDC
>>572
それならそういうときはそれでいいけど、
Date date;
みたいに省略したときは自動でDateをnewしてくれ
580デフォルトの名無しさん
2018/07/23(月) 22:16:05.03ID:IsAC2rDC
略するところを間違えた、まあ空気読んでくれ
581デフォルトの名無しさん
2018/07/24(火) 04:21:52.30ID:/tfIts3n
Ky ky= new Ky();
582デフォルトの名無しさん
2018/07/24(火) 09:02:46.76ID:3bmjSXS4
Kotlin使えばよい
後から作った言語なのでそういう細かいことは解消されている
583デフォルトの名無しさん
2018/07/24(火) 09:06:29.72ID:WgNXUi2L
>>579
とてつもなく浅い知識で批判とか恥ずかしくないの?
584デフォルトの名無しさん
2018/07/24(火) 09:40:11.61ID:uOakFE5H
そんなに浅くない
585デフォルトの名無しさん
2018/07/25(水) 07:32:49.10ID:BeP5/XfH
>>582
ははーん、さてはおめー何もわかってねーな
586デフォルトの名無しさん
2018/07/25(水) 09:27:06.98ID:GNtg4sP8
>>585
というと?
587デフォルトの名無しさん
2018/07/25(水) 19:09:16.20ID:s14gtaOU
否定だけして根拠示さないのは例の人かな?
588デフォルトの名無しさん
2018/07/25(水) 20:01:38.85ID:ekeRKo17
「ははーん、さてはおめー何もわかってねーな」という台詞を言ってみたかっただけの人か?
589デフォルトの名無しさん
2018/07/25(水) 20:12:44.09ID:QfwTkRmU
下記ブログの例題がEclipseでもpaiza.ioでもコンパイルエラーになって色々試したのですが解決出来ないので原因と回避策を教えてください
Eclipseでのエラー: 型の不一致: Object から int には変換できません
paizaでのエラー: Object cannot be converted to int


https://nompor.com/2017/11/16/post-1118/
ブログのページ最後にある例題サンプルです
「Iteratorで全要素アクセス」

18行目
int data = it.next();//次の要素を取得します。

---
例題そのままをコピペしてもエラーになるので自力解決が出来なくて困っています
590デフォルトの名無しさん
2018/07/25(水) 20:17:15.54ID:GZRArLRs
>>589
Iterator it = arr.iterator();
これを
Iterator<Integer> it = arr.iterator();
こうや!
591デフォルトの名無しさん
2018/07/25(水) 20:20:52.44ID:QfwTkRmU
>>590
それはやったのですが、エラーになりましたね
Exception in thread "main" java.lang.Error: Unresolved compilation problem:
integer を型に解決できません
592デフォルトの名無しさん
2018/07/25(水) 20:27:16.64ID:QfwTkRmU
自己解決しました
エラーのpopアップに表示されていたキャストをすれば解決しました

もしかしたらブログを執筆していた頃には問題の無かった書き方が厳密になったとかなのでしょうか?
原因が例題書かれた方のミスなのか仕様変更なのか意味が分からないままエラーだけ出なくなった状況ですが次へ進みます。
ありがとうございました

18行目(変更前
int data = it.next();//次の要素を取得します。

18行目(変更後
int data = (int) it.next();//次の要素を取得します。
593デフォルトの名無しさん
2018/07/25(水) 20:30:23.90ID:QfwTkRmU
そもそもなのですがIteratorって使いますか?
他にも配列などの操作方法あるようですし
どうしてこんな面倒な書き方で参照したりするのか疑問です
594 ◆QZaw55cn4c
2018/07/25(水) 20:31:46.04ID:2d5RfbzO
>>589
https://ideone.com/qLRSSK
Object を Iterator にキャストしてオートボクシングを利かせてみた
595デフォルトの名無しさん
2018/07/25(水) 20:40:39.19ID:QfwTkRmU
>>594
ありがとうございます
596デフォルトの名無しさん
2018/07/25(水) 20:51:02.31ID:ITmWCwNQ
>>592
それは解決になってない。
キャストで逃げたら、ジェネリック使う意味がなくなる。
597デフォルトの名無しさん
2018/07/25(水) 20:54:37.41ID:GZRArLRs
>>591
integerじゃなくてIntegerだよ
https://paiza.io/projects/EqWeDViwiv4OmZldGaHtNA
598デフォルトの名無しさん
2018/07/25(水) 21:27:25.94ID:GZRArLRs
>>594
int data = (int)it.next();
int data = (Integer)it.next();
これどちらもオートボクシングが行われてますよ
プリミティブ型で格納されてるわけじゃないっすから

オートボクシング使わずに書くならこう!
int data = ((Integer)it.next()).intValue();
599デフォルトの名無しさん
2018/07/25(水) 21:49:55.62ID:QfwTkRmU
>>597
13行目
Iterator<Integer> it = arr.iterator();
自分<integer>でミスタイプしてましたねすみません

>>598
勉強になります

>>これどちらもオートボクシングが行われてますよ
>>プリミティブ型で格納されてるわけじゃないっすから
まだ意味がわからないので調べてみます

>>596
>>キャストで逃げたら、ジェネリック使う意味がなくなる。
まだ意味がわからないので調べてみます

ありがとうございます
600デフォルトの名無しさん
2018/07/25(水) 22:28:09.59ID:QfwTkRmU
>>589
の原因と教えていただいたことを自分なりに調べた結果のまとめと確認です
(連投すみません

13行目(変更前
Iterator it = arr.iterator();

これがジェネリクス総称型として型を指定していないのでObject型となり次の

18行目(変更前
int data = it.next();//次の要素を取得します。

ここでInt型にObject型を代入しようとして型不一致で代入できないとのエラーが出ていた

解決策としては

13行目(変更後
Iterator<Integer> it = arr.iterator();

明示的に<Integer>を宣言することで次の

18行目(変更前
int data = it.next();//次の要素を取得します。

ここで代入可能となったが
これはInt型とInteger型のオートボクシング機能が働いている
601デフォルトの名無しさん
2018/07/25(水) 22:28:36.05ID:QfwTkRmU
>>600
これで合ってますか?
最後の「これはInt型とInteger型のオートボクシング機能が働いている」のかちょっとまだ不安です
キャストはしてないけどオートボクシングが働いてたら意味がない?
このあたりがまだよく理解出来てないと思います
>>598 これをふまえると・・・

>>オートボクシング使わずに書くならこう!
>>int data = ((Integer)it.next()).intValue();

13行目(変更後
Iterator<Integer> it = arr.iterator();

18行目(変更後※
int data = it.next().intValue();//次の要素を取得します。

※ここまでやらないと意味が無いのでしょうか??
一応どちらも正常に結果出てますが内部的に違いがあるのか不安です?
602デフォルトの名無しさん
2018/07/25(水) 22:37:49.97ID:GZRArLRs
>>601
オートボクシングはプリミティブ型とラッパークラスの変換を
自動で行う仕組みのことで

毎回、↓こう書くの面倒だよね
int data = it.next().intValue();

じゃあ↓こう書けるようにしよう
int data = it.next();

ということで導入されたものだから積極的に使ったら良いよ
603デフォルトの名無しさん
2018/07/25(水) 22:44:09.05ID:QfwTkRmU
>>602
Iterator<Integer> it = arr.iterator();
int data = it.next();

オートボクシングは便利機能なので使ってOKで
.intValue();が自動的に省略されてるだけで結果は同じ

これで解決ってことですね!納得しました!
ありがとうございました
604デフォルトの名無しさん
2018/07/25(水) 22:44:22.96ID:+qk7Pgth
だね
Integerからintへの変換ではインスタンス生成されないし
intからIntegerへの変換でも数字が小さければインスタンスは生成されない
インスタンス生成を抑えるために小さな数字はあらかじめIntegerオブジェクトが作られていて使い回されるようになっているから
値オブジェクトみたいな感じ

コスト気にするよりオートボクシングを積極的に使って可読性の高いコードを書こう
605デフォルトの名無しさん
2018/07/25(水) 22:46:30.24ID:GZRArLRs
>>600
ジェネリクスで型を指定すれば、型が間違ってたときにコンパイルエラーに
なってすぐに気づくことができるのだけれども

ジェネリクスで型を指定しないと、型が間違っててもエラーにならないのよ
実行してデータが処理されないとコードが間違ってるかわからぬのよね
エラーが起きないデータもあったりするとデバッグが超大変

ジェネリクスが使えるときは型を指定して使ったが良いよ
606デフォルトの名無しさん
2018/07/25(水) 22:56:34.68ID:QfwTkRmU
>>604-605
>>コスト気にするよりオートボクシングを積極的に使って可読性の高いコードを書こう
>>ジェネリクスが使えるときは型を指定して使ったが良いよ

質問で丁寧に回答していただきさらにアドバイスまでいただき感謝です!
勉強になりますありがとうございます!
607デフォルトの名無しさん
2018/07/26(木) 00:12:38.71ID:5ROtQy7H
>>589
それ原因が分かったぞ。(勘のいい奴なら既にわかっていると思うが)。

そのブログのページのソースのこう表示されてる個所あるだろ。

Iterator it = arr.iterator();

この部分の HTML のソースを見てみたらこうなってた。

Iterator<Integer> it = arr.iterator();

しかしこの通りに表示させたいなら HTML 文書の中ではこう書かねばならない。

Iterator&lt;Integer&gt; it = arr.iterator();

他の同じような記述の個所はこういう変換をやっているのにこの部分だけ忘れており
<Integer> 部分がブラウザによって HTML のタグと解釈されて丸ごと表示されない
状態になっていた、ということ。
608デフォルトの名無しさん
2018/07/26(木) 00:23:57.38ID:Hk2Eswys
609デフォルトの名無しさん
2018/07/26(木) 01:12:56.68ID:3Q0DG2FF
>>607
よく見つけられましたね凄いです!
どなたかがブログへご指摘されてくださったようで確認しようと再度HP確認したら既に修正されていました!
あまりの速さに2度驚きました

この質問スレにもブログにも勉強するのにとても助かっています
いつもありがとうございます
610デフォルトの名無しさん
2018/07/26(木) 09:12:21.23ID:1RynmuAu
>>607
611デフォルトの名無しさん
2018/07/26(木) 13:20:41.96ID:EM3EzxKL
    ./__.))ノヽ    
    .|ミ.l _  ._ i.)    わしが指摘した
   (^'ミ/.´・ .〈・ リ    
    .しi   r、_) |            ______
     |  `ニニ' /             |  | \__\___
  ___.ノ `ー―i´             |  |   |= |iiiiiiiiiii|
/⌒ヽ  \____/\            |  |   | =. | !!!!!!!|
|   ヽ____| \__. __    |  |   |三 |_「r.、
|  //     // ̄.\ //⊃ヾ)   |__|_/(  ) ̄ ))
ヽ ______//r_/| |.||⌒ヽ~〔 ̄ ̄! ̄ ̄ ̄/ ̄ ̄\((
612デフォルトの名無しさん
2018/07/26(木) 20:19:44.88ID:l6j0Y1pF
定義されてるディレクトリ配下のログが誰かに開かれてたら何もしないって処理作りたいんですけど、ファイルが誰かから開かれてるかを調べる方法ありますか?
613デフォルトの名無しさん
2018/07/26(木) 20:22:42.75ID:l6j0Y1pF
古くなったログの削除の為に使用するためです
614デフォルトの名無しさん
2018/07/26(木) 20:39:32.04ID:9i/IJhFr
自分でそのファイルを読み取り排他で開いてみるしかない
失敗したら他のプロセスがオープンしているということ

排他(副作用)なしでファイルのロック状態を知る方法はない
615デフォルトの名無しさん
2018/07/26(木) 21:15:30.96ID:l6j0Y1pF
>>614
ありがとうございます。
明日試してみます!
616デフォルトの名無しさん
2018/07/26(木) 21:33:54.42ID:ekiha7MK
うーんどうなんだろう、設計
617デフォルトの名無しさん
2018/07/27(金) 02:20:59.11ID:O4NPrPXG
>>612
Linux の場合は fuser コマンドを使うと指定のファイルをオープンしているプログラムのプロセスIDが分かる。
何も出力がなければ開いているプロセスはない。

他のUNIX系OSにもこのコマンドはあるかも知れない。Windows の WSL にはこのコマンドはあった。

その他のOSではどうやるか知らないが、もし fuser コマンドがあるのならそれを使えば同じようにできるんじゃないかと思う。

Windows の場合は他のプロセスが開いている最中にリネームしようとするとエラーになるそうなのでこれを利用するという手があるようだ。
但し同じ方法はOSが違ったら使えない(例えばLinuxやUNIX系OSでは使えない。WSLはわからない)。
https://code.i-harness.com/ja/q/153800
618デフォルトの名無しさん
2018/07/27(金) 06:07:34.18ID:br8yoTOu
paiza.ioってローカルPCのファイルやフォルダ操作するコードは実行出来ないですか?
619デフォルトの名無しさん
2018/07/27(金) 12:15:33.71ID:4+ImbG1U
>>614
ログを開くアプリケーションによってはロック状態を認識できませんでした。
FileChannelクラスのtryLookメソッドを使いました。
OSがcentosでLibreOfficeで開いてるときはロック状態でしたが、geditで開いたときはロックされてなかったです。
何か初心者がおかしやすいミスとかってありますかね。
もう諦めてるんですがgeditが特殊なんですかね
620デフォルトの名無しさん
2018/07/27(金) 12:16:37.86ID:4+ImbG1U
gedit以外のテキストエディタでも同じでしたね
ロックの確認できません。
621デフォルトの名無しさん
2018/07/27(金) 12:58:52.13ID:ki81FzEq
普通はしないよ。
一々ロックしてたら、たとえばGitなんか阿鼻叫喚の地獄になる。
622デフォルトの名無しさん
2018/07/27(金) 13:04:46.00ID:4+ImbG1U
>>621
そうなんですね
623デフォルトの名無しさん
2018/07/27(金) 13:26:56.82ID:EBOSMkzO
>>619
UNIX系OSではオープンしただけでは普通はロックまで掛からなくて、別途 flock() したり fcntl() でロックするようになっている。なので本当に必要な場合しかロックしないのが普通だ。

オープンしてるかどうかだけ確認したいなら fuser コマンドや lsof コマンドを使った方が楽だ。
Linux限定で良いなら /proc ディレクトリ以下を自分で探ってもできるけどね。
それだと多分本当にLinuxのみになるし fuser や lsof も Linux 用なら中で同じことしてるだろうから任せた方が良い。
624デフォルトの名無しさん
2018/07/27(金) 14:29:19.42ID:4+ImbG1U
>>623
色々教えて下さりありがとうございます。
625デフォルトの名無しさん
2018/07/29(日) 02:53:34.15ID:noej9t8s
javaのバージョンって1.8だったり8だったり表記が複数あるようですが何なんですかこれは
626デフォルトの名無しさん
2018/07/29(日) 04:29:48.18ID:SHCnQYdt
なんなんでしょうね
627デフォルトの名無しさん
2018/07/29(日) 05:54:37.87ID:Oaphdh9V
初見殺し
628デフォルトの名無しさん
2018/07/29(日) 08:38:57.85ID:7lOBGcOb
>>625
Javaのバージョン
https://so-zou.jp/software/tech/programming/java/introduction/version/
意外と知らないバージョン表記・数字の豆知識
http://www.atmarkit.co.jp/ait/articles/1003/26/news106.html

理由はよくわからないが、やはり営業的な理由なんじゃないだろうか。
バージョン番号が大きい方が他の製品よりも良いものであるかのような印象を与えられるから。

Perlなんかは(フリーソフトで誰にも売る必要がないためか)これの逆をやってしまい、大きな変更が
あったのにほんのちょっとしかバージョン番号を上げなかったためにほとんど違いがないと誤解
された事があり、それでその後はバージョン番号の振り方のルールを変えた。
629デフォルトの名無しさん
2018/07/29(日) 13:22:46.86ID:pFjYaTQt
>>618
ブラウザから、自分のPC 内にアクセスできたら、大変!

何でも盗み放題w
すべての情報が、どこかのサーバーに送られてしまう
630デフォルトの名無しさん
2018/07/29(日) 21:11:31.52ID:JZa4OXPE
eclipseをphoton にしてワークスペースをそのまま引き継ごうとしたら実行できなくなっちゃった。どうすればいいか教えてちょ
631デフォルトの名無しさん
2018/07/29(日) 21:23:30.06ID:JZa4OXPE
eclipseをphoton にしてワークスペースをそのまま引き継ごうとしたら実行できなくなっちゃった。どうすればいいか教えてちょ
632デフォルトの名無しさん
2018/07/29(日) 21:46:32.56ID:sUhDPIHz
ごめんちょ
633デフォルトの名無しさん
2018/07/30(月) 05:51:28.50ID:HJqNjAI+
>>631
${HOME}.eclipse
を削除してみたらどうだろ

workspaceをバックアップして
空にして、インポートで取り込むとか
634デフォルトの名無しさん
2018/07/31(火) 23:16:57.30ID:ZNFzWxLv
初歩的な質問になるんですが異なる2つのクラスで1つの値を共有したいときってどういったやり方あります?
class a
String str

class b
a.setStr

class c
a.getStr
大分省略してますがこんなことをやりたいです。
実行順はbで更新した後にcで取得
635デフォルトの名無しさん
2018/07/31(火) 23:22:07.36ID:3ipQI8/S
クラスbとcのメンバにaクラスのフィールドをもちbとcのコンストラクタでaを設定する
636デフォルトの名無しさん
2018/07/31(火) 23:30:21.51ID:ZNFzWxLv
class b
a a
public b
a = new a

a.set

class c
a a
public c
a = new a

a.get

みたいな感じですかね?
この場合ってbとcでそれぞれ作ったaのインスタンスって別物扱いになりません?
637デフォルトの名無しさん
2018/07/31(火) 23:31:13.26ID:0/QW8S54
>>636
外でnewして渡せ
638デフォルトの名無しさん
2018/08/01(水) 00:58:32.44ID:r0ZYJdIw
>>637
どんな感じです?
できたらイメージ貰いたいです
639デフォルトの名無しさん
2018/08/01(水) 06:25:06.11ID:IkENlkBK
new a
new b(a)
new c(a)
640デフォルトの名無しさん
2018/08/01(水) 07:48:14.65ID:3Ruau8S/
jdk11 ea でローカルswing アプリテストしたいのですが、
・jdk11 ea openjdkを取ってくる
・展開して適当なパスに置く
・path/to/openjdk/bin/java -jar myapp.jar
で起動出来るのでしょうか?
641デフォルトの名無しさん
2018/08/01(水) 10:26:14.54ID:198aEqhp
やってみりゃいいじゃん
642デフォルトの名無しさん
2018/08/02(木) 02:22:35.17ID:reX89mAv
通信の優先度を決める事はできますか?
でかいファイルを送受信するけど、他のアプリに影響を出したくなくて、
低い優先度で送りたい。
643デフォルトの名無しさん
2018/08/02(木) 02:39:35.74ID:vClc7nAi
>>642
自分でゆっくり送ればいいのでは?
644デフォルトの名無しさん
2018/08/02(木) 07:50:56.22ID:yvP4ulwr
プロセス・スレッドの優先度は、設定できないの?
645デフォルトの名無しさん
2018/08/02(木) 08:06:14.31ID:SwjRc7UR
プロセスの優先度は知らんがスレッドの優先度なら
https://docs.oracle.com/javase/jp/8/docs/api/java/lang/Thread.html#setPriority-int-

// コードが走ってるスレッドの優先度を変える
Thread.currentThread().setPriority(priority); // 0(MIN_PRIORITY) ~ 10(MAX_PRIORITY)

// 生成したスレッドの優先度を変える
Thread thread = new Thread(runnable);
thread.setPriority(priotrity);
thread.start();
646デフォルトの名無しさん
2018/08/02(木) 08:10:14.12ID:lJdnLKf/
通常プロセスはOS側で管理するべきと思ってるからあまり考えたことないな

どうしてもやりたいなら通信を管理するプロセスを作れば良い
つまり>>643
647デフォルトの名無しさん
2018/08/08(水) 20:48:19.34ID:Y8NXA7MO
アンドロイドアプリを作りたいのですが
数か月の間、メンターになってくえれる人を探そうと思ったら
どんなサイトで募集すればいいのでしょうか?
648デフォルトの名無しさん
2018/08/08(水) 21:34:50.44ID:hdmbPKpc
俺がなってやろうか?
3ヵ月240万円でいいよ
649デフォルトの名無しさん
2018/08/08(水) 21:38:15.67ID:oyXSOhRB
メンターなんて言葉一般的に使うの?
自己啓発セミナーみたいでいやだなあ
あ、ボクはアナルオナニーインストラクターです
650デフォルトの名無しさん
2018/08/08(水) 21:40:40.73ID:Y8NXA7MO
基本料金1か月3万円でお願いします
あとはオファーにより別途請求というシステムで
651デフォルトの名無しさん
2018/08/08(水) 22:33:01.96ID:D/rM6Nrn
マンツーマンで教えるとなると時給の最低ラインは3000円だから
月3万円だと月10時間、1日15分ぐらいだな
652デフォルトの名無しさん
2018/08/09(木) 10:10:38.81ID:gFPymi4k
専属の人を雇うとなると家庭教師雇うみたいなもんだから高くなるのではないか?
本やネットで調べながらでも何れはできるようになる事についてそこまで投資する必要があるのか?
何らかの期限があるなどして早く覚えないとまずいということか?
653デフォルトの名無しさん
2018/08/09(木) 10:33:41.65ID:SPEbgWbN
パソコン教室に行って来い
654デフォルトの名無しさん
2018/08/09(木) 16:50:59.46ID:bgFYGL9Q
synchronizedListはイテレータがスレッドセーフじゃないといいますが
for(int i=0;i<list.size();i++)
Element e = list.get(i);

もしsizeの増減が無い場合、こんな書き方はスレッドセーフに全要素にアクセスできますか?
655デフォルトの名無しさん
2018/08/09(木) 18:59:15.93ID:e0VFp9K8
できません
sizeを確認してからgetするまでに要素数が変化する可能性を排除できていません
656デフォルトの名無しさん
2018/08/09(木) 18:59:52.71ID:e0VFp9K8
あ、ごめん
サイズ増減なしって条件書いてあったね
657デフォルトの名無しさん
2018/08/09(木) 19:02:22.63ID:e0VFp9K8
それはサイズが既知でgetしか使ってないのと同じで安全
ていうか要素が変化しないならスレッドセーフではないLinkedListでさえ安全に使えるでしょ
658デフォルトの名無しさん
2018/08/18(土) 22:43:41.07ID:01sV26bM
https://github.com/OpenHFT/Chronicle-Network
ここに出てくる"Wire"ってどういう意味ですか?
WireTextだの、WireEchoだの。
たぶんプログラミング界隈の用語だと思うんですが
659デフォルトの名無しさん
2018/08/18(土) 23:10:04.14ID:ddghJ7gy
ネットワークを繋ぐ線の概念なんじゃないかな
知らんけど、それっぽいと思った
660デフォルトの名無しさん
2018/08/18(土) 23:30:49.48ID:01sV26bM
meta -> meta.write(() -> "tid")

こういう記法は何を意味しますか?
(arg) -> code
みたいなのはラムダ式の説明で出てきますけど、metaはカッコがついていません
661デフォルトの名無しさん
2018/08/18(土) 23:35:11.85ID:01sV26bM
Wire Message = 電報 ⇒ 通信されるデータ
WireType.TEXTとかWireType.BINARYがあるから、たぶんまさにそれだけの意味。
Network = Wireくらいの意味でこの人は使ってそうです。
662デフォルトの名無しさん
2018/08/18(土) 23:39:59.88ID:ddghJ7gy
>>660
引数が1つのときはカッコを省略できるんよ
663デフォルトの名無しさん
2018/08/18(土) 23:58:07.43ID:01sV26bM
数千もの通信を同時処理する高性能なネットワークライブラリを探してるんですが、
何が良いんでしょう?Nettyは内容が難しすぎるんですが・・・。
難しいというか、必要としてるのは単にバイナリを送受信できればいいだけなので、
無駄に高機能過ぎる。
しかし、KeepAliveとか、サーバーが常駐してメッセージを受信してイベント起動、
とかは必要で。ネットワークライブラリの中身なにやってるかあまり詳しくないんですが。

Chronicle-Networkも良く分からない。
// the tid must be unique,
final long tid = tcpChannelHub.nextUniqueTransaction(System.currentTimeMillis());
System.currentTimeMillis()を使ったら、複数クライアントにおいてtidが重複するけど、
それでユニークといっていいのかどうか。
ちょっと情報が少なすぎるのでこれも無理そう。高速らしいんですが

Kryonetは、性能不足ですね。アップデートもされてません。

やはりNettyを頑張るしかないかもしれません。
664デフォルトの名無しさん
2018/08/19(日) 00:00:33.27ID:bn6Y5y/t
>This comes at the cost of scalability for large number os connections. In this situation, this library should perform at least as well as netty.
これは多数のコンピューターからの同時接続ではNettyと同等の性能しかでない、
ということでしょうか?
想定してるのは1コンピューターとの高速な通信ということでしょうか。
665デフォルトの名無しさん
2018/08/19(日) 00:24:40.63ID:wM6XArJ0
WebSocket とかじゃないの?
666デフォルトの名無しさん
2018/08/19(日) 10:44:02.78ID:bn6Y5y/t
やっぱり高性能なJavaのネットワーキングライブラリはNettyが有力のようです。
あと、Wire Messageは、たぶん「頭4バイトにINT入れて、次8バイトにLONG入れて」みたいな
バイト配列にデータを敷き詰めてく感じの行為をWireというのだろうと。
667デフォルトの名無しさん
2018/08/19(日) 11:22:52.85ID:yNrD+B/d
よかったね(LOL)
668デフォルトの名無しさん
2018/08/19(日) 15:48:44.36ID:bn6Y5y/t
PooledUnsafeDirectByteBufとは何ですか?
Handlerでbyte[]やByteBufなどクラスを限定できますが、
単にbyte[]を使うことと比べてByteBufやPooledUnsafeDirectByteBufは何かメリットがありますか?
669デフォルトの名無しさん
2018/08/19(日) 16:16:30.55ID:bn6Y5y/t
どうやら単にbyte[]を送りたい場合でもByteBufを通すのが普通みたいですね
でもそれだとByteBufを作るときもそこからbyte[]を読み取るときもコピー操作があるようで遅そうです
通信に比べればメモリ操作による遅れは微々たるものかもしれませんが
Nettyより高速と謳うライブラリがありますがやはりバッファ周りの問題を指摘してましたが
これですかね
670デフォルトの名無しさん
2018/08/20(月) 08:34:48.22ID:nWwgLLcF
ソース読んではいないけど、byte[]のWrapperなんじゃないの?
渡されたbyte[]を丸々コピーするような、あなたのような超初心者な実装はしていないと思うよw
そもそも、byte[]で送るといっても、自分でBufferのサイズを決めたり、通信環境を考慮したり、いろいろやらなきゃいけない。
だから、そういった最適化をByteBufのサブクラスたちは提供してくれているのでしょう。
671デフォルトの名無しさん
2018/08/20(月) 16:30:51.58ID:x31M90y2
こういうコードがあった時、logが呼ばれてもデバッグモードでなければ
意味が無いけど、AnyHeavyMethodは計算されちゃうんでしょうか。
それとも最適化で実行されませんか?

//in some method
log(""+AnyHeavyNoEffectMethod(o));

public void log(String s){
if(isDebugMode())
System.out.println(s);
}
672デフォルトの名無しさん
2018/08/20(月) 20:31:28.54ID:7cywDiIN
JITコンパイラは副作用がないことをどこまで調べるんだろうね
673デフォルトの名無しさん
2018/08/20(月) 20:50:34.41ID:DUHqVJSw
>>671
isDebugModeの返す値が定数で、かつそこに登場してる全てのメソッドがインライン展開されれば実行されないんじゃない?
Javaって基本的に大規模アプリケーションに最適化されてて、局所的な速度よりも全体的な安定性やメモリ消費量を重視する傾向があるから、
あまり最適化には期待しないほうがいいよ
674デフォルトの名無しさん
2018/08/20(月) 22:27:44.88ID:trJY4lAL
AnyHeavyNoEffectMethodが重い処理で、Java8以降ならラムダ式使うんじゃね?


log(() -> "" + AnyHeavyNoEffectMethod(o));


public viod log(Supplier<String> s){
if (isDebugMode())
System.out.println(s.get()); // ここでAnyHeavyNoEffectMethodが実行される
}
675デフォルトの名無しさん
2018/08/21(火) 08:43:36.63ID:VaNiE4c6
いいね。そっくりそのままDecoratorにもなってるからすっきりする。
676デフォルトの名無しさん
2018/08/21(火) 09:27:43.13ID:R/vyiArT
それJavaの場合はラムダ内で外のミューダブルな変数を参照できないから微妙
677デフォルトの名無しさん
2018/08/21(火) 10:05:53.79ID:VaNiE4c6
どーーしても必要なら、観測したい変数をHeapに逃がせばいい(オブジェクトにぶら下げるとか)わけだけど。
Functional信者は怒りMaxだろうな。
678デフォルトの名無しさん
2018/08/21(火) 12:07:34.45ID:LMQ5YiiU
>>676
変態すぎるだろ何やろうとしてるんだよ
679デフォルトの名無しさん
2018/08/21(火) 12:57:56.56ID:5BiPsrnL
>>678
そう思うだろ?
これでコンパイルエラーなんだよね
int x = 1;
log(() -> x);
x += hoge();
log(() -> x);
680デフォルトの名無しさん
2018/08/21(火) 15:25:34.33ID:LMQ5YiiU
>>679
当たり前だろ
何考えてんだ
681デフォルトの名無しさん
2018/08/21(火) 15:30:01.19ID:LMQ5YiiU
あ、わかった
682デフォルトの名無しさん
2018/08/21(火) 17:51:15.05ID:NYseXeYs
>>679
完全に使い方の問題だし、マルチスレッドの問題もあるし。
JavaScriptとかできちゃうけど、それやってどうなってもしらないぞ、と。
683デフォルトの名無しさん
2018/08/21(火) 17:55:00.54ID:IftEBw66
ログなら普通にある状況だろ
それを使い方の問題というならラムダをログに使うという>>674の発想が間違ってるわ
684デフォルトの名無しさん
2018/08/21(火) 20:09:37.16ID:NYseXeYs
ないよ。AOPとかDecoratorとか、ラムダが登場する以前からずっとやってきている話。
ラムダはそれをちょっとエレガントにできるようにしただけ。
だから、使い方の問題なんだよ。
685デフォルトの名無しさん
2018/08/21(火) 22:05:33.53ID:flSi4mUH
>>684はミュータブルな変数を一切ログ出力してないの?
自身を持って無いと言い切れるなら偉そうなこと言っていいぞ
686デフォルトの名無しさん
2018/08/21(火) 22:09:43.83ID:flSi4mUH
ちなみにログ出力にJavaのラムダが適していないという話であって、ラムダがミューダブルな変数を参照できるべきだなんて誰も言ってないけど
>>684は勘違いしてる
687674
2018/08/22(水) 22:13:46.15ID:xSbYn5li
簡単な実験コード書いてみたけど最適化されませんね。
private static final boolean debug = false;
@Test
public final void testOptimization() {
final long start = System.currentTimeMillis();
log(anyHeavyNoEffectMethod() + "");
final long end = System.currentTimeMillis();
System.out.println((end - start) + "ms");//50ms
}
private static final void log(final String s) {
if (debug)
System.out.println(s);
}
private static final long anyHeavyNoEffectMethod() {
final Random r = new Random();
long total = 0;
int loop = 1000 * 1000;
for (int i = 0; i < loop; i++)
total += r.nextLong();
return total;
}
688デフォルトの名無しさん
2018/08/22(水) 22:39:39.44ID:xSbYn5li
ラムダ式の方はanyHeavyNoEffectMethodが呼ばれません。
しかし、指摘のようにミュータブルな変数を渡せません。
log()の実装を二種類用意して使い分けていくのが妥当な気がします。
デコレーターパターンで解決できるんですか?
689デフォルトの名無しさん
2018/08/22(水) 22:48:19.72ID:xSbYn5li
このような頻出のパターンについてJITは最適化すべきだと思います。
たぶん、それが一番妥当な解決策です。
副作用が無い事を確認する機能は、JITに既にありそうなものです。
少なくともある程度の範囲で副作用が無い事を確認できるはずです。

どうでもいいんですがこんなパターンにはJITは最適化を見せました。
for(){
list.add(i);
list.remove(i);//追加したものを即削除する
}
690デフォルトの名無しさん
2018/08/22(水) 22:51:11.60ID:z4qSfGT7
オーバーロードでいんじゃない?
ログの出力ってきほんStringじゃん
691デフォルトの名無しさん
2018/08/25(土) 12:01:51.59ID:FONLvq+3
匿名クラスとかでスタック領域の変数を参照できますが、匿名クラスのオブジェクトが破棄されるまでそれらは生存するということですか?

public void method(Observable obs){
Object o = ...;
EventHandler handler = new EventHandler(){
@Override
public void handler(){
System.out.println(o);
}
}
obs.setOnAction(handler);
}
692デフォルトの名無しさん
2018/08/25(土) 12:14:05.20ID:logoA4dK
>>691
気のせい
実は無名クラスの中に隠しフィールドが生成されてoの値をコピーしている
ちなみにoは暗黙的にfinalになっており、後でoを書き換えようとするとコンパイルエラー
そこまでするならScalaやKotlinやC#みたいに最初からoをヒープに作っちまえよと思わなくもないが、
この中途半端な仕事かJavaクォリティ
693デフォルトの名無しさん
2018/08/25(土) 13:05:07.70ID:KMExyDFm
>>691
そうなるよ、参照関係を図で表すとこうな感じでしょ
★★Java質問・相談スレッド181★★ 	->画像>5枚

オレンジが変数
緑がオブジェクト

メソッドを抜けてローカル変数o, handler, obsがなくなっても
Observable → EventHandler → Object
の参照は消えない

引数に渡してるObservableはメソッドの外で
変数から参照されてるだろうからメソッドを抜けても
破棄されないよ
694デフォルトの名無しさん
2018/08/25(土) 13:38:45.65ID:QXNuAaPs
>>693
691が気にしてるのはローカル変数o自体の寿命でしょ
実際には無名クラスの外側にある変数oとhandlerの中で参照してる変数oは別の実体だから問題ない、が答えだよ
後者は>>692の通り無名クラスの隠しフィールドであり、インスタンス生成時に値をコピーしている
この仕様だと、後で内側または外側でoの値を書き換えてしまうと辻褄が合わなくなるから、
oを後で書き換えてはいけないという制限が必要なの
695デフォルトの名無しさん
2018/08/26(日) 18:14:43.90ID:oLy9klNt
ここを見るとRSA系は2048までしかありません。4096等だとRSA鍵による暗号化ができないということですか?
その場合、非標準のライブラリ等で解決できますか?
https://docs.oracle.com/javase/jp/8/docs/api/javax/crypto/Cipher.html
RSA/ECB/PKCS1Padding (1024、2048)
RSA/ECB/OAEPWithSHA-1AndMGF1Padding (1024、2048)
RSA/ECB/OAEPWithSHA-256AndMGF1Padding (1024、2048)
696デフォルトの名無しさん
2018/08/27(月) 09:33:01.48ID:n6GSDZ7+
>>695
https://qiita.com/mizuki_takahashi/items/cc26a7fd51aa04396e92
697デフォルトの名無しさん
2018/08/27(月) 09:47:55.19ID:n6GSDZ7+
強度の強い暗号化は輸出制限あるから気を付けてね。
うっかりノートPCにセットしたまま他国へ持って行こうとするとバレた時に大変まずいことになるかも知れない。
698デフォルトの名無しさん
2018/08/27(月) 17:31:52.62ID:n/TwkHD5
jre1.8の最近のバージョンでデフォルトで強度無制限になったようです。
とはいえ、java8の仕様上、2048までしかサポートする必要は無いようです。
実装によってサポートしているかもしれません。
699デフォルトの名無しさん
2018/08/27(月) 17:33:10.48ID:n/TwkHD5
このようなコードがあった場合、tは生存しますか?
tはどこからも参照されてないとします。

//in some method
Thread t = new Thread(){...};
t.start();
return;
700デフォルトの名無しさん
2018/08/27(月) 20:27:36.23ID:QkMU0TtV
>>699
試してみた
https://paiza.io/projects/PxoO2-fLSd_KfpwF5B3prA

結果からわかることは
・メソッドを抜けてもスレッドが終了するわけではない
・スレッドが終了しないならばプロセスは終了しない
・ローカル変数がなくてもスレッドを取得できる

作成したスレッドのオブジェクトはどこかに保持されるみたいね
tは生存します、が答えっす
701デフォルトの名無しさん
2018/08/27(月) 20:52:27.61ID:l2rfNjjd
変数tを通してアクセスできなくなるだけだな。
702デフォルトの名無しさん
2018/08/27(月) 21:06:10.81ID:ngNgILlM
threadは、main thread同様garbage collectionのrootとして扱われるそうなので、生存しまする
703デフォルトの名無しさん
2018/08/28(火) 10:11:17.88ID:nen4cHNL
ただし、daemonthreadは除く。
704デフォルトの名無しさん
2018/08/29(水) 16:44:32.01ID:V/7UzzKh
Eclipseとかいう汚物にJavaFXを入れたく思いマーケットプレースでjavafxで出てくるe(fx)clipseをインストールしようとしたところ長時間待たされた挙句にエラーが出ました
どうすればいいでしょうか?
705デフォルトの名無しさん
2018/08/29(水) 16:50:03.76ID:V/7UzzKh
http://imgur.com/a/RljuXDF
706デフォルトの名無しさん
2018/08/29(水) 18:31:24.16ID:bzaK3e7y
>>704
JavaFXは廃止されたから使っちゃダメ
707デフォルトの名無しさん
2018/08/29(水) 18:35:28.97ID:bZ2D0xRL
諦めなさい
708デフォルトの名無しさん
2018/08/29(水) 20:23:25.71ID:QbSkJrbm
マジで?!廃止されるのswingかと思ってた!
709デフォルトの名無しさん
2018/08/29(水) 20:35:24.50ID:LfUbbQ2v
厳密には廃止ではなく分離とされてる。
あとJava8が2020年までサポートだから、2020年までは1.8系のjreがあれば使える。
710デフォルトの名無しさん
2018/08/29(水) 20:44:48.17ID:LfUbbQ2v
そもそもJavaの未来はどうなるのか。JREが有償化される。
OpenJDKはインストーラや自動アップデータが提供されるのか。

JavaFXは単体のライブラリとして独立できるはずだが、誰かがやるのかどうか。
現状だと、何やら面倒なインストール手順が必要なようで、
デスクトップアプリに使われるであろうJavaFXにとって致命的なはず。
mavenとかを使ってアプリに気軽に同梱できるものになればいいのだが。
711デフォルトの名無しさん
2018/08/29(水) 20:48:44.47ID:zRPnCBM0
JavaFX will continue to be supported in the future by the company Gluon as a downloadable module in addition to the JDK.
712デフォルトの名無しさん
2018/08/29(水) 20:49:34.59ID:zRPnCBM0
https://gluonhq.com/
713デフォルトの名無しさん
2018/08/29(水) 20:51:13.97ID:zRPnCBM0
このスレではJavaFXをオヌヌメします
JavaFXをオヌヌメしないのはoracleのコウサクイン
714デフォルトの名無しさん
2018/08/29(水) 21:01:34.66ID:CmXgIFV4
JavaでデスクトップのGUI環境自体どうなんだ?
715デフォルトの名無しさん
2018/08/29(水) 21:01:39.61ID:LfUbbQ2v
downloadable moduleってなんだろうな。

そもそも後方互換性を捨てて高速リリースとか言ってるのが怖くて仕方ない。
開発者が最新版に対応したって、エンドユーザーが最新版を持ってるか分からない。
どのバージョンに向けて作ればいいんだ?
716デフォルトの名無しさん
2018/08/29(水) 21:02:52.35ID:LfUbbQ2v
いやクロスプラットフォームGUIという概念は重要でしょ。
717デフォルトの名無しさん
2018/08/29(水) 21:07:16.02ID:LfUbbQ2v
Java8+JavaFXは2022年までサポートされるってかいてあるな
だからもう少し先の話ではあるし、人気のある環境だからそれまでに整備されるだろう。
718デフォルトの名無しさん
2018/08/29(水) 21:13:19.32ID:LfUbbQ2v
AndroidでもJavaFX動くみたいだし、クロスプラットフォーム性という面で
やはり一番優れてるよJavaは

ちなみにJavaやKotlinのコードをネイティブコードにするコンパイラがあって
iPhoneでもJavaやKotlinのソースコードで動かせるみたいだぞ
ちょっと前までiPhone用のJVMもあったんだけどな
719デフォルトの名無しさん
2018/08/29(水) 21:16:31.19ID:LfUbbQ2v
https://www.oracle.com/technetwork/jp/java/eol-135779-ja.html
Java8 個人ユーザーの公式アップデート終了日 2020-12

このときまでにOpenJDKやGluonのインストーラが登場していなければ困る。
そしてそれが自動アップデータを搭載していなければ。

ところが自動アップデータ搭載されてても、後方互換性を捨てたアップデートを勝手にされると困るw
困りまくりだ
720デフォルトの名無しさん
2018/08/29(水) 21:22:30.87ID:LfUbbQ2v
OpenJDKに自動アップデータが提供されたとする。

OpenJDKのアップデートがアプリのアップデートを先行する
→勝手に互換性を捨てたアップデートが来てアプリが動かなくなる。
アプリを最新版に対応してリリースしてもアプリのアップデータは動かないw

アプリのアップデートが先行する
→エンドユーザーのOpenJDKが古くて動作しない

だから、互換性を捨てて高速リリースとかいってるのはほとんど意図的なJava界隈への攻撃。
721デフォルトの名無しさん
2018/08/29(水) 21:26:20.75ID:LfUbbQ2v
一番欲しいのは、Java8のサポート継続&自動アップデート継続&互換性の維持。
APIを変更するならdeprecatedの期間をある程度とってくれないと無理。
高速リリースがうれしい人が居るのか?
722デフォルトの名無しさん
2018/08/29(水) 21:41:37.34ID:zRPnCBM0
.netと同じ道を歩んでるようにみえて
microsoftの.netはMITライセンス
723デフォルトの名無しさん
2018/08/29(水) 21:46:25.67ID:zRPnCBM0
javaはもうおしまい
724デフォルトの名無しさん
2018/08/29(水) 21:59:08.27ID:LfUbbQ2v
OpenJDKのリンク例外つきGPLは十分だろ。
OpenJDKにおいて、互換性を考慮したアップデートが行われ、自動アップデータが提供されるか。
GPLだから誰でもそのプロジェクトをやれる。
725デフォルトの名無しさん
2018/08/29(水) 22:00:44.61ID:zRPnCBM0
mitライセンス、bsdライセンス以外は不要
726デフォルトの名無しさん
2018/08/29(水) 22:02:20.50ID:LfUbbQ2v
>>720の解決法はこうだ

OpenJDKの次期バージョンで現在のアプリが問題を起こすかチェックする。
→問題があるならOpenJDKがアップデートされる前にアプリをアップデートしておく。
そのアプリの修正は、現在のOpenJDKと次のOpenJDK両方で動作する事を確認する。
727デフォルトの名無しさん
2018/08/29(水) 22:04:08.95ID:zRPnCBM0
javaを棄てれば解決
728デフォルトの名無しさん
2018/08/29(水) 22:07:18.69ID:LfUbbQ2v
もうJavaで書いたアプリがあるし、Javaに慣れてるから。
それに、.NETに移ったとして、同じ事が起こらない保証があるのか?

実は俺はこの問題に対する根本的解決策を知ってる。うまくいくかは知らないが
それも含めて考えると、やはりJavaを続けようと思える。
729デフォルトの名無しさん
2018/08/29(水) 22:13:52.55ID:bGCoQXPI
>>726
どうチェックすんの?
730デフォルトの名無しさん
2018/08/29(水) 22:31:53.32ID:LfUbbQ2v
リリース前でもビルドが公開されてるだろうと思ったけど。
プラットフォーム系でプレビューリリースとかアーリーアクセス的なものを提供して
予め対応してもらおうというアイデアは一般的なもので、オラクルがOpenJDKをサポートするなら
たぶんやるだろう、というか既にやってると思うけど。

JDK 11 Early-Access Builds
http://jdk.java.net/11/
731デフォルトの名無しさん
2018/08/30(木) 00:12:55.41ID:2PPyJx3c
大前提の認識が間違ってるぞ。
Java11以降においては無償のスタンドアロンなJREは無くなるんだよ。
デスクトップ用途なら開発者自身がアプリにJavaランタイムを組み込んで配布することが推奨される。
そして、OpenJDKはエンドユーザーが自分で個人端末にインストールするようなことを想定したものではない。
開発者がシステムに元々入っているのOpenJDKに依存してよいのは、業務システムなどで
開発者が完全に実行環境のOpenJDKディストリビューションのバージョンや構成を制御できる場合のみだ。
732デフォルトの名無しさん
2018/08/30(木) 00:46:49.22ID:XYFOdQAI
https://docs.oracle.com/javase/jp/8/docs/technotes/guides/deploy/self-contained-packaging.html#A1307236
>自己完結型アプリケーション・パッケージは、プラットフォーム固有で、ビルドしたシステムと同じシステムにのみ作成できます。

各プラットフォーム向けにビルドしなきゃいけないようだ

>自己完結型アプリケーションには、自動更新の組込みサポートがありません。

アプリのアップデータで簡単にアップデートできるなら問題ではない。

アプリへのJREの組み込み手段がサポートされて、
そこでJavaFXがサポートされるなら、問題無い気がする。
JavaFXはそこでサポートされなきゃ意味が無いし。
733デフォルトの名無しさん
2018/08/30(木) 00:57:29.40ID:XYFOdQAI
>Java SE 8は、デスクトップ展開を対象とした最後のJava SEリリースです(Java Web StartやスタンドアロンシステムJREなど)。

こういう文言もあるから、Java11以降、OpenJDKでJavaFXみたいな
デスクトップ展開がサポートされるのかどうか。Java8最終版を組み込んで使い続けるか
Gluonに期待するか。
734デフォルトの名無しさん
2018/08/30(木) 12:01:02.32ID:rv0GkEtx
初心者だけどJavaFXでFTPサーバーとやりとりして追加したり一覧表示してダウンロードしたりするwindows用アプリを作りたいんだ
apache commons netというライブラリを使ってやろうと思うけどviewにファイルを入れるにはどうすれば良いんだろう?
入れた後はjavaからviewをインスタンス化してその中の変数の値(ファイルのパスかな?)を取り出してって感じでなんとかなりそうだけど...
本当に何も分からない状態で、何か良い勉強方法は無いかな?
FTPサーバーについても素人に近いよ
735デフォルトの名無しさん
2018/08/30(木) 12:06:53.68ID:Qomnyyns
素人過ぎて話にならないな
736デフォルトの名無しさん
2018/08/30(木) 12:59:41.93ID:A5Nytyjy
そういや今はJavaは標準のライブラリでFTP接続してアップロードとか楽にできるクラスあるのかな?
ダウンロードだけはURLクラスでできるの知ってるが。
737デフォルトの名無しさん
2018/08/30(木) 21:21:59.87ID:XYFOdQAI
viewにファイルを入れるってなに?
TableViewとかTreeViewクラスにアイテムを表示する方法ならチュートリアルあるでしょ
738デフォルトの名無しさん
2018/08/30(木) 21:23:54.73ID:XYFOdQAI
ああ解読できたかも
要するにGUIにアプリから値を設定、ないし
アプリからGUIに値を設定するにはってことでしょ?
てかGUIってそういう使い方しかないし。
そんなのぐぐればいくらでも出てくるのでは。
https://docs.oracle.com/javase/jp/8/javafx/user-interface-tutorial/table-view.htm
739デフォルトの名無しさん
2018/08/30(木) 22:12:54.72ID:XYFOdQAI
訂正
人→GUI→アプリ
アプリ→GUI→人
この流れがやりたいってことだとおもわれる
740デフォルトの名無しさん
2018/08/30(木) 23:38:43.13ID:8yCH8Wm6
>>739
そうそんな感じ
全然イメージ出来ん
どうやって起動させるの?
でも公式ドキュメント見やすそうだねありがとう
741デフォルトの名無しさん
2018/08/31(金) 00:25:08.31ID:tMQ4ovnC
Project Loomを急ぐんだ!
はやく第一級継続を書かせるんだ。
どうか限定じゃありませんように
742デフォルトの名無しさん
2018/08/31(金) 01:00:04.22ID:CSMn2BX4
イメージできんってもなあ・・・
GUI部品クラスが提供されてて、何らかの値の設定方法、取得方法があるだけじゃん。
StageやSceneクラスという、GUI全体を意味するクラスも提供されてる。
そこにGUI部品を積み上げてくだけだぞ。
743デフォルトの名無しさん
2018/08/31(金) 01:09:01.54ID:CSMn2BX4
起動って・・・IDEのプロジェクトアーキテクチャの選択でfx系選べば何もしなくても
GUI立ち上がるでしょ
744デフォルトの名無しさん
2018/08/31(金) 08:28:19.25ID:XwawDSyV
>>743
webアプリならサーバー起動させてコントローラにある接続用のurlをブラウザに入れれば始めれるじゃん
これはメイン関数なくても行けるんでしょ?起動ボタンあるの?
745デフォルトの名無しさん
2018/08/31(金) 09:09:35.21ID:G30RIEnt
何かの障害持ちだと理解の過程が通常と違う
彼らにネットは不向きだと思う
746デフォルトの名無しさん
2018/08/31(金) 10:00:14.28ID:lv4qnKPx
お前らすぐそうやって……
747デフォルトの名無しさん
2018/08/31(金) 10:43:19.14ID:s5ujzdS3
なんというか、Windowsならftpアプリなんかわざわざ作らんでもWebブラウザやエクスプローラでURL指定して開いちゃえばいいような気がするが・・・

あ、とにかく作ってみたいのか。
748デフォルトの名無しさん
2018/08/31(金) 20:47:37.72ID:jQ6ZKbRR
>>747
ピュアな ftp ならプロトコルも対して難しくもないからネットワークの練習にはちょうどいい
749デフォルトの名無しさん
2018/09/01(土) 00:04:26.42ID:kDvfeVra
gluonとopenjfxが両方javafx11ビルドしてるけどこれ同じバイナリだろうか?
750デフォルトの名無しさん
2018/09/01(土) 10:46:03.05ID:faUndSgH
>>5
8のreplaceは正規表現を使ってて馬鹿みたいに遅いから気をつけろ
751デフォルトの名無しさん
2018/09/01(土) 10:50:10.09ID:8XWt4TWp
>>749
JavaFXはもうJavaの一部ではないのでこのスレのスコープ外だよ
専用スレか公式フォーラムで聞きなさい
752デフォルトの名無しさん
2018/09/01(土) 11:18:35.81ID:4jvmXnIZ
>>750
それはreplaceFirst()だろ
753デフォルトの名無しさん
2018/09/01(土) 13:34:55.66ID:tt1XTLVx
調べてみた

@since 1.5
replace(CharSequence target, CharSequence replacement)

@since 1.4
replaceAll(String regex, String replacement)

@since 1.4
replaceFirst(String regex, String replacement)

replaceは正規表現使ってなかった
754デフォルトの名無しさん
2018/09/01(土) 22:52:18.30ID:6Yw3sf7c
>>751
元からjavaの一部じゃないから
755デフォルトの名無しさん
2018/09/21(金) 23:35:33.58ID:6Tz3djX7
資格に関する質問ってしてもOK?
Oracleの「Java SE 8 Silver」の試験勉強をしようと思うんだけど、参考書に迷ってる
4月からjavaを学習してる程度の人が「徹底攻略 Java SE 8 Silver 問題集」をやるのは難易度高い?

書いてて宣伝っぽい文章になったのはごめん
756デフォルトの名無しさん
2018/09/22(土) 07:41:38.75ID:r0UgUCyq
NG
757デフォルトの名無しさん
2018/09/27(木) 05:16:42.90ID:lxTijohv
java SE 11 キテター
758デフォルトの名無しさん
2018/09/27(木) 09:12:53.75ID:rZRe7wqK
有料だから注意しろよ
無料で落とせるやつはちゃんとLAに「評価と開発以外の目的に使うな」と書かれてる
そんな大事なことをダウンロードページに明記してなくてLA読まないと分からないようにしてるのは流石天下のオラクル様ですわ
759デフォルトの名無しさん
2018/09/27(木) 23:41:43.99ID:vISpszsR
OpenJDK11があるじゃん。そのうちAdapt OpenJDK11もでるだろ。
760デフォルトの名無しさん
2018/09/28(金) 11:03:15.31ID:2WodH1m0
JDK11が多すぎて混乱しそう
761デフォルトの名無しさん
2018/09/29(土) 00:56:04.15ID:kyybLiyB
だいたいダウンロードページにOTN開発者ライセンスに変わったって書いてあるし
762デフォルトの名無しさん
2018/09/29(土) 18:23:46.96ID:o+PWeM92
JavaでJson読ませるの、どのライブラリが使い勝手いい?
なんかいろいろありすぎて困る
763デフォルトの名無しさん
2018/09/29(土) 22:43:49.26ID:tgpIib8y
>>762
JSR 374がjaxpに似せてるから学習コスト低いよ。
https://javaee.github.io/jsonp/
764デフォルトの名無しさん
2018/10/03(水) 01:25:23.37ID:9ie+5iaR
質問です。
下記のコードで、
https://ideone.com/0RbRo7
出力が0と0の間で2行開いてしまっているのですが、これはなぜでしょうか?
System.out.printlnをSystem.out.printにすると空白は出ないのですが…。
765デフォルトの名無しさん
2018/10/03(水) 01:59:25.15ID:VtwiWIya
区切り文字を{},の3文字にしてsplitしたからでしょ。
766デフォルトの名無しさん
2018/10/03(水) 07:18:02.71ID:3B507mk5
>>764
空文字列が入ってるから、フィルタするなりで
https://paiza.io/projects/6hDp8xbY-QC0oLgrDBj0Sw?language=java
767デフォルトの名無しさん
2018/10/03(水) 20:33:31.74ID:Yoi2jO2M
正規表現か書式を見直したほうがいいんじゃないの?
768764
2018/10/04(木) 00:11:26.33ID:smFA2GkF
>>765
>>766
>>767
返信ありがとうございました。
また質問させて頂くかもしれませんが、よろしければその時もまたお願いします。
769デフォルトの名無しさん
2018/10/04(木) 11:58:36.08ID:YAdWzVOj
http://acro-engineer.hatenablog.com/entry/2013/10/17/113216
>MyProtocolClientHandler extends ChannelInboundHandlerAdapter

Inbound 受信時に使用される処理
Outbound 送信時に使用される処理
という理解なんだけど、クライアント側のInboundはレスポンスを受信するときに動くということ?
でも送信時のコードが書かれてるようで、分からない。
NettyのInbound, Outboundとは?
770デフォルトの名無しさん
2018/10/04(木) 13:51:17.62ID:k+Ofe9B1
Inbound:中国人の観光客
Outbound:日本人の海外旅行
771デフォルトの名無しさん
2018/10/04(木) 14:09:27.89ID:YAdWzVOj
ああわかりました
channelActiveは返信等を受け付けれるような状態になった時に呼び出されて、
それはinbound,outbound関係無いってことですね
パイプラインのハンドラーというより、メッセージ送信の
コントローラー的なものがそこに書かれてるということですね
たまたまハンドラのイベントにそういう処理が書かれてる
772デフォルトの名無しさん
2018/10/06(土) 11:51:41.21ID:mwcXVcDx
https://netty.io/4.0/api/io/netty/channel/ChannelDuplexHandler.html
> intercept operations and also state updates

この部分どういう意味ですか?intercept operationとは?

DuplexHandlerはパイプライン上でどういう順序で実行されますか?
受信時と送信時で実行して欲しい順番が異なる場合どうすれば?
773デフォルトの名無しさん
2018/10/06(土) 19:22:07.94ID:3cjxIhmP
Java SE API & ドキュメント
https://www.oracle.com/technetwork/jp/java/javase/documentation/api-jsp-316041-ja.html


Java11の日本語ドキュメントはいつごろ出てくるのでしょうか?
774デフォルトの名無しさん
2018/10/08(月) 07:44:21.00ID:fU+WK0rO
bronzeの問題集やっててイライラしてきたんだけど、問題になるようなコードは基本的に書くなってことでいいんですよね?
&&||の右側にインクリメント演算子書いたから場合によって評価されないとかif文の中身1行しかないからカッコ省略したら読みづらくなってるとか
問題として出されるくらいヒューマンエラーを産みかねないってことでOK?
775デフォルトの名無しさん
2018/10/08(月) 08:33:34.55ID:QRotEnod
読めるようになれってことじゃないの?
>&&||の右側にインクリメント演算子書いたから場合によって評価されない
例えばこれは、
if(a != null && a.get()>1)
こんな行があった時に2つ目の演算でNPE起きない事が保証されると分かれ、ということだろう
書くな、じゃないよ。こんなコードたくさんあるし、こう書かないと冗長になる
776デフォルトの名無しさん
2018/10/08(月) 08:56:01.75ID:fU+WK0rO
>>775
演算子のほうはちゃんと意味考えて書けよってことですよね?って聞いたつもりだったんです、言葉足らずでした
評価されない場合使って簡潔に書くのはよくあることなんですかね

中身1文ブロックのカッコ省略のメリットがさっぱりわからないんですが見た目がすっきりするだけですかね……?
どこ読んでもあえて推奨されてることがなくて、ブログのコメント欄とかはだいたいケンカになってるんでこれはあまり触れてはいけないアレなんでしょうか
777デフォルトの名無しさん
2018/10/08(月) 08:58:46.13ID:QRotEnod
まあそれは簡単に言うと
開発時のソースコードはデバッグ出力の行があったりするんだけど
リリース時はデバッグ出力の行を文字列置換で一掃したりする。で、もし
if(...)
debugLog(...);

こういう行があったとして、debugLog(...);を置換で削除したら、エラーになる。
if(...){
debugLog(...);
}
これは置換しても大丈夫。

だから、括弧無しは処理部分を置換する事があるか、による
経験上置換するのはデバッグ系コードだけ
778デフォルトの名無しさん
2018/10/08(月) 09:13:02.08ID:fU+WK0rO
書き換えるつもりがない1行のはカッコ省略で書くと読みやすい、あとあと置換するdebugLog(…)とかは消したときに空のブロックになるように{}書いとく、ってことでしょうか?
779デフォルトの名無しさん
2018/10/08(月) 09:51:13.29ID:UTHfaM17
>>777
嘘をついてはいけない
デバッグ出力を置換で消す場合は ";" に置き換えれば良いので
{} の有無など関係ない
780デフォルトの名無しさん
2018/10/08(月) 09:55:23.16ID:QRotEnod
>>779
それは気付いてなかったw

じゃあ括弧無しのデメリットは特に思いつかない
781デフォルトの名無しさん
2018/10/08(月) 10:26:38.83ID:2rmJ0ycQ
>>774
落ち着け、深呼吸しろ
782デフォルトの名無しさん
2018/10/08(月) 11:34:11.42ID:H/mp1NsO
>>774-776
&&・||の右側に、副作用があったら危険!
副作用とは、何かの状態を変えること

ぱっと見ただけでは、副作用が実行されるかされないのかが、わかりにくい。
右側に、副作用が無ければよいけど

if-else 文なんかより可読性が低いから、誤解しやすい

すべての言語で、言われている。
MISRA-C とか、C言語のルールでも、決められている
783デフォルトの名無しさん
2018/10/08(月) 12:02:59.41ID:QRotEnod
副作用があるかもしれないから、という理由なら条件分岐関係無くない?
if(a == null)
return;
if(a.get()<=1)
return;
これでget()呼ぶのも副作用あるかもしれないよね?
784デフォルトの名無しさん
2018/10/08(月) 12:20:29.15ID:tKqgyITq
>>783
別スレッドによって a が null にされてしまう可能性はあるな。だいたいの場合はそういうスレッドがないか、
またはあると分かっているならロックしてからアクセスするように作るから問題にならないんだろうけど。
785デフォルトの名無しさん
2018/10/08(月) 12:26:37.42ID:QRotEnod
ん?こういう理解だけど。参照が渡されてるだけだから
別スレッドが参照を破棄しても関係ないぞ

func1(Object a){
if(a == null)
return;
a.get();//絶対にNPEが起きないマルチスレッド無関係
}
func2(Object a){
a = null;
}
786デフォルトの名無しさん
2018/10/08(月) 12:29:19.11ID:r0dViXxq
そもそも式の中で副作用のある関数を呼び出すのは危険
&&や||は評価順序が決まってるからまだマシな方でそれ以外の演算子だと評価順序もどうなるかわからんし
787デフォルトの名無しさん
2018/10/08(月) 12:32:49.91ID:QRotEnod
でも副作用がある関数はset,write,update,createとか大体それっぽい名前ついてるし
分かるでしょ?
というか情報処理はCRUDだからcreate,update,delete的な名前が必ずついてる

副作用を広くとらえればログ出力も副作用だけど、そういうのは問題無い
getは副作用無しか問題無い副作用のみ、CRUDのRに相当するものだから

だからコーディング規約を作るなら、CRUDを意識させるようなものであるべきで、
真理式でメソッドを呼び出すなとかいうわけわからん規約を作るべきではない
CRUDのうちRのみ呼び出していい、とすべき
788デフォルトの名無しさん
2018/10/08(月) 12:37:02.60ID:QRotEnod
ぶっちゃけCUDでも呼び出していい
結局、意味を捉えて間違えないように書けということでしかない
コーディング規約をどういじくってもそこから逃げれるわけじゃない
789デフォルトの名無しさん
2018/10/08(月) 12:43:00.19ID:wqzMNkqt
if (a == 0 || b++ < 1) {
}
こういう書き方をすると一見bが常にインクリメントされるように誤解されやすいからやめとけよって言ってるだけでしょ。
790デフォルトの名無しさん
2018/10/08(月) 12:48:22.90ID:QRotEnod
真理式に複数の演算があって、かつ一部に副作用があるとまずい、ってことか
791デフォルトの名無しさん
2018/10/08(月) 13:19:09.60ID:H/mp1NsO
副作用・副作用完了点
評価順序・マクロ

MISRA-C でも、こういう間違いやすい所の、ルールは厳しい
792デフォルトの名無しさん
2018/10/08(月) 14:53:07.06ID:tKqgyITq
>>785
それならないな。

残るは get() して 1 以下なのを検査した直後に別スレッドによって a の状態が変化して get() が返す値が変わるとかかな。
(そんなの想定の範囲内なら問題ないが)。
793デフォルトの名無しさん
2018/10/10(水) 01:35:05.39ID:gneY7b7h
adopt openjdkのjdk11リリースされたじゃん。
https://adoptopenjdk.net/?variant=openjdk11&jvmVariant=hotspot

LTSだぞ。
https://adoptopenjdk.net/support.html?variant=openjdk11&jvmVariant=hotspot
794デフォルトの名無しさん
2018/10/12(金) 06:07:22.65ID:LkXNeCMg
Java 11のJREって無いんですか?
795デフォルトの名無しさん
2018/10/12(金) 08:34:35.39ID:kCbZI2NA
クライアントJREは廃止された
今現在、要JREとして世に出ているアプリをエンドユーザーが実行する公式な方法は存在しない(自己責任で開発環境を入れるしかない)
今後のクライアントサイドJavaアプリの唯一の配布方法は、JDKに含まれるコマンドラインツールを使用して
プラットフォーム毎に実行環境とアプリを同梱した実行可能なパッケージを作ることである
クライアントサイドに関しては、もはやJavaはバイナリ互換ではない
OracleはクライアントサイドJavaを段階的に廃止しようとしており、新規には決して使ってはならない
796デフォルトの名無しさん
2018/10/12(金) 09:00:21.36ID:U0bHLz7N
>>793
当てにならんよこんなの
こいつらはただのビルド屋で、自分達でソースに手を入れる体制はない
次のバージョンのOpenJDKがリリースされた後もOpenJDK公式リポジトリの旧バージョンのソースに対してLTS向けのパッチが提供されるかどうかは、
オラクル様の温情次第
797デフォルトの名無しさん
2018/10/12(金) 20:45:34.37ID:LkXNeCMg
>>795
サンクス
798デフォルトの名無しさん
2018/10/22(月) 16:04:20.83ID:1yTQ4g+U
何時の間にかvar使えるようになってたな
799デフォルトの名無しさん
2018/10/22(月) 23:21:36.65ID:KYkLOyp1
いないいないvar
800デフォルトの名無しさん
2018/10/22(月) 23:32:16.95ID:sd28W5TQ
Javaに型推論が無いことをディスられると、意識高い系Javaerさん達は
ローカル変数の型もinterfaceにするべきだからそんなもん要らんと上から目線で反論してたけど
梯子外されちゃって哀れだな
801デフォルトの名無しさん
2018/10/23(火) 03:01:58.72ID:IDcT8U1C
これ2じゃなくて1が出力される。何で?
@Test
public void mapObjTest() {
Map<Long, Integer> m = new HashMap<>();
Long key = 1L;
m.put(key, 1);
Integer val = m.get(key);
val++;
System.out.println(m.get(key));
}
802デフォルトの名無しさん
2018/10/23(火) 03:05:36.61ID:IDcT8U1C
悪く言われるけどクライアントサイドについてJRE同梱は良いんじゃない?
もはやファイルサイズは小さな問題だし、JREのバージョン違いでの誤作動を減らせる。
クライアントサイドJavaがそれで悪くなったと思わないけどな、俺は
JavaFXが外されたのは悪くなったと思うけど、でもどうせ同梱する作業するときに入れるんだし
妥当な変化じゃないの?
803デフォルトの名無しさん
2018/10/23(火) 05:51:34.87ID:6lDUuVuA
>>801
val++は↓これと同じ
val = val + 1
変数valに値を代入してる

↓こう書けば値は2になる、value.valueはドット演算子を使ってオブジェクトの状態を変えてる

public class Main {
 public static void main(String[] args) {
  Map<Integer, Value> map = new HashMap<>();
  map.put(1, new Value(1));

  Value value = map.get(1);
  value.value++;

  System.out.println(value.value);
 }
}

class Value {
 int value;

 Value(int value) {
  this.value = value;
 }
}

変数に対する代入と
オブジェクトの状態を変えることとは
異なる操作なんやで
804デフォルトの名無しさん
2018/10/23(火) 07:00:55.65ID:6lDUuVuA
変数への操作か、オブジェクトへの操作かを区別する必要があって

それぞれの違いはこんな感じ
★★Java質問・相談スレッド181★★ 	->画像>5枚
805デフォルトの名無しさん
2018/10/23(火) 07:55:16.19ID:ukFWTvzy
>>801
Integerをインクリメントした瞬間に新しくIntegerインスタンスが生成されるからだな

詳しくはオートボクシング、インクリメントとかでググるといい
806デフォルトの名無しさん
2018/10/23(火) 08:11:13.69ID:ukFWTvzy
要するにval++は↓の省略系
val = new Integer(val.intValue()+1)
807デフォルトの名無しさん
2018/10/23(火) 09:23:24.20ID:cDc5Fd7g
>>802
悪くはなってないよね
0に何を掛けても0だからな
808デフォルトの名無しさん
2018/10/23(火) 09:42:44.32ID:AS/7ikV7
すごーい
809デフォルトの名無しさん
2018/10/23(火) 23:29:12.49ID:baThXOF4
>>802
動的リンクしまくってるからFullJRE前提だわ。
810デフォルトの名無しさん
2018/10/25(木) 05:33:58.31ID:KXlarInO
Object#equals()
public boolean equals(Object obj) {
return (this == obj);
}
なんでreturn this == obj;じゃなく括弧で囲ってるの?
811デフォルトの名無しさん
2018/10/25(木) 09:55:01.19ID:hw/Q19JU
囲ってみたい気分だったのだろう
812デフォルトの名無しさん
2018/10/25(木) 11:06:47.39ID:jwOWZyFv
return文に記述された式が複雑なときは括弧で括ったほうがmore readableだから推奨してる人のほうが多いように思うけど、
this == objが複雑かどうかは微妙だね。

でも自分なら括弧つけるかな。
理由は、括弧でくくることで、等式が値を返す数式として使われていることを明示できるから。
813デフォルトの名無しさん
2018/10/25(木) 11:34:47.74ID:r31i+JfI
Javaの最黎期に書かれたものだろうから、コードスタイルが今の基準からすれば変でもおかしくない
今では一般的には括弧はつけないのが主流だね
814デフォルトの名無しさん
2018/10/25(木) 12:09:47.24ID:VLidr5ui
最近はアローで書いちゃうから一行だしな
815デフォルトの名無しさん
2018/10/25(木) 14:00:36.81ID:oNBD1gf9
計算がよくわからん時は、まず括弧で囲えって、
今でも教える人がいるからな
816デフォルトの名無しさん
2018/10/25(木) 14:21:09.91ID:6wYT/HJT
かっこいい、かっこわるい?
817デフォルトの名無しさん
2018/10/25(木) 18:46:51.45ID:zmVgc+jl
>>815
演算子の優先順位の話なら不要だと思ってもあえてつけたままにすることはあるな
+ と * とかならいいけどビット演算子とか言語によって違う奴とかもあるしね
818デフォルトの名無しさん
2018/10/27(土) 15:01:56.02ID:1x6RXWmG
javaでaccessdbと接続するようなソフト作ってみたいんですが
フレームワークって必要ですか
ちょっとフレームワーク自体よくわかってないです。
規模は社内で5人くらいで使用します。
819デフォルトの名無しさん
2018/10/27(土) 19:11:03.52ID:RbshV9yz
検索すれば出てくるけど
ハマることが多そうだからオススメしない
Javaが要件なのかAccessが要件なのかわからんが
820デフォルトの名無しさん
2018/10/27(土) 19:15:14.94ID:LS+3DLFQ
>>812
Webで避けて通れないJavaScriptのせいとかもあるな。
JavaScriptのセミコロン省略可能はいまだに嵌る。
821デフォルトの名無しさん
2018/10/27(土) 19:16:29.43ID:ZlRq8doU
Ruby on Rails, Node.js などでは、開発環境では、SQLite を使うけど
822デフォルトの名無しさん
2018/10/27(土) 22:29:57.54ID:229rJcCX
>>802
Write once,Run anywhere

配布しようと思ったら環境に応じたJRE添付してやらないといけないんだよね?
根本理念に喧嘩売ってる気がする
823デフォルトの名無しさん
2018/10/28(日) 03:09:10.51ID:7tRDHbkL
>>822
バイナリ互換じゃなくなるけどソースコード互換ではあるので・・・

JavaでGUIアプリ作ってネットで配布する場合、エンドユーザーの環境に依存するの辛いでしょ
むしろJRE同梱したい、と思うのが普通だよ

JRE同梱によるファイルサイズ増加はもはや問題にならないし
どうせJRE同梱作業するなら、その時にJavaFX入れれば良いので、分離されたのも妥当な気がするし
むしろクライアントサイドで進歩してると言っても良いのでは
824デフォルトの名無しさん
2018/10/28(日) 03:59:58.74ID:WcIuuSyz
>JavaでGUIアプリ作ってネットで配布する場合、エンドユーザーの環境に依存するの辛いでしょ
JRE同梱だと回避できて、JARだけだとダメな問題ってどういうのがあるん?
実際にクライアントの環境が異なってたらどうやって提供しようが辛さは一緒におもえる

だいたいJRE同梱なんかされたら何仕込まれてもわからん
サンドボックスのしっかりした仕組みがあるわけじゃなし
そもそもWindowsとかOS側が信用できない

共通のJavaだから信頼感あったのに
825デフォルトの名無しさん
2018/10/28(日) 04:08:51.40ID:z9u8vCUJ
今どき.NETですらランタイム同梱する流れだからな
826デフォルトの名無しさん
2018/10/28(日) 04:22:29.53ID:WcIuuSyz
MSはユーザーの個人情報盗みたい側だし
827デフォルトの名無しさん
2018/10/28(日) 04:26:41.29ID:7tRDHbkL
>>824
何言ってるか良く分からんが、JRE同梱すればJREのバージョン違いによる問題が無くなるだろう。
いちいちJREをインストールしてもらう手間も無くなる。
例えば一部のJREはJavaFXを同梱しているが、一部はそうではない。

何仕込まれても、ってのは良く分からんが
スタンドアロンアプリでもセキュリティマネージャーは動くはず
828デフォルトの名無しさん
2018/10/28(日) 04:32:23.62ID:7tRDHbkL
確かにこれまでと比べると、オラクルのサイトからJRE落としてそれで動かしてたのに比べると
アプリ毎にJRE同梱されちゃうとおかしなネイティブ実行ファイルが同梱されてないか、という問題はある

しかし同梱されたプラットフォーム固有の実行ファイルはハッシュ値とかで適切なファイルかを照合できるはず
あとそもそもバイトコード部分でも相当な処理が可能だから、さほどセキュリティリスクが変わると思わない

ネットからプログラムを落とすなら、オープンソースか信頼できる大御所か
これまでと変わらないのでは
829デフォルトの名無しさん
2018/10/28(日) 04:34:29.37ID:z9u8vCUJ
>>826
ランタイム同梱の意味わかってる?
830デフォルトの名無しさん
2018/10/28(日) 04:36:35.55ID:WcIuuSyz
問題はJREのバージョンか
たしかに多少の問題はあるが

JRE同梱必須にしたらJavaの目指していた未来と可能性そのものを切り捨てることになる
そうできるってのとそうしなきゃいけないってのはえらい違い
831デフォルトの名無しさん
2018/10/28(日) 04:42:15.05ID:7tRDHbkL
JREを同梱しないと、10年経ったら動かなくなってると思う

クライアントサイドはJRE同梱で作れと強制する事は、そんな悪い事じゃないと思う
そうしないとJavaがバージョンアップしづらい問題もあるから、オラクルはそうしたいんだろう
832デフォルトの名無しさん
2018/10/28(日) 04:46:39.09ID:vBzuIBdi
元々Write once,Test anywhere

って失望されてたじゃ無いか。。。
HTML5も同じだけど、理想と現実は遥かに遠い隔たりがある。
833デフォルトの名無しさん
2018/10/28(日) 04:48:23.37ID:GS4HIDpq
スタティックリンクの肥大した実行ファイルと一緒だよね
Write Onceで全プラットフォームで動いたら開発者としては理想じゃないかな
834デフォルトの名無しさん
2018/10/28(日) 04:49:04.83ID:7tRDHbkL
オラクルはJavaを高速バージョンアップしたいみたいな事も言ってるが、
一連の話は整合性がある
サーバーサイドはエンジニアが管理しててJRE固定できる、
クライアントサイドはJRE同梱。
現状だとJavaから古いAPIを削除したら多くのアプリが動かなくなるから、
移行期間を作ってそのようなアプリが減るのを待つ。
そうしないとJavaに未来が無いという判断は、理解できなくない。
835デフォルトの名無しさん
2018/10/28(日) 05:01:48.54ID:WcIuuSyz
じぶんとこのOracleDBは枯れまくってても平気なくせに
836デフォルトの名無しさん
2018/10/28(日) 05:47:19.26ID:D9Gt7gmT
改変されたJREを同梱されたら終わりではないか?
837デフォルトの名無しさん
2018/10/28(日) 05:51:56.29ID:7tRDHbkL
だから、同梱されたファイルのハッシュ値調べればわかるし、
アンチウイルスだって有名な実行ファイルについてハッシュ値を知識として持っておくべき。
オープンソースは誰かが検証すべき。
で、もともとバイトコード部分でも相当な事ができるからセキュリティリスクは変化してない。
838デフォルトの名無しさん
2018/10/28(日) 14:47:49.66ID:Ii5bdv+P
クラス変数にもvar使わせてほしいよな
無名クラスにリフレクションで値を代入するフレームワークとかでてきそうだし

class Hoge {
public var xyz = new Object() { int x, y, x };
}
839デフォルトの名無しさん
2018/10/28(日) 23:50:32.90ID:vn58j50+
それをやると型を特定するために延々先を辿らなきゃいけなくなるんだ…
840デフォルトの名無しさん
2018/10/28(日) 23:52:24.19ID:qcVVu7B5
Class#forNameで動的リンクするときjlinkとかは依存するクラス検出できないから
結局手動で全部依存関係調べるかfull jre使うかの二択になる。

>>838
互換性が保証できなくなるからやらないだろ。
実行時の型と推論された型は違うから。
841デフォルトの名無しさん
2018/10/29(月) 00:01:40.82ID:k1+zlMbU
というかあれだぞ。
javapackagerなくなったからjava11ではjre同梱したパッケージ作れないし、
なくなったのはpublic jreだけでjreのビルド自体はadopt openjdkがやってるからjre自体はあるぞ。
842デフォルトの名無しさん
2018/10/29(月) 00:06:53.79ID:RWf1bRTo
>>838
コンパイラの仕組み上困難
Javaコンパイラはまず、メンバのシグネチャだけを解析してクラスごとにメンバのお品書きを作る
そして、それが一通り終わった後に各メソッド本体やフィールド代入元の式を解析する
ところがフィールドの型にvarを許してしまうと、お品書きを作る段階でフィールド代入元の式を解析しなきゃいけなくなる
それによりコンパイラのパスが増えてしまうから、コンパイル速度が大きく低下する
843デフォルトの名無しさん
2018/10/29(月) 01:24:28.42ID:Cn2rCt1V
>>842
クラスにvar持てるHaxeのコンパイル遅いと感じたこと無いけど
Scalaとかいう言語でものすごく遅くなったという話は聞く
844デフォルトの名無しさん
2018/10/29(月) 02:54:18.59ID:doCXynSY
>>841
Java 11でクライアントサイドはどういう扱いになってるの?
845デフォルトの名無しさん
2018/10/29(月) 03:02:24.77ID:doCXynSY
新しいパッケージングツールの要件はJavaFX未対応とされている
http://openjdk.java.net/jeps/343

JavaFX由来のパッケージングツールが削除された

じゃあ、JavaFXアプリをエンドユーザーに配布したい場合、どうするの?
現在見つかる情報は、非JavaFXの自己完結型パッケージャ、
JavaFXのビルド方法だけで、JavaFXの自己完結型パッケージャが行方不明なんだけど
846デフォルトの名無しさん
2018/10/29(月) 04:02:15.84ID:doCXynSY
https://commons.apache.org/proper/commons-validator/apidocs/org/apache/commons/validator/routines/UrlValidator.html

これはthread safeですか?
847デフォルトの名無しさん
2018/10/29(月) 22:22:22.37ID:Cn2rCt1V
アウト、セーフ、よよいのよい
848デフォルトの名無しさん
2018/10/29(月) 23:23:48.16ID:KWB0XUD6
>>844
Java Client Roadmap Update
https://www.oracle.com/technetwork/java/javase/javaclientroadmapupdate2018mar-4414431.pdf

>>845
jep343がjavafx対応しないんだからないよ。
でも、javafxはただのライブラリなんだからjep343でほかと同じ扱いでしょ。
849デフォルトの名無しさん
2018/10/30(火) 14:22:42.63ID:ySliw7Bj
public synchronized void method1(){}

こういうメソッドレベルでsynchronizedした場合、
synchronized(this){}ということですか?
つまり他のところでsynchronized(this)が書かれていたら、どちらかが待機になるんでしょうか
850デフォルトの名無しさん
2018/10/30(火) 15:22:20.46ID:E+8/TrgC
>>849
その通り
thisをロックするのはパフォーマンスの低下やデッドロックの原因になるため、現代では一般には悪手とされている
synchronizedがデフォルトでthisをロックするのはJavaがまだオモチャでカジュアルに排他制御してた時代の名残で、
ちゃんと作るなら排他制御には private メンバを使って外に漏らさないようにした方が安全
851デフォルトの名無しさん
2018/10/31(水) 12:34:18.73ID:6PFXXFSS
thisをロックするのとロック専用オブジェクトをロックするのは
性能の違いがあるんですか?
852デフォルトの名無しさん
2018/10/31(水) 14:41:22.75ID:3SYFbLW8
>>851
thisはクラス外からも当然見えているわけで、他のクラスも同じオブジェクトを同時にロックしている可能性がある
どえせ内部的に同期してるんなら他のクラスが同時にアクセスしてくることは何の問題もないはずで、これは完全に無駄なブロックだ
クラス外から見えるオブジェクトをロックするのはパフォーマンスだけではなくてデッドロックの可能性を高める非常に悪い行為
853デフォルトの名無しさん
2018/10/31(水) 15:22:21.60ID:6PFXXFSS
デッドロックの可能性は分かるんですが、
その性能の劣化というのは、クラス外でたまたまロックに使われていた場合、
待機時間が生じるから、ということですか?
待機時間以外に構造的に複雑なオブジェクトをロックすることでの性能劣化はありえますか?
854デフォルトの名無しさん
2018/10/31(水) 15:45:06.31ID:3SYFbLW8
>>853
それはない
ロックはオブジェクトヘッダにロック中であることを示す情報を書き込むだけ
855デフォルトの名無しさん
2018/10/31(水) 15:58:04.06ID:lmDzWSZe
意味不明なエラーで苦しめw
856デフォルトの名無しさん
2018/10/31(水) 16:17:19.41ID:SePuugIe
ロック可能なのは全部ロックしたら苦しんだ黒歴史・・・
857デフォルトの名無しさん
2018/10/31(水) 17:20:43.08ID:6PFXXFSS
専用オブジェクトでロックしても結局プログラマーが入念にチェックする以外
無い気がするんですが合ってますか?
よく言われてるようなロック順序云々では解決しない気がするんですが
858デフォルトの名無しさん
2018/10/31(水) 17:23:06.92ID:xpjrbgPR
Javaはいつかなくなるんですか
859デフォルトの名無しさん
2018/10/31(水) 19:25:31.36ID:ZwMW2kAu
いつか
860デフォルトの名無しさん
2018/10/31(水) 19:27:08.55ID:iY3LkiS1
きっとどこかで生き残る
861デフォルトの名無しさん
2018/10/31(水) 19:30:32.81ID:umCB7ism
俺のディスクの上で生き残る
862デフォルトの名無しさん
2018/10/31(水) 19:48:34.38ID:umCB7ism
デッドロックと言えば、サーバをまたいだロックを掛けててデッドロックになった時は原因究明が大変だったなあ。
863デフォルトの名無しさん
2018/10/31(水) 20:18:06.23ID:YzLC1QbG
>>857
外に漏らさなければ入念にチェックする範囲がクラス内だけに留まるだろ
外から見えるオブジェクトならそれを触ってる可能性のある範囲全てをチェックしなきゃいけない
864デフォルトの名無しさん
2018/10/31(水) 21:04:23.41ID:6PFXXFSS
>>863
クラスA#method1() method3呼び出し
クラスA#method2()
クラスB#method3() method2呼び出し

この状況でmethod1,3を異なるスレッドが呼び出したらデッドロックになりうるのでは?
クラスA,Bがそれぞれ専用のロックオブジェクトを持っていて
method1,2,3の内部でロックオブジェクトでロックしているとして
865デフォルトの名無しさん
2018/10/31(水) 21:13:55.51ID:umCB7ism
そういやJavaVMって実行時にデッドロックを見つけ出す機能はないのかな?
OSのファイルロックだと見つけてくれたりするよな。NFS絡むと無理だけど。
(あ、でも2プロセスでロック掛け合った場合だけかな?)
866デフォルトの名無しさん
2018/10/31(水) 21:30:17.03ID:6PFXXFSS
デッドロックを通知する仕組みはあるようです。JConsole

安全なsynchronizedというものは、そのメソッドがどこから呼び出されているか、
どれを呼び出しているかというような依存関係で決まって、
単純な記述方法で安全性を確保する事はできないのではと思いました。
どのオブジェクトをロックしてもこの問題は残ります。
https://www.jpcert.or.jp/java-rules/lck07-j.html
これなんかもそうですが、ロック順序だけで解決できると考えてしまっていますが、
synchronizedブロック内のロジックが他のメソッドを呼び出している場合、
まだデッドロックが発生する可能性があると思います。
派生していくメソッド呼び出しのどこかにsynchronizedブロックがあれば。
もちろん、多くの場合、プログラムは様々なメソッドを呼び出します。
>>857はこの理解で正しいかという意味です
867デフォルトの名無しさん
2018/10/31(水) 21:40:58.89ID:KdCoWYCo
頑張れぼうやw
868デフォルトの名無しさん
2018/10/31(水) 22:59:47.53ID:GrkkoIKB
>>864のケースで仮にAがthisをロックしていたとしたら、B#method3がA#method2を呼ばずともB#method3内で直接または間接的にAのロックを試みただけでデッドロックするだろう。
privateなロックオブジェクトを用いたからといってデッドロックの可能性はゼロにはならないが、thisを使うのに比べれば確実に可能性は低くなる。
あえてリスクの大きくパフォーマンスの低下する方を選択する積極的な理由がない。
869デフォルトの名無しさん
2018/10/31(水) 23:05:48.35ID:VI6I+9K/
>>866
何を言いたいのか理解できないが、どこの誰がどんなタイミングでロックを取りに来ようとも、ロックの順番さえ守ってれば絶対にデッドロックは起こらないよ。
870デフォルトの名無しさん
2018/10/31(水) 23:43:17.95ID:QZT9zuHU
DB などほとんどのアプリでは、デッドロックでタイムアウトする。
絶対に回避できない

ロックする順番は、2プロセスの場合、
プロセスAがX, Y、
プロセスBがY, X

3プロセスの場合、
プロセスAがX, Y、
プロセスBがY, Z、
プロセスCがZ, X
871デフォルトの名無しさん
2018/11/01(木) 00:20:30.29ID:IO/IeQZr
>>870
ロックの順番があべこべなのだからデッドロックするのは当然だろう
872デフォルトの名無しさん
2018/11/01(木) 06:39:30.81ID:MRwfHAbj
>>870
バカにロックを使わせるな
って言う見本

せめて初歩の初歩ぐらい理解してからレスしろよ w
873デフォルトの名無しさん
2018/11/01(木) 07:11:11.17ID:m171VN/W
>>869
ロックの順番を守る事ができないということです
ブロック内にメソッド呼び出しがあることは普通です
874デフォルトの名無しさん
2018/11/01(木) 07:11:48.43ID:m171VN/W
>>868
>どのオブジェクトをロックしてもこの問題は残ります。
875デフォルトの名無しさん
2018/11/01(木) 07:13:39.94ID:m171VN/W
現在している話は、普通のプログラムにおいてロックの順番を守る妥当な方法は存在しないという話です。
synchronizedブロック内でメソッド呼び出しがあった時点でそうなります。
それに対してロックの順番を守ればいいとかthisをロックしろとか言い続けているのは話が分かっていません。
876デフォルトの名無しさん
2018/11/01(木) 07:17:18.61ID:m171VN/W
もう少し分かり易い説明を思いつきました。
ここにある問題は、synchronizedブロックで一旦ロック順序を守ったとしても、
そのブロック内から呼び出されているメソッド及びそこから派生的に呼び出されている全てのメソッドにおいて
synchronziedブロックを使う場合デッドロックが生じうるという問題で、
リファクタリング等において恒久的に懸念が残り続けるという問題です。
これは一時ロック順序を守ったコードを書いても解決しません。
877デフォルトの名無しさん
2018/11/01(木) 07:20:14.51ID:m171VN/W
すみません、経験上凡人レベルの人に話しても理解されなくて、辛い思いをするだけです。
話を終わります。
878デフォルトの名無しさん
2018/11/01(木) 07:36:25.75ID:PBz6MbCm
そうや。情報処理資格のテキストに書いてある。
楽観的とか、ああいうやつ

何も知らない奴が、ギャアギャア言ってるだけ
879デフォルトの名無しさん
2018/11/01(木) 07:55:33.73ID:MRwfHAbj
ID:QZT9zuHU = ID:m171VN/W
バカのまま永遠にデッドロックしとけ
880デフォルトの名無しさん
2018/11/01(木) 08:23:01.98ID:Tn1c1okn
例題とかじゃなくて、どういう時にロックが必要になるか考えて実際にやってみたらいいんじゃないか
そんな複雑なsynchronizedの使い方をしたことはしないだろう
881デフォルトの名無しさん
2018/11/01(木) 09:20:12.40ID:AYHv18S/
>すみません、経験上凡人レベルの人に話しても理解されなくて、辛い思いをするだけです。
世間は俺のことを分かってくれない(馬鹿のFAQ)w
882デフォルトの名無しさん
2018/11/01(木) 09:30:29.97ID:KWvf1ga0
ID:m171VN/Wは天才すぎる故に凡人レベルの嫉妬を買ってしまった
883デフォルトの名無しさん
2018/11/01(木) 09:40:00.51ID:mQsUQM4b
いや本当。凡人レベルの人には話が通じませんよね。


という具合にみんなして同調しておけばいいのに。
884デフォルトの名無しさん
2018/11/01(木) 09:41:09.33ID:VmLiOLMi
凡人にも理解出来る様に説明出来る能力を持ってるのが、天才の条件だな
説明出来ない人は紙一重の方
885デフォルトの名無しさん
2018/11/01(木) 09:47:33.79ID:DtT8Cv0d
まあ責任と前提の問題だな
正常な頭してたらクラスAとクラスBが相互に密結合するような設計をすることはありえないから、
似た状況が起こりうるのはBがAに自身を登録してAがBをinterface経由で「コールバック」するようなパターンだろう
その場合、BのメソッドがAのコンテキストから呼び出されることはBを作る側は当然知っているはずで、Aを更に別のスレッドから呼ぶような基地外的行為をしないという人間としての最低限度の責任はB側にある
そしてA側はそのようなリスクのある拡張ポイントをなるべく作るべきではないし、やむを得ないときはドキュメントに明記するべき
886デフォルトの名無しさん
2018/11/01(木) 10:30:23.17ID:Tn1c1okn
あれだ
スレッドを知った初心者が無駄に使いたくなってる状態に近いんじゃないか
887デフォルトの名無しさん
2018/11/01(木) 10:34:13.85ID:x+OioMtW
天才はこちらへ

上級プログラマの雑談部屋☆2
http://2chb.net/r/prog/1524240229/
888デフォルトの名無しさん
2018/11/01(木) 11:38:29.67ID:mQsUQM4b
>>887
ありがとう。そんなスレがあったとは。正に俺のために作られたようなスレだな。

と、サラッと書けるくらいにならんといかんよ。現実がどうであれ。w
889デフォルトの名無しさん
2018/11/01(木) 14:20:26.28ID:aGO292A7
馬鹿は死ななきゃ治らない
890デフォルトの名無しさん
2018/11/01(木) 15:10:14.12ID:Nl3jEz8g
javaの資格のsilverやgoldはどの程度の実力で受かりますか?
デザインパターンやリファクタリングをちゃんと理解しているレベルなら余裕で受かる?
891デフォルトの名無しさん
2018/11/01(木) 15:35:43.13ID:mUSj63Sn
>>890
シルバーはブロンズと変わらん
ゴールドはライブラリの使い方知ってればおけ
日付の計算とかスレッドとかコレクション
892デフォルトの名無しさん
2018/11/01(木) 15:58:36.20ID:Nl3jEz8g
>>891
ゴールドもその程度で受かるのですか?
楽勝ですね。
じゃ逆にデザインパターンやリファクタリングをあまり理解していなくても受かるということ?
893デフォルトの名無しさん
2018/11/01(木) 16:03:52.20ID:OxvwXsOa
受けようと思ったことすらないのでわからない。
894デフォルトの名無しさん
2018/11/01(木) 16:11:52.48ID:Nl3jEz8g
職歴にプログラミングがないのでしかたなく資格でもアピールする必要があるのですが
Java資格はGoldを取るとして
あとなにがあったほうがよいでしょうか?
データベース関連やUML関連やネットワーク関連の資格ですか?具体的にはなにが印象いいでしょうか?
895デフォルトの名無しさん
2018/11/01(木) 16:12:24.17ID:Nl3jEz8g
デザインパターン関連の資格ってないのかな?
896デフォルトの名無しさん
2018/11/01(木) 16:23:14.20ID:DtT8Cv0d
>>894
まずはIPAのデスペとデスペ
897デフォルトの名無しさん
2018/11/01(木) 16:33:52.56ID:Nl3jEz8g
デスペとデスペですか。
同じものなのになぜ2回も言うのですか。
898デフォルトの名無しさん
2018/11/01(木) 16:41:11.79ID:RfEd9OxR
大事なことなので
899デフォルトの名無しさん
2018/11/01(木) 17:12:47.17ID:Nl3jEz8g
そうですか。

なにか忘れてそうなのですが
プログラミングあるいは関連分野で、あったほうがいい資格はありませんか?
900デフォルトの名無しさん
2018/11/01(木) 18:05:14.35ID:OxvwXsOa
わからない。資格何もなしで何十年も働いちゃったもので。
一時期は学校でC言語教えてたりもしたが、資格はなかった。
あ、一太郎も教えてたことあったよ。もちろん資格なしで。
901デフォルトの名無しさん
2018/11/01(木) 19:13:26.95ID:Nl3jEz8g
>>900
無免許ですか。逮捕しますよw
一太郎は日本用のWordだと思うけどなんでそんなものが存在したの?
902デフォルトの名無しさん
2018/11/01(木) 19:15:26.25ID:1Z/ZXoar
まあ実務をやる上では資格は特に必要ではない
ただ採用する立場だと資格ない奴とある奴ならある奴を取る
903デフォルトの名無しさん
2018/11/01(木) 19:25:15.27ID:q4rSVTZi
馬鹿なんだろう
904デフォルトの名無しさん
2018/11/01(木) 19:39:49.82ID:OxvwXsOa
>>901
なんでって、MS-DOS時代のWORDは漢字扱えなかったからじゃないか?
905デフォルトの名無しさん
2018/11/01(木) 23:44:32.35ID:kQnTnj4P
ブロンズは持っても意味ないしシルバーもゴールドの受験資格みたいなもんだぞ。
そんで中身の言語部分はJVMSもJLSも一切読まなくても答えられる程度でどちらかと言うと
ありふれたライブラリの宣伝兼再確認みたいな内容。
906デフォルトの名無しさん
2018/11/02(金) 10:24:58.44ID:VhXZ8KFR
>>901
資格と免許の区別も出来ないんじゃ、
就職なんて出来んだろ
907デフォルトの名無しさん
2018/11/02(金) 16:44:03.61ID:TVanRjUQ
もしかしなくてもsilverとかより基本情報技術者取ったほうがいいんでしょうか
908デフォルトの名無しさん
2018/11/02(金) 16:53:15.88ID:3EaYIZ29
当然
Javaの重箱の隅に付いてる食べカスの色知ってる奴よりIPアドレスの計算できる奴の方が遥かに役に立つ
909デフォルトの名無しさん
2018/11/02(金) 17:17:06.84ID:0QIYfvOa
IPアドレスの計算って?
何か計算必要か?
910デフォルトの名無しさん
2018/11/02(金) 21:03:28.28ID:mJ2e4zOQ
インターネットキングならIPアドレスの計算くらい朝飯前だよ
911デフォルトの名無しさん
2018/11/02(金) 22:48:40.06ID:ejOlj3tt
サブネットマスクとかの話ちゃうの
912デフォルトの名無しさん
2018/11/03(土) 00:34:57.85ID:8dUCHJOu
世の中に無駄なものなんかないよ
ジャヴァの資格もIPアドレスの計算も全て社会の役に立ってる
913デフォルトの名無しさん
2018/11/03(土) 18:14:19.75ID:b5iwDuZ8
java11, 12にはくだらない機能しか入らないのか
914デフォルトの名無しさん
2018/11/04(日) 11:32:05.48ID:hQdPSgHl
ブリッジパターンの応用手順のブログみたい。パッケージを開発する時を前提にしているね。
https://blogs.yahoo.co.jp/kamyu_2010/35480077.html
915デフォルトの名無しさん
2018/11/06(火) 00:08:12.73ID:GjqHOKec
for文ブロックの後にループカウンタ変数の値でif文を書きたい
でもループカウンタ変数のスコープの問題で使えない

for文実行前にカウンタ変数用意するのは悔しいし誤動作を招きそうな気がするのでやりたくない
for文の中にif文を書いちゃえばいいんだけど毎回実行されるのは無駄で気持ちが悪いしそもそも本来やりたいことと違う

これはどう解決すれば良いんでしょうか、初歩的ですいません……
916デフォルトの名無しさん
2018/11/06(火) 00:14:58.15ID:ShoHBAGo
>>915
forループに入る前にループカウンタとは別の変数を用意して、ループの最後にカウンタの値をその変数にコピーするようにしよう
そうすればループカウンタをfor文の外で宣言しなくて済むし悔しくない
917デフォルトの名無しさん
2018/11/06(火) 00:22:51.13ID:GjqHOKec
そもそもループカウンタを前に宣言はできませんでした(今までそんなんやろうと思わなかった……)
>>916
代入ならif評価よりは速そうですね、ありがとうございます
918デフォルトの名無しさん
2018/11/06(火) 01:56:42.62ID:BD76rR44
>>915
それってループしている最中に if で何らかの条件により break するってことだよね?
それならその if ブロックの中で別の変数に代入すれば良い。

int j = -1;
for (int i = 0; i < max; i++) {
 if (f(i)) {
  j = i;
  break;
 }
}
if (j >= 0) {
...
}

もし上記のように途中でbreakして抜けるのでないなら max の値そのまま使えば良い。
919デフォルトの名無しさん
2018/11/06(火) 11:11:50.23ID:I/7NgPjD
while使えば?
920デフォルトの名無しさん
2018/11/06(火) 11:38:48.82ID:4wD9lBDw
時間の掛かるファイル読込処理を非同期実行して、その処理中にファイル読込具合に応じてJavaFXのプログレスバーを更新してるんだけど、
たまにプログレスバーが更新されない場合がある。なんで?

そのファイル読込処理とプログレスバー更新はインターフェースの継承メソッドに記述していて、
Threadクラスに登録するRunnableクラスのrunメソッド中でインターフェースの抽象メソッドを叩いて呼び出している。
1)イベントトリガが、JavaFXのFileChooserの選択完了時 → プログレスバー更新される
2)イベントトリガが、別のJavaFXの子Scene上のJavaFXボタン押下時(子Sceneのhide後) → プログレスバー更新されない
setImplicitExitをどうたらこたらするというのは一通り試した
簡単に解決したいんだがなあ
921デフォルトの名無しさん
2018/11/06(火) 12:01:52.02ID:nXssBivk
>>920
JavaFXはもうJavaの標準ライブラリではなく単なる野良ライブラリの一つに過ぎない
スレ違い
922デフォルトの名無しさん
2018/11/06(火) 12:19:26.12ID:4wD9lBDw
回答できんのなら黙ってろよな。回答できないくせに黙ってられないから池沼なのか
923デフォルトの名無しさん
2018/11/06(火) 14:10:58.07ID:FYsrzIPK
と逆切れするアホ
924デフォルトの名無しさん
2018/11/06(火) 14:23:17.36ID:V4FwzPmz
逆ではない
925デフォルトの名無しさん
2018/11/06(火) 14:23:55.76ID:V4FwzPmz
順切れ
926デフォルトの名無しさん
2018/11/06(火) 14:24:46.93ID:V4FwzPmz
>>921
おいお前
927デフォルトの名無しさん
2018/11/06(火) 14:25:09.98ID:V4FwzPmz
死ね
928デフォルトの名無しさん
2018/11/06(火) 14:28:34.10ID:V4FwzPmz
>>923
おいお前
929デフォルトの名無しさん
2018/11/06(火) 14:29:02.76ID:V4FwzPmz
ハゲろ
930デフォルトの名無しさん
2018/11/06(火) 14:43:02.48ID:B+7Pp6SO
フサフサが羨ましいのかw
931デフォルトの名無しさん
2018/11/06(火) 14:45:10.57ID:V4FwzPmz
>>930
おいお前
932デフォルトの名無しさん
2018/11/06(火) 14:45:32.38ID:V4FwzPmz
スレ違いだ
933デフォルトの名無しさん
2018/11/06(火) 19:07:34.12ID:13CfGTjW
どう見ても君がスレチ大魔王
934デフォルトの名無しさん
2018/11/07(水) 00:26:50.27ID:s4BPycKf
substance.jarでswingの見た目変えるの好きだった
javafxは評判悪かった覚えがあるけどswing使用者はみんな移行したのかな
935920
2018/11/07(水) 12:34:31.16ID:LJxZYzuZ
解決したったわ
しかしここはクソの役にも立たねえな
たまに書き込むけど、光合成も出来ない原始生命を相手にしているようで、ただただ孤独しか感じられねえわ
次はジュラ紀になったら来てやるから、それまでに精々、自然淘汰されておけよ
936デフォルトの名無しさん
2018/11/07(水) 12:52:14.01ID:bimd4khF
FXのスレは本当にあるんだけどね。
937デフォルトの名無しさん
2018/11/07(水) 13:18:13.99ID:ti/H8oE6
>>935
そんなお前にピッタリのスレがあるぞ
こんな低レベルのところじゃお前ほどの力は評価されないんだよ

上級プログラマの雑談部屋☆2
http://2chb.net/r/prog/1524240229/
938デフォルトの名無しさん
2018/11/07(水) 14:02:24.18ID:+HyKX3eQ
>>934
FXは廃止されちゃったからね
極一部のニッチでしか使われてないしモバイルファーストやWebファーストの流れに侵食されてオワコン、とOracleさん自身が公式に宣言してる
939デフォルトの名無しさん
2018/11/07(水) 14:05:19.70ID:1QLpYBJt
プグレスバーがジュラ紀を示したらまたおいでw
940デフォルトの名無しさん
2018/11/08(木) 12:06:43.94ID:QSZi8e/Z
Javaの仕事に転職したいのだけど
年収の交渉でプロ野球の契約更改のように代理人にお願いして年収アップの交渉をしてもらうシステムはないかな?
もちろん高収入になったらその1%は代理人に払うことにしたらその代理人もものすごくがんばってくれるからwin-winの関係になる。
941デフォルトの名無しさん
2018/11/08(木) 12:17:54.62ID:Cbg63GbQ
君がなれ
942デフォルトの名無しさん
2018/11/08(木) 12:20:00.08ID:cbRquK1Y
>>940
年収2000万ぐらいなら探せばあるだろ
それ以下なら商売にならなすぎだから厳しいと思うけど
943デフォルトの名無しさん
2018/11/08(木) 12:25:50.93ID:Cbg63GbQ
1000万の1%が10万円。とすると月に10人以上成立させないとうまくいかんのではないか?
944デフォルトの名無しさん
2018/11/08(木) 12:28:16.32ID:QSZi8e/Z
>>943
それ専門だから1日に5回同じ場所で連続で面接に参加して
それで1月に20日働けば月収1000万円。
945デフォルトの名無しさん
2018/11/08(木) 12:31:21.50ID:fwzjEtEg
>>940
そんなことができる代理人は自分で稼ぐだろ
そもそも億円プログラマーなんて存在するのかも怪しいし
946デフォルトの名無しさん
2018/11/08(木) 12:34:40.88ID:Cbg63GbQ
そういやさっきツイッターの広告でAIとチャットして何をやりたいかとか聞き出して人を募集している企業とのマッチングすのが出てきたよ。
やる前からAIに仕事奪われたようだなw
947デフォルトの名無しさん
2018/11/08(木) 14:09:45.21ID:Ub+FCVlD
アホ参上
948デフォルトの名無しさん
2018/11/08(木) 14:44:18.93ID:mJwNlcze
代理人の相場は10%が基本だぞ
949デフォルトの名無しさん
2018/11/08(木) 16:13:10.74ID:cbRquK1Y
>>946
それ従来の検索フォームをチャットに変えただけだろ
950デフォルトの名無しさん
2018/11/08(木) 17:07:12.88ID:o3TwcDma
人工無脳でも対応向上だと騙される奴がいるんだから有効だと言わざる得ないな
どうせブラック紹介されるなら萌えキャラにでも紹介された方がいいだろう?
951デフォルトの名無しさん
2018/11/09(金) 16:17:59.93ID:o+E2GY7o
このスレの少し前にもオラクルの認定試験の話題がありましたが、
Java Silverは持っていると役に立つでしょうか?
Java Bronzeは既に取得しています。
952デフォルトの名無しさん
2018/11/09(金) 16:29:29.33ID:OW/zGENl
履歴書に書くことが出来る
953デフォルトの名無しさん
2018/11/09(金) 16:30:54.51ID:OW/zGENl
そして面接の時にJavaの質問をされ墓穴を掘る
954デフォルトの名無しさん
2018/11/09(金) 16:59:59.72ID:Jo0ooGHD
マ板へ逝けと既に書かれていた
955デフォルトの名無しさん
2018/11/09(金) 22:48:54.87ID:zMMfYdX4
総称型を使った抽象クラスがあって、その具象クラス全部を処理するコードを書きたいんだけど
以下のようにするとコンパイルエラーになるのでできません。
いちいちTest2の具象クラスをinstanceof等で特定して書かなければならないということでしょうか?

public class GenericsTest {
public void test() {
Test2<? extends Test> t = null;
t.f(new TestConcrete());
}

public static class Test {

}

public static class TestConcrete extends Test {

}

public abstract static class Test2<A extends Test> {
public void f(A a) {
}
}
}
956デフォルトの名無しさん
2018/11/09(金) 22:51:18.43ID:zMMfYdX4
修正しますこうでした。Testも抽象クラスです。

public class GenericsTest {
public void test() {
Test2<? extends Test> t = null;
Test a = null;
t.f(a);
}

public abstract static class Test {

}

public abstract static class Test2<A extends Test> {
public void f(A a) {
}
}
}
957951
2018/11/09(金) 23:58:00.70ID:o+E2GY7o
ありがとうございました。
958デフォルトの名無しさん
2018/11/10(土) 00:57:56.92ID:XE+BpAI8
こんな記述を見かけたんですが
>Java11からはJavaFXは、ただのライブラリになったので、JavaFX側がMavenのCentral Repositoryにjarを置いてくれていたりするので、 OpenJDK11でJavaFX11を使うのであればpom.xmlのdependencyに入れるだけの話である。

JavaFXはネイティブDLLを使っていますか?
使っている場合、pom.xmlで入れられるライブラリになったというのは、
全環境用のネイティブコードが同梱されるということですか?
ほとんどのJavaライブラリは純粋なJavaコードで環境非依存だと思いますが
環境依存したライブラリはどういう扱いになるんでしょう
959デフォルトの名無しさん
2018/11/10(土) 01:36:26.97ID:XE+BpAI8
>>956のコードですが
fの引数は? extends Testだから、Testを受け取れても良くないですか?
? extends Testで期待できるのはTestのインターフェースであり、
TestはTestのインターフェースを持っています。
しかしコンパイルエラーになります
960デフォルトの名無しさん
2018/11/10(土) 02:07:52.87ID:XE+BpAI8
少し調べました。状況は、
A extends Test と Test  が非変であり、親子関係が完全に無視される。
f(A a)はConsumerであり、PECS原則から、? super Aを指定できるとよいが、
総称型ではないので指定できない。
Test2<A super Test>も記述不可
f(Test a)にすれば解決するが、Test2の子クラスはfの引数の型を限定したいかもしれない。
961デフォルトの名無しさん
2018/11/10(土) 02:33:26.87ID:XE+BpAI8
なぜか一度ワイルドカードを経由する+キャストという方法で解決できました。
public class GenericsTest {
@org.junit.Test
public void test() {
Func<?> funcTmp = new FuncConcrete();
Func<Arg> func = (Func<Arg>) funcTmp;
Arg arg = null;
func.f(arg);
}
@org.junit.Test
public void test2() {
Func<Arg> func = (Func<Arg>) new FuncConcrete();
Arg arg = null;
func.f(arg);
}
public abstract static class Arg {}
public static class ArgConcrete extends Arg {}
public static class FuncConcrete extends Func<ArgConcrete> {}
public abstract static class Func<A extends Arg> {
public void f(A a) {}
}
}
962デフォルトの名無しさん
2018/11/10(土) 23:27:50.60ID:49ccZS6D
>>958
環境ごとにjar分けて共有ライブラリ含めるだけだけど。joglとか昔からそうじゃん。
963デフォルトの名無しさん
2018/11/10(土) 23:46:19.83ID:6id28qN8
JVMは環境ごとに用意されてるから、その部分で対応してるんでしょう
わかってると思うが当然標準ライブラリとして提供してるAPI自体は環境に依存してない

まぁ internal なコードに環境による場合分けくらいは書いてあるかもしれんけど、
JVMにはその環境用のコードさえあればいいから、全環境のネイティブコードは必要ない
964デフォルトの名無しさん
2018/11/10(土) 23:55:28.83ID:6id28qN8
あぁごめん、Java11からの話か
そうだね、環境依存のjarと環境依存してないjarを2つ別々にダウンロードするんだろうね多分
swt+JFaceの、swt部分だけ環境依存してるのと一緒
使ったこと無いけど 上で言われてるJOGLもそんな感じかな

まぁ軽めのデータベースのjarとか環境依存のファイル全部ぶっこんでくることもあったりするけど
965デフォルトの名無しさん
2018/11/11(日) 11:11:28.64ID:6MwZdEZT
javaとDB(oracle)のデータについて。

javaプログラム内のある変数Xに対して、DBのある列の値に存在しているかどうか
チェックしたいのですが、どうすればよいでしょうか。

1.String sqlStr = "SELECT * FROM fruit";
2.ResultSet result = st.executeQuery( sqlStr );

3.while( result.next() ) {
4. String str1 = result.getString( "price" );
5. System.out.println(str1);
}

2行目でSQLを実行して、4行目でPRICE列の値を取得していると
思うのですが、X=1000と定義していた場合、PRICE列の値に対してXの
値が存在するチェックはどのようにコーディングすれば良いでしょうか。
一致すれば出力で一致しなければエラーにしたい。

なお、PRICEデータは例として1000としていますが、ランダム数値です。
966デフォルトの名無しさん
2018/11/11(日) 11:27:22.91ID:wM/j3zKs
>>965
普通にWHERE書け
SQL分からないんならJavaの前にSQLの入門書を終えてきなさい
967デフォルトの名無しさん
2018/11/11(日) 12:00:45.21ID:6MwZdEZT
"SELECT * FROM fruit WHERE PRICE = X"だと
Xが文字列になってしまうと。
Str1とXを比較すればよいと考えていましたが難しい
968デフォルトの名無しさん
2018/11/11(日) 13:07:00.71ID:iJkGWVs5
プレースホルダ
969デフォルトの名無しさん
2018/11/11(日) 18:24:10.42ID:0F8Q4Ddx
>>967
prepare にするかそのまんまSQL文の中に文字列で埋め込まれるようにするか、だな。

prepare の場合はこんな感じね。PreparedStatement クラス使うやつ。"?" の部分が置き換え部分。
https://qiita.com/ika_katsuo/items/dfbf9ed227ca08256760
970デフォルトの名無しさん
2018/11/11(日) 18:43:06.39ID:KBFxC5Cm
もし変数xの値が一つしかないなら
プリペアドステートメントでいちいち事前コンパイルする必要がない
ふつうにSQL問い合わせの文字列作るほうが速い簡単お手軽
971デフォルトの名無しさん
2018/11/11(日) 21:38:36.99ID:3JRsWB+V
今時直接データ埋め込みとかあり得んだろ…
972デフォルトの名無しさん
2018/11/11(日) 22:00:57.21ID:KBFxC5Cm
知能が低いと
文字列の加工すらできないのか

なるほどな
973デフォルトの名無しさん
2018/11/11(日) 22:26:11.35ID:cBZ/CGbZ
それが何を意味するのかも考えずどっかからコピペしてるからそういう質問が出るんだろうけど、技術書見ればプリペアードステートメントとか順序を追って書いてあるもんでもないのかね
974デフォルトの名無しさん
2018/11/11(日) 22:28:33.94ID:VPyBQ4Rk
質問スレで質問に対して煽るやつの知能も大概だとおもうぞ
975デフォルトの名無しさん
2018/11/11(日) 22:31:24.54ID:3JRsWB+V
文字列の加工程度でドヤるとか w
976デフォルトの名無しさん
2018/11/11(日) 22:32:01.58ID:4KGbvnyj
何も調べずに質問する方が大概だろ、質問者は神様ですってかw
977デフォルトの名無しさん
2018/11/11(日) 23:35:34.02ID:infpFr5m
>>963
> わかってると思うが当然標準ライブラリとして提供してるAPI自体は環境に依存してない
>
> まぁ internal なコードに環境による場合分けくらいは書いてあるかもしれんけど、
> JVMにはその環境用のコードさえあればいいから、全環境のネイティブコードは必要ない

そんなことないから。java6以降環境依存な標準API追加してるからjava側で場合分けする必要ある。
978デフォルトの名無しさん
2018/11/12(月) 00:34:16.10ID:MtlIUxHY
>>970
prepare にしとくとSQLインジェクション防止になるというのもある。
https://blogs.oracle.com/sec/042_sqlinjection_1
もちろんどうやってもそんなことは起こり得ないし1回しか同じSQL文使わないみたいな場合は埋め込めばいい。
979デフォルトの名無しさん
2018/11/12(月) 16:56:20.13ID:ayEXvCJf
spring frameworkはMVCですか?
980デフォルトの名無しさん
2018/11/12(月) 17:14:22.45ID:cpYKEuEA
spring frameworkはフレームワークで、MVCはプログラムの一つのモデルです。
981デフォルトの名無しさん
2018/11/12(月) 17:37:37.98ID:xaL5+kQv
>>977
> 環境依存な標準API
例えば?
982デフォルトの名無しさん
2018/11/12(月) 17:50:53.29ID:ayEXvCJf
>>980
どのモデルを採用してるのですか?
983デフォルトの名無しさん
2018/11/12(月) 22:41:38.37ID:JKEbmYKN
>>981
awtのDesktop、nio2(more nio)のファイルパーミッション等、apple javaのeawt移植。

あと6以前からのjava soundもjreに含まれてるのは単なるRIで仕様と実装は別物で、
実装部分のLineの挙動はプラットフォーム依存。7以降MIDIのソフトシンセはクロスプラットフォームになったけど。
984デフォルトの名無しさん
2018/11/12(月) 23:02:27.75ID:THHCGQKY
Javaのメモリ管理に関して教えてください!

例えば、PCのメモリが32GBあるPCで、
インスタンスを大量生成するプログラムを動かすとします。
また、このプログラムの起動引数に、ヒープ最大使用量=2GB
を設定して起動していたとします。

この場合、大量のインスタンスを生成していった場合ですが...
ヒープ最大使用量=2GBを超えてヒープを使用することはありますか?

それと、ヒープサイズがヒープ最大使用量に近付いた場合、
ガベージコレクションが発生するようになりますか?
985デフォルトの名無しさん
2018/11/13(火) 06:25:54.30ID:qPPBH0nu
>>984
インスタンスて何?
プロセスのことか?
986デフォルトの名無しさん
2018/11/13(火) 06:56:40.27ID:t6QPVwz9
>>984
> ヒープ最大使用量=2GBを超えてヒープを使用することはありますか?

ないよ、ヒープ最大使用量を超えるとOutOfMemoryErrorが投げられる

> ヒープサイズがヒープ最大使用量に近付いた場合、
> ガベージコレクションが発生するようになりますか?

なるよ、サーバを管理してるけどたまにアプリにメモリリークがあって
メモリが解放されなくてGCが頻発して最終的にOutOfMemoryErrorになる
ことがある、急速にメモリを消費してGCが稼働する間もなくエラーになることもある
987デフォルトの名無しさん
2018/11/13(火) 08:44:10.18ID:z+WaWgDc
>> 985

Object o = new Object();
とかです!

>> 986

ありがとうございます!
ということは、PCのメモリを全部食い潰すことはないのですね。
助かります。
988デフォルトの名無しさん
2018/11/13(火) 09:22:02.07ID:3SCk9MN5
あほやな
989デフォルトの名無しさん
2018/11/13(火) 16:13:23.72ID:BO12xGFO
参照にnull渡してもすぐに廃棄してくれないから
メモリぎりぎりの処理をするとGC発生せずに落ちる
OutOfMemoryErrorの前に1度はフルGCしろよと思う
990デフォルトの名無しさん
2018/11/13(火) 23:42:29.05ID:u0U8MmUH
hotspotはやってるだろ?今やってないのか?
991デフォルトの名無しさん
2018/11/18(日) 19:34:14.79ID:pZxF/iWK
java11に移行しようとすると、ライブラリ類が対応してるのか不安
自分のアプリだけテストしても不十分だ
例えばNettyもjava11で少し問題が出たようだ
992デフォルトの名無しさん
2018/11/18(日) 19:51:16.43ID:pZxF/iWK
java8からの移行を考えてたけど、やっぱり一部パッケージが削除されたせいで
動作しないものが出るようだ
移行作業はまずビルドが成功するかという問題があって、
失敗したら最悪ライブラリを自分で修正しないといけなくて、
ビルドに成功したとしてもライブラリはjava11でテストされていないという状況

ほんの1年ちょい前はjava8が最新だったんだが・・・
こんなの新規プロジェクト間に合わないだろ
移行作業しつつ開発進めないといけない
993デフォルトの名無しさん
2018/11/18(日) 21:06:07.68ID:pZxF/iWK
https://builder.japan.zdnet.com/sp_oracle/35095997/2/
>Java Policy Tool

これの代替手段はありますか?

>時代遅れとなったセキュリティAPI
これはjava.securityのことですか?java11でそのパッケージが無くなるんですか?
994デフォルトの名無しさん
2018/11/18(日) 23:08:00.76ID:JqgRfJJT
>>993
>これの代替手段はありますか?
ない。どうせpolicy toolはカスタムポリシー対応してないからポリシーファイルは手書きする必要がある。
そもそも、これ技術デモだから。

>これはjava.securityのことですか?java11でそのパッケージが無くなるんですか?
非ポリシーベースのsecurity apiのうち1.1時代のだけ。
995デフォルトの名無しさん
2018/11/18(日) 23:39:07.26ID:pZxF/iWK
java8から11に移行する場合、security apiは特に変わってないと考えていいですか?
996デフォルトの名無しさん
2018/11/19(月) 00:09:28.48ID:MZ1FDVWs
あー1.1のAPIを8で使ってたらそうじゃないのか
997デフォルトの名無しさん
2018/11/19(月) 00:35:10.50ID:7qQcp7Oe
正確にはcheckPermissionに転送してるだけのSecurityManagerの一部のメソッドだけどね。
今のところ削除予定なのは特殊なやつだけだけど1.1/1.2時代のapi削除するのは時間の問題だと思うよ。
998デフォルトの名無しさん
2018/11/19(月) 00:47:13.92ID:MZ1FDVWs
何で最初から理想的なAPIにできないんだろう?
999デフォルトの名無しさん
2018/11/19(月) 11:00:29.57ID:C68x9bSi
>>998
君が作ってないからさ
君が作れば理想的なものになる
今すぐ新言語を作れ
1000デフォルトの名無しさん
2018/11/19(月) 11:04:42.70ID:X6/A5UND
>>998
バグと同じで改修に次ぐ改修で無理が想定外や見落としが出て、結果継ぎ接ぎになるんだろ。
-curl
lud20250121211409ca
このスレへの固定リンク: http://5chb.net/r/tech/1518252580/
ヒント:5chスレのurlに http://xxxx.5chb.net/xxxx のようにbを入れるだけでここでスレ保存、閲覧できます。

TOPへ TOPへ  

このエントリをはてなブックマークに追加現在登録者数177 ブックマークへ


全掲示板一覧 この掲示板へ 人気スレ | Youtube 動画 >50 >100 >200 >300 >500 >1000枚 新着画像

 ↓「★★Java質問・相談スレッド181★★ ->画像>5枚 」を見た人も見ています:
書き込んだやつ特定してほしいです
競プロにおいてのRust
perlの問題がまったくわかんなくて困ってる
ODEで物理シミュレーション
【悲報】Pascal言語の開発者はパスカルじゃなかった
学校である球技大会の投票を荒らしたい件
HSP総合スレ【part 10】 (c)2ch.net
データ構造,アルゴリズム,デザインパターン総合スレ 3
オブジェクト指向は愚かな考え。この世は計算式 ★3
スクリプトの作り方教えてください!
C言語なら俺に聞け 148
次世代言語13 COBOL Java PHP VBA Ruby
Qiita 5 - キータぞ、来たぞ、キータだぞー
C++相談室 part154
次世代言語25 TypeScript Swift Go Kotlin Rust Nim
C#, C♯, C#相談室 Part75
HSPだって
Rust part27
7payの脆弱性はAPIトークンが連番だったってこと?
C++相談室 part132
最高に頭悪そうな発言してください in ム板 (VI) 2
+ JavaScript の質問用スレッド vol.119 +
たすけて(コンパイラ系)
【統計分析】機械学習・データマイニング23
新規専ブラ稼働させる有識者おらんのかえ?
フラグメンテーション対策スレ
【初心者歓迎】最新COBOLについての質問スレ
アプリ作りたいんだけど...
PHP,Ruby,Pythonは運用コスパが悪い/Java最強伝説
Pythonは大規模システム開発に適さないと嘘つく会社
総合的評価で最もバランスが取れているのはHSPだけ
次世代言語議論スレ[Rust Kotlin Haskell]第6世代
C言語をやりたいんですが
もうすぐプログラマになって3年経つ
Rubyについて(アンチ専用) Part004
テストを書いてからリファクタリングなんてのは幻想
ふらっと C#,C♯,C#(初心者用) Part144
MASM32 - 選ばれし本物のプログラマ
Borlandにはやられた...
巨大なアーキテクチャ内での基本的なデータ構造
クラス名・変数名に迷ったら書き込むスレ。Part29
Excel VBA 質問スレ Part79
Microsoft Xamarin part8 [.NET MAUI]
プログラミング言語Egison
プログラミング言語、次は何を学ぶ?
アンチコンピュータウィルスソフトってどれがいい?
女向けのプログラミング言語
男向けのプログラミング言語
オープンリソース株式会社
スレ立てるまでもない質問はここで 150匹目
【Intel】OpenCV総合スレ【画像処理】
くだすれPython(超初心者用) その42【Ruby禁止】
くだすれPython(超初心者用) その43【Ruby禁止】
JavaScript の質問用スレッド vol.125
こんなプログラミング言語は嫌だ!
なぜソフトウェアは3~5年程度で使えなくなるのか?
Javascriptのセミコロン;
これってどうすればよいの
中2でこのプログラムしか書けないってやばう?
バイナリ(exe)にすればRubyもC++も実行速度変わらないという事実
Windows用の画像タグ管理ツールを作ってる(C#)
Swift part7
いさじの声をAIに学習させてAIいさじは作れますか?
シェルスクリプト総合 その35
「網羅的」でない勉強方法を考えるスレ
19:58:40 up 83 days, 20:57, 0 users, load average: 7.37, 7.54, 8.03

in 0.11716079711914 sec @0.11716079711914@0b7 on 071008