Java入門・初心者質問スレ Part.5©2ch.net

レス数が950を超えています。1000を超えると書き込みができなくなります。
2017/09/29(金) 17:53:25.24ID:XnizQSCA
Java初心者のためのスレッドです。

※前スレ
Java入門・初心者質問スレ Part.4
http://mevius.2ch.net/test/read.cgi/tech/1498828456/
2017/12/07(木) 09:09:27.77ID:KWo8l2EW
>>880
じゃあそういう人が自己解決しようとせず聞くのはなぜ?
2017/12/07(木) 09:13:58.60ID:gGd2iwl3
ここに出てくる奴らはやることが目的だからな
やったら満足するんだよ
884デフォルトの名無しさん
垢版 |
2017/12/07(木) 09:39:10.48ID:f+S5MXuk
>>882
構って貰いたいから
885870
垢版 |
2017/12/07(木) 16:30:57.21ID:jTpa71sZ
>>872 >>876
ちょっと高度でしたが、回答ありがとうございました。
2017/12/07(木) 17:42:15.02ID:iddzEciV
Version: Mars.1 Release (4.5.1)
Build id: 20150924-1200

https://www.fastpic.jp/viewer.php?file=6481350233.png
うそつきよばわりされたのではらざるをえない
デグレしてるようだ
2017/12/07(木) 17:43:07.42ID:iddzEciV
https://www.fastpic.jp/images.php?file=6481350233.png
888遊園
垢版 |
2017/12/07(木) 19:42:49.82ID:AoT+leNM
>>888 GET!!
889デフォルトの名無しさん
垢版 |
2017/12/07(木) 21:58:29.50ID:vCxxxgNK
JSPよりJSFのほうが良いのかい?
890デフォルトの名無しさん
垢版 |
2017/12/07(木) 22:01:11.76ID:vCxxxgNK
やっとEclipseから実行で自作サーブレットをJetty上で稼働できるようになったぞ。
Hello World!表示させるだけだけどな。
891デフォルトの名無しさん
垢版 |
2017/12/07(木) 22:06:14.12ID:vCxxxgNK
Jettyは速いなあ。
892デフォルトの名無しさん
垢版 |
2017/12/08(金) 01:47:13.57ID:AYIAveMh
プログラム起動時の最初は読み込むべき場所は未定で、
起動した後でライブラリとなる.jarの場所が決まる場合、どう動的読み込みすればいいの?
ちなみにjava8は対象ではなくjava9のみが対象。
2017/12/08(金) 02:59:14.56ID:V2JkrQBK
以前マルチスレッドからの戻り値の受け取り方の質問をしたものです。

一つのクラスの中にマルチスレッドで実行したいメソッドが2種類以上ある場合は
どう定義するのがいいでしょうか。
いまは、Callable を実装した無名インナークラスのインスタンスを返すメソッドを
複数定義して、そのCallableインスタンスを使用してスレッドを起動しています。

マルチスレッドで実行したいメソッドを持つクラス: (N=1, 2,...)

