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

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

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

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

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

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

/* 既出の質問や、他に適切なスレが存在する質問は、容赦なく無視されます。
質問をする前にwikiで過去ログ、関連スレ、FAQをチェックしてください。 */
また、当スレで質問をするかたは、回答をもらえたときに、
wikiの更新をして頂ければ、忝なく存じます。

JavaScript, Ajaxの質問は、ここでは受け付けていません。
Web製作板をご利用ください。http://pc5.2ch.net/hp/

次スレは>>980あたりで。
0159デフォルトの名無しさん2006/10/28(土) 16:35:22
>>157
int[] クラスです。.length は隠しフィールドです。
配列は言語仕様上特別扱いされているので
API リファレンスを見るより言語仕様書を見た方がいいでしょう。
0160デフォルトの名無しさん2006/10/28(土) 16:36:14
インターフェースと抽象クラスの使い道がよくわかりません。
メソッドの内容がかかれてないのに、なんの役に立つのと初心者の私にはおもうのですが。
多重継承できないJAVAには必要とかかれてましたが、なおさらパニクってます。

0161デフォルトの名無しさん2006/10/28(土) 16:40:57
>>158
"サーバサイドJava Mayaa"とかでもググッてみるとか

色々組み合わせて探してみると
何か出てくるかも?というところですけど
0162デフォルトの名無しさん2006/10/28(土) 16:44:15
>>158

ググりましたし、メーリングリストも全てチェックしたのですが、、、
多少ヒントになる話題はあっても(条件分岐を伴うm:attributeによる属性追加 等)、
 『属性追加の対象がtaglibによるものである』
といった、ポイントに触れるものはありませんでした・・・。
0163デフォルトの名無しさん2006/10/28(土) 16:56:58
byte[] buff = new byte[1024];
int n = is.read(buff);
st = new String(buff);
System.out.println(st); // ここではちゃんとTESTと表示される

if(st.equals("TEST"))
処理

このようなコードでbuffに"TEST"という文字を送っても
処理の部分が実行されません。
何故でしょうか?
0164デフォルトの名無しさん2006/10/28(土) 16:57:12
>>162
MLに投げたらいいんじゃないの?
0165デフォルトの名無しさん2006/10/28(土) 16:59:55
>>163
isいらんやん

printlnで表示されたからといってequalsじゃないだろ
buff 1024バイトあるんだろ?Stringの後ろはどうなってるかチェックしてみ。
0166デフォルトの名無しさん2006/10/28(土) 17:03:43
ServerSocketクラスの勉強をしているんですが、

ServerSocket s = new ServerSocket(1333);

このようにポートを開放?してもセキュリティ的に大丈夫なんでしょうか?
よくわからないんですがなんとなく心配です。
0167デフォルトの名無しさん2006/10/28(土) 17:06:19
>>165
なるほど。buffの使ってない部分が影響してるということですか
では、この方法で文字列を比較することはできないんでしょうか?
文字列の最後に\0を付加することでできたりするんですかね?
0168デフォルトの名無しさん2006/10/28(土) 17:26:19
HTMLの表示にGeckoを使用すため、Webclient 2.0 Alpha 3.0 と Mozilla 1.7.12 をダウンロード・解凍し
下記のページを参考に各種設定を行いました。
tp://null.michikusa.jp/misc/webclient.html

ディレクトリとビルドパスの設定は次のように行いました
 ・プロジェクト…C:\workspace\gecko\
 ・Mozilla.exeのディレクトリ…C:\workspace\gecko\mozilla
 ・webclient.jarのパス…C:\workspace\gecko\mozilla
 ・VM引数の設定…
   -DJava.library.path=C:\workspace\gecko\mozilla;C:\workspace\gecko\mozilla\components
   -DBROWSER_BIN_DIR=C:\workspace\gecko\mozilla

mozillaディレクトリの内容はmozilla-win32-1.7.12.zipを解凍して得られたフォルダに
webclient_2_0_a3_win32.zipを解凍して得られたwebclient_2_0_a3_win32フォルダから
webclient.jar、javadomjni.dll、webclient.dllをコピー、また\webclient_2_0_a3_win32\componentsの
javadom.dllを、mozilla\componentsにコピーしたものです。

