トップページ⇒tech
1001コメント338KB

【初心者】Java質問・相談スレッド55【大歓迎】

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさんNGNG
過去ログ、関連スレッド、よくある質問とその回答、
質問をする前に、貴方が見なければならないサイトについての情報は、
下のwikiのページにまとめてあります。
http://www.wikiroom.com/java/

これからJavaでプログラミングを始めたいが、何をすればいいかわからない人も、
wikiからのリンクをおたどりください。

以下のエラーが表示されて、途方にくれているあなたは、下のページへ。
「コマンドまたはファイル名が違います」
「'javac' は、内部コマンドまたは外部コマンド、
操作可能なプログラムまたはバッチ ファイルとして認識されていません。」
「Exception in thread "main" java.lang.NoClassDefFoundError: 」
http://www.wikiroom.com/java/?path%2Cclasspath

前スレッド
【初心者】Java質問・相談スレッド54【大歓迎】
http://pc5.2ch.net/test/read.cgi/tech/1096548618/

/* 既出の質問や、他に適切なスレが存在する質問は、容赦なく無視されます。
質問をする前にwikiで過去ログ、関連スレ、FAQをチェックしてください。 */

また、当スレで質問をするかたは、回答をもらえたときに、
wikiの更新をして頂ければ、忝なく存じます。

JavaScriptの質問は、ここでは受け付けていません。
Web製作板をご利用ください。http://pc5.2ch.net/hp/
0002デフォルトの名無しさんNGNG
スレ立て、乙!
0003デフォルトの名無しさんNGNG
2を下さい
0004デフォルトの名無しさんNGNG
前スレの994です。
やっぱりCができないと駄目なんですね・・・
0005デフォルトの名無しさんNGNG
>>1
乙。

>>4
プログラマになるつもり?
学校の課題ならJavaだけでもいい気がするが。
0006デフォルトの名無しさんNGNG
>>4
Cを知らなくても、Javaは理解できる。
Cを知れば、Javaの理解も深まる。
0007デフォルトの名無しさんNGNG
>>4
できないよりできたほうがいい。
やったほうがいいかやらないほうがいいか不明確な場合、
やらないでいいことをやる前に避けようとするのはあまり賢くはない。
食わず嫌いができるだけです。
0008955NGNG
前スレ955です。
う〜ん。
出力直前でSystem.outしてみたんですが、ほしいレコードはみんなきてるんですよね。
なのに、
bw.write(lineStr +"\n"); //出力
で書いてもファイルには出力されてません。。。しょぼーん
0009デフォルトの名無しさんNGNG
>>1
乙

>>4
自分で勉強できなければCを選んでもあまり意味ない。
学校で習っただけではどっちとっても微妙
0010デフォルトの名無しさんNGNG
>>955
ソースをコピペしる。
0011デフォルトの名無しさんNGNG
>>8
ファイルはクローズしてるか?
0012デフォルトの名無しさんNGNG
>>8
bw.close();
の前に
bw.flush();
を入れてみる
0013デフォルトの名無しさんNGNG
いま、JAVAが無効な状態です。
どこで有効/無効を切り換えるんでしょうか?
教えてください。
0014955NGNG
>>12
カミサマキタ━━━(゚∀゚)━( ゚∀)━(  ゚)━(  )━(゚  )━(∀゚ )━(゚∀゚)━━━!!!!!