Callable<VVV> callableN = new Callable<VVV>(){ <--- メソッドを呼び出すための Callable クラス
public VVV call() throws Exception {
return methodN();
};

VVV methodN(){ <--- マルチスレッドで実行したいメソッド
...
}

Callable<VVV> getCallableN(){ <--- Callable を返すメソッド
return callableN; <--- これを使ってスレッドを生成
}
2017/12/08(金) 16:26:40.06ID:sGNmKBwr
>>880
基礎学びました次何すればいいですか?
と書くような人はそういうタイプではないと思うが
2017/12/08(金) 22:12:27.14ID:HbiMaz32
メソッドの引数に、2つ以上のインターフェースを同時に実装してるクラスだけを取らせたいですが
うまいやりかたってあるでしょうか。

2つのインターフェースを継承したインターフェースを新たに作るやりかたしてましたが
実装が必要なインターフェースの数がネズミ算的な勢いで増えて破綻気味です。
896デフォルトの名無しさん
垢版 |
2017/12/08(金) 23:36:01.39ID:cfS0ROAc
<T extends A & B> void method(T param);

これでえーんちゃう?
897デフォルトの名無しさん
垢版 |
2017/12/08(金) 23:40:47.06ID:cfS0ROAc
メソッドがネズミになるからダメなのか
898デフォルトの名無しさん
垢版 |
2017/12/09(土) 00:02:57.57ID:I7bRoYno
>>896
そんなことできるのか。
2017/12/09(土) 00:11:34.02ID:XVt9MCL0
>>896
ありがとうございます!
まさに自分が探してたものです

JavaのGenericsはコンパイルすると消えるらしいのでメソッドが増殖することもないはず
たぶん
2017/12/09(土) 00:15:33.25ID:tQfblyYO
全角嫌い
2017/12/09(土) 00:17:55.02ID:XVt9MCL0
問題は初見だとすごく混乱することぐらいでしょうか

型定義をGenericsに吐き出しただけで、トリッキーさはないようにも思えるが
現場で使ったら何と言われるやら
2017/12/09(土) 08:34:15.17ID:CWY4MyiC
プログラマ殺すにゃ刃物はいらぬ
全角英数混ぜりゃいい
2017/12/09(土) 09:29:06.19ID:GAIqgq2n
全角スペースもな
2017/12/09(土) 09:54:26.34ID:cTAqB2KG
いまどきIDEがエラー出してくれるしJavaはUTF8対応だ
全角ごときで死ぬものか
905デフォルトの名無しさん
垢版 |
2017/12/09(土) 10:00:24.71ID:I7bRoYno
JavaにC/C++のconst相当の物はないですかね?
906デフォルトの名無しさん
垢版 |
2017/12/09(土) 10:32:05.56ID:9tKjPHTg
>>899
誤解がある気がする

| TypeParameter:
| TypeVariable TypeBoundopt
|
| TypeBound:
| extends TypeVariable
| extends ClassOrInterfaceType AdditionalBoundListopt
|
| AdditionalBoundList:
| AdditionalBound AdditionalBoundList
| AdditionalBound
|
| AdditionalBound:
| & InterfaceType

TypeVariableとTypeBoundがあって
TypeVariableは実行時に指定できるのだけれども
TypeBoundは具体的なクラス型・インタフェース型を取るみたいよ

なので、インターフェースの組み合わせの数だけメソッドを定義しないといけないし
ジェネリクスはオーバーロードできないのでそれぞれ別の名前を付けないといけない
2017/12/09(土) 11:39:06.28ID:iGLDW7rr
すっきりJAVA入門読んでる素人だけど
はよウィンドウアプリつくりたい!はよ!はよ!
とりあえず実践編も買って今日届く
2017/12/09(土) 11:54:13.34ID:CWY4MyiC
>>904
精神攻撃だ
2017/12/09(土) 11:56:33.04ID:tQfblyYO
それならゲーム製作で学ぶJava的な本も同時進行でやるといいかもしれんな
2017/12/09(土) 12:00:30.11ID:iiYkmqNu
javaでpcのguiアプリ作るメリットって何?
linuxならそもそもguiじゃなくてコマンドラインで動かすことが多いだろうし、windowsで動かすだけならクロスプラットフォームのjavaじゃなくて良くね?って思っちゃうんだけど。
javafxとかってどう使われてるの?
2017/12/09(土) 12:04:04.52ID:awJ9eWLV
>>910
メリットはないし、事実ほとんど使われてない
クロスプラットフォームは今だとelectronが人気だね
2017/12/09(土) 12:15:37.17ID:iGLDW7rr
>>909
おーそうですか
参考にします
ゲームじゃなくてもウィンドウアプリに特化したような本が出てるといいんですけどね
まぁ足りないところは検索を駆使すればいいかな
>>910
自分はVBAしかやったことなくて
VBAとは違って幅広く使えそうな言語を、ある程度のレベルまでしっかりやってみたくて。
ウィンドウアプリはローカルで動かせるから手軽にテストできるだろうから、学習の成果を試すのによさそう
そういう意味で。
2017/12/09(土) 12:21:17.66ID:CWY4MyiC
>>910
CLIとGUIとHTTPどれでも動くアプリを作ったりしたよ
2017/12/09(土) 12:33:06.82ID:iGLDW7rr
ほ〜JavaFXやSwingというものがあるのか
この辺で検索すると書籍もたくさんでてくる
参考になるわぁ
2017/12/09(土) 13:15:04.24ID:P59xwzO1
身近なものならV2CもOmegaTもJavaだしeclipseもJavaで動作してる
OpenOffice.orgもJavaが必要だ、MinecraftにもJava Editionがある
事情はさまざま
2017/12/09(土) 16:41:15.14ID:oqulgHhz
35歳暴れ過ぎだろ巣に帰れ
2017/12/09(土) 17:39:35.12ID:cTAqB2KG
なんか俺の書き込みが彼の文体に似ている気がするが誤解だ
しかも半分ぐらいは俺じゃない

丁寧語使ったぐらいで特定されたらかなわん
2017/12/09(土) 19:03:48.62ID:BsAqFjlY
JavaBronzeの試験は、何割くらい取れれば初心者卒業と言っていいでしょうかね?
合格の6割というラインは、結構低めに設定されていると思うんです。
もちろんこの試験だけでは指標にはならないのかもしれませんが…。
2017/12/09(土) 20:01:33.78ID:P59xwzO1
残念ながらゴールド完答できてようやく初心者卒業レベルなんだよね、ブロンズやシルバーは論外
もっともオラクルの試験は社員の福利厚生のためにあると思ってるから
難易度はどうでもよかったりする
2017/12/09(土) 20:54:29.51ID:zmyZSbxv
>>914
GUI の本は、おもちゃみたいな本しか無い!
2017/12/10(日) 00:50:14.14ID:bd5B/yFF
>>905
finalとかじゃね
922918
垢版 |
2017/12/10(日) 00:50:17.31ID:AFPEWLTx
>>919
どうもです。

そんな…。俺は論外の中の論外なんですね…。
2017/12/10(日) 11:05:19.28ID:uIA2bCpe
巣に帰れよ
2017/12/10(日) 11:27:20.00ID:tMMeVviK
バイナリファイルを読み込みテキストに変換するという、
逆アセンブラみたいなプログラムを作ってます

いまはRandomAccessFileを使いseekしてreadやreadByteする、で作ってるのですが、
java.nio.file.Files.readAllBytesという、ファイルをbyte[]に読み込み処理するものも見つけました

前者でも後者でも動きはするのですが、ではどちらを使うかを選ぶ際に、
こちらの方がよい、と評価する基準みたいなものは何があるでしょうか
2017/12/10(日) 12:57:13.77ID:99ZnIkjV
readAllbytesはその名の通りファイル全部メモリに置くから小さいファイルなら良いけど大きいものは無理
2017/12/10(日) 13:35:29.14ID:LaIu/g3D
また35歳がコテ消して来てるのかよ
92735歳
垢版 |
2017/12/11(月) 00:51:51.41ID:OsSLt9Cy
Bronze取りました
Silver欲しい
92835歳
垢版 |
2017/12/11(月) 00:54:47.75ID:OsSLt9Cy
風俗いっちゃいました
92935歳
垢版 |
2017/12/11(月) 00:56:06.56ID:OsSLt9Cy
眠い…。
93035歳
垢版 |
2017/12/11(月) 00:56:53.13ID:OsSLt9Cy
雑談がしたいだけです。
誰かいませんか?
93135歳
垢版 |
2017/12/11(月) 00:57:58.90ID:OsSLt9Cy
>>923
巣とは何ですか?
2017/12/11(月) 01:26:57.13ID:4q7JrCp0
>>924-925
nio の方が、新しい

I/O は、一気にファイル全部を読み込むものか、

バッファサイズ分だけを読み込んで、処理したら、そのデータを捨ててから、
新しいデータをバッファサイズ分だけを読み込んむもの(Stream、都度読み込み)のどちらか
93335歳
垢版 |
2017/12/11(月) 02:08:57.22ID:OsSLt9Cy
Bronze取りました
93435歳
垢版 |
2017/12/11(月) 02:09:12.45ID:OsSLt9Cy
Bronze取りました
93535歳
垢版 |
2017/12/11(月) 02:09:35.70ID:OsSLt9Cy
Bronze取りました
93635歳
垢版 |
2017/12/11(月) 02:12:03.82ID:OsSLt9Cy
Bronze取りました
93735歳
垢版 |
2017/12/11(月) 02:12:38.85ID:OsSLt9Cy
Bronze取りました
2017/12/11(月) 02:25:33.77ID:N2Gt73dJ
>>927-931
>>933-937
てめえふざけんな このスレ荒らすんじゃねえ
このスレから出てけ
2017/12/11(月) 02:43:23.69ID:nE4xVUpl
触るな
2017/12/11(月) 07:27:30.95ID:P/UbmvZV
プログラマにもなってNGすら知らないの…?
コイツID変えてないからすぐなのに
2017/12/11(月) 08:50:29.93ID:6vkDM/D1
プログラマだからバグを見つけたら排除したくなるんだよ
2017/12/11(月) 09:08:14.11ID:tWMua4Pt
プログラマとNGを繋げる謎思考
2017/12/11(月) 18:06:50.26ID:6UX144SQ
プログラマにすらなってない
2017/12/12(火) 18:26:19.14ID:Tiy13g/2
マ板の◆BrBq2CJg6HGd は嫌いですか?
2017/12/12(火) 18:57:58.23ID:iYHw1UPa
silver の勉強がはかどらない…
2017/12/12(火) 19:20:14.40ID:h/tWkZ3V
>>944
嫌いだね。こっちに来させるな。
947デフォルトの名無しさん
垢版 |
2017/12/13(水) 06:56:15.40ID:f6oS6bg6
インターフェース使うと他のプログラマーがプラグインとかを作れる、と思うんですが
その場合、基盤開発者もプラグイン開発者も同じインターフェース定義を使わないといけないと思うんですが
インターフェースは基盤とプラグイン両方に含めるのが普通ですか?
2017/12/13(水) 08:56:42.06ID:D2CxP1eV
その場合は含めるのが普通ですどころではなく
このインターフェース○○とはこのようなクラスに機能□□を実装するのに必要で
その使い方は〜〜等々ステップ形式のハウツーまでJavaDocに書き
すぐ動作するサンプルソースまでつけておく
多くの場合はそのサンプルをコピペするかまんまextendsできるようにしとかないとお子様がこじらせてくる
もちろんインターフェースも見ちゃいない、が普通だろう
2017/12/13(水) 09:19:34.25ID:W866uGF7
>>947
ビルドするときはもちろんいるわけだが、
バイナリとして(jarファイルとかで)配るときは
外すのが普通だと思う。
バージョン違いのJAR Hellみたいにならないとも限らないし。
2017/12/13(水) 11:29:26.30ID:qJHG2SCj
このプログラミングのl1からl5を配列で表すことは可能ですか?
https://i.imgur.com/DIcypUi.jpg

https://ideone.com/qwzr2E(コードです)
直せるなら何かアドバイスを下さい。
2017/12/13(水) 12:19:24.55ID:b63AdwFX
いやいやいやプラグインには含めないだろ
952デフォルトの名無しさん
垢版 |
2017/12/13(水) 12:34:11.76ID:+Pd2/l4g
>>950
可能。

ていうか考えてないでやれってレベルだと思うが、そこまで配列のことがわからないレベルなのか?
2017/12/13(水) 20:01:33.50ID:feBdtpVD
学校で出た課題をwarファイルの形で家に持ち帰り作業後再度学校で開いたところエラーで全く開けなくなりました
動的webプロジェクトなのですが、jspで同プロジェクトもmodelパッケージ内のjavaファイルインポートが出来ずにエラーを吐いています。
再度家に帰ってみると普通に開く始末。学校でも家でもeclipseを使っています。原因としてどんなことが考えられるでしょうか。
2017/12/13(水) 20:02:24.40ID:feBdtpVD
同じプロジェクトも→同じプロジェクトの
2017/12/13(水) 20:39:22.98ID:6RipZ3Bg
> warファイルを持ち帰り
この時点でおかしいからどうでもいい
解決する必要なし
eclipse使ってるならワークスペースもごと持ち運べばいい
2017/12/13(水) 21:07:10.44ID:feBdtpVD
warファイルで持ち運びダメだったんですか
エクスポートで簡単に作れるしチーム間で受け渡ししたりするのに使ったりしてたのですが……
2017/12/13(水) 21:13:19.01ID:6RipZ3Bg
github使えば
2017/12/14(木) 01:48:06.73ID:bGPtLfUR
学校と家のEclipse だろ

両方のEclipseで認識できる、
プロジェクトフォルダ・ワークスペースごと持ち運ぶべき

war とは、サーバーに配置するように、変換された書庫。
開発中のフォルダ階層とは、異なる
2017/12/14(木) 01:56:43.63ID:QpnWgrRB
>>950
添字は zero origin だから、label[0] から label[4] のようになる。
2017/12/14(木) 03:40:16.00ID:H/S0UKdu
コマンドプロンプトに
java -jar atm.jar
と入力しても、atm.jarにメイン・マニフェスト属性がありません、
と表示されてしまうのですが、どう対処すればよいでしょうか?
2017/12/14(木) 12:22:40.90ID:ilEErt9I
>>960
jarを作るときに適切なマニフェストを指定する
jarとはアーカイブで中にマニフェストファイルが含まれていることが期待される
そこにはどのクラスのmainから始めるかなどが書かれてる
アーカイブを展開して探してみればいいよ
962デフォルトの名無しさん
垢版 |
2017/12/14(木) 22:06:53.34ID:bGPtLfUR
「java jar manifest」で検索!
2017/12/14(木) 22:54:39.21ID:5BWwfj6A
DecimalFormat df = new DecimalFormat("#####") ;

これで5桁未満の数字を表示した時に左詰めになっちゃうんだけど
5桁未満の時は左はその分空白にして右詰めで表示したいんですがどうすればいいのでしょうか。
964960
垢版 |
2017/12/14(木) 23:44:56.28ID:H/S0UKdu
>>961 >>962
やってみます。
ありがとうございました。
965デフォルトの名無しさん
垢版 |
2017/12/15(金) 01:17:56.31ID:i/+5VHc3
>>963
String.format("%5d", x) でやれば?
2017/12/15(金) 18:45:00.26ID:RLTFESXZ
javaが3個存在してて
中身のある奴とかファイルが足りなり奴とか
パスが通ってるけど環境変数は作ってないとか

いったん綺麗に消してちゃんとしたいんですけど
アンインストールにあるアップデート消してから
インストーラーで削除して
残ってるjavaのフォルダを手動で消して
最後に?パスを消せばいいですか?

このパスを消す作業が一番怖いです
2017/12/15(金) 18:53:05.47ID:PEAcDAlo
この訳のわからない文面は35歳か?
2017/12/15(金) 21:15:53.42ID:lQx5kyAI
プロジェクト持ち運びの件だが、やっぱEclipseのバージョンも揃えたほうがいいのかな

家と会社で使ってるんだけど、会社での制定版がちょっと古いんだよね
2017/12/15(金) 21:33:42.73ID:Tb0OcKpN
そろえられるものは全部そろえるの原則な気がする…
可能ならOSごとVMで持ち歩きたいぐらい
2017/12/15(金) 21:46:58.38ID:qyzTygXP
もうAWSのWorkspacesでも使えよ
プロジェクトフォルダを家に持ち帰るようなお粗末な会社ならセキュリティ的にもその方が遥かにマシだ
971デフォルトの名無しさん
垢版 |
2017/12/15(金) 23:39:47.26ID:i/+5VHc3
>>966
よくわからんがとにかく全部アンインストールしろ。話はそれからだ。
2017/12/16(土) 00:08:02.31ID:ccTSk315
>>966
正しくアンインストールすれば、環境変数PATH も、元に戻してくれないの?
2017/12/16(土) 12:27:29.47ID:2+3GS8kh
基礎を理解してないやつはこれだから
IDEによる促成栽培は危険
2017/12/16(土) 17:22:59.07ID:kbqZOSZW
java(eclipse)でメインから呼び出されるクラスを作成したのですが、
呼び出し元がまだ出来ていないので、自分のクラスのテストだけをしたいと思っていますが、
自分のクラスにはmainがないので実行できません。
テスト用にダミーのmainクラスを作ってデバッグしようかと思っておりますが
他に方法等があるのでしょうか?
2017/12/16(土) 17:23:53.15ID:xdxhx7GN
junit
2017/12/16(土) 17:26:09.67ID:YpuPdgcL
JUnitでテストケース書けばいい
2017/12/16(土) 17:31:59.32ID:xdxhx7GN
学校出たあとデジタル土方として長くやっていきたいなら自動テストなんかに傾倒するのはお勧めしないけどね
代わりのmain書いてシコシコ手で実行してたほうがいい
現場の実態とのギャップにショックを受けて辞めたくなるから
2017/12/16(土) 18:10:30.03ID:R5wdKqfC
自分用に書けばOK

逆に呼び出すクラスがまだなくてインターフェースだけ決まっていればmockito
2017/12/16(土) 19:05:10.22ID:Bt/T1sYp
>>977
かつてそう思ってたが
テストツールでスタブを差し込む方法と
テストが現状に追随して死なないように書くコツがわかってから考えかわった

あれはいいものだ
2017/12/17(日) 02:50:44.23ID:R741zDgD
質問です。
commons-langを使って作成したクラス、
https://ideone.com/PTi08F
をクラスパス付きでコンパイルし、それをテストしようと
https://ideone.com/vaqvJE
をクラスパス無しでコンパイルし、クラスパス無しで実行したら
例外が発生しました。
(下のクラスに)クラスパスを付けてコンパイル/実行しようとしても
上手くいきません。
どなたかアドバイスをお願いします。
2017/12/17(日) 14:58:32.92ID:rjtVjcmj
>>975-979
974です。JUnitについて調べて見ます。ありがとうございました。
難しそうで、覚えるのに時間がかかりそうです
2017/12/18(月) 16:07:16.27ID:+a7cb1uP
>>980
アドバイス?
エラーメッセージを読め
それでもわからないならエラーメッセージを含め
どうやったか、どうなったかを具体的客観的に書け

考えてくれる人に最大限の労力をかけさせたいならスルーしてくれ
レス数が950を超えています。1000を超えると書き込みができなくなります。
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況