★★Java質問・相談スレッド183★★
■ このスレッドは過去ログ倉庫に格納されています
プログラミング言語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質問・相談スレッド182★★
https://mevius.5ch.net/test/read.cgi/tech/1542595026/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured >>159
ありがとうございます、初心で VRMLをテキストエディタで書くところから初めてたので
VRMLファイルをそのまま流用しようと思い
Java 3Dでvrml97.jarのローダーを使いました
背景にwrlファイルを読み込み
アバターはobjローダーで簡易な3Dワールド構築がしたかったのですが、JavaからOpenGLの
使い方がよく分からず、難しいです。 >>160
ありがとうございます調べたところ
ライトウェイトゲームライブラリーというものだそうですが、
アマゾンなどではLWJGLの書籍が見当たりません、日本のサイトも見当たらなくて
使い方などの分かりやすいサイトなどがあればよろしくお願いします。
JavaFXはウィンドウデザイン向けでしょうか?
グラフィック部が別スレッドらしいですね
これも開発が外部に移ってるみたいですが
簡単に 3Dも出来るのでしょうか?
lwjglとjavafxを混成できるのかも
wrlファイルやobjファイルが読み込み出来るのかもよくわかりません 国連から表彰されても引退なの?個人アプリ開発の世界は残酷だ。
https://appmarketinglabo.net/leorivas-interview/
「約3年で1,180万円を稼いだ、いま広告収入は月100万くらい」地味だけど寿命は長い「電卓アプリ」実際に効果があった5つの施策。
https://appmarketinglabo.net/calculator-1100man/
パチスロ生活しながらアプリ開発で1,500万円稼いだ「ダメ人間」が語る、ソシャゲとパチンコ
パチスロの客層融合説と、電卓アプリ作者が語る3年の収益推移
https://appmarketinglabo.net/pachislotapp-damehuman/
1日に3〜5万円だったアプリ収益が「プロモーションで大化け」数百万円を稼げるように。
AppLovinが語る「ハイパーカジュアル」の可能性と成功のコツ。
https://appmarketinglabo.net/hypercasual-applovin/
なぜそこにアラブ人。スマホゲームに飢えた「アラブの課金王」国境を越える。そこに
「存在しないはずのアラブ人」が欧米のアプリストアをつかう真実。
https://appmarketinglabo.net/arab-mobilegame/
約4年でアプリ売上1億円。副業からスタートしたアプリ開発会社「AppStair」が
730万ダウンロードを達成し、メタップスに買収されるまで。
https://appmarketinglabo.net/appstair-ma/ java 15でzgcが実験段階終わるけど
java 11もアップデートされたりするんだろうか?
LTSだしそうして欲しいんだが 常識的に考えてするわけないだろ
変なアップデートに怯えずに安心して塩漬けするためのLTSなのに jdk11のログみてたらshenandoahのbackportというコミット履歴があったから
たぶんshenandoahはjava15相当のが来てる jdk8にもbackportされてるけど一部のJDKのみ採用してるようだ メソッドのオーバーロードで
あるものは返り値返さずあるものは返り値返す
ということはできますか? >>169
戻り値だけを変えてオーバーロードすることはできないっす 引数の数や引数の型を変えないとオーバーロードはできない 戻り値を変えるといっても狭める(親クラスの戻り値クラスのサブクラスにする)ことしかできないんじゃなかった?
まったく関係ない戻り値型にできたら多態性が失われる >>174
あ、そうですね
オーバーライドの話だとばかり思い込んでしまいました
ご指摘ありがとうございます むしろオーバーロードは戻り値を揃えるために使うものと考える。
一番分かり易い例がファクトリ。 同じ名前のメソッドを定義できますよってだけで戻り値は好きにしたら良いよ
同じになることもあれば異なることもある int同士のmax関数とdouble同士のmax関数
もし戻り値を変えられない制約があったらイラっとするじゃん? max関数はジェネリクスでは難しいかも
ジェネリクスが使えることもあるだろうけど 浮動小数点数と整数は比較の仕方から違ったりするから
処理を共通化できるならジェネリクスでそうじゃないならオーバーロードで
というわけ方になるのだろうね 為替レートをデスクトップに表示できるアプリはjavaで作成できるんでしょうか?SBIからリリースされていた「カベプラ」のようなアプリです ブラウザに表示させたいのか、ウインドウを独自で開けて表示したいのかによる。
どちらも可能だけど >>184
java作成できるんですね、ありがとうございます
ウィンドウ表示で画面の端に置いておきたいのです >>180
java.lang.Mathが実際maxを始めとしてそういうオーバーロードだらけだよ
既に言われている実装の違いはJDKのソースで見れる
演算やロガーみたいに激しく高頻度で呼ばれるメソッドの場合、ボクシングのコストを嫌って各種プリミティブのオーバーロードを揃えることが多い もっとJavaジャバしたいのにどんどん頭から抜けていって全然泳げません
もっと深くためるにはどうしたら良いですか? 本人の記憶力が乏しいのは誰かに聞いて治るもんじゃない >>191
なるほど滝行ですねありがとうございます
>>192
もっと沢山水を浴びないとダメなんですね Java経験者と未経験者とではKotlinへの学習効率が大きく異なると聞いたことがあるのですが、
Kotlin経験者も、Kotlin未経験者に比べるとJavaの学習効率は高くなりますか? 未経験でJavaエンジニア目指す場合じゃんけんゲームみたいなしょぼい作品はgitにのせない方がいいの? >>194
もちろん
必要な知識の一部が共通だから、必要な学習量自体が少なくなる
効率はKotlinを先にした方が多分悪い >>195
のせていいよ
友人間のプライベートな動画をYouTubeにのせていいのと同じ どうだろうなあ
自己PR用のポートフォリオとして使うならくだらないものは載せないほうがいいと俺は思うが
実際はgithubアカウント持ってるエンジニア自体が少ないからね
「なんだこの程度のものしか作ったことがないのか」
「少なくともgithubアカウント作るくらいの意欲はあるしgitも使えるんだな」
良くとられらるか悪くとられるかは相手次第だろうか あとはgithubとSNSの区別が付いてない馬鹿もいる
「こいつを雇ったらうちの資産をネットにアップして晒されるかも」みたいなトンチンカンな判断する人もいるよ
だから俺はネットでの活動をリアル社会で繋がりのある人に話したり自慢したりはしない 実務未経験でも掲示板とかTwitterの模倣サイトみたいなの作らないとプラス評価にはならないのかな >>199
逆にベンチャー系だとソースだけ欲しがったりするから、公開するのも考えものだったりする Vue vs React vs Angular Part.3
https://mevius.5ch.net/test/read.cgi/tech/1560333895/586
プログラミング未経験のポートフォリオ作成動画
Ruby on Rails, Bootstrap, Github, Heroku Javaって例外遅いんですか?
Goみたいにエラー、エラー判定、エラー、エラー判定…
って繰り返して巻き戻していくより早い気がするんですが 遅くないよ
何百万回も実行したら数ミリ秒の差は出るかもしれないというレベル
ちなみに例外が遅いと言われていたのは例外機構ではなく例外インスタンスの生成な
例外インスタンスが保持するスタックトレースを作るのが重いと言われていた(昔の話) 遅いよ。超遅い。
エラーコードによる判定が1msで終わるところを例外だと100msくらいかかる。
10億回試行で。 paizaだと例外の方が時間がかかったけどローカルでJITコンパイル切って実行したら逆の結果になった
これはわからんな
https://paiza.io/projects/IcXMFru7MVKOOVFx7YMzSQ >>211
208が書いてるように、遅いのはスタックトレースなんで、例外が発生しなければ大して遅くならない。 ありがとうございます
ただ例外が起こらんときのことが知りたくて
戻り値方式だと
関数呼び出すたびに呼び出し元で毎回エラー判定いるから
これみたいに、エラー起こりまくるときに例外使うと遅くなるだろうけど
エラーがめったに起きないとき
戻り値方式で毎回エラー判定処理入ったら
その判定分通常処理が遅くなったりしないかと ってあれ?
これもINTEGER_MAXまで例外起きないのに遅いのか クラスのロードで変な差がついてんじゃね?と思って2回回したら
2回目のほうが遅くなった
そんな馬鹿な… testExceptionとtestResultの実行順序入れ替えたらtestExceptionのが早くなった
どういうわけか1回目の計測ちゃんと結果でてない 遅い遅くないって、10億回繰り返した後の100ミリ秒の差に一喜一憂してるの?
冗談やネタじゃなくて?
なお例外が出る場合は10万や100万throwくらいのオーダーで有意差が出る模様 >>216
vmのパラメータに-XintをつけてJITコンパイルを止めると良いかも
実際に動くときはJITコンパイルは行われるだろうけどコストを調べるだけなら 速度よりは書いてるコードにどっちが向いてるかで選んだか良いかも、基本例外使うけどたまにEitherオブジェクト使った方がきれいに書けることある 2回目以降のほうがおそくなるのPaizaのせいかと思ったらローカルでもなった
ほんとに特殊なコンパイルされてるのかなあ
俺の常識がこわれた CDIでAmbiguousResolutionExceptionが発生した場合ってどう対処すればいいんですか?
同じインターフェースを実装するクラスが2つあって、片方は自作のクラスなんですが、もう片方はライブラリに組み込まれていてコードの修正ができません
クラスのクライアント側もライブラリ内なので手出しできません
自作のクラスを優先して使わせたいのですが可能でしょうか? jdkの内部実装を学ぼうと思ってるんだけど
良いサイトとか本ある? 外クラスから内クラスのprivateメンバが見れるのはなぜですか?
超論理的思考によるとどう考えても理論に欠陥があり矛盾してる。
みなさんはこのJavaにおけるクラス体系をおかしいと思いながら割りきって使ってるのですよね? ところで継承したサブクラスをインスタンス化したときは
メモリ上にはスーパークラスの情報も存在するのですか?
だってsuper.xxx、とスーパークラスのオーバーライド前のフィールドやメソッドも使えるはずだし。 >>226
クラスさえもメンバの一種と考えれば良い private可視性といえばインスタンスを跨げるのも違和感あるよな
MyClassにprivateフィールドnameがあるとき
MyClassのインスタンスaからMyClass bのnameが見れちゃう
人間にはチンポついてるじゃん
でもaさんがbさんのチンポ見れちゃまずいでしょ
aさんが見れるのは自分のチンポだけってほうが自然じゃない? 最新のpleiadesでjframeをやろうと思ったらエラー出ました
openJDKだからだと思うんですが何をしたらswingなどが
使えるようになりますか?
system.out.printlnはうまくいったのでコードの書き方には
問題はないはずです Javaのprivateは同じソースファイルからなら見えるの意だな
ひとつのソースは巨大すぎず、また同じ人が上から下まで書くだろうという前提に立つと、アクセスしたくなければ当人が判断してアクセスしなければ良い
コントロール下にあるなら自由にさせろという、合目的的な線引きの仕方
小さく完結してるならprivateというコンパイラ支援を受けるメリットが少ない
一方、後から手を入れる必要があるときは勝手にpublicに書き換えられたりgetterを増やされたりまで注意が必要
それはもはやスコープ指定の仕事じゃない >>232
>>1
質問時の心得
・コンパイルエラーか実行時エラーか、エラーではないが意図しない動作なのかはっきりしろ。あとエラーメッセージちゃんと読め。
・前提条件としてOS、開発環境、バージョン、使用フレームワーク等を明記。 エラーメッセージくらい書けばよかっですね
すみません
プロジェクトを一旦削除して
バージョン(1.8)のjdkに変えたら動きました Javaを始めたばかりの初心者です
Androidアプリを開発してるのですが
このような動作は出来るのでしょうか?
動作A(UIの読み込み&操作等)
for (int i = 0; i < forNum; i++) {
動作B
インターバル(数秒)
}
の用にしたいのですが、
インターバルにSystemClock.sleep()を使うと動作A(UIの動作)まで止まってしまいます。
どうにか動作Bのみを数秒待機させる方法はないのでしょうか? >>239
メインスレッド(UIスレッド)でスリープするのは禁じ手なので、threadなりasynctaskなりを作ってその中で動作Bの処理をする。
終わったら必要に応じてメインスレッドに通知する。
詳細
https://developer.android.com/guide/components/processes-and-threads?hl=ja >>241
>>242
ありがとうございます!
明日試してみます >>244
System.getProperty("java.version"); 10base-Tの10はテン
100base-Tの100はヒャクだぞ >>252
ダメだ。
アルツハイマーでもこれくらい分かる。 数独のプログラムで3×3マスの部分で被りがないか判定するにはどうすればいいの? 配列[行][列]
同じ列の行なら、
ary[0][0], ary[1][0], ary[2][0]
同じ行の列なら、
ary[0][0], ary[0][1], ary[0][2] そのやり方だと9つのブロックに名前つけて9通りのfor文を用意する必要があると思うんだけどもう少しスマートなやり方ないかな? Set<Integer>に突っ込んで要素数が8以外だったら重複してる ■ このスレッドは過去ログ倉庫に格納されています