解決しました!これなんのおまじないデツカ?
0015デフォルトの名無しさんNGNG
forルーブはどうなったんだよw
0016955NGNG
>>15
すみません。ちゃんとブレイクしてたみたいです。
(情けない。。。)
0017デフォルトの名無しさんNGNG
>>16
ソンナ、ワケナイ。
0018デフォルトの名無しさんNGNG
すいませんがポリモルフィズムとやらをわかりやすく解説してください。
要はifとかswitchを使わずに具象クラスを作るってことですか?
0019デフォルトの名無しさんNGNG
>>14
何か嘘くせぇ。自分に都合の悪いことかくしてないか?
close()文が初めからなかったと思うんだが?
close()したらflush()の必要はないはず。
0020デフォルトの名無しさんNGNG
>>18
「生き物」クラスのサブクラスである「人間」クラスがあるとする。
おれが誰かに「生き物を連れてこい」と言われたとき、
「生き物」クラスのインスタンスを連れて行けば当然OKだが、
「人間」クラスのインスタンスを連れて行ってもOKになる。
なぜなら「人間」クラスは「生き物」クラスでもあるからだ。
0021デフォルトの名無しさんNGNG
>>20
はぁ。なんとなくわかったような。
で、それが実際PGする際にどう利点になるんですか?
0022デフォルトの名無しさんNGNG
自分で>>18に書いてるやん。ifとかswitchに頼らなくて済む。
0023デフォルトの名無しさんNGNG
>>21
簡単そうなぬるぽパターン、じゃなかったNull Objectパターンでも読んどけ
http://www.hyuki.com/dp/dpinfo.html#NullObject
0024デフォルトの名無しさんNGNG
>>22
そうですか。なるほど。
具象クラスを作ることで実行クラス(?)には修正することもなく修正ミス等がすくなくなってひいては保守性とかも高くなるってことですか。
どうもでした!!
0025955NGNG
ご迷惑をおかけしたので、ソースを完全公開します。
※コメント一部つぶしてますが。
仕様としては、あるディレクトリにファイルすべてを読み込んで
指定した文字列を部分検索した結果、Hitした場合、そのレコードをすべて出力するPGMです。

以下部分的に公開します。
0026955NGNG
import java.io.*;
import java.util.*;