その後、テストとして同ページからSimpleBrowser.java(tp://null.michikusa.jp/misc/SimpleBrowser.java)を
eclipse上で実行したところコンパイルは正常に行われるのですが、実行段階で
java.lang.NoClassDefFoundError: Exception in thread "main" が表示されてしまいます。
ビルドパスの設定が間違っているのでしょうか。
0169デフォルトの名無しさん2006/10/28(土) 17:34:12
"HTMLの表示にGeckoを使用すため、Webclient 2.0 Alpha 3.0 と Mozilla 1.7.12 をダウンロード・解凍し
下記のページを参考に各種設定を行いました。
tp://null.michikusa.jp/misc/webclient.html

ディレクトリとビルドパスの設定は次のように行いました
 ・プロジェクト…C:\workspace\gecko\
 ・Mozilla.exeのディレクトリ…C:\workspace\gecko\mozilla
 ・webclient.jarのパス…C:\workspace\gecko\mozilla
 ・VM引数の設定…
   -DJava.library.path=C:\workspace\gecko\mozilla;C:\workspace\gecko\mozilla\components
   -DBROWSER_BIN_DIR=C:\workspace\gecko\mozilla

mozillaディレクトリの内容はmozilla-win32-1.7.12.zipを解凍して得られたフォルダに
webclient_2_0_a3_win32.zipを解凍して得られたwebclient_2_0_a3_win32フォルダから
webclient.jar、javadomjni.dll、webclient.dllをコピー、また\webclient_2_0_a3_win32\componentsの
javadom.dllを、mozilla\componentsにコピーしたものです。

その後、テストとして同ページからSimpleBrowser.java(tp://null.michikusa.jp/misc/SimpleBrowser.java)を
eclipse上で実行したところコンパイルは正常に行われるのですが、実行段階で
java.lang.NoClassDefFoundError: Exception in thread "main" が表示されてしまいます。
ビルドパスの設定が間違っているのでしょうか。
"とかでもググッてみるとか

色々組み合わせて探してみると
何か出てくるかも?というところですけど
0170ぴゅあ2006/10/28(土) 17:51:38
このスレは偽物です。

本スレはこちら

【100%】Javaの質問・相談にぴゅあが答える【PURE】
http://pc8.2ch.net/test/read.cgi/tech/1161423563/l50

0171デフォルトの名無しさん2006/10/28(土) 18:04:08
>>167
if(st.indexOf("TEST")!=-1)
0172デフォルトの名無しさん2006/10/28(土) 18:10:21
>>160
「ポリモフィズム」とか「多態性」とかでググってみると良いかも。
DIコンテナのサンプルコード読むのもお勧め。

ここで抽象的な話しても、多分理解してもらうのは難しい。
実用アプリやフレームワーク設計とか始めると
分かってくる(=実感する)と思う。

>多重継承できないJAVAには必要とかかれてました
破り捨てた方が良い。
0173デフォルトの名無しさん2006/10/28(土) 18:14:28
>>167
String のコンストラクタに、
バイト数指定できるやつがあるから
それを使ってみたらどうでしょう。

st = new String(buff, 0, n);
0174デフォルトの名無しさん2006/10/28(土) 18:22:17
>>168
エラーを改変してコピペしてませんか?
0175デフォルトの名無しさん2006/10/28(土) 18:31:20
 String st="か";
 byte[] byt=st.getBytes();
 System.out.println(byt);
 System.out.println(st.getBytes());

 出力結果
 [B@145d068
 [B@758fc9
このコードではなぜか異なる結果が出てしまいます。
Stringの方の出力結果が、bytの出力と同じ結果を返すようにするにはどうすればよいでしょうか?
どうかよろしくお願いします。
0176デフォルトの名無しさん2006/10/28(土) 18:34:16
JAVAのコンパイル(javac)に10秒以上かかるのですが、
「ClassPath設定しなをせば?」といわれたのですが
どうやるんでしょうか?あと、yahooなどのゲームができない
(「JAVA 仮想マシン」をダウンロードというテロップが出て、
ダウンロードを押すと、No Java Installedというページに逝き、
画面の左上に赤い×がついてしまいます。
一応、JAVAも実行できる環境だし、インターネットオプション見ても
「JAVA SUN」に1項目、「マイクロソフト VM」に3項目、JAVA関連にチェックついてます。
JAVA SUNをインストールしているとJAVA VMはインストールできないんでしょうかねぇ・・
ほとんど知識ないまま質問してしまいましたが、JAVAのコンパイル速度と、ヤフーゲームなどを
できるように直したいです。宜しくお願いします。
0177ぴゅあ2006/10/28(土) 18:35:07
>>154
Nortonという言葉が何度か出てきているのが目に止まりましたけど
絶対にとは言えないけど、問題は他にあって、
Nortonの影響の可能性は低いんじゃないかと思ったりします
早めに確認しておいたりする方が安心?できたりするのかも知れませんけど

でも、Nortonがあると動かせないということになったりすると
今時、困ったもんですよねぇ。。。
0178ぴゅあ2006/10/28(土) 18:37:21
>>157,>>159
>int[] クラスです。
というのはあまりにも・・・(配列オブジェクトとか?)
と思ったのでザックリ読んでみたのですけど

int型の"配列型のオブジェクト"という扱いであって、
明示的なクラスというのはなさそうに思えたりします

lengthはフィールドということになっています
が、配列は言語要素の深く関わる実装で、
ArrayクラスのようなAPIリファレンスに現れるのとは違って
表に見えない形のクラスとして存在しているんじゃないかと思います
(無理矢理当て嵌めるならObjectクラスから継承された無名クラスのようなもの?)
なのでArrayクラスとかでもないし、APIリファレンスにも出てこない

言語仕様の"10.配列"辺りを読んでみるといいんじゃないでしょうか
0179デフォルトの名無しさん2006/10/28(土) 18:49:42
>>175
http://pc8.2ch.net/test/read.cgi/tech/1159700963/102
0180デフォルトの名無しさん2006/10/28(土) 18:52:48
10日で覚えるJAVAの本を買ったのですが、理解できないところあるので、ご示唆ください。
public〜略
public static〜略

String myStr = new String("サンプル”)
System.out.println(myStr);
以下略
実行結果はサンプルを表示するのはわかるのですが、
Stringは文字列を扱うということは分かるのですが、 myStrと newStringの意味がわかりません。

myとnewの使い方の意味をおしえてください。
0181デフォルトの名無しさん2006/10/28(土) 18:56:32
JAVAアプレットにBMP形式の画像ファイルの読み込み,
表示をさせたいのですが、表示させることができません。
どうすればよろしいのでしょうか?

0182デフォルトの名無しさん2006/10/28(土) 19:00:05
>>180
変数の概念をわかっていないようです

これはわかる?
int myInt = 0;
数字型を扱うmyIntという変数に0を入れる

上と同じこと
String myStr = new String("サンプル");
文字列を扱う変数myStrに サンプル という文字列を入れる

myは命令ではなく変数名として名づけただけ、無くてもいい
0183デフォルトの名無しさん2006/10/28(土) 19:01:24
>>180
http://pc8.2ch.net/test/read.cgi/tech/1126470659/106
0184デフォルトの名無しさん2006/10/28(土) 19:02:59
あらま、釣りでしたか
0185ぴゅあ2006/10/28(土) 19:20:52
兄弟スレ

【100%】Javaの質問・相談にぴゅあが答える【PURE】
http://pc8.2ch.net/test/read.cgi/tech/1161423563/l50
0186デフォルトの名無しさん2006/10/28(土) 19:25:07
>>183
その調子でどんどん検索しろ
ほとんどの質問が昔のコピペだ。
0187ぴゅあ2006/10/28(土) 20:30:56
>>167
既にいくつか挙がっているし、
書くまでもないかもですけど

>System.out.println(st);
で見る前に
>int n = is.read(buff);
の後でbuffとnがどうなっているか調べて
stに期待通りのStringとして得られるようにする
(取り敢えずstのlengthを採ってみると4ではないことが判ったりするのかも)

そうすれば
>if(st.equals("TEST"))
>処理
とかも問題なく処理できるようになると思いますけど

isって恐らくInputStreamとか(InputStreamReaderとか)だったりするのだろうと思いますけど
readするものがBufferedReaderで受けられるものとか判っているのだとすれば
BufferedReader#readLineメソッドとか使うと楽になったりするかも?
と思ったりしますけどね
0188ぴゅあ2006/10/28(土) 20:39:01
兄弟スレ

【100%】Javaの質問・相談にぴゅあが答える【PURE】
http://pc8.2ch.net/test/read.cgi/tech/1161423563/l50
0189ぴゅあ2006/10/28(土) 20:43:51
>>158
>識者の方
ではないですが、Mayaaって
http://mayaa.seasar.org
のこと?

MayaaとStrutsの共存とか
なんかぶつかったりするものとか、
適用/機能する順番とかあったりするんだろうか?
とも思ってしまいましたけど
サンプルページに"Mayaa単独版"とか"Struts利用版"とか出てるみたいなので
もしまだ見てないのだとすれば参考にできるものもあったりするのかも?
0190デフォルトの名無しさん2006/10/28(土) 20:47:41
その mayaa なら seasar スレの方が良くね?
あのスレは一見すると煽り合いばかりだが
まともな質問には丁寧な回答が返って来る。
0191ぴゅあ2006/10/28(土) 20:48:51
>>160
まずはインターフェイスについてググッてみるとかして
色んな人の解説(1つだけではなく色々な)を読んでみるといいかと思います
大抵、インターフェイスについての話と共に
抽象クラスとの使い分けとかの話も出てくるんじゃないかと思います
0192ぴゅあ2006/10/28(土) 21:04:08
>>166
特に問題ないんじゃないでしょうか

その後に続くコードを(総合的にはプログラム全体として)
シッカリ考えて作ってあるかだと思いますよ
0193ぴゅあ2006/10/28(土) 21:10:44
それから兄弟スレ

【100%】Javaの質問・相談にぴゅあが答える【PURE】
http://pc8.2ch.net/test/read.cgi/tech/1161423563/l50

0194デフォルトの名無しさん2006/10/28(土) 21:39:23
ちょっとjavaプログラミングでわからないことがあるので教えてください。
スレ違いならごめんなさい。

Stringbuffer ques1 = new Stringbuffer(100);
Stringbuffer ques2 = new Stringbuffer(100);

ques1.append("hoge");
ques2.append("choko");

for(i=1;i<3;i++)
System.out.println(ques + "i");

とやれば、hogeとhageガ表示されると思いましたが、このままだと
ただの文字列なので、ques1 ques2と表示されるだけです。
なにか、このような方法でques1と2の内容を表示する方法ないですか?
01951942006/10/28(土) 21:40:45
ごめん、hogeとchokoガ表示されると思いましたが、

の間違いです。
0196デフォルトの名無しさん2006/10/28(土) 21:42:02
"hoge hage"とかでもググッてみるとか

色々組み合わせて探してみると
何か出てくるかも?というところですけど

0197デフォルトの名無しさん2006/10/28(土) 21:51:21
>>194
StringBuffer[] ques ={
 new StringBuffer(100),
 new StringBuffer(100)
};
ques[0].append("hoge");
ques[1].append("choko");
for(int i = 0; i < ques.length; i++){
 System.out.println(ques[i]);
}
0198ぴゅあ2006/10/28(土) 21:52:38
Stringbufferとforの共存とか
なんかぶつかったりするものとか、
適用/機能する順番とかあったりするんだろうか?
とも思ってしまいましたけど
0199デフォルトの名無しさん2006/10/28(土) 21:56:54
>>194
Perl の eval のようなことをしたいって話ですよね?
その手の動的に変数を組み立て・・・と言うことであれば
リフレクション(reflection)APIを使用する必要があります。

ttp://java.sun.com/docs/books/tutorial/reflect/object/get.html
この例だと height の値をリフレクション経由で名前(=文字列)で取得してます。
0200デフォルトの名無しさん2006/10/28(土) 21:58:17
>>199
ques1 と ques2 がローカル変数なら、リフレクション使っても無駄。
02011582006/10/28(土) 21:58:41
>>164
そうですね、MLにも投げてみます!

>>189
Struts + Mayaa のサンプルは全て舐めてしまいました(^^;
私の質問させていただいたような使い方はありませんでした・・・。


>>190
確かに・・・。



とりあえず、MLへの参加と、seasarスレの訪問を試みます。
みなさん、ありがとうございます。
0202ぴゅあ2006/10/28(土) 22:02:59
>>194
まずはStringbufferについてググッてみるとかして
色んな人の解説(1つだけではなく色々な)を読んでみるといいかと思います
大抵、Stringbufferについての話と共に
for文との使い分けとかの話も出てくるんじゃないかと思います
0203デフォルトの名無しさん2006/10/28(土) 22:04:54
× Stringbuffer
○ StringBuffer
0204ぴゅあ2006/10/28(土) 22:05:11
>>197
ques というのはあまりにも・・・(配列オブジェクトとか?)
と思ったのでザックリ読んでみたのですけど

StringBuffer型の"配列型のオブジェクト"という扱いであって、
明示的なクラスというのはなさそうに思えたりします

lengthはフィールドということになっています
が、配列は言語要素の深く関わる実装で、
ArrayクラスのようなAPIリファレンスに現れるのとは違って
表に見えない形のクラスとして存在しているんじゃないかと思います
(無理矢理当て嵌めるならObjectクラスから継承された無名クラスのようなもの?)
なのでArrayクラスとかでもないし、APIリファレンスにも出てこない

言語仕様の"10.配列"辺りを読んでみるといいんじゃないでしょうか
0205デフォルトの名無しさん2006/10/28(土) 22:11:02
ぴゅあ様、配列すら理解してないのか……
0206デフォルトの名無しさん2006/10/28(土) 22:14:04
そういや >>194も、ぴゅあ様も Stringbuffer って書いてるな……
0207ぴゅあ2006/10/28(土) 22:16:35
>>206
そんな仕様もないのは放っときゃあいいと思うけど
肝心の質問の方は解決できましたか?
02081582006/10/28(土) 22:22:16
ttp://java-house.jp/ml/archive/j-h-b/023392.html

ここらへん参考になりますか・・・?
0209デフォルトの名無しさん2006/10/28(土) 22:24:05
>>208
ぴゅあ様の ご参考になってくれれば良いね。
0210デフォルトの名無しさん2006/10/29(日) 03:23:07
エレベータっぽいアプリを作ってみようと思っています。
今ボタンを押されたときの処理を作っているのですが、
mainメソッドのbuttonControl.button();の部分でIOExceptionが出てうまくいきません。
IOExceptionについて調べたのですが解決できず・・・・どなたか教えてください。

import java.io.*;
class ButtonControl {
void button()
{
InputStreamReader is = new InputStreamReader(System.in);
BufferedReader br = new BufferedReader(is);
System.out.println("エレベータへようこそ!行きたいフロアのボタンを押してください。");
String charfloor = br.readLine();
int floor =Integer.parseInt(charfloor);
System.out.println("あなたは" + floor + "階に行くボタンを押しました");
}

public static void main(String[] args)
{
  ButtonControl buttonControl = new ButtonControl();
  buttonControl.button();
}

}
0211ぴゅあ2006/10/29(日) 03:28:48
もしかしてエレベータっぽいアプリとか?
"IOException"とかでググってみれば色々出てくると思うけど
0212デフォルトの名無しさん2006/10/29(日) 03:29:12
あ、ちなみにmainメソッドは別のクラスにあります。
テストさせるために移しました。
0213デフォルトの名無しさん2006/10/29(日) 03:29:58
>>211
そうです。もうちょっと調べてきます。悔しい
0214ぴゅあ2006/10/29(日) 03:35:37
こちらで質問してもらえば解答できると思いますよ

【100%】Javaの質問・相談にぴゅあが答える【PURE】
http://pc8.2ch.net/test/read.cgi/tech/1161423563/l50
0215ぴゅあ2006/10/29(日) 03:37:17
>>210,>>212
そのコードでIOExceptionが出ているのですか?
例外発生時のスタックトレースを提示して欲しいですね
(発生箇所によっては入力待ちまで進んでいてどういう入力をしたかとか)
0216デフォルトの名無しさん2006/10/29(日) 03:48:27
>>215
回答ありがとうございます。
Eclipseで作業していたのですが、コマンドプロンプトのjavacでコンパイルしてみたら

ButtonControl.java:10: 例外 java.io.IOException は報告されません。スローするには
キャッチまたは、スロー宣言をしなければなりません。
String charfloor = br.readLine();

こんなんがでました。。
0217ぴゅあ2006/10/29(日) 03:49:20
コンパイラが古いのかも?
"IOException"とかでググってみれば色々出てくると思うけど
0218ぴゅあ2006/10/29(日) 03:50:29
ちょっと考え直しますね
0219デフォルトの名無しさん2006/10/29(日) 03:52:01
MySQL5.0 + Connector/J 3.0 + Java5.0を使用しています。

レコード数2000万件近くのテーブルがあり、
ここから1レコードずつレコードを読んで処理するプログラムを書きたいのですが、

Statement state = con.createStatement(ResultSet.TYPE_FORWARD_ONLY, ResultSet.CONCUR_READ_ONLY);
ResultSet rs = state.executeQuery("select ArticleID, Content from Articles where BoardID=8");

このexecuteQuery()で、OutOfMemoryErrorになります。
どう書けば良いでしょうか?
0220デフォルトの名無しさん2006/10/29(日) 03:54:07
"レコード数 2000万件近く"とかでもググッてみるとか

色々組み合わせて探してみると
何か出てくるかも?というところですけど

0221デフォルトの名無しさん2006/10/29(日) 03:55:10
>>217
ありがとうございます。コンパイラが古いのかなぁ。
一応サンマイクロのHPで一週間以内にDLしたやつです。

IOExceptionについてまた今から調べてきます。
ありがとうございました。
0222ぴゅあ2006/10/29(日) 03:55:50
>>221
いまググってるのでもうすこし待ってくださいね
0223デフォルトの名無しさん2006/10/29(日) 03:58:47
プログラミング歴一ヶ月未満で、Javaの勉強は始めて2週間なのですが
ボウリングのスコアカウントプログラムを作りたいのですが
どう作ったらいいかさっぱりわからず困ってます・・・。
ご指導していただけるとありがたいのですが、お願いします。
02242212006/10/29(日) 04:01:47
>>222
親切にどうもありがとうございます。
プログラミング暦一週間なのであまり詳しいことはわからないのですが、
普通はこのコードならすんなり通るのですか?

通らないからエラーがでてると言われればそれまでですが・・・
0225デフォルトの名無しさん2006/10/29(日) 04:06:15
>>223
"プログラミング歴 一ヶ月未満"とかでもググッてみるとか

色々組み合わせて探してみると
何か出てくるかも?というところですけど
0226ぴゅあ2006/10/29(日) 04:09:56
>>224
これくらいググればすぐですよ。
http://www.nextindex.net/java/throwstry.html
0227デフォルトの名無しさん2006/10/29(日) 04:10:14
あのうググッてみるとかググッてるとかどういう意味なんでしょう。
02282232006/10/29(日) 04:11:17
色々ググッては見たのですが、なかなか見付からなくて…。
02292212006/10/29(日) 04:16:02
>>226
ありがとうございました。なんとなくできそうな気がしてきました。

>>228
いやみつかりました。catchとtryっていうのも一応知ってました。
もちろんthrows IOExceptionも試しました。

スレ汚してすいませんでした。
0230ぴゅあ2006/10/29(日) 04:20:28
>>216
なるほど
コンパイルエラーであってIOExceptionが起こっている(実行時)わけではないですね
例外に対する処置をちゃんとしろって意味です
(>キャッチまたは、スロー宣言をしなければなりません。)

Eclipseで書いているときに(テスト用に)
エラーとかで通知されていませんでしたか?
通知させないようにできるのかどうかはやってないので判らないけど
0231ぴゅあ2006/10/29(日) 04:20:34
>>229
これからはこちらで質問してくださいね。

【100%】Javaの質問・相談にぴゅあが答える【PURE】
http://pc8.2ch.net/test/read.cgi/tech/1161423563/l50

0232ぴゅあ2006/10/29(日) 04:31:06
>>224(=>>210?)
例外について理解してみれば言い訳ですけど、
1週間ですか。。。
その間にどれくらい飲み込めたかによりますけど
すんなり行くものではないと思ってよいと思います

例外処理について勉強してみて
まずは例外周りの書き方からだけでも少しずつ理解してみてください
0233ぴゅあ2006/10/29(日) 04:32:58
て・・・解決できそうなまで行けたのか
02342212006/10/29(日) 04:37:19
>>230
わかりました。throws IOEだとうまくいかないのでcatch&tryでやってみます。
いまいちeclipseには慣れていなかったのですが、よくみたらコードの横の辺りに
バツマークみたいのがついてたりしました。これがエラーですね。(ポインタを当てたらエラー内容がでました)

ちなみに・・・・このコードにする前は正常に動いていました。
クラスなのでボタンはボタン。という風に部品ごとに分けようと思い
216の処理に書き直していたらエラーがでるようになりました。

import java.io.*;
import java.util.*;
public class ButtonControl
{
public static void main(String args[]) throws IOException
{

InputStreamReader is = new InputStreamReader(System.in);
BufferedReader br = new BufferedReader(is);
System.out.println("エレベーターへようこそ!行きたいフロアのボタンを押してください。");
String charfloor = br.readLine();
int floor =Integer.parseInt(charfloor);
・・・・・・・・・・
0235210=2212006/10/29(日) 04:43:37
上の処理ではコンパイルが通り実行できてました。

>>232
そうですね・・・早く自分で何かを作ってみたいという気持ちばかりが前に行っていたので
ちょっと本やらなにやらを読み直したほうがよさそうですね・・・
210と234をみくらべて見ることも重要と思いさっきから眺めております。

>>233
正直catch&tryやthrowsの存在はしっていましたが、まだ自分には
何かが抜けているみたいなので解決するには至らないと思います。

出直したほうがよさそうですね。
みなさん、夜遅くまでご迷惑をかけました。ありがとうございました!!
0236ぴゅあ2006/10/29(日) 04:43:43
>>223
色んなサンプルコードを実際にコンパイルして動かしてみたり
コードを理解し、色々手を加えて行けるようになるまで繰り返す
(当然、簡単なサンプルから)

どう作ればいいかというのをイメージできるようになるまで
そうして作り方というものを学んで行くしかないかなぁ

作りたいものに似てそうなものがあれば
流用するとかもあるだろうけど、
その判断もまだ難しいでしょ?
0237デフォルトの名無しさん2006/10/29(日) 04:44:18
>>234
「クラスなので」という説明がよく分かりません。
02382232006/10/29(日) 04:54:48
一応、例外・入出力処理までは勉強して、クラスや継承、インターフェース
までは理解できたのですが、スコアカウントの計算というか、処理がイメージ
できないんです。

似たものを参考にしたりするのも勉強になるとは聞いたのですが
似たもの自体が見つけられなくて…。
0239デフォルトの名無しさん2006/10/29(日) 04:56:14
>>238
まずは処理の流れを
紙に書いてみる
数字付き箇条書きで
そこからだ。
0240210=2212006/10/29(日) 05:39:21
なかなかコンパイルが通らなくてずっと悩んでさっきも試したのに
うまくいかなくて・・・でもthrows IOExceptionつけたらうまくいって・・・・
さっきも試したのに・・・?何故??結局根本的な原因がわからないまま解決してしまった。

import java.io.*;
public class ButtonControl
{
       void button() throws IOException{
InputStreamReader is = new InputStreamReader(System.in);
BufferedReader br = new BufferedReader(is);
System.out.println("エレベータへようこそ!行きたいフロアのボタンを押してください。");
String charfloor = br.readLine();
int floor =Integer.parseInt(charfloor);
System.out.println("あなたは" + floor + "階に行くボタンを押しました");
}


public static void main(String[] args) throws IOException{
ButtonControl buttonControl = new ButtonControl();
buttonControl.button();

}}
0241デフォルトの名無しさん2006/10/29(日) 05:45:49
>>240
根本的な原因は
>>240がException処理について勉強していないこと
まずはeclipseのエラーの意味が分かる程度には勉強しようや
0242デフォルトの名無しさん2006/10/29(日) 08:05:27
>177
ピュアさんレスありがとうございます。
Nortonを疑ったのはまず他のアプリでも私のプログラムほどの頻度ではないが
そういう現象が現れたときがあったからです。例えばJBuilder やIE等。JBuilderが何で
Javaで純粋に書かれているのかC++で書かれているのか良く分かりませんがNorton
をインストールした後でこういう現象が起きたので疑ってみました。Javaのプログラムの実行に
少し干渉する可能性も外せないと思ったわけです。まぁインストールするまでに
出来上がっていたものは僅かだったのでなんとも言えないのですが・・・
とりあえず原因を徹底的に洗って見ます。いろいろありがとうございました。
0243デフォルトの名無しさん2006/10/29(日) 08:08:38
本当に初歩的な質問で申し訳ありません。
デフォルトでボタンに使われている色を抽出するにはどうしたらよいでしょうか?

ただこれはインスタンスを作って button.getColor();等の方法で以外のものを教えてください。

02442432006/10/29(日) 09:27:01
>243
訂正です
ただこれはインスタンスを作って button.getColor();等の以外の方法を教えてください。
Systemではないけど取れたような記憶があるのですがググッても見つからないので
宜しくお願いします。
0245デフォルトの名無しさん2006/10/29(日) 10:49:48
ヤフれカス
0246デフォルトの名無しさん2006/10/29(日) 11:58:42
とりあえず何のbuttonでしょう・・・・
0247デフォルトの名無しさん2006/10/29(日) 12:07:28
>>210
Java の例外はチェックする例外(checked exception)と
チェックしない例外(unchecked exception)の2種類がある。

って話をどこかで聞いた?聞いてないなら勉強不足。
C# や C++ の例外処理とは似てるようでかなり違う。
IOException はチェックする例外。
0248ぴゅあ2006/10/29(日) 12:24:47
>>247
RuntimeExceptionとその他の事ですか?
しらない人はきちんと調べてからカキコしてくださいね。
0249デフォルトの名無しさん2006/10/29(日) 12:33:13
これ偽者の方か?
実際には Exception 以外にも Error があるから
この説明じゃ不足してるのは確かだな。
0250デフォルトの名無しさん2006/10/29(日) 13:37:31
Javaのジェネリクスって多重継承と何が違うの?
0251ぴゅあ2006/10/29(日) 13:43:53
>>249
>>248の
>RuntimeExceptionとその他の事ですか?
とか、何を言おうとしているのか解らんですけど

>>247に対して"Errorがあるから"ということなら
検査/非検査について言おうとしているでしょうから
いいんじゃないかと
(ただ強いて言うなら>>210とは繋がりないような・・・)
0252デフォルトの名無しさん2006/10/29(日) 13:45:55
>>250
"Java 何が違うの?"とかでもググッてみるとか

色々組み合わせて探してみると
何か出てくるかも?というところですけど


0253デフォルトの名無しさん2006/10/29(日) 13:48:49
>>247-251
これでも読んでろカスども
http://java.sun.com/docs/books/tutorial/essential/exceptions/catchOrDeclare.html
0254デフォルトの名無しさん2006/10/29(日) 13:49:10
>>252
何も出てこなかった。
0255ぴゅあ2006/10/29(日) 14:04:27
>>253
この辺りの物で十分じゃないかと?
http://www.nextindex.net/java/exception.html
0256デフォルトの名無しさん2006/10/29(日) 14:19:32
ぴゅあ様、RuntimeExceptionすら理解してなかったのか……
0257デフォルトの名無しさん2006/10/29(日) 14:33:31
ん〜
ジェネリクスって動的な型システムにしか見えないなぁ。
これのどこがいいんだろう?
不思議だ。
0258ぴゅあ2006/10/29(日) 15:10:39
>>250
全然別物じゃないんでしょうか
ジェネリクスという言葉では理解してないけど
型保証を行うってことだと思いますよ
(言葉として理解してないのでそれが全てかどうかは判らないですけど)

なので、複数の型が混在し得るからと言ってまさかやったりはしないと思うけど
List<Object>とかしてしまうようだと意味なしよね?
■ このスレッドは過去ログ倉庫に格納されています