★★Java質問・相談スレッド182★★
レス数が950を超えています。1000を超えると書き込みができなくなります。
1デフォルトの名無しさん (アウアウウー Sa73-AAco [106.132.135.194])
2018/11/19(月) 11:37:06.10ID:C68x9bSiaプログラミング言語Javaに関する質問スレです。
JavaScript, Ajaxの質問は、ここでは受け付けていません。
Web製作管理 http://pc11.2ch.net/hp/
Webプログラミング http://pc11.2ch.net/php/
をご利用下さい。
よくある質問
・「コマンドまたはファイル名が違います」
「'javac' は、内部コマンドまたは外部コマンド、
操作可能なプログラムまたはバッチ ファイルとして認識されていません。」
「Exception in thread "main" java.lang.NoClassDefFoundError: 」
(p)ttp://www.wikiroom.com/java/?path,classpath
・「\12288 は不正な文字です。」
文字リテラル以外で全角スペースは使えません。半角スペースに。
・その他の質問→「APIのjavadoc見ろ」
・String に == は使うな。equals() を使え。※
質問時の心得
・コンパイルエラーか実行時エラーか、エラーではないが意図しない動作なのかはっきりしろ。あとエラーメッセージちゃんと読め。
・前提条件としてOS、開発環境、バージョン、使用フレームワーク等を明記。
前スレ
★★Java質問・相談スレッド181★★
https://mevius.5ch.net/test/read.cgi/tech/1518252580/
VIPQ2_EXTDAT: checked:vvvvvv:1000:512:----: EXT was configured
883デフォルトの名無しさん (ブーイモ MM57-wfSA [202.214.230.117])
2020/02/19(水) 14:14:18.61ID:1aV3jaSpM ネイティブコンパイル出来るようになったからGUIアプリの需要結構あると思うけどね
C#のネイティブコンパイラまだ実用レベルにないし
C#のネイティブコンパイラまだ実用レベルにないし
884デフォルトの名無しさん (ブーイモ MM97-oe+T [210.138.6.115])
2020/02/19(水) 14:37:29.31ID:4iImSo2cM >>882
どういう歴史的事情なのですか?
どういう歴史的事情なのですか?
885デフォルトの名無しさん (ブーイモ MM97-oe+T [210.138.6.115])
2020/02/19(水) 14:38:16.24ID:4iImSo2cM JavaのGUIが普及さなかったことに僕は納得できません
886デフォルトの名無しさん (アウアウウー Sa57-6k5J [106.132.129.246])
2020/02/19(水) 18:31:45.86ID:/R79ylGQa >>884
Javaが広まり始めた90年代後半のPCは遅くてメモリも少なく、JavaVM起動直後の初期化でとても時間が掛かった。もちろん何もかもが遅く当然GUIも遅かった。
またJavaプログラム以外に別途JavaVMをインストールしておかねばならず初心者にはこれが壁になり普及を大きく妨げた。
ということでPCのデスクトップアプリケーションとしてのJavaは早々に死に、サーバーサイドのプログラムとして使われる事が多くなった。GUIの進化などするわけがない。
ただしAndroidによってクライアント側のGUIが救われたとは思える。主にスマホやタブレットになるが。
Javaが広まり始めた90年代後半のPCは遅くてメモリも少なく、JavaVM起動直後の初期化でとても時間が掛かった。もちろん何もかもが遅く当然GUIも遅かった。
またJavaプログラム以外に別途JavaVMをインストールしておかねばならず初心者にはこれが壁になり普及を大きく妨げた。
ということでPCのデスクトップアプリケーションとしてのJavaは早々に死に、サーバーサイドのプログラムとして使われる事が多くなった。GUIの進化などするわけがない。
ただしAndroidによってクライアント側のGUIが救われたとは思える。主にスマホやタブレットになるが。
887デフォルトの名無しさん (ワッチョイ b3e9-IdAT [222.15.235.177])
2020/02/19(水) 18:34:21.04ID:7ZNyFvkM0 swingがスレッドセーフじゃないと知らずに別スレッドに投げて処理してた。
TextFieldは大丈夫だった。comboboxがうまく動かなくて調べて初めて知った。
TextFieldは大丈夫だった。comboboxがうまく動かなくて調べて初めて知った。
888デフォルトの名無しさん (ブーイモ MM97-oe+T [210.138.6.115])
2020/02/19(水) 18:59:54.45ID:4iImSo2cM >>886
納得しました
納得しました
889デフォルトの名無しさん (JP 0Hdf-DPpo [153.143.139.144])
2020/02/20(木) 11:02:01.43ID:vFkAWpkQH890デフォルトの名無しさん (ワッチョイ ef01-/D8n [111.90.14.57])
2020/02/20(木) 21:26:53.76ID:F4jYa5rU0891デフォルトの名無しさん (アウアウウー Sa57-6k5J [106.132.135.72])
2020/02/21(金) 12:50:11.92ID:TKnLlA6xa そういえば Chromebook はAndroid用のプログラムも動くらしいな。
ということは何の苦もなくそのままの状態でJavaのGUIがPCで動くということでもあるな。
日本では Chromebook 売れてないけど。
ということは何の苦もなくそのままの状態でJavaのGUIがPCで動くということでもあるな。
日本では Chromebook 売れてないけど。
>>877 Swing 便利だぞ
893デフォルトの名無しさん (ワッチョイ 755f-yNY2 [106.72.150.32])
2020/03/15(日) 23:27:22.01ID:weQDtzSh0 List って使うのやめませんか?
見にくい
見にくい
894デフォルトの名無しさん (ドコグロ MM13-GQQE [119.240.140.187])
2020/03/16(月) 00:27:35.44ID:5NAQQQ5VM 何が見にくいのやら
895デフォルトの名無しさん (アウアウエー Sa93-drwQ [111.239.60.75])
2020/03/16(月) 09:57:38.95ID:bP3xNskMa ArrayListのことを言っているのだとすれば
長さが可変の配列として使えるので「便利」
長さが可変の配列として使えるので「便利」
896デフォルトの名無しさん
2020/03/17(火) 03:50:44.28 Eclipse使ってます。
色々なライブラリを導入した時は、Javadocもインストールして開発を捗らせてます。
あるライブラリ(jar)の日本語javadocがあるかどうかってどこでどうやって判断したら良いですかね?
それとも、Pleadesに標準装備されてるJavadoc以外は基本的に日本語Javadocは期待しない方がいいですかね
色々なライブラリを導入した時は、Javadocもインストールして開発を捗らせてます。
あるライブラリ(jar)の日本語javadocがあるかどうかってどこでどうやって判断したら良いですかね?
それとも、Pleadesに標準装備されてるJavadoc以外は基本的に日本語Javadocは期待しない方がいいですかね
897デフォルトの名無しさん
2020/03/17(火) 05:05:59.52 Eclipse使ってます。
昨日、pleiades-2019-12-ultimate-win-64bit-jre_20200213つまり最新版の全部込みを導入したんですが、
Javaソースコード編集中にマウスカーソルホバーでドキュメントがポップアップするやつですが、Filesクラスの説明が英語のままなんだが、何で?
ブラウザから
https://docs.oracle.com/javase/jp/13/docs/api/java.base/java/nio/file/Files.html
を見に行ったらちゃんと日本語だったんだが、Eclipse側でどういう設定にしたら良いの?
昨日、pleiades-2019-12-ultimate-win-64bit-jre_20200213つまり最新版の全部込みを導入したんですが、
Javaソースコード編集中にマウスカーソルホバーでドキュメントがポップアップするやつですが、Filesクラスの説明が英語のままなんだが、何で?
ブラウザから
https://docs.oracle.com/javase/jp/13/docs/api/java.base/java/nio/file/Files.html
を見に行ったらちゃんと日本語だったんだが、Eclipse側でどういう設定にしたら良いの?
898デフォルトの名無しさん (アウアウウー Sa91-lxu7 [106.132.124.63])
2020/03/17(火) 17:37:29.70ID:4Vk7SyLRa >>893
Kotlinだと同じListが見た目綺麗に書けるよ。
Kotlinだと同じListが見た目綺麗に書けるよ。
899デフォルトの名無しさん (ワッチョイ d72c-cvBQ [180.18.161.79])
2020/03/18(水) 00:29:29.98ID:LQtyodHE0 Ruby on Rails なら、アプリの設定ファイルに、
I18n.locale = :ja とか、:en とか設定する
それで、自分で日本語用の翻訳ファイルを作る。
設定/locales/ja.yml
member: 会員情報
full_name: 氏名
email: メールアドレス
こういう感じ
I18n.locale = :ja とか、:en とか設定する
それで、自分で日本語用の翻訳ファイルを作る。
設定/locales/ja.yml
member: 会員情報
full_name: 氏名
email: メールアドレス
こういう感じ
900デフォルトの名無しさん (ブーイモ MM83-NOfJ [202.214.125.29])
2020/03/18(水) 09:49:51.69ID:0YH7V5fkM >>899
早く氏ね
早く氏ね
901デフォルトの名無しさん (ワッチョイ dfb0-y1YS [114.165.4.23])
2020/03/26(木) 18:37:22.31ID:/asxdJYI0 Javaで何かを作る過程を詳細に説明してる書籍ってないの?
902デフォルトの名無しさん (ワッチョイ 7fb9-B4Y8 [123.48.128.206])
2020/03/30(月) 05:29:57.97ID:vlbwcsc70 クラスローダー毎にstaticフィールドが異なるという話が本当か調べようと思って
実験コードを書いてたんだけど
異なるクラスローダーで同じクラスを読み取って
this.getClass().getClassLoader()ってやったら同じインスタンスが返ってきてしまって
異なるクラスローダーで同じクラスを実行するという事ができない。
誰かそういうコード書ける?
実験コードを書いてたんだけど
異なるクラスローダーで同じクラスを読み取って
this.getClass().getClassLoader()ってやったら同じインスタンスが返ってきてしまって
異なるクラスローダーで同じクラスを実行するという事ができない。
誰かそういうコード書ける?
903デフォルトの名無しさん (ワッチョイ 7fb9-B4Y8 [123.48.128.206])
2020/03/30(月) 06:11:56.99ID:vlbwcsc70 できたわ
確かにクラスローダー毎に静的フィールド異なるな
このコード書いてみてクラスローダー周りが良く分かった
確かにクラスローダー毎に静的フィールド異なるな
このコード書いてみてクラスローダー周りが良く分かった
904デフォルトの名無しさん (ワッチョイ 1ab9-zfCe [123.48.128.206])
2020/04/09(木) 17:33:07.09ID:09nXStiY0 人いないな
人気言語Javaでこれか
人気言語Javaでこれか
905デフォルトの名無しさん (ワッチョイ 0eda-AglQ [121.114.134.184])
2020/04/09(木) 17:37:43.96ID:OBt9P9fC0 俺もいる
906デフォルトの名無しさん (ワッチョイ 1761-ZCJJ [112.136.94.92])
2020/04/09(木) 17:38:30.10ID:RTR2QVCs0907デフォルトの名無しさん (ワッチョイ 4e2c-5WFu [153.194.236.234])
2020/04/09(木) 18:01:19.95ID:pqMoXxyo0 >>901
掌田津耶乃だろ。
あらゆるゲームエンジン・フレームワークの本を書いてる!
まあ、Rails が一番有名だけど
Spring Framework 4 プログラミング入門、掌田津耶乃、2014
Spring Boot プログラミング入門、掌田津耶乃、2016
Node.js超入門、2017
PHPフレームワーク Laravel入門、2017
CakePHP 超入門、2018
Python Django 超入門、2018
Android/iOSクロス開発フレームワーク React Native入門、2018
Ruby on Rails 6 超入門、2020/2/21
掌田津耶乃だろ。
あらゆるゲームエンジン・フレームワークの本を書いてる!
まあ、Rails が一番有名だけど
Spring Framework 4 プログラミング入門、掌田津耶乃、2014
Spring Boot プログラミング入門、掌田津耶乃、2016
Node.js超入門、2017
PHPフレームワーク Laravel入門、2017
CakePHP 超入門、2018
Python Django 超入門、2018
Android/iOSクロス開発フレームワーク React Native入門、2018
Ruby on Rails 6 超入門、2020/2/21
908デフォルトの名無しさん (ワッチョイ 7af8-l/QE [115.163.210.109])
2020/04/11(土) 00:40:17.85ID:mccf80iK0 >>907
死ね屑
死ね屑
909デフォルトの名無しさん (アウアウエー Sa52-tpvz [111.239.185.171])
2020/04/11(土) 12:22:10.65ID:xkRXqkmOa 下記図のように、複数の三角形を描きたいです。
List<Point> ls;に格納したPointはソートされていますが、数は増減したりし、
マウスの座標は動きます。
java.awt.GraphicsのfillPolygonを使って
for (int i = 0; i < ls.size(); i++) {
g.fillPolygon(new int[mx, ls.get(i).getX(), ls.get(i + 1).getX()],
new int[my, ls.get(i).getY(), ls.get(i + 1).getY()]
,3);
}
のように書けないか考えているのですが、何かいい方法はありますでしょうか?
List<Point> ls;に格納したPointはソートされていますが、数は増減したりし、
マウスの座標は動きます。
java.awt.GraphicsのfillPolygonを使って
for (int i = 0; i < ls.size(); i++) {
g.fillPolygon(new int[mx, ls.get(i).getX(), ls.get(i + 1).getX()],
new int[my, ls.get(i).getY(), ls.get(i + 1).getY()]
,3);
}
のように書けないか考えているのですが、何かいい方法はありますでしょうか?
910デフォルトの名無しさん (ワッチョイ 7af8-l/QE [115.163.210.109])
2020/04/12(日) 21:06:14.95ID:PRMGLprP0 for (int i = 0; i < ls.size(); i++) {
g.fillPolygon(new int[]{mx, ls.get(i).getX(), ls.get(i + 1).getX()},
new int[]{my, ls.get(i).getY(), ls.get(i + 1).getY()}
,3);
}
こういうこと?
毎回newするのはイケてないので配列使いまわしたほうが良いよ
g.fillPolygon(new int[]{mx, ls.get(i).getX(), ls.get(i + 1).getX()},
new int[]{my, ls.get(i).getY(), ls.get(i + 1).getY()}
,3);
}
こういうこと?
毎回newするのはイケてないので配列使いまわしたほうが良いよ
911デフォルトの名無しさん (ワッチョイ 5fb0-VPH2 [114.165.4.23])
2020/04/14(火) 16:10:32.31ID:Y5NGNrzR0 ラムダ式って匿名クラスの省略表記のことですか?
912デフォルトの名無しさん (ワッチョイ 1301-a7D8 [123.216.100.169])
2020/04/15(水) 15:03:37.07ID:pEtkgVWE0 ラムダ式の式って、方程式の式?それともオギノ式の式?
便乗で、くだらない質問でスマソ
便乗で、くだらない質問でスマソ
913デフォルトの名無しさん (ワッチョイ b19f-XwhR [118.109.112.224])
2020/04/15(水) 15:38:20.11ID:SJCxaNjJ0 lambda expression
equation
Ogino method
equationはmathematical expressionの一種だから方程式の式
equation
Ogino method
equationはmathematical expressionの一種だから方程式の式
914デフォルトの名無しさん (ワッチョイ b19f-XwhR [118.109.112.224])
2020/04/15(水) 15:44:38.42ID:SJCxaNjJ0915デフォルトの名無しさん (ワッチョイ 1301-a7D8 [123.216.100.169])
2020/04/15(水) 15:49:51.69ID:pEtkgVWE0 >>913
なるほど。回答サンクス
なるほど。回答サンクス
916デフォルトの名無しさん (ワッチョイ 19b0-dkLK [114.165.4.23])
2020/04/15(水) 17:34:16.36ID:tqIYDceK0917907 (ワッチョイ eb2c-8Jcx [153.194.236.234])
2020/04/15(水) 19:42:23.77ID:oc9v+Ado0 Java でゲームプログラミングと言えば、
YouTube で有名な、T Umezawa のシリーズだろ
最近のJava は、Ruby on Rails のコピーで、
Spring Boot で、web プログラミングだろ
まあ、すべてのフレームワークの基本である、
Rails をやっていないと、web プログラミングは難しい
YouTube で有名な、T Umezawa のシリーズだろ
最近のJava は、Ruby on Rails のコピーで、
Spring Boot で、web プログラミングだろ
まあ、すべてのフレームワークの基本である、
Rails をやっていないと、web プログラミングは難しい
918デフォルトの名無しさん (ワッチョイ 095f-NJmS [106.72.163.96 [上級国民]])
2020/04/16(木) 23:06:30.69ID:GRiepDCa0 知ったかぶり風
919デフォルトの名無しさん (ワッチョイ 095f-NJmS [106.72.163.96 [上級国民]])
2020/04/16(木) 23:07:20.97ID:GRiepDCa0 WebアプリケーションそのものはJavaではない。
920デフォルトの名無しさん (アウアウエー Sa23-qpj1 [111.239.187.174])
2020/04/18(土) 00:08:56.76ID:/cj6qYxIa921デフォルトの名無しさん (ワッチョイ 095f-NJmS [106.72.163.96 [上級国民]])
2020/04/18(土) 00:46:21.08ID:AvZMO+wH0 毎回、動的にメモリを確保する意味がわからない。
922デフォルトの名無しさん (ワッチョイ e1ad-ycCE [110.132.222.152])
2020/04/18(土) 02:09:38.89ID:yOAua5ec0 ヴィジュアルスタジオコードで
新しいpackageを作るにはどうすればよいの?
新しいpackageを作るにはどうすればよいの?
923デフォルトの名無しさん (ワッチョイ 13ad-Ho7r [27.139.77.105])
2020/04/18(土) 13:43:12.82ID:VYQrLT4k0 >>920
その場合ループの中にあって同じ要素数の配列のためのメモリ確保と解放の処理が繰り返されるし、尚且つ一つのメソッドの引数で使って即不要になるので無駄な感じがする。
もちろんコンパイラがうまいこと最適化して最終的なコードに無駄はなくなる可能性はあるのだが、Javaの場合はそれが保証されていない。
ということでそういう場合はループの外で配列を new してから使う方が良い。
その場合ループの中にあって同じ要素数の配列のためのメモリ確保と解放の処理が繰り返されるし、尚且つ一つのメソッドの引数で使って即不要になるので無駄な感じがする。
もちろんコンパイラがうまいこと最適化して最終的なコードに無駄はなくなる可能性はあるのだが、Javaの場合はそれが保証されていない。
ということでそういう場合はループの外で配列を new してから使う方が良い。
924デフォルトの名無しさん (ブーイモ MMeb-AGCG [163.49.209.169])
2020/04/19(日) 16:00:29.92ID:8cBnO1r8M リソースと外部ファイルの違いを理解するところから。
Javaに限った話ではない。
Javaに限った話ではない。
925デフォルトの名無しさん (ワッチョイ 095f-Tn3+ [106.72.163.96 [上級国民]])
2020/04/19(日) 17:42:15.94ID:3CRJEjuQ0 年齢に関係なく物理メモリが無尽蔵にあると思っている人間は多いからね。
926デフォルトの名無しさん (アウアウエー Sa23-csEB [111.239.186.230])
2020/04/21(火) 20:33:38.51ID:8bW+Kt6Ua >>923
ありがとうございます。
このような書き方でもいいのでしょうか?
public void func() {
int[] lx, ly = new int[3];
lx[0] = mx;
ly[0] = my;
for (int i = 0; i < ls.size(); i++) {
lx[1] = ls.get(i).getX();
lx[2] = ls.get(i + 1).getX();
ly[1] = ls.get(i).getY();
ly[2] = ls.get(i + 1).getY();
g.fillPolygon(lx, ly, 3);
}
}
ありがとうございます。
このような書き方でもいいのでしょうか?
public void func() {
int[] lx, ly = new int[3];
lx[0] = mx;
ly[0] = my;
for (int i = 0; i < ls.size(); i++) {
lx[1] = ls.get(i).getX();
lx[2] = ls.get(i + 1).getX();
ly[1] = ls.get(i).getY();
ly[2] = ls.get(i + 1).getY();
g.fillPolygon(lx, ly, 3);
}
}
927デフォルトの名無しさん (ワッチョイ 6bda-3ZT4 [121.114.117.145])
2020/04/21(火) 23:24:37.91ID:5ht19G0Q0 初歩的な質問ですみません
スイッチ分のcaseに定数を使ったらエラーで怒られたのですが、ここに定数を使ってはいけないのでしょうか?
文字列の判断の際、定数が安全なのですが、やはりcaseには直に文字列を書くしかないですか?
スイッチ分のcaseに定数を使ったらエラーで怒られたのですが、ここに定数を使ってはいけないのでしょうか?
文字列の判断の際、定数が安全なのですが、やはりcaseには直に文字列を書くしかないですか?
928デフォルトの名無しさん (ワッチョイ 8101-AOao [126.163.132.176])
2020/04/21(火) 23:35:53.08ID:C52TTD3s0 エラー文貼って
929デフォルトの名無しさん (オッペケ Sr27-Jj4D [126.34.1.62])
2020/04/22(水) 04:01:43.60ID:M5XlvSVjr >>927
普通に使えるから書き方間違ってんでしょ
普通に使えるから書き方間違ってんでしょ
930デフォルトの名無しさん (ワッチョイ 171d-Hty+ [202.213.61.90])
2020/04/22(水) 17:53:16.23ID:TD6vt53g0 FileWriterやFileReaderを用いたファイル入出力処理では、
やはりthrowsではなく、try-catch-finallyを使った例外処理をすべきですか?
やはりthrowsではなく、try-catch-finallyを使った例外処理をすべきですか?
931デフォルトの名無しさん (ワッチョイ b79f-zYp9 [118.109.112.224])
2020/04/22(水) 18:33:32.39ID:QyipDPr70 どの層でcatchすべきかはデザイン次第
個人的なツール等で利用者が困らないなら別に外まで投げっぱなしでもいい
いずれにしてもtry-with-resourse文は使うべき
個人的なツール等で利用者が困らないなら別に外まで投げっぱなしでもいい
いずれにしてもtry-with-resourse文は使うべき
932930 (ワッチョイ 171d-Hty+ [202.213.61.90])
2020/04/22(水) 19:14:33.76ID:TD6vt53g0933デフォルトの名無しさん (ワッチョイ fff8-8pil [115.163.210.109])
2020/04/22(水) 23:56:55.34ID:isrmfS5f0 >>926
よきよき
よきよき
934デフォルトの名無しさん (ワッチョイ ff01-9eV8 [111.90.14.57])
2020/04/23(木) 00:02:52.73ID:OS0IvuzA0 早すぎる最適化の典型例
935デフォルトの名無しさん (ワッチョイ cf63-QpYc [153.201.71.238])
2020/04/23(木) 00:54:08.15ID:sh2IntRG0 個別アプリでtry-catch構文を使うなとか嘗め腐った規約
共有部分で使いまくってるのに個別アプリで使うとだめな理由が一切わからない
規約作ってるやつが俺Sugeeeしたいのか
共有部分で使いまくってるのに個別アプリで使うとだめな理由が一切わからない
規約作ってるやつが俺Sugeeeしたいのか
936デフォルトの名無しさん (ワッチョイ ff01-9eV8 [111.90.14.57])
2020/04/23(木) 01:04:14.00ID:OS0IvuzA0937デフォルトの名無しさん (ワッチョイ d7da-1Gce [121.114.134.184])
2020/04/23(木) 09:31:20.01ID:MgcChLvv0 同情してほしいのかw
938デフォルトの名無しさん (ワッチョイ b79f-zYp9 [118.109.112.224])
2020/04/23(木) 17:29:55.27ID:+/WR4MAB0 初心者になるべくtry-catchを使ってほしくないという気持ちは分かる
例外が握りつぶされる
原因例外が途中で捨てられエラー発生元が分からなくなる
無意味なラッピングがされていてcatchがうまく書けなくなる
同じ例外のスタックトレースが何度も何度も出力される
もううんざりだよ
例外が握りつぶされる
原因例外が途中で捨てられエラー発生元が分からなくなる
無意味なラッピングがされていてcatchがうまく書けなくなる
同じ例外のスタックトレースが何度も何度も出力される
もううんざりだよ
939デフォルトの名無しさん (ワッチョイ d701-ho2D [114.165.191.3])
2020/04/23(木) 23:22:54.42ID:EqDE6vCO0 そんなこといったって、どうすりゃいいのさコロコロ(AAry
940デフォルトの名無しさん (オッペケ Sr27-Jj4D [126.34.14.23])
2020/04/24(金) 01:31:21.77ID:7OUYGVe4r ヨシ!
catch(Exception e){
throw new Exception();
}
catch(Exception e){
throw new Exception();
}
941デフォルトの名無しさん (ワッチョイ 6f01-zAxQ [126.163.132.176])
2020/04/24(金) 08:49:19.15ID:SZShfMPk0 例外のたらい回しや〜
942デフォルトの名無しさん (ワッチョイ 5361-Op/G [112.136.82.191])
2020/04/24(金) 12:03:25.18ID:oe7zjHr90 よくある↓のようなifで事前チェックさせる方式がなぜまずいのか考えてみよう。
if (resource.isAvailable()) {
resource.getData();
...
}
if (resource.isAvailable()) {
resource.getData();
...
}
943デフォルトの名無しさん (ワッチョイ fff8-lpxC [115.163.210.109])
2020/04/24(金) 14:43:08.72ID:TokoipqW0 いや普通にロックかければいいじゃない。その例は良くない。
それにgetDataの根本のところでも同じようなことをやってるだろう。
それにgetDataの根本のところでも同じようなことをやってるだろう。
944デフォルトの名無しさん (ブーイモ MM07-Pmq7 [210.138.178.18])
2020/04/24(金) 15:22:40.00ID:+0niyonSM atomicityを問題にしてるわけじゃないだろ
そこは事前チェックする場合だろうと例外でハンドリングする場合だろうと大差ない
そこは事前チェックする場合だろうと例外でハンドリングする場合だろうと大差ない
945デフォルトの名無しさん (ワッチョイ fff8-lpxC [115.163.210.109])
2020/04/24(金) 15:42:12.97ID:TokoipqW0 じゃあ942は何がまずいのか分からん
946デフォルトの名無しさん (スプッッ Sdbf-O1rO [1.75.238.37])
2020/04/25(土) 05:32:13.99ID:EmF7EpXGd 初歩の初歩なんだろうけど
javaでデータを保持しておきたい場合ってどういう風にするのが一般的?
たとえば作った名簿(HashMapなんかを想定)を次に使うときまで保持しておいて、次回はそれを使って続きから作業したいみたいな
テキストで保存しとくとかいくらでもやりようは思いつくんだけど、セオリーを知りたい
javaでデータを保持しておきたい場合ってどういう風にするのが一般的?
たとえば作った名簿(HashMapなんかを想定)を次に使うときまで保持しておいて、次回はそれを使って続きから作業したいみたいな
テキストで保存しとくとかいくらでもやりようは思いつくんだけど、セオリーを知りたい
947デフォルトの名無しさん (ワッチョイ 6b1d-Hty+ [180.178.91.194])
2020/04/25(土) 06:22:35.23ID:4NLY0GvS0 tryの後の()の中に2つ文を書くことは出来ますか?
例えば、
try(FileReader fr = new FileReader(fileName);
BufferedReader br = new BufferedReader(fr);)
と書けますか?
例えば、
try(FileReader fr = new FileReader(fileName);
BufferedReader br = new BufferedReader(fr);)
と書けますか?
948デフォルトの名無しさん (ブーイモ MMbf-Pmq7 [163.49.203.164])
2020/04/25(土) 11:40:04.07ID:ek8I9sztM >>946
シリアライズでググれ
シリアライズでググれ
949デフォルトの名無しさん (ブーイモ MMbf-Pmq7 [163.49.203.164])
2020/04/25(土) 11:40:45.14ID:ek8I9sztM >>947
tryの後は{}
tryの後は{}
950947 (ワッチョイ 6b1d-Hty+ [180.178.91.194])
2020/04/25(土) 12:09:14.21ID:4NLY0GvS0951デフォルトの名無しさん (ブーイモ MMbf-Pmq7 [163.49.208.236])
2020/04/25(土) 12:40:24.18ID:pY24ooGqM952947 (ワッチョイ 6b1d-Hty+ [180.178.91.194])
2020/04/25(土) 12:52:44.81ID:4NLY0GvS0953947 (ワッチョイ 6b1d-Hty+ [180.178.91.194])
2020/04/25(土) 19:13:40.59ID:4NLY0GvS0 たびたびすいません
https://pastebin.com/dTMz4gib
上のコードがコンパイルエラーになってしまうのですが、理由が分かりません
「identifierがありません」と表示されてしまいます
どなたかよろしければ、回答をお願いします
https://pastebin.com/dTMz4gib
上のコードがコンパイルエラーになってしまうのですが、理由が分かりません
「identifierがありません」と表示されてしまいます
どなたかよろしければ、回答をお願いします
954デフォルトの名無しさん (ワッチョイ cfe9-QpYc [222.15.235.177])
2020/04/25(土) 19:56:44.28ID:7cJ26G9d0 >>953
try(FileReader fr = new FileReader("matrixA.txt");
BufferedReader br = new BufferedReader(fr)) {
try(FileReader fr = new FileReader("matrixA.txt");
BufferedReader br = new BufferedReader(fr)) {
955デフォルトの名無しさん (アウアウエー Sa5f-1Gce [111.239.64.167])
2020/04/25(土) 20:01:48.54ID:ft4DoFbAa try(
ではなくて
try{
では?
ではなくて
try{
では?
956デフォルトの名無しさん (ワッチョイ b79f-zYp9 [118.109.112.224])
2020/04/25(土) 21:13:46.97ID:OfMSEBEA0 >>953
変数宣言はtry ()の内側に書く必要がある
Java9あたりからは外で宣言しても良くなったけど、それでもeffectively finalであることが前提だからfrへの代入はNG
そもそもメソッド冒頭に宣言を集めてしかも取りあえずnullで初期化しとけってのは悪癖だからやめた方がいい
変数宣言はtry ()の内側に書く必要がある
Java9あたりからは外で宣言しても良くなったけど、それでもeffectively finalであることが前提だからfrへの代入はNG
そもそもメソッド冒頭に宣言を集めてしかも取りあえずnullで初期化しとけってのは悪癖だからやめた方がいい
957デフォルトの名無しさん (ワッチョイ f75f-Btmo [106.73.70.129])
2020/04/25(土) 23:24:22.99ID:WvCOhEhy0 >>953
言いたかないけど質問のレベルが低すぎる気がする。
変数のスコープも理解できてないようだし、
それコピペしてきて動けばいい感じで動かしているだけだよね。
学校の宿題なんだろうけど、もっとちゃんと勉強しようよ。
ここでサボって人に聞いたものを単純に覚えていたら
この先何も書けなくなるよ。形を覚えるんじゃなくて
意味を覚えよう。
言いたかないけど質問のレベルが低すぎる気がする。
変数のスコープも理解できてないようだし、
それコピペしてきて動けばいい感じで動かしているだけだよね。
学校の宿題なんだろうけど、もっとちゃんと勉強しようよ。
ここでサボって人に聞いたものを単純に覚えていたら
この先何も書けなくなるよ。形を覚えるんじゃなくて
意味を覚えよう。
958947 (ワッチョイ 6b1d-Hty+ [180.178.91.194])
2020/04/25(土) 23:49:36.24ID:4NLY0GvS0959デフォルトの名無しさん (ワッチョイ b79f-zYp9 [118.109.112.224])
2020/04/26(日) 10:51:45.92ID:BocD88xX0 >>958
文法規則を知らないって意味ではなくスコープとはどう活用すべきものなのかが把握できてないってことだと思うよ
たとえばクリティカルシンキングのスキルが不足している優しいイイ人は10年やっても残念なコードしか書けないことがよくある
もしプロとしてJavaを書いて金を貰っているならリーダブルコードのような良書を一冊読んでみるのをお薦めする
文法規則を知らないって意味ではなくスコープとはどう活用すべきものなのかが把握できてないってことだと思うよ
たとえばクリティカルシンキングのスキルが不足している優しいイイ人は10年やっても残念なコードしか書けないことがよくある
もしプロとしてJavaを書いて金を貰っているならリーダブルコードのような良書を一冊読んでみるのをお薦めする
960デフォルトの名無しさん (ワッチョイ 1f02-Btmo [59.129.240.22])
2020/04/26(日) 11:59:50.88ID:aAS4CHj70 すいません初心者です助けてください…課題でいきなり詰まってます…
課題の言ってることはわかるのですが、いざ書こうとなるとうまくまとめることが出来ません…
解答例を示していただけないでしょうか…
https://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q14223782454
長すぎてエラーになってしまったので知恵袋の投稿見ていただけると助かります…
課題の言ってることはわかるのですが、いざ書こうとなるとうまくまとめることが出来ません…
解答例を示していただけないでしょうか…
https://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q14223782454
長すぎてエラーになってしまったので知恵袋の投稿見ていただけると助かります…
961デフォルトの名無しさん (ドコグロ MMff-i0du [119.241.52.20])
2020/04/26(日) 12:04:35.25ID:0wpm4o+CM >>960
★★ Java の宿題ここで答えます Part 74 ★★ [無断転載禁止]©2ch.net
https://mevius.5ch.net/test/read.cgi/tech/1477625280/
★★ Java の宿題ここで答えます Part 74 ★★ [無断転載禁止]©2ch.net
https://mevius.5ch.net/test/read.cgi/tech/1477625280/
962デフォルトの名無しさん (ワッチョイ d7b0-DEv8 [114.165.4.23])
2020/04/26(日) 12:05:05.54ID:f4V9z6xn0 Javaのgoldまで取得できたので実際に何か作ってみたいと思っています
Java + MySQL + Tomcatで作る掲示板とブログという本を参考に掲示板を作ってみようと思っているのですがこの本で問題ないでしょうか?
発売されたのは2005年みたいなので古すぎて参考にならないとかありますかね?
Java + MySQL + Tomcatで作る掲示板とブログという本を参考に掲示板を作ってみようと思っているのですがこの本で問題ないでしょうか?
発売されたのは2005年みたいなので古すぎて参考にならないとかありますかね?
963デフォルトの名無しさん (ワッチョイ ff01-9eV8 [111.90.14.57])
2020/04/26(日) 12:14:02.60ID:47T+vKxr0 >>962
作るのに資格も本も必要ないググって作れるっしょ
作るのに資格も本も必要ないググって作れるっしょ
964デフォルトの名無しさん (ワッチョイ ff01-9eV8 [111.90.14.57])
2020/04/26(日) 12:29:34.20ID:47T+vKxr0965デフォルトの名無しさん (ワッチョイ 1f02-Btmo [59.129.240.22])
2020/04/26(日) 12:37:25.80ID:aAS4CHj70966デフォルトの名無しさん (アウアウウー Sa17-Lf76 [106.128.187.188 [上級国民]])
2020/04/26(日) 14:02:57.82ID:G0DkXyp/a 【 課題 】 https://drive.google.com/open?id=1QaPxq5C66ZQpcCyITgS2XCQDs44zoomy
複数あるのでgoogledriveで課題内容を共有させていただきます
【 形態 】1. Javaアプリケーション
【 GUI 】
【 期限 】4月29日
【 補足 】丸投げです…申し訳ありません…
複数あるのでgoogledriveで課題内容を共有させていただきます
【 形態 】1. Javaアプリケーション
【 GUI 】
【 期限 】4月29日
【 補足 】丸投げです…申し訳ありません…
967デフォルトの名無しさん (アウアウウー Sa17-Lf76 [106.128.187.188 [上級国民]])
2020/04/26(日) 14:03:17.84ID:G0DkXyp/a すいませんスレ間違えました…
968デフォルトの名無しさん (アウアウウー Sa17-Lf76 [106.128.184.230 [上級国民]])
2020/04/26(日) 20:56:15.37ID:2WL2jfIba エクリプスでjunit使いたいんですけど、うまくいきません…
ここ見れば使い方わかるみたいなサイトってありますか?
自分でも調べてやってみたんですけど、「テストランナーjunit4のテストが見つかりません」と出てしまい困ってます…
ここ見れば使い方わかるみたいなサイトってありますか?
自分でも調べてやってみたんですけど、「テストランナーjunit4のテストが見つかりません」と出てしまい困ってます…
969デフォルトの名無しさん (ワッチョイ 572c-iUOt [153.194.236.234])
2020/04/26(日) 23:02:21.88ID:IvO3yqTY0970デフォルトの名無しさん (ワッチョイ ff01-9eV8 [111.90.14.57])
2020/04/26(日) 23:27:59.91ID:47T+vKxr0 >>968
ビルドパスにjunitのjarとhamucrestのjarを追加して
こういうクラス書いて実行すればできるっしょ
import org.junit.Test;
public class MainTest {
@Test
public void testA() {
System.out.println("hoge");
}
}
ビルドパスにjunitのjarとhamucrestのjarを追加して
こういうクラス書いて実行すればできるっしょ
import org.junit.Test;
public class MainTest {
@Test
public void testA() {
System.out.println("hoge");
}
}
971デフォルトの名無しさん (アウアウエー Sa5f-Op/G [111.239.186.191])
2020/04/28(火) 22:04:38.77ID:NIccQJ3va ttps://github.com/OneLoneCoder/olcPixelGameEngine/blob/master/Videos/OneLoneCoder_PGE_ShadowCasting2D.cpp
の416から425行の処理はjavaではどう書くのでしょうか?
の416から425行の処理はjavaではどう書くのでしょうか?
972デフォルトの名無しさん (ワッチョイ fff8-8pil [115.163.210.109])
2020/04/28(火) 22:41:02.37ID:96XBocG+0 Tuple相当のクラスに独自のhasCode()メソッドとequals()メソッドを定義してLinkedTreeSetに突っ込んだらどうかね
973デフォルトの名無しさん (ワッチョイ ff01-9eV8 [111.90.14.57])
2020/04/28(火) 23:33:36.32ID:4kUhwH6S0974デフォルトの名無しさん (アウアウエー Sae3-D935 [111.239.186.191])
2020/04/29(水) 09:13:39.21ID:GLkFkZ60a975デフォルトの名無しさん (ワッチョイ 0601-6t4H [111.90.14.57])
2020/05/06(水) 02:37:11.81ID:UCNL2IRg0 質問
マルチスレッドでコンストラクト中の状態を逸出させないということで
コンストラクタの中でインスタンスメソッドを呼ばないようにしましょうという原則がありますが
コンストラクタの中でインスタンスメソッドを呼びたいときもあると思います
そういうときみなさんはどうしていますか?
・コンストラクタの代わりにstaticのファクトリメソッドを作ってその中でnewしてインスタンスメソッドをコールする
・コンストラクタの中で呼びたいインスタンスメソッドを別のクラスに移動する
・シングルスレッドでしか使わないのでマルチスレッドの原則なんて気にしない、コンストラクタの中でインスタンスメソッドをコールする
・その他
アンケートみたいな感じですけどご回答いただければ幸いです
マルチスレッドでコンストラクト中の状態を逸出させないということで
コンストラクタの中でインスタンスメソッドを呼ばないようにしましょうという原則がありますが
コンストラクタの中でインスタンスメソッドを呼びたいときもあると思います
そういうときみなさんはどうしていますか?
・コンストラクタの代わりにstaticのファクトリメソッドを作ってその中でnewしてインスタンスメソッドをコールする
・コンストラクタの中で呼びたいインスタンスメソッドを別のクラスに移動する
・シングルスレッドでしか使わないのでマルチスレッドの原則なんて気にしない、コンストラクタの中でインスタンスメソッドをコールする
・その他
アンケートみたいな感じですけどご回答いただければ幸いです
976デフォルトの名無しさん (ワッチョイ 82ad-48kr [27.139.77.105])
2020/05/06(水) 06:32:23.63ID:izcxg96Z0977デフォルトの名無しさん (ワッチョイ 8d9c-HM7w [122.249.239.156])
2020/05/06(水) 07:43:10.31ID:4GtcOPgo0978デフォルトの名無しさん (ワッチョイ 0601-6t4H [111.90.14.57])
2020/05/06(水) 09:33:39.20ID:UCNL2IRg0979デフォルトの名無しさん (ワッチョイ 519f-FhGp [118.109.112.224])
2020/05/06(水) 11:58:04.95ID:q8N1X/Ij0 >>977,978
別の話が混ざり合ってるな
読んだ人は腑に落ちないか誤解すると思う
互いに密接で合わせ技もあるので完全に切り離すことはできないけど、一緒くたにすると影響や対処に漏れが出る
> マルチスレッドでコンストラクト中の状態を逸出させない
という表現に合うのはこれ
https://www.jpcert.or.jp/java-rules/tsm03-j.html
ただしコンストラクタとは別の初期化メソッドを提供する場合の話
コンストラクタ中から逸出させるなという規約はこれ
https://www.jpcert.or.jp/java-rules/tsm01-j.html
コンストラクタからのインスタンスメソッド呼び出し自体は問題にしてない
シングルスレッドの場合も問題がある
>>976はこれ
https://www.jpcert.or.jp/java-rules/met05-j.html
this逸出の話に比べるとかなり限定的な話
別の話が混ざり合ってるな
読んだ人は腑に落ちないか誤解すると思う
互いに密接で合わせ技もあるので完全に切り離すことはできないけど、一緒くたにすると影響や対処に漏れが出る
> マルチスレッドでコンストラクト中の状態を逸出させない
という表現に合うのはこれ
https://www.jpcert.or.jp/java-rules/tsm03-j.html
ただしコンストラクタとは別の初期化メソッドを提供する場合の話
コンストラクタ中から逸出させるなという規約はこれ
https://www.jpcert.or.jp/java-rules/tsm01-j.html
コンストラクタからのインスタンスメソッド呼び出し自体は問題にしてない
シングルスレッドの場合も問題がある
>>976はこれ
https://www.jpcert.or.jp/java-rules/met05-j.html
this逸出の話に比べるとかなり限定的な話
980デフォルトの名無しさん (ワッチョイ 8d9c-HM7w [122.249.239.156])
2020/05/06(水) 12:22:20.27ID:4GtcOPgo0 これってJVMのバグではないの?
JVMがコンストラクタが完了するまでインスタンス参照を変数に代入しないようになれば解決するんじゃないの?
なぜ不完全なインスタンスへの参照が変数に設定される可能性をプログラマーが考慮し続けてないといけないの?
今後もずっと続くの?
JVMがコンストラクタが完了するまでインスタンス参照を変数に代入しないようになれば解決するんじゃないの?
なぜ不完全なインスタンスへの参照が変数に設定される可能性をプログラマーが考慮し続けてないといけないの?
今後もずっと続くの?
981デフォルトの名無しさん (ワッチョイ 0601-6t4H [111.90.14.57])
2020/05/06(水) 12:22:37.91ID:UCNL2IRg0982デフォルトの名無しさん (ワッチョイ 519f-FhGp [118.109.112.224])
2020/05/06(水) 15:56:16.60ID:q8N1X/Ij0 >>981
一般論うんぬんじゃなくて論理的かどうかで判断しないとプログラムは言うことを聞かないし
こんな匿名の場で少ないサンプルを集めたところでかりそめの安心感しか得られない
俺の脳内のタカアンドトシが女子か!!と激しくツッコミいれるわ
俺は上で挙げたルールに反しないように書くよ
一般論うんぬんじゃなくて論理的かどうかで判断しないとプログラムは言うことを聞かないし
こんな匿名の場で少ないサンプルを集めたところでかりそめの安心感しか得られない
俺の脳内のタカアンドトシが女子か!!と激しくツッコミいれるわ
俺は上で挙げたルールに反しないように書くよ
レス数が950を超えています。1000を超えると書き込みができなくなります。
ニュース
- 小野田紀美・経済安保担当相「何か気に入らないことがあればすぐに経済的威圧をする国への依存はリスク」 ★2 [Hitzeschleier★]
- 日本行き空路49万件キャンセル 中国自粛呼びかけ 日本行きチケット予約の約32%に相当 ★2 [ぐれ★]
- 【中国局長】両国関係に「深刻な影響」 首相発言の撤回要求 [蚤の市★]
- 外務省局長は無言で厳しい表情…日中の高官協議終了か 高市首相“台湾”発言で中国が強硬対応 発言撤回求めたか…★3 [BFU★]
- 【インバウンド】中国人観光客の日本での消費額は年間約2兆円超…中国政府は公務員の出張取り消し [1ゲットロボ★]
- 日経平均の下落率3%超す、財政懸念で長期金利上昇 ★2 [お断り★]
- 【実況】博衣こよりのえちえち歌枠🧪
- 【高市朗報】 日本政府「一昨年は1300億円。去年も防衛費が1100億円余ったw」 日本の防衛費は充分足りてる事が判明。増やす必要無し [485983549]
- 【高市速報】日本人の3割「中国への武力行使に踏み切る必要がある」ANN世論調査 [931948549]
- 高市早苗「支持者の理解を得られないので台湾発言を撤回できない」 [931948549]
- 外務省局長、よくわからないまま帰国へ [834922174]
- 中国外務省「日中関係の悪化は高市早苗首相が原因」と名指しで強く非難。キタ━(゚∀゚)━! [153490809]