public class KAWASE001 {

/**
**********************************************************************
メイン
**********************************************************************
**/
static String lineStr = "";
public static void CutRateFile(String idir,String ofilename) throws FileNotFoundException, Exception {

// 1行データ
String kawase_data = null; //?
int skip_len = 48; //読み飛ばしレングス長
int get_value_len = 8; //取得値レングス
int keyword_len = keyword.length(); //検索キーワードの長さ
*/
String fileLine = null; //レコード読み込みエリア
String keyword = "xxxxxxxxxxxx"; //検索キーワード
String Putflg = "N";//該当レコード出力フラグ intger

// ファイルオープン(output)
FileWriter fw = new FileWriter(ofilename);
//バッファ書き出しコンストラクタ定義
BufferedWriter bw = new BufferedWriter(fw);
0027デフォルトの名無しさんNGNG
質問です。

swingとかでボタンにカーソル合わせるだけでミニ吹き出しが出て解説が出るのはどうやるんですか?
0028デフォルトの名無しさんNGNG
>>throws FileNotFoundException, Exception {

ちょっとワラタ。例外適当に投げすぎ(w
0029955NGNG
ひぇー!ソースを書こうと思ったけどココ汚すだけになりそう。
もう皆様の興味が引けてしまいましたら、FAにしますが、いかがでしょう?
うぷするよい方法ありましたらお教えくださいませ!!
0030デフォルトの名無しさんNGNG
>>27
JComponent#setToolTipText(String text);
0031デフォルトの名無しさんNGNG
>>27
コンポーネントのsetToolTipText()メソッドを探してみるのじゃ。
0032デフォルトの名無しさんNGNG
upまだー
0033デフォルトの名無しさんNGNG
>>29
1.アップローダを開設する
2.ウェブページを開設する
0034955NGNG
>>28
大いに笑ってください。
神々の方々に恥をさらして、さらに上を目指したいです。
003527NGNG
ありがとう。
0036デフォルトの名無しさんNGNG
>>27
JComponent#setTooltipText(String s)でテキストをセットするか
JComponent#getTooltipText()をオーバーライドして、任意の
Stringを返すようにすればOK
0037デフォルトの名無しさんNGNG
コメントの「コンストラクタ*定義*」が凄く気になる
そこは呼び出してるだけで、定義してないだろうと
0038デフォルトの名無しさんNGNG
俺は2chに晒す用の無料Webスペースを持っている。
0039デフォルトの名無しさんNGNG
>>38
晒しなさい
0040955NGNG
自分の”趣味のプログラミング”に神々のお力をお借りしてしまって
よいものか・・・今、ガクブルしてますよ。。。
0041古代帝國富士皇朝総帥・伯壬旭NGNG

よくぞ次スレを立てた。
誉めてつかわす
さあ、皆の者、質問するがいい!
0042デフォルトの名無しさんNGNG
>レングス長
ワラタ

残りも早く晒せよ。どっかコード公開できるとこなかったっけ?
0043デフォルトの名無しさんNGNG
どれでも使いなはれ。
http://up.moech.net/
0044デフォルトの名無しさんNGNG
ラウンジ使え。
http://do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/lounge/index.html
0045デフォルトの名無しさんNGNG
>>40
神なんているわけないだろ
2chなんて引きこもりからニートまでだぞ
晒すならさっさと晒せ
0046デフォルトの名無しさんNGNG
>>45
>>41がいるじゃないか。
004728NGNG
笑ってすまんこ。
ここは初心者が勉強するスレだね。

例外を投げる時は、そこで発生する例外を全て書いておいた方がいいよ。
面倒だけどそこで発生しうる例外を全てきちんと把握できる。

FileNotFoundExceptionはExceptionのサブクラスだから両方書いても重複するね。
ランタイム例外は書かなくてもスローされるから別にいいとしても、
ここで発生する例外はFileNotFoundException,IOExceptionときちんと書いた方がいいと思う。
0048955NGNG
>43
ありがとう。
で、また相談なんだけどココに書こうとして、ゴミ消しとかしたら
またおかしくなっちゃったんだよね。。。(鬱)
で、自力で修正するまで待ってもらえます?
それとも途中でいーから、UPしていー?
0049デフォルトの名無しさんNGNG
はやくー
0050デフォルトの名無しさんNGNG
思うんだが、確かにコメントは重要だと思うが
一行一行にコメントつけんのはどーよ?
現場でひどいのになると

// Fileオブジェクト作成
File file = new File(path);

とかあるんだが
処理読んで理解できないけどこのコメントで「ああ、なるほど」と思う事…
ってあるか?
0051デフォルトの名無しさんNGNG
>>955
(・∀・ )っ/凵 ⌒☆チン マダー?
0052デフォルトの名無しさんNGNG
>>955
おめーひょっとして株ロボコンにでも挑戦してるんじゃねーだろな

もしそうなら自動作成ロボでやめとけ
いきなりソースいじろうとしても無理だから

いずれにしても、まずは基本をしっかり勉強しろ
>>26のコメント見る限り、理解が全然足りていないようだ
0053デフォルトの名無しさんNGNG
この瞬間、世界で一番注目されているプログラマの
ソースupまだー。
0054デフォルトの名無しさんNGNG
>>50
オイラはメソッドごととか要所とかにしか書いてないな。
コメント難しいよ。コメントの上手いソースってのも読んでみたいな。
0055デフォルトの名無しさんNGNG
>>48

>>43じゃなくて >>44にupすべし
0056デフォルトの名無しさんNGNG
>>54
javadoc書けば
005728NGNG
あ、
FileNotFoundExceptionはIOExceptionのサブクラスだから一つでいっか。
0058デフォルトの名無しさんNGNG
>>50
コメントは「何をしているか」ではなく「何故そうしているか」を
書くとよいとどっかで聞いたことがあります
0059デフォルトの名無しさんNGNG
コメントはテストだけに書くっていうのも良いとどっかで聞いたことあります。
0060955NGNG
http://douga.sakura.ne.jp/uploader2/upload.html

あ、ここにうぷしちゃった。
いーのかなぁー?
今、まともに動かないよ。
とりあえず報告。
0061デフォルトの名無しさんNGNG
>>48
今日は台風でみんなヒマだから、upしたら書き直してくれるよ
0062デフォルトの名無しさんNGNG
最強株ロボキタ━━━━━━(゚∀゚)━━━━━━ !!
0063955NGNG
>52
これ、株じゃなくて為替分析を考えてます。
ファイル名見ればわかりますよね。
JAVA勉強するのに何か目的意識ほしかったので
これをテーマにやってます。
かと言ってこれが解決したら億万長者になれる訳じゃないですよぉーw
0064デフォルトの名無しさんNGNG
>>60
http://do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/lounge/index.html
にアップしなおせ。
何様のつもりだ?わざわざ圧縮解凍なんかするな馬鹿
0065デフォルトの名無しさんNGNG
>>56
javadocってAPIリファレンスつくるツールじゃないっけ。
0066955NGNG
>>64
なんで怒ってるの?
0067デフォルトの名無しさんNGNG
拡張子.javaのままでうpできるアップローダなんてねえよボケ
0068デフォルトの名無しさんNGNG
なんか台風もう終わっちゃったんですけど。ツマンネ
0069955NGNG
まぁ、こんなクズソースでもみんなのネタにしてもらえれば
幸いです。
けど、1時間ちょいで60件も。。。ありがたい話です、はい。
0070デフォルトの名無しさんNGNG
32行目はいらない。
if (A[i]==null) break;
0071デフォルトの名無しさんNGNG
>>67
>>44見れ馬鹿
0072デフォルトの名無しさんNGNG
アップローダ重くてソースおとせね

>>68 逝け
今回の台風もあまり凄くなかった件について
http://live14.2ch.net/test/read.cgi/liveplus/1098281679/
0073デフォルトの名無しさんNGNG
>>65
メソッド毎に書くんだろ。じゃあjavadoc書けばいいだけ、
eclipseでホバー表示もできるし
0074デフォルトの名無しさんNGNG
パラメーラーが足りません。
0075デフォルトの名無しさんNGNG
>>50
そのうち面倒になって そいつが必要だと思うところにしかコメント書かなくなるだろ。
むしろ、最初から全くコメントを書かない奴は いつまでたっても全くコメントを書かないので
仕様なのかバグなのか、変更して良いのか悪いのかわからないコードを量産してくれる。
0076天災人NGNG
どうぞお楽しみください。
955のソースの添削スレ
http://do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/readres.cgi?bo=lounge&vi=1098287653
0077955NGNG
>>76
わくわく。
0078デフォルトの名無しさんNGNG
lineStrがstaticだからいけないのかな。
007978NGNG
lineStrを一時変数にして、"\n"とってもだめ?
0080デフォルトの名無しさんNGNG
>>73
javadocの形式にするとコメントが上手くなるのか?
0081デフォルトの名無しさんNGNG
>>80
誰もそんな話はしてないよ。
0082& ◆RWwNEVt54c NGNG
>>56 >>65 >>81
おそらく君らが勘違いしてるよ。

javadocじゃなくてソース中のコメントの話だから
0083デフォルトの名無しさんNGNG
少なくとも955がCOBOLer出身だと言うことは伝わった
0084デフォルトの名無しさんNGNG
>>70
いらないっていうか、forの外でA自体がnullじゃないチェックをしとかないと、
fがディレクトリじゃないときに、ぬるぽが出るんじゃね?
0085デフォルトの名無しさんNGNG
↑>>56 >>73 >>81
の間違い
0086デフォルトの名無しさんNGNG
>>85
そんな話はどうだっていいよ。
空気嫁
0087955NGNG
>>83
ごめん。COBOLできないよ。
0088デフォルトの名無しさんNGNG
>>85
「メソッドごととか」に対して突っ込んでるだけだろ。
少なくともjavadoc書いてりゃ
ソース中にメソッド毎にいちいち処理内容書く必要はない。
0089デフォルトの名無しさんNGNG
>>87
コメントやABENDってあたりがモロなんだが…
0090デフォルトの名無しさんNGNG
955かわいいよ955
0091955NGNG
>89
そうなん?それはASMをやってた頃の名残ですね。
0092デフォルトの名無しさんNGNG
PL/IだろうがASMだろうがCOBOLだろうが変わんねーよ

っていうことはプログラミング初心者じゃないんだな…
0093955NGNG
補足なんだけど、アセンブラはコメント書いてないと全然追えないですよ。
昔、それですごい苦労した時の名残です。
0094デフォルトの名無しさんNGNG
>>93
指定フォルダ内にフォルダがあったら落ちないか?

>補足なんだけど、アセンブラはコメント書いてないと全然追えないですよ。
>昔、それですごい苦労した時の名残です。
郷に入りては郷に従おうな。
0095デフォルトの名無しさんNGNG
>>955
取りあえずちゃんと動くね。改善の余地はあるけども。
java.io.File#list()より、java.io.File#listFiles()を使った方が、
見やすいソースになると思われ。
0096デフォルトの名無しさんNGNG
前スレよみました
で、955さん。いまの状況は?配列のエラーは消えてるの?
0097955NGNG
>96
ありがとう。
今は、Exception in thread "main" java.lang.NoClassDefFoundError
なエラーがでちゃいます。
壊しちゃったのかなぁー?
0098デフォルトの名無しさんNGNG
あ、上の方で解決したって書いてあるじゃん。
じゃー。終了か。
ソースの方は直す点が多すぎてつっこむ気にもならない。
0099デフォルトの名無しさんNGNG
"\\" -> File.separator かな?
0100デフォルトの名無しさんNGNG
>>97
>>1読め。
0101955NGNG
この落とし所ってどぉーするんでしょ?
神々の皆様のお声をお聞かせくださいませ。
■ このスレッドは過去ログ倉庫に格納されています