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

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

レス数が1000を超えています。これ以上書き込みはできません。
0001デフォルトの名無しさんNGNG
過去ログ、関連スレの一覧や、これからJavaでプログラミングを
始めたいが何をすればいいかわからない人は、下のリンクをクリック。
http://www.wikiroom.com/java/

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

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

前スレ。
【初心者】Java質問・相談スレ42【大歓迎】
http://pc2.2ch.net/test/read.cgi/tech/1077518664/l50

すべてのクラス (Java 2 プラットフォーム SE v1.4.0)
http://java.sun.com/j2se/1.4/ja/docs/ja/api/index.html
Java (TM) 2 SDK ドキュメント
http://java.sun.com/j2se/1.4/ja/docs/ja/index.html
Java言語規定 第2版 目次
http://www.y-adagio.com/public/standards/tr_javalang2/jTOC.doc.html
0002デフォルトの名無しさんNGNG
削除依頼出してくる
0003デフォルトの名無しさんNGNG
java.awt.Imageクラスの変数を

 Image img;
と宣言して

 img = getImage(getCodeBase(),"test.jpg");
抽象クラスのImageを継承せずにこのように使うのはなぜなのでしょうか?
アプレットクラスがImageクラスを継承しているのでしょうか?
APIドキュメントを読んだのですがいまひとつわかりませんでした。

クラスの変数をnewしないで使うの?って所から疑問に思って調べると
抽象クラスだし継承しないの?とも思ったり
どなたか教えてください。

0004デフォルトの名無しさんNGNG
そのメソッドは Image を継承した、なぞのクラスのインスタンスを返してくれてる。
別になんの違いも無い。
せいぜい new するプログラムを書いたのが君自身ではないというだけだ。

OS やら VM やらによって、
画像を管理する最適の方法があるため、
Image のサブクラスを具体的に標準APIに用意するだけでなく、
ランタイム内部などに隠蔽するほうが都合がよい場合がある、という説明で納得いくか?

>クラスの変数をnewしないで使うの?
ここは君の誤解がある気がする。クラスと変数とインスタンス、それぞれの意味が正確にわかっているか?
0005デフォルトの名無しさんNGNG
>>3
drawStringで、
img.getClass().getName()
を表示してみると、>>4のいうなぞのクラスの名前がわかるよ。
OS Xだと
apple.awt.OSXImage
だね。
0006デフォルトの名無しさんNGNG
>>4
丁寧な説明ありがとうございます。
>ここは君の誤解がある気がする。クラスと変数とインスタンス、それぞれの意味が正確にわかっているか?
本を再度確認してみました。使い方間違えてました。ご指摘ありがとうございます。

>>5
やってみました
sun.awt.windows.WImage
とでました。

昨日から調べていたのですが分からず
入れ込んでいたので気持ちが落ち着きました。
ありがとうございました。
0007デフォルトの名無しさんNGNG
URLEncoder/URLDecoderについて質問です。

Windows上で、IEで非ASCII文字列をURLEncodingした時、Shift-JISの2バイト目が
[a-zA-Z0-9*_-._]に含まれる場合、IEは2バイト目をその文字に変換するようなの
ですが、これをDecodeするにはどうすれば良いのですか?

例えば、”(”は、URLEncoder.encode("(","SJIS")で %81%69 に変換されますが、
IEでは %81i に変換してしまいます。
これをURLDecoder.decode("%81i","SJIS")とDecodeしようとしても?i となってしまうの
ですが。
0008デフォルトの名無しさんNGNG
SJISURLDecoderを自分で作る。
0009デフォルトの名無しさんNGNG
>8
そうするしかないんですか・・・・

作るのはそんなに難しそうではないんですけどね。 とほほ
0010デフォルトの名無しさんNGNG
URLDecoder文字コード指定できるだろ。
URLDecoder#decode(String s,String enc)
UTF-8が本来使われるべきってだけで。
001110NGNG
あー、失礼、問題をちゃんと読んでなかった。
0012デフォルトの名無しさんNGNG
サーブレットだったらどっちも気にしなくていいんだけどね
URLEncoder/Decoder単体なら自作しないといけなかったはず
0013デフォルトの名無しさんNGNG
>12
EUCだけに限定することができたらそうだね。
001413NGNG
12の後半は意味不明ですけど。
001512NGNG
エンコードのキャラクタセットがわかっているのは必須だとして
サーブレットでのgetParameterが綺麗にやってくれるということをいっただけ
MS932だろうがEUCだろうがUTF8でも同じ

java.net.URL〜を通常のアプリから使う場合はそのままだと
>>7の用途に使えないので自作しないとダメだと言っただけ
001613NGNG
>15
あっ、それなら納得。
13は
EUCだけに限定してしまえば、複数バイト文字のどのバイトも
[0-9A-Za-._*]にぶつからないから、7の問題は起きないという話。
0017デフォルトの名無しさんNGNG
こんなに下がってるから見つからなかっただろ
0018かすみんNGNG
今パソコンでカードゲームが出来ないかと思いjavaを勉強してるのですが
私のしたいことが出来ず悩んでます。そのやりたい事とはカードにカーソル
を持って行くとカードが拡大しクッリクすると効果や名前が出てくる
とゆう事をやりたいのですがどうにも出来ずここ居る人達に
教えてもらいたいと思い書き込みしました。どなたかやり方を教えては
くださいませんでしょうかよろしくお願いします。
0019デフォルトの名無しさんNGNG
厨な質問でスマソ。

WinシリーズにM$のVMが入った状態で
SunのVMをインスコしたら競合とかしますか?
完璧な互換性があるのなら、ちゃんとSunを使いたいし。
M$版を消したほうがいいのかな?ヤバそうな気もするけど。
0020デフォルトの名無しさんNGNG
Winシリーズ・・・
0021デフォルトの名無しさんNGNG
>>19
ほとんどの人はMSのVMが入ってる環境の上にSunのが入ってると思う
全く問題ないよ
一応VM自体バージョン複数いれれるし

>>18
カーソルの位置からカードの拡大処理すればいいだけでは?
この辺はjavaだろうがCだろうがVBだろうが同じ
もっと具体的に何が出来ないのかかいてもらわないと
なんともいえない

ついでにいうとゲーム製作板に「JAVAでゲーム作成」ってのがある
0022デフォルトの名無しさんNGNG
>>19
完全な互換性ならない。ただIEのメニューか
コントロールパネルでどっちのVM使うか
切り替えられる。だから一応MSのも残しときな。
0023かすみんNGNG
ありがとうございます。さっそく行ってみます
0024デフォルトの名無しさんNGNG
>>23
Javaを勉強中の人がそういった芸の細かいゲームをJavaでいきなり
書くのはかなり無謀な気がするが...どうなんでしょうね。
ゲームみたいなものは瑣末なTipsを一杯知らなければ実際的なもの
は出来ないしそれでいてJavaを勉強するのは逆にそういった細かい
ことを意識的に排除しながら勉強しなければモノにならないし...
つまり二律背反なわけですよ。(Javaははっきりいってゲームには
向きません)
最適な言語かどうかはわかりませんが、HTMLでやってみられたら
どうでしょうか?つまりWebページ上で動作するわけです。
失敗しても得られるものは結構ありますよ。
0025デフォルトの名無しさんNGNG
Java がゲームに向かないといっておいて
HTML を勧めると来ましたか!!!!
0026デフォルトの名無しさんNGNG
コマンドプロンプトで
cd C:\作業フォルダ\JavaHello\アプリケーション編
入力したんですが、指定されたパスがみつかりませんとでてしまいます・・どうしてでしょうか・・?
0027デフォルトの名無しさんNGNG
>>26
ttp://pc2.2ch.net/pcqa/
002826NGNG
すいませんできますた
コマンドプロントでJAVA実行したんですが、javaファイルがひらいちゃうだけなんですがどうしたらいいですか?
環境設定これであってます?
ttp://strawberry.atnifty.com/cgi/up/src/up0255.zip
0029デフォルトの名無しさんNGNG
>>24
ワラタ
0030デフォルトの名無しさんNGNG
>>28
CLASSPATHは消せ。
PATHはどうもJREを指してるようだが、JDKはダウンロードしたかい?
JDKのbinディレクトリを指定すればOKだ。
0031デフォルトの名無しさんNGNG
>>28
あと、PATHの最後には「;%PATH%」と加えとかないと、
システムが使うコマンドが見つからなくて妙なことになったりするぞ。
003228NGNG
>>30-31
おそくなってすいません。わざわざ深夜に回答ありがとうございます。
いまからためしてみまつ
003328NGNG
すいませんやはりjavaファイルが開くだけなんですが・・・
JDKのbinは
Program Files→Java→j2re1.4.2_04の中に入ってるんですが設定はこれでいいですか?
tp://strawberry.atnifty.com/cgi/up/src/up0257.jpg
0034いがNGNG
JAVA初心者です。
JAVAのソースをコンパイルして、実行した瞬間に、
Exception in thread "main" java.lang.NoClassDefFoundError:
org/xml/sax/helpers/DefaultHandler
というエラーが出て実行できません。
set Classpath=.;c:\Program Files\Starbase\StarGate SDK\Lib\starteam54.jar
;c:\Program Files\Starbase\StarGate SDK\Lib\starteam54-resources.jar
このクラスパスが競合しているらしい、というのは、Webで見て分かったのですが、回避法が
出来ません。
どうしても分からず、藁をもすがる気持ちで書き込みました。

0035デフォルトの名無しさんNGNG
33見てj2sdk1.4.2_04が出てたのに気づいた。
ISO2022_JPのデコードの無限ループが直ってる様子。
ttp://java.sun.com/j2se/1.4.2/ja/ReleaseNotes.html#142_04
これで安心( ´∀`)
0036デフォルトの名無しさんNGNG
>>24
どのへんがゲームに向かないのかいってみろよ
なんにせよservletにしたらもっと大変だと思うんだけど
003728NGNG
コンパイルの仕方が間違ってマスタすいませんでした。
0038デフォルトの名無しさんNGNG
>>34
いい根性してる
0039デフォルトの名無しさんNGNG
>>36
構造化言語を使う場合、思いついたアイデアみたいなプログラム断片を、
貼り付けていく感覚でプログラム作っていけない罠。構造物を作るように
綿密な計画のもとに行わなければならない罠
十分計画してかなりきつく絞ってからやる必要がある。Javaの場合その最右翼じゃないか?

ゲームなんて、実践と試行錯誤の過程の思い付きの塊を洗練したものが
生命だからそういうやり方だけで通したら死んでしまうね。
(ゲームだからといって構造化言語を排除するのも間違いだけど)
0040デフォルトの名無しさんNGNG
OC4jについて詳しいヒトいますか?
0041デフォルトの名無しさんNGNG
単純に、GUI周りを作るのが面倒、
ネイティブAPIを直に触れない(JNI除く)ので
OS依存の凝ったことをしようとするとつまずく(Windowsでタスクトレイに表示とか)
といった話でいいんじゃないか。
0042デフォルトの名無しさんNGNG
ゲーム開発ってオブジェクト指向いれるとすごい楽ですよ。
私もしばらくオブジェクト指向なんていらねーとかいいながら
Cでガリガリ書くことが多かったのですが、javaはらくちんです。
C++くらいの中途半端なのは下手するとかえって見にくくなっただけ
だったことも多かったですが。

アイデアをそのまま実装していくのもjavaは楽ですよね?
何も考えなくてstatic mainからstaticなメソッドを呼び出すだけで
Cと変わらない開発が可能です。

むしろ、ゲームで一番大事なまず絵を表示してみようなどといった部分が
javaは楽ですのでとっつきはいいほうだと思いますが。
フルスクリーンや解像度変更、フリップ処理などはDirectXより初期化が
非常に楽なのもポイントです。

別に言語はなんだっていいのです。javaだけ苦手ということはありません。
VBだろうがVCだろうがお金かかるのでむしろタダで開発環境が手に入る、
しかも統合環境もSDKとセットでついてくるしろものです。

Winで開発して何も考えなくてもLinux上でうごくゲームというのもなかなかいいものです。
0043デフォルトの名無しさんNGNG
>>34
まずは>>1を読め。話はそれからだ。
0044デフォルトの名無しさんNGNG
> 何も考えなくてstatic mainからstaticなメソッドを呼び出すだけで
> Cと変わらない開発が可能です。

こんな馬鹿が

> ゲーム開発ってオブジェクト指向いれるとすごい楽ですよ。

こんなこと言い放つとはおこがましい。
馬鹿さ加減を知れ。
0045デフォルトの名無しさんNGNG
>40
居たとしたら何なんだよ。
言いたいことは一発で言え。
0046デフォルトの名無しさんNGNG
>>41
最近のゲームはタスクトレイに入れらんないと成立しませんか。
0047デフォルトの名無しさんNGNG
>>44
>>42のあれは「オブジェクト指向とか関数(!)とかよくわからん」という人の為に
レベルを下げて書いたものじゃないか?
0048デフォルトの名無しさんNGNG
>>44
あれは何も考えずにシンプルに実装する場合のたとえだ
それがいいものとは思ってないが
ゲーム開発初心者にはjavaが無理だという反論だ

つーか、あげてる時点で俺つられてるんだろうけどな
004944叩きに参加NGNG
>>44
文脈を読む努力をしましょう
0050デフォルトの名無しさんNGNG
>49
読ませる文章を書く方が悪い。
0051デフォルトの名無しさんNGNG
つーか、44は、全体の文脈を理解せずに
一部分だけ取り出したら叩ける部分を
見つけて喜んで叩いただけじゃないのか?
005244叩きに参加NGNG
>>50
おそらくあなたの言いたいのは「行間」でしょう。
「文脈」は無条件に読むべきものですよ。
005344叩きに参加NGNG
「文脈を読む」とはあまり言いませんね。「文脈を理解する」ですね。こりゃ失礼
0054デフォルトの名無しさんNGNG
>53
書き込む前に自滅するなよ(w
「あすを読む」でも見て人生やり直せ(w
0055デフォルトの名無しさんNGNG
釣りがいるようなのでみなさん無視の方向で
0056デフォルトの名無しさんNGNG
プログラムっていうのに興味があります。
でもプログラムってどんなことなのかわかりません。
難しいですか?たとえば中学を卒業したててで、県立高校入試くらい
は9割取れる、つまり中学数学はだいたいできてた高校入学者が、
大学受験の数学(数1Aと数�UB)をやるのと比べて、どっちが手間が
(時間と勉強量)かかりますか?
0057デフォルトの名無しさんNGNG
>56
プログラムは簡単。
数学も簡単。
でも、恋の方程式は解けない。
0058デフォルトの名無しさんNGNG
数学が簡単な人にはプログラムも簡単、って事ですね?
ありがとうございました。
でも、恋に方程式なんてないと思うよ。
0059デフォルトの名無しさんNGNG
>>56
数学は大体できます。国語とどっちが手間がかかりますか?
といっているようなもん。 どちらが難いかだって?
数学できる奴は国語が必ずできる(もしくはその反対)か?
んなもん人それぞれ。
0060デフォルトの名無しさんNGNG
>>56
難しいかどうかなんて気にするヤツはプログラムやるな。
0061デフォルトの名無しさんNGNG
>>58
>数学が簡単な人にはプログラムも簡単
数学が簡単な人にできるのは、
数学を扱うプログラミングだ。
そうでないものはどうだか分からん。
0062デフォルトの名無しさんNGNG

oc4j使って
サーバが出力するエラーメッセージ↓ をログ上に書き出したいんだけど
java.lang.Exception
at SmfViewHHead.service(BBB..java:93)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)


StackTraceをStringに変換するような裏技ってないですか?
0063デフォルトの名無しさんNGNG
>>62
Exception e = new Exception();
StringWriter s = new StringWriter();
PrintWriter w = new PrintWriter( s );
e.printStackTrace( w );
w.flush();

String str = s.toString();
0064デフォルトの名無しさんNGNG
>>33
すげー遅レスだけど、変数値に書くのは、JDKのbinのパス。
おまいの言ってる場所にあるのだとしたら、
.;c:\program files\java\j2re1.4.2_04\bin;%PATH%
と入れないといけない。

でも、そのパスっておそらくJRE(ランタイムのみ)のパスに見えるんだけど、
javac.exeもちゃんとその中にある?確実なのは、javac.exeを検索して、
見つかったフォルダをそのまま変数値に入力することだと思うけど・・・。
0065デフォルトの名無しさんNGNG
>>61
哲学科卒業の漏れはどんなプログラミングができまつか?
無神論的実存主義が漏れの卒論ですた。
0066デフォルトの名無しさんNGNG
>>63
ありがとんです。出来ました
0067デフォルトの名無しさんNGNG
>>65
こじつけていえばオブジェクト指向プログラミングかな
実存があるまえに定義を用意しなきゃならんが
でもビジネスソフトウェアなら実世界に物理的実存があって
個々の関係性があって
仕様を通ってコンピュータ内部に物理的実存にたいする定義ができあがって
かつ関係性もしくは論理そのものにも定義があがって
インスタンス生成することで物理的実存にたいする定義に対する論理的実存ができあがり
かつ関係性もしくは論理そのものに対する論理的実存ができあがるっちゅー




あのな、やる前にあーだこーだ言う前にまずやってみろよ。
0068デフォルトの名無しさんNGNG
>>65
君はメタメタプログラマーになりなさい
0069デフォルトの名無しさんNGNG
>>64
>>28,33,37
007064NGNG
ごめん。氏んでくる。
0071デフォルトの名無しさんNGNG
>>67 >>68
ありがとうございまつ。
自分のプログラマとしての方向性が決まったような気がいたしまつ。
0072デフォルトの名無しさんNGNG
>>71
それは錯覚だな。
0073デフォルトの名無しさんNGNG
>>72
だな
まずスレ間違えてるし
007419NGNG
>>21>>22
サンクス。
0075デフォルトの名無しさんNGNG
現在処理を実行しているクラス名を取得したいと考えています。
mainなどstaticメソッド以外であれば、

this.getClass().getName();

とすることで、クラス名を取得できるんですが、staticメソッド中では
thisを使用することができないため、上記の方法が使用できません。
他に方法はありませんでしょうか?
どなたかよろしくお願いします。
0076デフォルトの名無しさんNGNG
>>75
直接クラス名いれるしかなかったと思う
class Hoge {
static Class hoge = Hoge.class;
}
あるいはプリプロセッサで
0077デフォルトの名無しさんNGNG
>>75
staticメソッドはオーバライドされないので、
処理を実行しているクラス名が動的に切り替わることはありません。
ですから、これで十分です。
class AClass{
 static void func(){
  LogManager.getLogger().info("処理を実行中のクラスはAClassです");
 }
}
0078デフォルトの名無しさんNGNG
>>76-77
なるほど、やっぱりクラス名をベタ書きで行うしか方法はありませんかぁ…
クラス名を直接書き込むという方法でやることにします。
どうもアリガトウございました。
0079デフォルトの名無しさんNGNG
ZipOutputStreamをつかいたいんですがZipEntryの名前に日本語を使うと文字化けしてしまいます
この場合どうしたらいいんでしょうか

File file = null;FileOutputStream fos =null ;ZipOutputStream zos =null;
try {
  file = new File("data.zip");fos = new FileOutputStream(file);zos = new ZipOutputStream(fos);
  zos.putNextEntry(new ZipEntry("ファイル名.txt"));zos.write("中身".getBytes(), 0, 4);
  zos.putNextEntry(new ZipEntry("filename.txt"));zos.write("contents".getBytes(), 0, 8);
}catch(Exception e){System.err.println(e);}
finally { try {zos.close();}catch(Exception e){} try {fos.close();}catch(Exception e){} }
0080デフォルトの名無しさんNGNG
JDKのZipのクラスはファイル名を
UTF-8でエンコードするから。

http://www.cs.bris.ac.uk/Teaching/Resources/General/ant/docs/manual/api/org/apache/tools/zip/ZipFile.html
これ使うとか。
0081デフォルトの名無しさんNGNG
>>80
ありがとうございました。ダウンロードしてつかってみたらうまくいきました
0082デフォルトの名無しさんNGNG
>>78 1.4以降になるけど、
System.err.println(new Throwable().getStackTrace()[0].getClassName());
みたいなやり方もある。
0083デフォルトの名無しさんNGNG
String型の配列の重複判定処理を作ってみたのですが、
あきらかに重複が含まれている場合でも、重複判定されないでループを抜けてしまいます。
System.out.printlnの出力を見る限りでは判定対象になっていると思うのですが
何処か間違っているでしょうか? よろしくお願いします。
↓コードです。
while(cplist[index] != "END"){ '配列の最後に格納した「END」で判定
index2 =index + 1;
while(cplist[index2] != "END"){   '配列の最後に格納した「END」で判定
System.out.println(cplist[index]+"=="+cplist[index2]);
if (cplist[index] == cplist[index2]){
JOptionPane.showMessageDialog(this,"重複あり","確認",JOptionPane.WARNING_MESSAGE);
}
index2 =index2 + 1;
}
index = index +1;
}
0084デフォルトの名無しさんNGNG
すみません。コードが見にくくなってしまったので再掲載します。
while(cplist[index] != "END"){ '配列の最後に格納した「END」で判定
  index2 =index + 1;
  while(cplist[index2] != "END"){   '配列の最後に格納した「END」で判定
    System.out.println(cplist[index]+"=="+cplist[index2]);
    if (cplist[index] == cplist[index2]){
      JOptionPane.showMessageDialog(this,"重複あり","確認",JOptionPane.WARNING_MESSAGE);
    }
    index2 =index2 + 1;
  }
  index = index +1;
}
0085デフォルトの名無しさんNGNG
>>84
Stringで同値かどうかの判定がしたけりゃ
java.lang.String#equals(Object) 使え。

あと配列の終端は length 使えば判定できるだろ…
0086デフォルトの名無しさんNGNG
ゲームのメニューみたくマウスがその範囲に入ったら画像を切り替えるようなものをつくりたいのですが、
どういったクラスをつくり、MouseListenerをインプリメントすればよいのでしょうか?
swingでやりたいと思っています。よろしくお願いします。
008784NGNG
>>85
equalsで解決しました!
ありがとうございます。
0088デフォルトの名無しさんNGNG
>>86
JDKに入ってるSwingSetってサンプル見るといいよ
特にButtonDemoのイメージチェックボックスとComboBoxDemo
0089デフォルトの名無しさんNGNG
>>88
SwingSet見当たらないです・・・(つД`)
0090デフォルトの名無しさんNGNG
>>89
[JDK_installed_dir]\demo\jfc\SwingSet2 を探してください。
[JDK_installed_dir]\demo\jfc\SwingSet2\src にそのソースがあります。

JDKインストール時のデフォルト設定では demo が選択されたと思うけど、
それを選択してないとかって可能性もあるかも。
(その場合は demo ディレクトリが無い)
0091デフォルトの名無しさんNGNG
demoディレクトリなかったのでJDK入れなおします。
ありがとうございました!
0092デフォルトの名無しさんNGNG
Swingでawtのchoiceにあたるのはなんですか?
0093デフォルトの名無しさんNGNG
JComboBox
0094デフォルトの名無しさんNGNG
javaで作られたフリーソフトが集まってるようなサイトって無いでしょうか?
ベクターには無いみたいでした。
0095デフォルトの名無しさんNGNG
>>93
どうも。
それとJLabelは単一行しか文を掲載できないみたいですが
複数文できるJLabelのようなものありますかね?
0096デフォルトの名無しさんNGNG
>>94
sourceforgeでjavaで検索しる。
0097デフォルトの名無しさんNGNG
>>95
JLabel でも複数行表示できるのは常識。使う前に SwingSet のデモを見ろ。
0098デフォルトの名無しさんNGNG
>>95
"<html>1行目<br>2行目</html>"
こんなのをセットすべし。
0099デフォルトの名無しさんNGNG
>>98
HTML使えるんですね!
これは初めて知りました。
ありがとうございました。
0100デフォルトの名無しさんNGNG
iアプリをエミュレータで作成して実機に落としたいのですが。(Doja2版)
開発に当たってcpuはペン2位がちょうどよいでしょうか?
まさかそれよりもっと前?
0101デフォルトの名無しさんNGNG
sun.jdbc.odbc.JdbcOdbcDriver
の直訳を知りたい。
サンの、ドライバクラスをロードするということらしい
のですが、このへんの理解でいいでしょうか?

0102デフォルトの名無しさんNGNG
>>75
SecurityManager#getClassContextでも可能。
ただしprotectedなので、適当に継承するなり色々・・・
jdk1.4のThrowable#getStackTraceに近いことができる。
0103デフォルトの名無しさんNGNG
>>98
99じゃ無いのですが、HTMLが使えるなんてビックリです。
これってどの程度使えるのでしょうか?
表とかフレーム分けとかハイパーリンクもできたりするのでしょうか?
0104デフォルトの名無しさんNGNG

C:\j2sdk1.4.2_03\demo\applets\DrawTest>java DrawTest

ってやると、ウインドウの閉じるボタン(×ボタン)を押しても閉じてくれないんですけど、
どうすれば閉じるようになりますか?
0105デフォルトの名無しさんNGNG
>>103
javax.swing.text.html.HTMLEditorKitでできることはできるんじゃねーの?
http://java.sun.com/j2se/1.4/ja/docs/ja/api/javax/swing/text/html/HTMLEditorKit.html
HTML3.2レベルのことは全部できるようだが。
0106デフォルトの名無しさんNGNG
キーを離すと画像がある程度動いた後止まる、というプログラムを作りたいのですが
どうもうまくいきません。

//無名内部クラス使用
public void keyReleased(KeyEvent e){
 int k = e.getKeyCode();

 if(k == KeyEvent.VK_RIGHT){

  for(int i = 1;fue1 > 2;fue1 -= i){
  //int型変数fue1の値は16

   cx += fue1;
   repaint();

  }
  fue1 = 2;
 }
}
(中略)
//paintメソッド内
//chargazoは定義済みのImage型変数
g.drawImage(chargazo,cx,64,this);


forループを使って連続repaintをし、どんどんちょっとずつ動いていく様を表示しようと
思ったのですが、なぜかいきなりforループが終わった後の結果が表示されてしまいます。。
なぜでしょう?そしてどうしればいいのでしょうか?
0107デフォルトの名無しさんNGNG
>>104
ctrl + C、押す
0108デフォルトの名無しさんNGNG
>100
好きなのを使え。
どうせ何を使っても実機は機種によって実行速度がまったく違うから、
エミュレータ上での動きは何のアテにもならない。
0109デフォルトの名無しさんNGNG
>>101
藻舞さんの聞きたいことが本当は、
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
なんだと想像してみると、その辺の理解でいいです。
JDBCドライバはstaticイニシャライザとかで、クラスが読み込まれたときに、
DriverManager#registerDriverを使って自分自身を登録するようになってまつ。
0110デフォルトの名無しさんNGNG
>>78
常にDynamicProxyをかぶせるようにして、InvocationHandlerでtargetのClassを
拾ってしまうという手もありますが。

つうか、DynamicProxyってみんな使わないの?Loggerと組み合わせるなら最高のAPI
だと思うんだけど。
0111106NGNG
むう、誰か・・・。
マリオっぽいのを作ろうとしていて、そのあの滑る感じを出したいんすけど。
0112デフォルトの名無しさんNGNG
>>106
http://java.sun.com/j2se/1.4/ja/docs/ja/api/java/awt/Component.html#repaint()
このコンポーネントを再びペイントします。
このメソッドは、このコンポーネントの update メソッドを可能なかぎり速やかに呼び出します。

この場合の「可能なかぎり速やかに」ってのは政治家とか官僚とかが使う言葉みたいな意味なので。
いかなるときでも即座に Component#update(Graphics) が呼ばれる事を期待してはならない。
0113デフォルトの名無しさんNGNG
>>106
AWTのイベントスレッドの外でrepaintを何度か送るんだ。
分かる?別スレッドにする。
0114デフォルトの名無しさんNGNG
>>104
java.awt.Frameはデフォルトで"閉じる"ボタンで閉じない。
//これ考えたやつはばかだなあ。
↓この辺参考に。
http://java.sun.com/j2se/1.4/ja/docs/ja/api/java/awt/event/WindowListener.html
http://java.sun.com/j2se/1.4/ja/docs/ja/api/javax/swing/JFrame.html
0115デフォルトの名無しさんNGNG
> //これ考えたやつはばかだなあ。
デフォルトであらゆるイベントリスナーを実装してないだけ。
理解できない奴も相当馬鹿だと思うけど。
0116106NGNG
>>112
あ、そうなんすか(汗
むうー。

>>113
す、すみません 分からないっす・・・
イベントスレッドの外でrepaintを送るとは??
具体的にどういうことなのでしょうか。
0117デフォルトの名無しさんNGNG
>>106
Runnable r = new Runnable(){
 public void run(){
  for(にょろにょろ){
   repaint();
  }
 }
};
new Thread(r).start();

こんな感じにしてみ。
これだと毎回スレッド作っちゃうから
そのイベントを待ってて動く1つのスレッドか
プールされたスレッドを使うと効率よいけどね。
0118デフォルトの名無しさんNGNG
>>116
ループ内の処理を別スレッドでやれ、ということ
SwingSetのColorChooserDemoが参考になるかもしれない
0119デフォルトの名無しさんNGNG
質問です。
今読んでいる参考書には「staticなメンバは継承できない」と書いてありました。
けれど、以下のようなプログラムを作ってみると、実行することができました。

class Test1 { public static int i = 10; }
public class Test2 extends Test1 {
public static void main(String[] args) {
System.out.println(Test2.i);
System.out.println(i);
}
}

どう考えても、Test2のクラスにTest1のstaticなフィールドiが継承できてるとしか思えません。
Test1.iでなければ参照できないのなら話は分かるのですが、
Test2.iでも参照できていることに混乱しています。。
もし分かる方がいらっしゃったら、ここのところについて詳しく教えて頂きたいです。
0120デフォルトの名無しさんNGNG
>>119

http://www.y-adagio.com/public/standards/tr_javalang2/classes.doc.html#21831
> 8.2 クラスのメンバ
> クラス型のメンバは,次のとおりとする。
>
> ・直接的上位クラス(8.1.3)から継承されたメンバ。
>  ただし,直接的上位クラスをもたないクラスObjectは除く。
> ・任意の直接的上位インタフェース(8.1.4)から継承されたメンバ。
> ・クラス本体(8.1.5)で宣言されたメンバ。
>
> private宣言されているクラスのメンバは,そのクラスの下位クラスによって継承されない。
> protected宣言又は public宣言されているクラスのメンバだけが,
> そのクラスが宣言されているパッケージ以外のパッケージで宣言されている下位クラスによって継承される。
>
> コンストラクタ,静的初期化子及びインスタンス初期化子は,メンバではないので,継承されない。
0121デフォルトの名無しさんNGNG
> > コンストラクタ,静的初期化子及びインスタンス初期化子は,メンバではないので,継承されない。
コンストラクタってメンバじゃなかったんだねぇ…
java.lang.reflect.Constructor extends java.lang.reflect.Member だったりするんだけど。
0122119NGNG
>>120
ありがとうございます。
(継承できるってことが)理解できました。
0123デフォルトの名無しさんNGNG
すみません、オブジェクト型の配列のソートについて教えてください。

フィールド変数に
int i
を持つオブジェクト
hoge
の配列、
hoge[]について、

hoge[]をint iの大きさに応じてソートするメソッドなどありませんでしょうか。

どなたかご教授ください。よろしくお願いいたします。

0124デフォルトの名無しさんNGNG
>>123
java.util.Arraysを見てみそ。
0125デフォルトの名無しさんNGNG
>>123
java.util.Arrays#sort(Object[],java.util.Comparator)
0126123NGNG
>>124さん、>>124さん
ありがとうございます。
みてみたのですが、よくわかりませんでした。。(すみません。。)

sort(Object[] a, Comparator c)

だと思うのですが、 Comparator cに何を入れれば、
指定したフィールド変数(この場合は、int i)で比較してくれるのでしょうか。。
0127123NGNG
>>124さんを2つ書いてしまいました。。
>>124さん、>>125さんでした。。^^;
0128デフォルトの名無しさんNGNG
>>126
new java.util.Comparator(){int compare(Object o1,Object o2){return ((hoge)o1).i-((hoge)o2).i;}}
0129123NGNG
>>128
なにやらエラーが出てしまって、まだできてないのですが^^;
Comparatorのcompareメソッドを実装して使う方法は理解できました。
これでできると思います。
ありがとうございました。
0130デフォルトの名無しさんNGNG
>>128
public つけんの忘れた。
0131ひよこ名無しさんNGNG
Javaを扱う際の例外処理について質問なのですが、
catch ブロックで掴む例外というのはExceptionで
全て事は足りるのでしょうか?
いまいち例外クラスの使い方が良く分かりません。

0132デフォルトの名無しさんNGNG
>>125,128
int[]のソートならComparatorいらないでしょ。これで十分。
int[] ia = {10, 40, 20, 1, 5};
Arrays.sort(ia);
0133デフォルトの名無しさんNGNG
とぅられるもんか!
0134デフォルトの名無しさんNGNG
>131
「例外」ならExceptionでOK。
「エラー」の場合はExceptionでは捕捉できない。

しかし、ミソもクソも一緒にExceptionというのはあまり感心できるプログラムではないと思う。

0135123NGNG
>>130
さっきできました。ほんとありがとうございました。

>>132
int型のフィールド変数での、
object[]のソートだったのです。分かりにくくってすみません^^
0136132NGNG
誤読により死亡…
0137デフォルトの名無しさんNGNG
>>134
感心できないどころじゃなくて、糞プログラムになるからやめろと伝えよう。
これ以上バカを増産しないように気を配って欲しいものですなぁw

>>131
Exceptionをcatchしてしまうと、RuntimeExceptionのサブクラス
(NullPointerException、IndexOutOfBoundsExceptionなど)をまとめて
捨ててしまうことになるので、バグの発見が遅れる可能性が高くなる。
0138デフォルトの名無しさんNGNG
>>137
catch ってのは Exception を捨てるためにあるんじゃないんだけどね。
0139デフォルトの名無しさんNGNG
catchしてもどうにもならないExceptionは。「catchしない」が一般的。
拾っても状態回復できないなら、普通ならアプリ落すでしょ。
よくわからなかったら、そのまま丸投げしとけ。
0140137NGNG
>>138
それを理解できる奴は不必要にExceptionのcatchなんてしないだろ?
0141ひよこ名無しさんNGNG
なるほど。回復出来るものと回復出来ないものがあるのですか。
大変勉強になりました。

丸投げするというのはその関数を何らかの原因となるException
(関数内で起こり得りそうなもの)をthrows で宣言しておいて
catchブロックは付けないような形にするということでしょうか?

また別な質問になるのですが、状態回復出来ない場合のデストラ
クタの処理は加えた方が宜しいのでしょうか?
0142デフォルトの名無しさんNGNG
>141
好きにすれば良いんじゃないの?
後始末をする必要があって、後始末するまでの猶予があるならば、付けておいた方が何かと都合がよい。
0143デフォルトの名無しさんNGNG
Java にはデストラクタはありません。
0144デフォルトの名無しさんNGNG
>>139
まあそうだけど、スタックの最初あたりなら、全てのExceptionをcatchしてた方がいいよね。
捕まえたところでログ吐くくらいしかできないけど、それすらしておかないと
後でエラーの原因が分かりにくくなるし。
というのを、最近JavaでGUIアプリ作って思った。
0145137NGNG
>>144
それは「必要な場合」に入るね。

reflection系の場合みたいにthrows Throwableって場合は、
嫌が応にもcatchせざるをえない場合もあるわな。

この場合はinstanceofとかで判断しつつ、丸投げ、自分で始末を決めにゃならん。
0146デフォルトの名無しさんNGNG
int型の数字をchar型の文字列としたいときは
どうすればいいんですか。
0147デフォルトの名無しさんNGNG
>146
「char型の文字列」というのは存在しませんから無理です。
0148 NGNG
Javaで生成できるスレッドに、メモリの上限までなどのリソース的な上限以外に
仕様的な上限はありますか?
0149デフォルトの名無しさんNGNG
if(a == b) {
return true;
}

return false;

こんな処理をメソッドにする人がいるんですが、どうすればいいでしょう。
0150デフォルトの名無しさんNGNG
a, b が private ならそこそこ意義がある
0151デフォルトの名無しさんNGNG
>>149
extract method
http://www.atmarkit.co.jp/fjava/devs/xpd06/xpd06.html
0152デフォルトの名無しさんNGNG
package A;
import java.awt.*;
import javax.swing.*;

/*
 <applet code = "Sample" width=100 height=100>
 </applet>
*/

public class Sample extends JApplet {

パッケージに入れた状態でappletviewerを起動させるとエラーが起きてしまいます。
どのようにすればエラーが起きないんでしょうか?
0153デフォルトの名無しさんNGNG
どんなエラーが?
0154デフォルトの名無しさんNGNG
>>153
Unknown Errorと出ます。
0155152NGNG
java.lang.NoClassDefFoundErrorとでます。
0156デフォルトの名無しさんNGNG
>>150-151
お前らの言いたいことはわかるんだが、そのメソッドはpublic staticで、ユーティリティクラスにあるのよ。
どこのバカが再利用するんだよ、と。
0157デフォルトの名無しさんNGNG
>>156
んー再利用というより、読みやすさだな。
条件文が何らかの意図を表しているなら、
コメントつける代わりにメソッド名で何をしているのかを明示してやる。
いや、冗長になるし、メソッド呼び出しのオーバヘッドも増えるから、
ほどほどにすべきだけど。
0158デフォルトの名無しさんNGNG
return a==b;じゃだめなの?
0159デフォルトの名無しさんNGNG
> 条件文が何らかの意図を表しているなら、
> コメントつける代わりにメソッド名で何をしているのかを明示してやる。

そう言うのじゃないんですよ。
汎用的なユーティリティクラスにあるんですよ。
compareIntみたいなメソッド名で。
もう、ダメすぎ。
0160デフォルトの名無しさんNGNG
>>149が馬鹿ということでFA
0161デフォルトの名無しさんNGNG
>>159
>compareIntみたいなメソッド名
に不覚にもワロタ。もしかして、addInt、substractInt、leftBiggerThanRightなんかもある?
0162デフォルトの名無しさんNGNG
「みたいな」が重要
0163デフォルトの名無しさんNGNG
servletが読み込むプロパティファイルってどこにおけばいいんですか?
0164デフォルトの名無しさんNGNG
>>163
手元
0165デフォルトの名無しさんNGNG
Servletの質問は、ここでは受け付けていません。
Webプログラミング板をご利用ください。http://pc2.2ch.net/php/
0166デフォルトの名無しさんNGNG
スーパーマリオっぽいゲームを作ろうと試みているのですが、
スーパー正男等のゲームは、矢印キーを押すと
すぐにキャラが動き、そのまま押し続けていてもどんどん動いてくれるのですが
keyPressedメソッドを使用しても、
一回押してからちょっと間が空いてからしか動いてくれません・・・。

 ● 
(→キーを押した)
 ●
(→キーを押し続けている。が、この少しの間で反応しない)
 →→→●
(→キーを押し続けている。このように少し間が空いてから動く。)

どうすればこの「間」を無くす事ができるでしょうか??
(これってゲ製作技術板かな・・・しかしここはレスが早いからこっちの方がいいんだよなあ・・)
0167デフォルトの名無しさんNGNG
>>163
アプリ固有のだったらWEB-INF配下とかでいいんじゃない?
0168デフォルトの名無しさんNGNG
>>166
問題なくすぐにうごくけど?
どっかおかしいんじゃない?

イベントがちゃんとすぐに動いてるかどうかSystem.outでいいから出力しなされ

0169166NGNG
>>168
あ、スミマセン ちょっと訂正が・・・。

 →● 
(→キーを押した。キー処理一回分はすぐに動くが・・・)
  ●
(→キーを押し続けている。が、この少しの間反応がない)
  →→→→●
(→キーを押し続けている。このように少し間が空いてから動き出す。)

要するに、
→→→→→→●
ではなく、
→●
 ●
 →→→→→●
みたいな・・・。最初の一歩はすぐに動くんす。
0170デフォルトの名無しさんNGNG
>>169
アクションゲームなら
・キー入力 -> 動く
とかするより

・キー入力 -> キー状態変更、
 別のスレッドで キー状態確認 -> 動く
とかしたほーがいい。
0171デフォルトの名無しさんNGNG
それキーイベントで処理してるからだ

昔のinkey$思い出してしまった


押したときtrueで放したときfalseにセットするクラス作って処理しなされ
0172デフォルトの名無しさんNGNG
それは OS やらハードウェアやらでやってるキーリピートだろ。Java とかんけーねー。
KeyTyped をただ使ってるとそうなるんだよ。
テキストエディタでキー押しっぱなしにしてみろよ。

KeyPressed/Released を工夫して使え。
0173デフォルトの名無しさんNGNG
>>169
keyPressedの度に動かすんじゃなくて、
keyPressedされたら、keyReleasedが呼ばれるまでずっと動かし続けてたらダメ?
0174173NGNG
かぶりすぎ、ひねりなさすぎで染んできます。
0175166NGNG
>>172
ほー、そうなんすか・・・押しっぱなしにしてしばらく止まるのを変える方法はないかなーとか思ってました。

>>170-171 >>173
ウオッファ なるほど!!
それでは、Runnableを使用してキーを押したらtrueになり動作する、
みたいなプログラムを組んでみます。

ありがとうございます!
0176173NGNG
>>175
かぶったまま死ぬのはイヤだったので、ちょっと調べてみた。
キーイベントの発生はプラットフォームで微妙に違うみたいなので、
Linuxとかでも動かすなら以下が参考になるかも。

http://pc2.2ch.net/test/read.cgi/tech/1062271447/589-593

Windowsではキーを押したらpressed、離したらreleasedと呼ばれるみたいだけど、
Linuxではキーを押してる間はpressedとreleasedが交互に呼ばれるらしい。
前述の方法だけだとLinuxでは動いて止まってを繰り返しそうなので、
リンク先の590の言ってる方法を参考にした方がいいかも。

誰がLinuxとかSolarisとかで動かすかよって話ならゴメン。
0177デフォルトの名無しさんNGNG
OnKeyDown・・・って、ここはJavaスレか。
0178デフォルトの名無しさんNGNG
俺javaのゲーム作ったけど
>>176の指摘する問題に出会ってないな
ふつーにLinuxでも同じようにキャラがうごいていたよ

キーリピートのタイミングで動いてるだろうから問題にはなりにくかっただけなのかな

ちと確認してくるかー
0179デフォルトの名無しさんNGNG
質問なんですが、
Dimension d = size();
ってどういう意味ですか?

size()ってなんのクラスのメソッドでしょうか?
メソッドからクラス名を調べる方法は無いのでしょうか?
0180173NGNG
>>178
うは、そうなんですか。漏れも実際に確認したわけでなく、
読んだ記憶を元に引用してきただけなので・・・。

もう、漏れいいとこなし。生まれてきてスマン。
チンコもかぶったまま芯で来ます。
0181デフォルトの名無しさんNGNG
>>179
>size()ってなんのクラスのメソッドでしょうか?
その文が書いてあるクラス(か、そのスーパークラス)のメソッド

>メソッドからクラス名を調べる方法は無いのでしょうか?
APIドキュメントの索引を調べたら?
0182デフォルトの名無しさんNGNG
>>181
Dimensionクラスにはsize()というメソッドが無いのですが・・・。
setSize()ならありますが、その親クラスにもありません。

Dimension d = size();はどういう意味ですか?
0183デフォルトの名無しさんNGNG
this.size();
super.size();
とか言えば伝わるか?
0184デフォルトの名無しさんNGNG
>>179
> メソッドからクラス名を調べる方法は無いのでしょうか?
ユニークなメソッド名なら逆引きできるけど、
size() みたいなどこでも使われる名前じゃ無理。
0185デフォルトの名無しさんNGNG
Dimension d = size();
なのに、なんでsize()メソッドがDimensionクラスにあると思うの?
そのコードが書いてあるクラスのメソッドかスーパークラスのメソッドだろ
0186デフォルトの名無しさんNGNG
>>180
たしかにおしっぱなしでreleased呼ばれてる
でもすぐに次のpressedが呼ばれてるんで
ほとんどの場合問題なく動いてるようだ・・・という感じかな

厳密なupdownの動作は難しいというか、これLinux自体の問題?
それともXwindowsystemの問題?BSDとかどーなんだろ
0187デフォルトの名無しさんNGNG
>>180
リンク先の594のBugは3件とも見られなくなってるけど、
以前見たときは、Xが送ってくるキーイベントだから、
Java側からは押しっぱなしなのか本当に連打してるのか判断できんとか書いてあった。
0188187NGNG
っていうか、>>186さん宛てですた。
0189デフォルトの名無しさんNGNG
>>183
わかりません、すみません。
聞く人周りにいないので、ヒントでいいから教えてもらえますか?

>>185
そうですね、考えてみればDimensionクラスな訳ないですね。
0190デフォルトの名無しさんNGNG
XWindowシステムが欠陥というわけかい?

キー押した離したってのが取得できないって
ゲームとか今まで無かったんかねぇ

MacOSXはこのへんは大丈夫なんかね
0191デフォルトの名無しさんNGNG
>>189

>>183の言ったことでわからないとすれば
javaの勉強を一から始めた方がいい

かりにここをだましだましで突破したとしても
そのあとわからないことだらけかと

javaというかobject指向の基本というか
0192デフォルトの名無しさんNGNG
>>189
何もオブジェクトを指定せずにsize();と書いた場合、
this.size();のthis.を省略したものと解釈する。
そのクラス自体に、sizeメソッドが無い場合は親クラスのを呼び出すので、
super.size();
扱いとなる。

thisやsuperが何を指すかがわからない場合はぐぐれ。
0193デフォルトの名無しさんNGNG
>>189
そのクラスはもちろんコンパイルはできてるんだろうな?
そうだったらまずは
Dimension d = size();
が書いてるソース内で検索しる。そこになかったら(多分ないんだろうけど)
そのクラスの宣言のところを見てextends Hogeとか書いてあったら、その
Hogeクラスの中を検索する、そこになかったらHogeクラスの宣言をみてextends
SuperHoge と書いてあったら(以下略)

ここまで書いてわかんないならもうやめれ。

eclipse使ってたらメソッド名選択して右クリックで「宣言を開く」すれば一発
だけどな。
0194デフォルトの名無しさんNGNG
>>192
ありがとうございます。
何となく分かりました。

でもアプレットのサイズを取得しても、HTMLで表示出来るのは、
<APPLET CODE = "ーーーー.class" WIDTH = 100 HEIGHT = 100>
で書いてある大きさだけなのでは?

動的にアプレットサイズを変えられるのでしょうか?
変えられないとすれば、なぜ
Dimension d = size();
とする必要があるのでしょうか?
0195デフォルトの名無しさんNGNG
>>194
ちみはアプレットのサイズかえたら
コンパイルし直すべきという人かい
0196デフォルトの名無しさんNGNG
>>190
うーん。欠陥なのかな。この辺Xlibとかプログラミングしてる人いたら、
どうなってるのか解説お願い。
漏れもJavaなら全部同じくイベントを扱えた方がいいと思うんだけど、
>>176の594読むと、Javaの開発陣はそう思ってないみたいだし。
0197デフォルトの名無しさんNGNG
>>194
実行時にHTMLに書かれたWIDTH,HEIGHTを取ってきてるんだから十分ダイナミックだと思うけど・・・

例えば↓こんな感じに複数のHTMLを用意しておいて、相手に画面の大きさを選ばせることもできるよ
http://www.arcadetown.com/realspace2/selectsize.asp
0198デフォルトの名無しさんNGNG
Hello Worldを実行すると、DOSプロンプト画面が一瞬しか表示されず
ソース編集画面に戻ってしまうのですが
C言語で言う、getcharのようなプログラムを一時的に停止する関数ってありますか?

使用環境はVisual J++です。
よろしくお願いします。
0199デフォルトの名無しさんNGNG
>>198
なんかほんとつい最近も全く同じ質問がでてたような

あとVisualJ++を必ず使わなければいけないとかじゃないかぎり
普通にj2sdk+NetBeans/Eclipseにしたほうが開発効率もいいと思うぞ

そのキーで停止って処理も必要ないし、MSVMじゃないと動かない
コードが出来る心配もない
0200デフォルトの名無しさんNGNG
>>199
いやぁ・・・Cは一応使ったことあるんですが
Javaは全くのドシロウトなもんで。
で、Java環境はVisual J++が研究室にあったので使ってみようかなと。
CもVisual C++で覚えたのでDOSプロンプトでコマンド打つのは抵抗あるんですよ。
0201デフォルトの名無しさんNGNG
閑古鳥が鳴いてまつ。
VisualJ++総合スレ
http://pc2.2ch.net/test/read.cgi/tech/1030194379
0202デフォルトの名無しさんNGNG
>>200
いや、NetBeansやEclipseはコマンドラインベースじゃないぞ
完全フリーの統合環境

これらは何も設定しなくてもすぐに開発できる
0203デフォルトの名無しさんNGNG
>>202
そうですか、ありがとうございます。
そちらの方を試してみることにします。
0204デフォルトの名無しさんNGNG
http://www.asahi-net.or.jp/~dp8t-asm/java/tips/I18NCharacter.html

ここを読むとcharは必ずしも文字ではないらしいくて、以下のようなコード

for (int i = 0;i < length;i++) {
char c = string.charAt(i);
doSomething(c);
}

は本来はダメみたいなんですが、マジなのでしょうか?
0205デフォルトの名無しさんNGNG
質問させてください。
MIDPでプログラミングしているんですが、
一つのImageから指定いた領域を切り取って描画する
(・・もしくは、別のImageのインスタンスを作成する)
といったことを行いたいんですが、CropImageFilterは使用できません
なにか手はあるのでしょうか?ご教授くださいm(__)m

要は、ゲームを作ってて、キャラクターの上下左右の向きの画像を一つのPNGファイルに書き込んで、
一つのImageのインスタンスで一つのキャラクター画像を管理したいだけなんですが、
上下左右の画像をそれぞれ別Imageのインスタンスで管理しなければダメですかね?

宜しくお願いします
0206デフォルトの名無しさんNGNG
getToolkit().createImageを使用したアプレットを、
HTML上で表示しようとしているのですがうまくいきません・・・・
なにやらステータスバーに
「error:java.lang.NoSuchMethodError:java/awt/Toolkit: method createImage(Ljava/lang/String;)Ljava/awt/Image not found」
というエラーが表示されてしまうのです。
ちゃんとjavac -target 1.1 aaa.javaという形式でコンパイルをしましたし
イメージが見つからないということでもなさそうなのです。
appletviewerではちゃんと動くのですが・・・。どうすればいいでしょう。
0207デフォルトの名無しさんNGNG
>>204
合成文字とかサロゲートペアとか考える場合、だめ。
国際化とかをまじめに考えて無いならそれでもいいけど。
0208デフォルトの名無しさんNGNG
>>206
since 1.2 付いて無いから、APIリファレンスには何も書いて無いけど
java.awt.Toolkit#createImage(java.lang.String) は JDK 1.2以降に追加されたメソッドなので
JDK 1.2 以降じゃないと使えません。
0209デフォルトの名無しさんNGNG
すみません。

i-modeの絵文字(SJISバイナリコード)が含まれている文字列から、
指定されたSJISバイナリコードを検索する必要があります。
ヒットしたSJISバイナリコードを、 などのテキストコードに、
変換して文字列を返却するような処理を想定していますが、
一般的には、どのような処理になりそうでしょうか?

こちらで想定しているのは、
(1) 文字列を getBytes("ISO8859-1")でバイト配列化する。
(2) 16進数で目的のバイトコードを検索する。
例) i-mode 絵文字 太陽(0xf89f)の2バイトコード
従い、1バイト目が0xf8 だった場合、2バイト目は0x9fか判定する形です
※効率が悪いでしょうか?

(3) ヒットしないバイトコードは、そのまま別のバイト配列に格納していく。
(4) ヒットした場合は、&#xxxxx 形式のバイトコードを格納していく。
(5) 最後に、バイト配列をエンコードしてStringを生成

※(5)最後にバイト配列をエンコードするのは、全角文字などが含まれている場合、
バイト数が特定できない?為です。
0210デフォルトの名無しさんNGNG
Antの質問なのですが、
 src/foo/*.java
 src/foo/bar/*.java
 dest/foo/*.class
 dest/foo/bar/*.class
というディレクトリ構成で、src/foo/hoge.javaがsrc/foo/bar/huga.javaに依存しています。

hoge.javaとhuga.javaを同時に変更した場合、
 <javac srcdir="src" destdir="dest">
のtargetでは先にhoge.javaをコンパイルしようとしてエラーになるので、huga.javaから
コンパイルさせるために別のtargetで
 <javac srcdir="src/foo/bar" destdir="dest">
を作成しました。

huga.javaにはpackage foo.bar;の記述があるので問題なくdest/foo/bar/huga.classが
できあがるのですが、Antはdestディレクトリにあるclassファイルをチェックしてしまうため、
このtargetでは毎回全ファイルのコンパイルが実行されてしまいます。
(本当はdestではなくdest/foo/bar/をチェックしてほしいのに)

こういう場合はどんなビルドファイルを書けばいいのでしょうか。
それとも依存する場合はもっと他の書き方があるのでしょうか・・・
0211デフォルトの名無しさんNGNG
>>210
 <javac srcdir="src" destdir="dest">
でいいはずだが。それで問題があるとすれば
記述に間違いがあるのかソースコードに間違いがあるのか。


どんなエラーメッセージがでたのささらしてくれればわかりやすいんだが。
0212デフォルトの名無しさんNGNG
>>210
除外集合って知ってる?

excludeやexcludefiles属性を使ってみるってわかる?

exclude="**/huga.java"
みたいな記述すればどの任意のディレクトリにあるhuga.javaを除外するよ。
0213デフォルトの名無しさんNGNG
>>211
antの日本語マニュアル読んだ?
そこに基本タスクとういう項目があるので
そこでjavacをクリックすればすぐわかると思うんだけどなあ。
ついでにfilesetタグとかclasspathタグのことも調べておくと便利だね。
0214デフォルトの名無しさんNGNG
JAVAではないんだが。JAVAスクリプトのほうなんですけど。
一定秒たつと、背景画像はかわるソースだれかおしえてくれませんか?
画像がずっとループするような感じで、スクリプトでもうしけないですけど。
JAVAの達人の人たなら作れるとおもって。おねがいします。
0215デフォルトの名無しさんNGNG
>>214さようなら
0216デフォルトの名無しさんNGNG
>>214
>>1を良く読め。
スレ違いに板違い
0217デフォルトの名無しさんNGNG
>>214
flashで作れ
糞簡単だから
0218デフォルトの名無しさんNGNG
「やさしいJava」読んでいるんだが
throw IOExceptionとかBufferedReaderが何かという説明が全く無い。
いきなり出てきて解説が何も無いのは、初学者は戸惑うばかり。
0219デフォルトの名無しさんNGNG
>>218
運が悪かったんだな。悪い本に当たったんだ。
前スレの最初でも悪い本に当たってとんちんかんな質問をしてた人がいたけど、
このスレの住人のお勧めの入門本ってなんでしょうか。
ちなみに、漏れは「独習Java」を推してみようかと思てます。
0220デフォルトの名無しさんNGNG
>>219
俺は、独習Java持ってるけど、おすすめできないな。
0221デフォルトの名無しさんNGNG
Java からプログラミングを始めた者でないと
おすすめって出せないよね
残念
0222デフォルトの名無しさんNGNG
スレタイの【初心者】【大歓迎】って、どの程度の人を
対象にしてるんだろう・・・・・・・・・・・・・・・・・・・・・

やっぱ言語そのものの初心者かなー
0223デフォルトの名無しさんNGNG
>>222
N/MSX/Hu/XBASIC、C/C++、C#、そしてハンドアセンブル経験者で
javaは全くやったこと無い人が対象

たぶん
0224デフォルトの名無しさんNGNG
とりあえず結城本かエッセンシャルJavaから入れ。
話はそれからだ。
0225デフォルトの名無しさんNGNG
>>218
俺もその本でJavaはじめたがそこは無視していい
っていうか初心者にその説明しても分からんと思うし
まぁ他の言語経験してるならネットでしらべたら分かると思うけど
おれは「やさしいC」も持ってるけどCの場合はそこがscanfになってる
ただキーボードから数字やらを入力させたいだけ
0226206NGNG
>>208
アレ、-target 1.2でコンパイルしたら
確かに上記のエラーは無くなりましたが、「class not found」に・・・
まさかgetToolkit().createImageを使ったアプレットはIEじゃ動かないんですかァーッ!?
0227デフォルトの名無しさんNGNG
JCheckBoxでチェックボックスを作り、JBottunでボタンを作成しています。
そこで、ボタンが押された場合にチェックボックスの状態を知りたいのですが
どうしたら良いですか?

JCheckBoxのイベント処理にはインタフェース ItemListener で
処理できるのは知っていますが,
これだとチェックボックスがチェックされるたびにリアルタイムで状態の変化を
検出してしまいますよね。
やりたい事は、ボタンが押されら、押された時点でのチェックボックスの状態を
知りたいのです。
JButtunの処理はActionListenerで行っています。ここでチェックボックスの状態を
取得したいのです。
よろしくお願いします。
0228デフォルトの名無しさんNGNG
>>226
JDK1.1.8 の API Doc を探し出しなさい
きっとどっかにあるから
0229デフォルトの名無しさんNGNG
>>227
JCheckBox#isSelected()
0230206NGNG
>>228
え、ど、どういうことでしょうか??
0231デフォルトの名無しさんNGNG
>230
無いものは使えないと言うこと。
何が無くて、あるかはAPIリファレンスを見れば一目瞭然
…というようなことを言われたのだよ。
0232206NGNG
>>231
マジですか。ではIEではgetToolkit().createImageを使用したアプレットは実行不可能という事に・・・。
グッハアァッ ありがとうございました・・・
0233デフォルトの名無しさんNGNG
>>232
Javaプラグイン入れれ。
0234デフォルトの名無しさんNGNG
「IEでは」とか連呼している時点で何も分かってなさそうだが・・・,まあいいか。
0235デフォルトの名無しさんNGNG
自分で分かってなきゃユーザにインストールさせるのも覚束ないしね
0236206NGNG
>>233-235
あ、プラグインってSwingのみじゃなかったんすか・・・うわー、モロに教本鵜呑みだ俺。
0237デフォルトの名無しさんNGNG
>236
その教本名を晒せ
0238983NGNG
吐き出しやがれこのぉ
( ・д・)つ☆  パンパーン 
⊂彡☆))Д´)>>206
0239デフォルトの名無しさんNGNG
誤爆?
0240206NGNG
>>237
「HTMLしか知らなくてもわかる いきなりJava2入門(塚越 一雄 著)」という本です。
あ、いや 一応他の言語もやったことあるんすけど、こういうキャッチなら相当わかりやすいだろうなと・・・
Javaプラグインを組み込めばSwingが使える、と書いてあったので「あーそうなんだ」みたいなノリで色々と。
その後は「新Java言語入門 シニア編(林 晴比古 著)」という本で、それなりの知識を付けたんすけど
今読み返してみると、前者の方Javaプラグインの説明が載っていないないなあ・・・

プラグイン、っすか。ググってみますです。
0241デフォルトの名無しさんNGNG
> Javaプラグインを組み込めばSwingが使える、と書いてあったので「あーそうなんだ」みたいなノリで色々と。
Javaプラグインを組み込めばSwingが使える、
と書いてあったならば、Swingのみっつーのは
鵜呑みっつーか単なる勘違いだよね。
0242デフォルトの名無しさんNGNG
>240
酷い本もあるもんだなぁ。

IEに標準で付いていたMSVMはJDK1.1.4レベル。
「プラグイン」と呼ばれているのは、JDK1.1.4でPure Javaと非互換のVMが跋扈し、
最新のバージョンのズレを問題視したSun Microsystemsが提供しているブラウザ内でのJava実行環境のこと。
これを使うとJDK1.2以降に追加された全ての機能が使えるよ。
0243デフォルトの名無しさんNGNG
HTMLとJavaを比べる事自体が間違ってる。
HTMLとJavaScriptならわからないでもないが
0244デフォルトの名無しさんNGNG
>243
間違った知識を持っているヤシが書いた本だからそういう風な組み合わせになったんだろ。
「レンジでチンしか知らなくてもわかる いきなりピロシキ入門」という感じがする。
0245デフォルトの名無しさんNGNG
たのむ、入門書でもちゃんとhtmlconverterの話を触れてくれ…
jarファイルダブルクリックして起動で、GUIでポンポンとさわるだけでいいんだから面倒じゃないだろ。
「IEだとアプレットが動かない」「Javaはサポートされなくなった」などのデマはもうたくさんだ。
0246デフォルトの名無しさんNGNG
>>245
イマサラAppletのことを書くより、JavaWebStartの事を書いてくれる方がウレチイな。
0247デフォルトの名無しさんNGNG
>>246
JavaWebStartの方がずっとハッピーなのはそのとおりなんだけど、
JavaWebStartを使うにはサーバの設定が必要
(mime typeにapplication/x-java-jnlp-fileを返す必要がある、だったかな?)
なので、個人で使うには敷居が高い、かも。
要は、プロバイダに間借りしてるだけの自分のウェブサイトで
JavaWebStartが使えない可能性がある、ってこと。

ただし、これはホビープログラマがJavaアプレットを使っているという想定に基づいての
「敷居が高い」なので、あまり適切でないかもしれない。
サーバサイドJavaの入門書が売れてることを考えると、
業務で使うリッチクライアントとしてJavaWebStartを扱った入門書があったらいいね。
0248デフォルトの名無しさんNGNG
1.4.1で

String aaa = "KKK";
byte[] b = aaa.getBytes("iso-2022-jp");
String bbb = new String(b, "iso-2022-jp");

これは成功するのですが、
なぜか以下の呼び出しで、例外が発生してしまいます。

Charset charset = Charset.forName("iso-2022-jp");

どうしてなのでしょうか?
0249デフォルトの名無しさんNGNG
>>248
http://java.sun.com/j2se/1.4/ja/docs/ja/guide/intl/encoding.doc.html
0250デフォルトの名無しさんNGNG
質問です。。
諸事情でネットがしばらく使えなくて携帯から調べるのもちときついので…

JAVAアプレットで画像を表示する方法は本に載ってたんですが…、JAVAアプリケーションで画像を表示させる方法が分からないんで教えてください。
0251デフォルトの名無しさんNGNG
>>248
1.4.2 で解決。
0252デフォルトの名無しさんNGNG
>>249
ありがとうございます。java.nioとjava.langではサポートされるエンコードが
ちがうのですね。

そうすると、
String.getBytes()でサポートされているエンコード一覧を
得る方法はあるのでしょうか?
0253デフォルトの名無しさんNGNG
javac -target 1.2 Koki.java
でコンパイルし、実行しようとすると
「load:Koki.classのインスタンスを生成できません。」
と出てしまいます。
しかし、普通にjavacでコンパイルしたらappletviewerで開けるのですが・・・。
問題点としては何が挙げられるでしょうか?
0254デフォルトの名無しさんNGNG
>>250
画像表示ってswingでてきとうにパネルでも配置して表示しておいて
それのペイントするだけでいいよ

つまりアプレットもアプリもかわらん
0255デフォルトの名無しさんNGNG
>>252
よくしらんけど、APIドキュメントに書いてないか?
0256253NGNG
スミマセン、アプレットの話です。
「実行」というのは、appletviewerで実行しようとした時の事です。
0257デフォルトの名無しさんNGNG
>>256
HTMLがまちがってんじゃないの。
0258250NGNG
>254レスありがとうございます。
今日は遅いんで明日試してみます。。
0259253NGNG
>>257
HTMLConverterで変換したHTMLファイルでもappletviewerでも
同じように「load:Koki.classのインスタンスを生成できません。」 というエラーが出ます。
他には何か問題点がありますでしょうか??
0260デフォルトの名無しさんNGNG
>>247
Windowsがクライアントのほとんどだと考えると問題ない部分だ
mimeみてないIEが95%くらいのシェアもってるし
モジラとかでも(遠い記憶では)なんの問題なかった
0261デフォルトの名無しさんNGNG
>>236-245
あの本は初心者向けにはそれほど悪い本ではないよ。
いやなかったと言うべきか。説明などは大きく外したところもない。
詳細な点まではけして立ち入らないが、初心者がJava及び
オブジェクト指向の概観をつかむためにはいい本だったと思う。
だが出版年代が古すぎるので、これからあえて購入することは私はお勧めしない。

html云々は、あの当時はまだまだアプレットが(翳りを見せ始めていたとはいえ)
世の中に流布していたからだと思う。

メモ帳でhtmlを作成できる程度の知識があれば、Javaでプログラムを始めることができる、
そういう趣旨の本だったのではないかな。
0262デフォルトの名無しさんNGNG
ただ、塚越さんの本だから買ってはみたものの、
表題のhtml云々通り、プログラミングの経験がまったくない初心者向けという気はしたね。
>>240のように他言語でのプログラミング経験がある人には、当時でもちょっと物足りないと思う。
0263デフォルトの名無しさんNGNG
>>220
良書の独習Cを読んでから独習Javaを読むとよく理解できる。
しかしあの本は物足りなさすぎる。
クローニングとかequals()とかについては詳しく載っていない。
0264デフォルトの名無しさんNGNG
str.equals("\")とやると怒られます。
\って何かあるのですか?
0265デフォルトの名無しさんNGNG
>>264
ユニコードエスケープの先頭か、エスケープシーケンスの先頭。

\ を使いたい場合は "\\" とか "\134" とかすれ。
0266デフォルトの名無しさんNGNG
>>265サンクスです。

でも、ある文字列中なかの"\"を"\\"に変換する方法って何かありますか?
replase以外思いつかない。
0267デフォルトの名無しさんNGNG
>>253
クラスはpublicにしてる?
変なコンストラクタ定義してない?
0268267NGNG
げめん、間違い。質問読んでなかった
0269デフォルトの名無しさんNGNG
>>253
Javaコンソールを開いて、スタックトレースをコピペしてみちゃらん?
0270デフォルトの名無しさんNGNG
Java 初心者を脱したらつべこべ言わずにこれを嫁 BEST 5。
特に 1 は何回も嫁。

1: Effective Javaプログラミング言語ガイド
2: Java言語で学ぶデザインパターン入門
3: Javaの格言
4: リファクタリング
5: 実践J2EEシステムデザイン
0271デフォルトの名無しさんNGNG
>>266
方法はいろいろあるけどString#replace()でもいいよ。
文字列リテラルの中に\\と書きたければ、"\\\\"とするか>>265の言う通り"\134\134"とするか。
0272デフォルトの名無しさんNGNG
>>219
自分は
プログラム未経からCをちょっとだけかじって
JAVAに移ったんだが、そのときは「コアJAVA2 Vol.1基礎編」
をつかった。
ここで初心者が聞くクラスパス関係とかが結構書かれてるし、
サンプルが最初からオブジェクト指向を意識しているので、
JAVAを本気でやってみたいプログラム初学者にいいかもしれない。
今までアプリを2つ(ファイル操作、ゲーム・作成中)を作ったけど、
これ1冊でほぼ事足りてる。
問題は本のでかさと値段、
訳書なんで文章がそっけないところ。
0273デフォルトの名無しさんNGNG
>>256
解決法案
1:もう一回コンパイルしなおしてる
2:
アプレットをjarファイルから参照すると
同じディレクトリからの参照でデータやクラスをとってくるため
そのクラス自身のアドレスがわからない可能性がある
そのためパッケージがついているのならばそれをひとまずチェックすべし、
それでも無理なら、Objectクラスでそのクラスのある場所を探し当てれ!
0274デフォルトの名無しさんNGNG
>>273
jarファイル限定じゃないや
0275253NGNG
>>269 >>273
アレ、なんか2回くらい再起動したら出来るようになりました・・・
1回再起動してもダメだったのに。PCの調子が悪かったのでしょうか・・スミマセンスミマセン
これからまたこのようなエラーが起こったときの為に参考にさせていただきますです。
ありがとうございました!
0276デフォルトの名無しさんNGNG
rss1.0から、item要素の下の要素のtextをすべて取り出して、表示したいのですが。

Namespace ns = Namespace.getNamespace("http://purl.org/rss/1.0/");
Namespace dc = Namespace.getNamespace("dc","http://purl.org/dc/elements/1.1/");
Element root = doc.getRootElement();
Element item = root.getChild("item",ns);
Element title = item.getChild("title",ns);
Element link = item.getChild("link",ns);
Element category = item.getChild("category",ns);
Element subject = item.getChild("subject",dc);
Element creator = item.getChild("creator",dc);
Element date = item.getChild("date",dc);

List allitem = item.getChildren();
↑
これで取り込んで、表示したいです。
System.out.println(item.getText());
System.out.println();では、できないのでしょうか?
0277デフォルトの名無しさんNGNG
「やさしいJava」の何章までやればいいの?
0278デフォルトの名無しさんNGNG
>>277
けちけちしねぇで全章やりゃぁいいじゃねーか。
0279デフォルトの名無しさんNGNG
Javaアプレットをブラウザで一度開き、エラーが出たのでブラウザを閉じました。
再編集してから保存・コンパイルし、もう一度ブラウザで開こうとすると
なぜか以前のエラーが出たままの状態、以前と同じ状態のままのアプレットが出てきてしまうのです。
どうすれば初期化ができますか??
0280デフォルトの名無しさんNGNG
てst
0281デフォルトの名無しさんNGNG
>>279
ctrl + F5
0282デフォルトの名無しさんNGNG
プログラムを勉強し始めた大学2年生です。
JavaのプログラムないでとSAXのパーサーを呼んで
特定のXMLファイルから文字列を取得したいのですが、
本を調べてもSAXの解析中に表示する方法しか載っておらず困っています。「System.out.println( 取得したStringやvectorの表示 )」の所で取得した文字列を表示したいのですが、
パーサーのクラスをどうなおせばよいか分かりません。
申し訳ありませんが、教えていただけないでしょうか?

public class MDI extends Frame {
public static void main(String args[]) {
public MDI() {
....
try {
SAXParserFactory spf = SAXParserFactory.newInstance();
SAXParser parser = spf.newSAXParser();
reader = parser.getXMLReader();
reader.setContentHandler( new MediaHandler() );
reader.setErrorHandler( new MyErrorHandler() );
}
catch( Exception e ) {
System.err.println( e.toString() );
}
System.out.println( 取得したStringやvectorの表示 );
}
0283282NGNG
class MediaHandler implements ContentHandler {
// パーサーの始まり
public void startDocument() throws SAXException {
}
// パーサーの終了
public void endDocument() throws SAXException {
...
}
// XMLから値の取得
private String searchSrc( String qName, Attributes attrs ) {
...
}
 ..
}
0284デフォルトの名無しさんNGNG
saxわからないのならdom使えば?
0285デフォルトの名無しさんNGNG
>>282
class MediaHandler implements ContentHandler {
StringBuffer buffer = new StringBuffer();
void characters( char[] ch, int start, int length) throws SAXException{
 buffer.append( ch, start, length);
}
...

こんな感じにすると全部の文字がパーズし終わった段階で
bufferに入ってるよな?もしあるエレメント内だけ、の場合
startElement, endElementもチェックして追加していけばいいだけ。OK?
0286282NGNG
>>285
どうもありがとうございました 
うまく属性のみを取得してうまくいきそうです
ここまで教えていただいて恐縮ですが、取得したbufferを
MDI() に返す記述が分からないのですが教えていただけないでしょうか?

XML内のファイル名を取得し、MDI()で表示するというプログラムであるためにどうしても
MDI内で用いたいのです、申し訳ありません
0287デフォルトの名無しさんNGNG
ビットマップ画像の任意の座標のRGB値を取得するにはどうしたらいいでしょうか。

Image image = Toolkit.getDefaultToolkit().getImage("hoge.bmp");
まではなんとなくわかるのですが、ここから先が関連するクラスが多くてわかりません。

Imageはかなり抽象的ということなので、具体的なクラスに変換しないといけないと思うのですが・・・
よろしくおねがいします。
0288デフォルトの名無しさんNGNG
>>287
java.awt.image.PixelGrabber 使うとかすれ。
0289デフォルトの名無しさんNGNG
>>287
((BufferedImage)image).getRGB(x,y)
こんなやりかたも
0290デフォルトの名無しさんNGNG
>>289 にだまされてはいけません
0291デフォルトの名無しさんNGNG
>>270
Javaの格言はネタが古いのがある。
クラスにfinalつければパフォーマンスあがるとか
いつの時代の話をしているんだってネタがある。

わかりやすく説明してはいるが。

どうせならJavaの鉄則やJavaの落とし穴なんかもいいんじゃないのか?

ほかに
JavaによるeXtreme Programming クックブック アジャイル開発のためのレシピ集
やテスト起動開発入門
はどうだろう。
0292デフォルトの名無しさんNGNG
>>289
それでもいーけど、BufferedImage じゃ無かった場合 ClassCastException 食らって終わり。
0293デフォルトの名無しさんNGNG
そこでGenericsを使うんですよ
0294デフォルトの名無しさんNGNG
標準API かメジャーなライブラリが提供されている、
定型様式への差込印刷に都合のいいものって何があるでしょう。
SVG を考えてたんですが複数行のデータを考えるとめんどっちい。
0295デフォルトの名無しさんNGNG
>>289や>>293にだまされるなよ、>>287

一番シンプルな解決方法はImageからBufferedImageにdrawImage
0296デフォルトの名無しさんNGNG
>>295
で、MSJVMで動かない、と。
0297デフォルトの名無しさんNGNG
>>295
drawImageしたら透明色とか取れなくね?
考慮しないならそれでいーけど。
0298デフォルトの名無しさんNGNG
>>294
なんで印刷物にSVGなんだ? Apache FOPとかみたいなPDF生成するAPIと勘違いしているような。

>>296
いまさらM$JVMかってw 裁判で決着がついたことはもう考える必要なしと。
0299デフォルトの名無しさんNGNG
>>296
いまさら削除方向のMSVMの話されても
そもそも>>287が環境はなしてないし

デフォでMSVMで動かすという考え方は
いまさらWin16のアプリ書こうとしているのと同じ
0300デフォルトの名無しさんNGNG
>>297
透過は問題ないぞ
0301デフォルトの名無しさんNGNG
あの、プログラミングじゃないんですが、

オンラインで戦車で戦うJAVAゲームで遊んでいます。
戦車の速度はみんな同じに決められています。
でも人それぞれパソコンとかの環境によって速度が違います。
速いほうが有利なので、JAVAゲームを速くする方法はないですか?
JAVAゲームの速度とかは何が関係あるんでしょうか?
おしえてください。よろしくおねがいします。
0302デフォルトの名無しさんNGNG
graphics2d.setComposite(AlphaComposite.Src);//で透過色もそのままコピー
0303デフォルトの名無しさんNGNG
>>286

reader.setContentHandler( new MediaHandler() );
ここを
MediaHandler handler = new MediaHandler();
reader.setContentHandler( handler);
こうして、

System.out.println( 取得したStringやvectorの表示 );
これをcatchの前にして、
System.out.println( handler.buffer );
こう。

XML上の特定の場所に書いてあるもの、ならXPath式の方が早いかも。

>>287
JDKのバージョンは?
ToolkitでなくImageIOで読んだほうがいいかも。
BufferedImage image = javax.imageio.ImageIO.read( ファイルかURL );
0304デフォルトの名無しさんNGNG
>>298
描画位置に tref しておいて、
defs に要素つっこめば差し込みできるからプログラミングも楽だなーと。
固定長ばっかりのはいまんとこそうしてるんです。
Batik は API で Printable も提供してくれるし。
0305デフォルトの名無しさんNGNG
>>301
javaに限らずオンラインで環境依存するゲームとはすごいな
ちょっと興味があるのでポインタほしいかも
0306デフォルトの名無しさんNGNG
>>305
よくわからないけど、速度に差があります。
チートとかツール使うやつもいます。
でもツールとか関係なしに、ふつうにプレイしても差はあります。

http://www.jaga.jpn.org/game/btanktb/index.php
このゲームです。

ブラウザとか関係あるのかな
0307デフォルトの名無しさんNGNG
作り方悪いだけかな

名前入力したりする画面ですら100%のCPU使用率とか
トップページのバナーアニメでとんでもない重さとか
SQLエラーが表示されているとか


個人サイトだろうからこんなもんか、であきらめるしかないかと
0308デフォルトの名無しさんNGNG
JDK 1.3 で プログレスバーのあるダウンロードモニタを作成しようと思い
URLConnection#getInputStream()でInputStreamのインスタンスを取得し
InputStream#available() と read() によって進捗状況を表示させようと思ったのですが
JDK1.3ではURLConnection#getInputStream()を呼び出すと
ダウンロードが完了するまでこのメソッドでブロックされてしまうようなのです。
InputStreamを取得できなければ受信バイト数も取得できないので
進捗状況を表示させることが出来ません。
なんとかして、JDK1.3でダウンロード中の受信バイト数を取得する方法はないでしょうか?
0309デフォルトの名無しさんNGNG
>>308
>JDK1.3ではURLConnection#getInputStream()を呼び出すと
>ダウンロードが完了するまでこのメソッドでブロックされてしまうようなのです。

ウソだぁ。そんなわけない。
0310デフォルトの名無しさんNGNG
>>306
そこのサイトの香具師にソースコード公開して貰うのはどうよ?

環境によってはメモリ増設で少しは早くなることもあるがw
0311デフォルトの名無しさんNGNG
JSP&ServletでEPWING形式の辞書検索プログラムを作っているんですが、
C言語用のEBライブラリに相当する機能でソースが公開されているJAVAクラスライブラリというと
EB4Jだけしか無いのでしょうか?
EB4Jでも十分満足してるので、無ければ無いでいいんですが
他にもあるならそっちも試してみたいと思ってます。
0312デフォルトの名無しさんNGNG
しょぼい質問ですいません。
SJC-Pに合格できるぐらいのレベルってどんなアプリが
作れるんでしょうか?
例えばこんなのが作れるよ〜、とかあれば教えて欲しいです。
取ったのは取ったんですが、どんなもおを作れば良いのやら…
アイデアが浮かばないもんで…
下らん質問ですいませんm(__)m


諸先輩方よろしくです。
0313デフォルトの名無しさんNGNG
>>312
無理して作らんでえーよ。
0314デフォルトの名無しさんNGNG
検定と実務は大きな隔たりがあるでな

国語100点とりましたが、どういった小説が書けるでしょうか
といってるのと同じくらいあふぉな質問だ
0315デフォルトの名無しさんNGNG
合格したら作れるんではなく
作れるくらいの実力持ってるから合格するんだ本当は

合格してから人に聞いてどうする
0316デフォルトの名無しさんNGNG
PはJavaの基本的な言語仕様やAPIの知識を認定する為の試験だから
Pが取れるレベルというのとアプリが作れるレベルというのは比較出来ない
ナンセンスというものです
0317デフォルトの名無しさんNGNG
src.zipを解凍して、ソース中のコメントをmergedocで日本語化し、
デバッグオプションを指定してrt.jarを再構築すっと、
デバッグがこんなに快適になるとは思わなかった。。。
0318デフォルトの名無しさんNGNG
StringBuffer インスタンスと同じ文字列の別のインスタンスを作りたくて
clone()を使ってみたんですけど、コンパイルでエラーが出ます。

Csv.java:167: clone() は java.lang.Object で protected アクセスされます。
sb = (StringBuffer)row.elementAt(j).clone();

これってどうしたら良いんでしょうか?

また、一般的にあるインスタンスのコピーを作りたい場合ってどうするんですか?
0319デフォルトの名無しさんNGNG
>>312
作ろうと思えば何でもできる。
そう、OSだろうが3DMMORPGだろうが
Javaでは難易度が高いが
ウィルスやワームだって不可能ではない。

創作意欲が沸いてきたらまたこい。
0320デフォルトの名無しさんNGNG
>>317
src ってビルドしたら何個かエラーでるんじゃなかったっけ?
0321デフォルトの名無しさんNGNG
>>312
漢字検定に合格したらどんな小説が書けますかって聞いてるようなもんだ
0322デフォルトの名無しさんNGNG
>>318
何やってるんだそれ? rowはVectorか何か? もう少し説明がないとよく分からん。
確かStringBufferはcloneできなかったと思うから↓みたいにしたら?

new StringBuffer(row.elementAt(j).toString());

もしくは新しく空っぽのStringBufferを作ってそこに書き込む。

buf = new StringBuffer();
buf.append(row.elementAt(j));
0323デフォルトの名無しさんNGNG
>>318
java.lang.StringBuffer は jav.lang.Cloneable を実装してないので clone() での複製はできません。
new StringBuffer(sb.toString()); するなりしてください。

> また、一般的にあるインスタンスのコピーを作りたい場合ってどうするんですか?
あらゆる種類のインスタンスでコピーを生成できるような方法はありません。
0324デフォルトの名無しさんNGNG
たとえ implements Cloneableでも、Object#clone()がprotectedですので、結局
そのままじゃ呼べない場合が多いよ。
シャローコピー(フィールドの値のみコピー)をバシバシ作りたいクラスがあったら、
clone()をpublicでオーバーライドするとか、protectedであるclone()を呼び出す
publicメソッド作ってくだされい。

ディープコピー(オブジェクト参照のフィールドが指すオブジェクトも全て複製)した
いなら、Serialzableにして、1度バイトアレイにして作り直す手がありますね。
ですが、これはコピー対象のオブジェクトツリーすべてがSerialzableでないとだめぽ。

一方で、オブジェクトをコピーするくらいなら、同じプロパティでImmutableである
オブジェクトを新しく生成する、と言う方針にしてしまう方がプログラムが単純にな
ってよい場合も多いよ。性能要求がなければ、毎回newしてしまうようにしてしまう
べし。
0325324NGNG
>一方で、オブジェクトをコピーするくらいなら、同じプロパティでImmutableである
>オブジェクトを新しく生成する、と言う方針にしてしまう方がプログラムが単純にな
>ってよい場合も多いよ。性能要求がなければ、毎回newしてしまうようにしてしまう
>べし。

馬鹿なことを書いてしもた。同じプロパティのImmutableオブジェクトなら、コピー
生成する必要ないね。参照つかいまわせばよし。ゴメソ。
0326318NGNG
CSVを扱うクラスを作っています。

CSVファイルを読み込んだ内容を持つのに、
Vector にStringBufferを入れて行にして、
そのVectorをVectorに入れて表にしてます。

ファイルに書き出すときに、セルにカンマや改行が含まれてる場合、
ダブルコーテーションで括ったりするんですけど、
元の内容を壊さないようにコピーしたものを処理するためです。

new StringBuffer((row.elementAt(j)).toString());
で上手くいきました

C の memcpy みたいのは無いんですね
0327デフォルトの名無しさんNGNG
>>326
Vector使うな馬鹿
0328デフォルトの名無しさんNGNG
>>326
>C の memcpy みたいのは無いんですね
なんでJava使うのですか?
0329デフォルトの名無しさんNGNG
>>324
> たとえ implements Cloneableでも、Object#clone()がprotectedですので、結局
> そのままじゃ呼べない場合が多いよ。
Cloneable を implements したら常に public Object clone() を実装しろ。
コレを守らないってのは同値比較しない Object#equals(Object) を
実装するのと同じぐらいダメダメ。
0330デフォルトの名無しさんNGNG
そこにJ





なんでもない
0331デフォルトの名無しさんNGNG
>>329
なんで?選択肢があっていいじゃん。
Cloneableはサポートするけど、使用を許可する範囲は絞る、と言う使い方
があってもいいじゃんよ。
0332デフォルトの名無しさんNGNG
>>331
APIリファレンス見ろ。

http://java.sun.com/j2se/1.4/ja/docs/ja/api/java/lang/Cloneable.html
> 従来、このインタフェースを実装するクラスは、public メソッドで Object.clone (protected) をオーバーライドする必要があります。
0333デフォルトの名無しさんNGNG
>>326
そもそも何で元の行をStringBufferで保持してるんだ?
普通に考えたらStringで保持しておいて,文字列をいじるときだけStringBuffer。
0334デフォルトの名無しさんNGNG
言われた事しかできない、決まったレールの上を走るだけの
満員電車に揺られる歯車には鳴りたくない
0335デフォルトの名無しさんNGNG
同値比較しない Object#equals(Object) を選択肢とかいって肯定するのか?
0336デフォルトの名無しさんNGNG
選択肢というのは選択したものが*有効*でないと意味がないんだよ。
無効なものは選択肢のうちに入らない。
0337デフォルトの名無しさんNGNG
んじゃなんでObject#clone()はprotectedナンデスカ?
0338貧乏紙NGNG
>>326
そのVectorをVectorに入れて表にしてます。
new StringBuffer((row.elementAt(j)).toString());
このrowはどっちのVector?
0339デフォルトの名無しさんNGNG
>>337
Cloneable を implements したものしか clone() できないようにするために決まってるだろ。

Cloneable#clone() であるべきだがオブジェクトの複製はオブジェクト自体に強く依存しているから
インタフェースメソッドにすることはできないという事情がある。
0340デフォルトの名無しさんNGNG
>>339
そういえば、clone()のオーバーライドのしかたで
public Object clone(){
 Hoge ret = new Hoge();
 ret.aval = this.aval;
...
 return aval;
}
見たいな書き方が横行している気がするんだけどさ、
なんでsuper.clone()しないんだろ?
0341デフォルトの名無しさんNGNG
>>340
初めて見た。
0342340NGNG
まちがった、return ret;だ。

フィールドのディープクローン作業なしでいいなら、全てのクラスで
public Object clone(){
 try{
  return super.clone();
 }
 catch(CloneNotSupportedException e){throw new InternalError();}
}

でいいんじゃないかと。
0343340NGNG
>>341
オプソのソースとか、オイラのソバでよくみるんだけどさ、単なる
偶然かな。
0344デフォルトの名無しさんNGNG
>>340
super.clone() よりもコンストラクタを呼んでフィールドを設定したほうが速い。
0345344NGNG
ただ内部でコンストラクタを呼ぶとサブクラスを作ったときに問題が出るので
サブクラスでも明示的に clone() をオーバライドしないといけない。
super.clone() としておけばサブクラスでいちいち clone() をオーバライドする必要はない。
0346デフォルトの名無しさんNGNG
現在、javaでサーブレットを作成していますが、今以下のような現象に悩まされています。

今、あるリクエストに対して、処理を施し、その結果をHTTPレスポンスで返す処理を
行っています。クライアントはブラウザではなく、Cのプログラムです。
しかし、あるタイミングでHTTPのレスポンスが帰らないという現象が出ています。

プログラムの構成は以下のとおりです。

1.クラインアト(C)
|
HTTP
|
+-->2.コントローラのサーブレット
       ここでデータの抽出を行ってその結果をオブジェクトにしてそれをfowardで
       データ返却用サーブレットに渡します。
         |
req.setAttribute(データの抽出結果オブジェクト)
         |
          +-->3.データ返却用サーブレット
req.getAttribute(データの抽出結果オブジェクト)でコントローラのサーブレット
              からのデータを取得します。
              各種処理後、res.getOutputStream().write()でレスポンスを出力しています。
              (バイナリコードも返す必要があるので)


続く・・・
0347デフォルトの名無しさんNGNG
続き・・・                         

しかし、res.getOutputStream().write()で書き出した内容が吐き出されていないようです。
(エラーも発生していません)
しかし、HTTPヘッダはクライアントには帰って来ています。
つまり、データ部(HTTPヘッダ最後の改行コードの後のデータ)だけがうまく吐き出されて
いないようです。

この現象は毎回おきるのではなく、このコントローラのサーブレット自体
ある短い周期でクライアントから呼び出されるので、
たとえば、最初に呼び出されたサーブレットが実行している間に
また新たな要求が同じサーブレットに来る場合があり、どうも
そのような時にこの現象がおきるようです、。
ただこれも100%ではなく、10%ぐらいの確率です。

一番多かったのは、前の要求がデータ返却用サーブレットを実行中に
次の要求が、データ返却用サーブレット の実行に入ってきたときみたいな
感じに思えます。これも100%ではありません。

ちなみに,コントローラのサーブレット ,データ返却用サーブレット両サーブレット全体に
synchronized をつければ、この現象は起きないようです。

続く・・・・




0348デフォルトの名無しさんNGNG
続き・・・

さきほど書いたres.getOutputStream().write()での書き出しですが、
実際は、データ返却用サーブレット の頭で

 //outは、データ返却用サーブレット のdopost()のローカル変数
 ServletOutputStream out =res.getOutputStream();

というふうに、ServletOutputStreamまでのポインタ(?)
(JAVAの場合=の場合ポインタ渡し? 値渡し?)
をあらかじめ取得しておいて、最後の処理のほうで

out.write();
out.frash();
out.close();

で書き出しています。


次の要求がまだ終わっていないデータ返却用サーブレットに処理が
割り込んできたことで、最初にとったoutの内容が変になっているのでしょうか??

長文すいません。

御先輩方よろしくアドバイスのほどお願いします。
0349デフォルトの名無しさんNGNG
>>347
synchronized をつければ云々言ってるところからも
排他制御についてをちゃんとわかってないだろ。
ちゃんと排他制御しろ。
0350デフォルトの名無しさんNGNG
>>349
ありがとうございます。

synchronized の意味が100%でなくとも
少しはわかるような気がするのですが、
なぜ、synchronized がこの場合必要なのかわからないのです。
それはつまりsynchronized を理解していないかもしれませんが。。。

現象が100%であれば、納得いくのですが・・・・
synchronized をすべてにつけると、各要求が一度にいっぱいきた時
処理がまたされるわけで、できればそれは避けたく
今回質問させていただきました。

これでは質問する資格ないでしょうか?(^^;
0351デフォルトの名無しさんNGNG
>>350
すいません。追記です。

out.write(); で書き出している内容は

固定文字列でテストしています。

//メソッド外で定義している定数
static final String ABC = "abcdf";

out.write(ABC);

排他の影響で、out.write(); で書き出そうとするデータを
変数でテストしていると、クリア("")されている可能性もあると思われましたので
固定文字列で行っています。
0352デフォルトの名無しさんNGNG
おい。
待たせる必要があるときには待たせなければならないということを理解してるか?
0353デフォルトの名無しさんNGNG
>>352
ありがとうございます。

理解してないかもしれません。
この場合、待たせないと実現できないのでしょうか?
どうしてでしょうか??
うーん頭が混乱してきました。
0354デフォルトの名無しさんNGNG
すいません、
a = b++
って、bをインクリメントしてからaにbのインクリメント前の値を代入してるって事であってますでしょうか?
0355デフォルトの名無しさんNGNG
>>346
多分スレッドセーフになってないんだね。
よくわからないんだったらとりあえずSingleThreadModelをImplementすれ。
0356デフォルトの名無しさんNGNG
>>354
そんな質問するって事は、自分で試してないって事だな?
帰れ馬鹿
0357デフォルトの名無しさんNGNG
>>353
Servlet でインスタンス変数とかは使ってないんだよね?
0358デフォルトの名無しさんNGNG
>>353
セッションとかアプリケーションコンテキストとかでかぶってない?
0359デフォルトの名無しさんNGNG
>>320
JDK1.4.2_04のsrc.zipで試したけど、
xalanのパッケージを別途用意してビルドしたら、
エラーを1ファイル・4カ所くらいまでに抑えられた。
corba関連のThreadなんとかStack.javaとかっていう1ファイルだけ、
どうしてもエラーを解消できなかったけど、これだけ空クラスにして
無理矢理ビルド完了。
0360デフォルトの名無しさんNGNG
Basicの文字列を数値化するValやCdblに相当する関数をおしえて。
 後、文字列をぶんかつする、Midに相当する関数を教えて。
 美奈子のお願い!!
0361デフォルトの名無しさんNGNG
コンパイルが通らない・・・・。
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class Lesson01 extends HttpServlet{
public void doGet(HttpServletRequest request,HttpServletResponse response)
throws IOException, ServleException{
PrintWriter pw = response.getWriter();
pw.println("Hello World !");
}
}





0362361NGNG
C:\Servlet>javac Lesson01.java
Lesson01.java:2: パッケージ javax.servlet は存在しません。
import javax.servlet.*;
^
Lesson01.java:3: パッケージ javax.servlet.http は存在しません。
import javax.servlet.http.*;
^
Lesson01.java:5: シンボルを解決できません。
シンボル: クラス HttpServlet
場所 : Lesson01 の クラス
public class Lesson01 extends HttpServlet{
^
Lesson01.java:6: シンボルを解決できません。
シンボル: クラス HttpServletRequest
場所 : Lesson01 の クラス
public void doGet(HttpServletRequest request,HttpServletResponse respons
e)
^
Lesson01.java:6: シンボルを解決できません。
シンボル: クラス HttpServletResponse
場所 : Lesson01 の クラス
public void doGet(HttpServletRequest request,HttpServletResponse respons
e)
^
Lesson01.java:7: シンボルを解決できません。
シンボル: クラス ServleException
場所 : Lesson01 の クラス
throws IOException, ServleException{
^
エラー 6 個
0363デフォルトの名無しさんNGNG
>>360
http://java.sun.com/j2se/1.4.2/docs/api/java/lang/Integer.html#parseInt(java.lang.String)

http://java.sun.com/j2se/1.4.2/docs/api/java/util/StringTokenizer.html
0364デフォルトの名無しさんNGNG
>>362
javax.servletはJ2SEの標準ライブラリにはない。
J2EEかtomcatでもダウンロードしてservlet.jarをクラスパスに加えれ
0365361NGNG
がーん。。。。
tomcatはダウンロードしてtomcatのHELLOはできた。(右上に矢印とドライバの絵がでるやつ)
J2EEは必須なの?
0366デフォルトの名無しさんNGNG
>>365
・・・
0367364NGNG
>>365
364の2行目の後半を100回書き取りして煎じて飲め
0368361NGNG
環境変数を下記のようにかえたがおなじコンパイルエラー
CLASS_PATHの設定値
c:\jakarta-tomcat-3.3.2\common\lib\Servlet.jar
0369デフォルトの名無しさんNGNG
>>368
Servlet.jar → servlet.jar

ちなみに環境変数使うのやめれ。おすすめできない。
-classpathオプションとかせめてコマンドラインから
set classpath で一時環境変数使うとか。
0370デフォルトの名無しさんNGNG
とりあえず、入門書一冊買えよ
0371デフォルトの名無しさんNGNG
そもそも CLASS_PATH じゃなく CLASSPATH だろ
0372361NGNG
>>369さん、
>>370さん、
>>371さんありがとうございます。
□Servlet.jar → servlet.jarになおした。
□CLASS_PATH → CLASSPATHになおした。

>>-classpathオプションとかせめてコマンドラインから
set classpath で一時環境変数使うとか。

そうなんです。入門書にはMS-DOSのウインドウを起動するごとにクラスパスを設定するやり方
として、とあるんですが、MS−DOSの画面が全画面になってしまい、
それをもとにもどすのにまた何時間もかかってしまった。
で、
c:\>startup
c:\>rem Servlet lesson (←これはいらない)
c:\SET CLASSPATH = %CLASSPATH%;TOMCAT_HOME%\lib\servlet.jar
とありました。
c:\>startup からやるとまた大画面になってしまうので3行目の
c:\SET CLASSPATH = %CLASSPATH%;TOMCAT_HOME%\lib\servlet.jar
からやったけどうまくいかない。


0373361NGNG
c:\>startup ですでにだめ。
C:\servlet>cd ..

C:\>startup
'startup' は、内部コマンドまたは外部コマンド、
操作可能なプログラムまたはバッチ ファイルとして認識されていません。

0374デフォルトの名無しさんNGNG
もう諦めたほうがいいよ
君には無理だから
0375デフォルトの名無しさんNGNG
startup ってのは Tomcat の起動スクリプトなんじゃないかい
0376361NGNG
うーん。
向いてないから諦めるけど、課題がでてやらなくちゃいけない。
で、
C:\> の次はどうすりゃいいんだ・・・。
0377デフォルトの名無しさんNGNG
>376
退学届を書けば宜し。
0378361NGNG
うーん。
0379361NGNG
わかりました。
月曜日に提出してきます。
みなさんありがとうございました。
0380デフォルトの名無しさんNGNG
ここにいるのは役に立たないクズばかりですね。
もういいです。
0381デフォルトの名無しさんNGNG
おいしい負け惜しみキター!
今現在クズ以下の人間がなにいっとるよ。
コレをばねに人生頑張ってください。
0382デフォルトの名無しさんNGNG
コピペにマジレス・・・いよいよ春本番か
0383361NGNG
>>379と380 は私じゃありません。
0384デフォルトの名無しさんNGNG
何の課題か知らないが、もっと早めに講師の人に問い詰めるべきだったね。
こんなとこで訊くなんて、金の無駄遣いも甚だしい。
0385361NGNG
とりあえず、荒れるので書くのはやめるよ。
教えてくれた人ありがとう。
ではでは。
0386デフォルトの名無しさんNGNG
質問させてもらいます。

ImageIcon icon = new ImageIcon("001.jpg");

この場合、 001.jpg はどこのディレクトリに入れればいいんですか?
色々試したんですけどウィンドウが表示されるだけでどうしても画像が表示されません。
知っている方お願いします。。。
0387デフォルトの名無しさんNGNG
>>361
例えば、レーサードライバーが集うバーがあったとしよう。そこでは色んな
ヤツがいかにいいタイムを出すかでアツい議論が交わされていたりする。
コーナーリングでのシフトアップ/ダウンのタイミングや、どのエンジンは
こういう吹かし方をすればいい、などのハナシだ。
そこにお前がふらっとやってきて、道を右に曲がりたいのにクラクションを
鳴らしても右に曲がってくれない、などと大騒ぎしているわけだ。

誰もが最初は初心者なわけだが、もう少し真面目に勉強をしろ。
お前が聞いている問題は、どの教科書にも最初に書いてあることだ。
0388デフォルトの名無しさんNGNG
>>386
カレントフォルダかな。
new ImageIcon( this.getClass().getResource("001.jpg"))
として、.classと同じところに置くのが安全。
0389デフォルトの名無しさんNGNG
>>388
それを言うならクラスパス上なんじゃないかい
0390386NGNG
>>388

意味は分かりませんができました。
ありがとうございました。
0391デフォルトの名無しさんNGNG
>>389
それはブートストラップクラスの場合なんじゃないかい。
0392デフォルトの名無しさんNGNG
>>391
thisをロードしたクラスローダのパスからだょ
0393デフォルトの名無しさんNGNG
アプレットでgifアニメを表示したいのですが、自分の書き方だと
一回りアニメーションが行われたあと静止してしまうのです。
どのようなコーディングをすれば、繰り返しアニメーションが続くのでしょうか?
0394デフォルトの名無しさんNGNG
>>393
スレッドたててそこでループ

やさしい入門書にはたいがい書いてあるので、買って読んだほうが早いと思う
0395393NGNG
自分が持っている入門書には、スレッドについては10ページ程度しか
書いてなく、gifアニメには触れてないのでちょっと解決策が…
paint()→repaint()→update()→paint()のようなループってことでしょうか?
0396デフォルトの名無しさんNGNG
もう一冊入門書を買ってくる。
0397デフォルトの名無しさんNGNG
HTTPレスポンスヘッダについて教えて下さい・・・・。
このベージは移動しました。
自動的に5秒後に自動的にリンクします。
ってやつはどうすれば・・・・?

import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.util.*;

public class move extends HttpServlet {

public void doGet(HttpServletRequest request,HttpServletResponse response)throws IOException, ServletException {
response.setContentType("text/html; charset=iso-2022-jp");
response.setStatus(HttpServletResponse.SC_MOVED_PERMANENTLY);
response.setHeader("Location","http://localhost:8080/first/newpage.html");

//response.sendRedirect(response.encodeURL("http://localhost:8080/first/newpage.html"));
}

}
0398デフォルトの名無しさんNGNG
>>397
板違い
0399デフォルトの名無しさんNGNG
String[] = {"aaa","bbb","ccc","ddd",
などと書くときaaa→"aaa".と書くのが面倒なのですが、
自動で置換してくれるツールとかありますか?
0400デフォルトの名無しさんNGNG
>>399
板違い
0401デフォルトの名無しさんNGNG
>>400
ハァ?
0402デフォルトの名無しさんNGNG
>>399
Eclipse
0403デフォルトの名無しさんNGNG
>>393
手元だとgifで勝手にループするが。
うろおぼえだけど、たしかgifファイル自体にループするか
書くところがあったような。
0404393NGNG
Gifを何もしないで開くとちゃんとループしてくれるので、そのせんはたぶんないと思います。
処理が一つしかないので、スレッドをつくる必要性が分からないのですが…
0405デフォルトの名無しさんNGNG
アプレットを起動してから、HPをどれだけ移動したかカウントできる関数ってありますか?
0406デフォルトの名無しさんNGNG
>>405
基地害は氏ね
0407デフォルトの名無しさんNGNG
JNIやコマンド呼び出し(System.exec)を使うのはナシで
PureJavaでファイルのショートカットやシンボリックリンク(MACだとアライアス?)
を扱うAPIはあるでしょうか?
0408デフォルトの名無しさんNGNG
>>404
GIFアニメってそれかよっ
勘違いしてたよスマン。394は忘れといて

ちなみにうちの環境でアニメーションGIFを表示させると
特に変わったことしなくてもリピート表示されてるよ
(なんかやたら速いけど)
0409デフォルトの名無しさんNGNG
>>407
「扱う」ってどういうこと?
0410貧乏紙NGNG
>>405
java.net.Socket
のgetInetAddress()でそのシステムがどこに接続してるかわかるから、変わったら
数えるやつ作れば。
0411デフォルトの名無しさんNGNG
>>409
作ったり削除したり
あるファイルやフォルダがリンクかどうかを識別したりしたいです。
0412デフォルトの名無しさんNGNG
>>411
ソレってJavaVMの範疇じゃないから、扱えないような気がする。
そもそもショートカットやシンボリックリンクはソースの変更なしで
参照先を変えるためのものだしなぁ。。。すまん、力になれん。
0413デフォルトの名無しさんNGNG
>>407
今は無理だし、幾つかのOS固有の仕組みのようなものは
先々まで無理チャウかな。MSのショートカットはOLEだし。
0414デフォルトの名無しさんNGNG
>>411
そんな思いっきり環境依存するものが、Pure Javaの範疇にあるはずがない。
Pure Java==環境非依存
0415デフォルトの名無しさんNGNG
>>410
おお、ありがとうございます。

>>406
別に悪いことしようとしてるんじゃなくて、面白いものを作ってみたかったんですよ
0416デフォルトの名無しさんNGNG
すみません。ListにAddしてからListの中身をソートしたいのですが、
どうしたらよいでしょうか?
0417デフォルトの名無しさんNGNG
>>416
Collections.sort( List list )
Collections.sort( List list, Comparator cmp )
0418デフォルトの名無しさんNGNG
>>417
ありがとうございます。助かりますた。
0419デフォルトの名無しさんNGNG
finallyの必要性がよくわかりません。
try {
処理1
} catch (NumberFormatException e) {
処理2
} finally {
処理3
}
処理4
と
try {
処理1
} catch (NumberFormatException e) {
処理2
}
処理3
処理4
はどう違うのでしょうか。
0420デフォルトの名無しさんNGNG
>>419
処理2が「throw e」だった場合を考えてごらん
0421俺NGNG
Javaってさ、
画面のスクリーンショットはとれないんですか?

画面のスクリーンショットを撮って
JPGで保存する ってのをやりたいです。
0422デフォルトの名無しさんNGNG
java.awt.Robot#createScreenCapture
0423デフォルトの名無しさんNGNG
class getter {
  public static void main(String[] args) {
    for (int i = 1; i <= 10; i++) {
    System.out.print(i + "getキタ");
    for (int j = 0; j < i * i; j++) {
    System.out.print("━");
    }
    System.out.print("(゚∀゚)");

    for (int k = 0; k < i * i; k++) {
    System.out.print("━"); 
    }
       System.out.println("!!!!!");
       System.out.println("");
    }
  }
}
0424デフォルトの名無しさんNGNG
普通にコピペするとエラーの山(・∀・)
0425デフォルトの名無しさんNGNG
PrintWriter pw = response.getWriter();
をした後って

pw.flush();
pw.close();
をしないとダメですか?
0426419NGNG
>>420
ありがとうございます!
いろいろ実験してみます。
0427デフォルトの名無しさんNGNG
>>425
うんこして水流さないんだったら close しなくていいよ。
どっちも後で少し困るかも。
0428デフォルトの名無しさんNGNG
>>427
うんこなら次の人が流してくれるんでは?
0429デフォルトの名無しさんNGNG
>>427
Servletって自動洗浄じゃなかったっけ。
0430393NGNG
ソースつきでアップしてみたので、よければ見てみてください。
ttp://homepage3.nifty.com/selten/PreGif.html
0431デフォルトの名無しさんNGNG
>>430
回り続けてるけど?
0432デフォルトの名無しさんNGNG
たしかに回り続けないね
でも、アニメgifで動画やろうと思ったことないからなぁ
こまかくフレーム制御とかできんし
0433431NGNG
VMに依存してるのかも。
Mac OS X10.3(JDK1.4.2)だと、
Safari、InternetExplorer、appletviewerの
どれでも回り続けてる。
0434デフォルトの名無しさんNGNG
>>429
Servletはリクエストが終わってもプロセスは終了しない。
ゆえにファイル処理を close しないと、そのファイルがロックされて、次のリクエストにアクセス不能になったりする。
0435デフォルトの名無しさんNGNG
>>434
スレッドじゃないのか?
0436393NGNG
環境依存ですか…_| ̄|○
自分のVMはJDK1.4.2なんですが、だめですね
Java先生('A`)ノ
0437デフォルトの名無しさんNGNG
>>434
そうか、GCでcloseされるまで握りっぱなしか…
書いて直ぐ読むようなマヌケな処理じゃなきゃ問題ないよね?
0438デフォルトの名無しさんNGNG
>>429
自動洗浄で良さそうに思うぞ。
ServletResponseの内部的なストリームはリクエスト処理し終わった時に解放されて、
その上位に被さったフィルタを明示的にフラッシュ/解放する必要はなさそうな。
JSPコンパイラが吐いたServletコードのやり方が正解と思われ。
0439デフォルトの名無しさんNGNG
>>436
よくわからんけど、そのGIFファイルおかしいっすよ
0440デフォルトの名無しさんNGNG
ほんとだ
それgifがおかしい

自分でつくったgifまわすと問題ない
swingでボタンとかのアイコンにアニメgifセットすると勝手にずっとアニメーションしてるんですな
なんかおもろい
0441デフォルトの名無しさんNGNG
>>438
ということはフラッシュ/開放は作法的に書くものであって
実際のメモリリークには関係ないってことですか?
0442まゆNGNG
public class Test {

public static void main(String[] args) {
String strTmp="c:\\aaa\\ccc\\vvv.jpg";
String strRet = "";

strRet = strTmp.replaceAll("\\",">");

System.out.println(strRet);
}
}

なぜ、\を置換できないのでしょうか??
教えてください。
0443まゆNGNG
ちなみに 以下がエラーです。

java.util.regex.PatternSyntaxException: Unexpected internal error near index 1
\
^
at java.util.regex.Pattern.error(Unknown Source)
at java.util.regex.Pattern.compile(Unknown Source)
at java.util.regex.Pattern.<init>(Unknown Source)
at java.util.regex.Pattern.compile(Unknown Source)
at java.lang.String.replaceAll(Unknown Source)
at Test.main(Test.java:20)
Exception in thread "main"
0444デフォルトの名無しさんNGNG
ソース上の "\\" →プログラム内の "\" → regex 内では不正な文字。
ソース上で "\\\\" → プログラム内では "\\" → regex では "\"

たぶん。しらんけど
0445まゆNGNG
>>444
なりました!!
ありがとうございます。
0446デフォルトの名無しさんNGNG
>>444
スレ違いだがシェルスクリプトの中でsedを使おうとして似たようなことになった
0447393NGNG
gifがおかしいというのは、どうやったら分かるのですか?
あと、それを治せるソフトとかがあれば教えていただけると…(ry
0448デフォルトの名無しさんNGNG
そんなの Java スレで聞かれてモナー
0449まゆNGNG
>>447
アニメーションGIFを作成するソフトとか
フリーであるから、
それで中のぞいてみては?

一度GIFをばらして、再度アニメーションを作ってみるとか。
0450デフォルトの名無しさんNGNG
・・・gif・・・アニm・・・Mak・・・Winny・・・ゲフンゴフン
0451デフォルトの名無しさんNGNG
とりあえずFireWorksMX2004で作ったアニメGIFは問題ない
そのアニメgifどうやってつくったかが問題だな
0452393NGNG
439さんや、440さんはどうしてgifがおかしいのか分かったのかな〜と思ったのですが…

とりあえず、フリーのやつ探してみます。
gifはフリー素材からもらって来た物なので詳しいことは…
0453デフォルトの名無しさんNGNG
>>452
回り続けない現象が>>393のGIFだけで
起きたからじゃないの?よく知らんけど。
0454デフォルトの名無しさんNGNG
下のようなディレクトリ構造になっているプロジェクトルート/xxprojectから、
WEB-INF/libにあるaaa.jar、bbb.jarをclasspathに加えつつ、
jp.co.xxx.zzz.util.XXUtilを実行するには、javaコマンドをどのように打てばよいのでしょうか?

/xxproject
 /WEB-INF
  /classes
   /jp
    /co
     /xxx
      /zzz
       /util
        /XXUtil.class
  /lib
   aaa.jar
   bbb.jar

antのjavaタスクで
<java classname="jp.co.xxx.zzz.util.XXUtil" classpath="WEB-INF/classes" >
  <classpath>
   <fileset dir="." includes="WEB-INF/lib/*.jar"/>
  </classpath>
</java>
とすれば走るのは確認できたのですが、素のコマンドではどのようにやればいいのやら、
皆目見当がつきません。
0455デフォルトの名無しさんNGNG
Timer timer = new Timer();
timer.schedule(new TestTimerTask(), 0, 5000);

タイマーを使った場合スレッドが作られるんですが
このスレッドの名前を取得する方法ってどうやるんでしょうか?
0456デフォルトの名無しさんNGNG
>>454
Antのjavaタスクのclasspath属性は、javaコマンドの実行時に -classpathオプションに使われます。
だからこんなかんじ(ただしclasspath要素に対応する指定が無いので不完全)。
java -classpath WEB-INF/classes jp.co.xxx.zzz.util.XXUtil
classpath要素はワイルドカードの展開を考えるとちょっと面倒だけど、
aaa.jarとbbb.jarだけでよいのなら一つ一つ指定すればいける。
java -classpath WEB-INF/classes:WEB-INF/lib/aaa.jar:WEB-INF/lib/bbb.jar jp.co.xxx.zzz.util.XXUtil
UnixやCygwinのシェルがつかえるならこんな方法も。
java -classpath WEB-INF/classes:`ls WEB-INF/lib/*.jar|xargs|sed 'y/ /:/'` jp.co.xxx.zzz.util.XXUtil
ディレクトリやクラスパスの区切り文字に「/」「:」を使うのか「\」「;」を使うのかは自分の環境に合わせて変えて。
0457デフォルトの名無しさんNGNG
>>454
まずはコマンドラインで「java」とだけ打ってみよう。
使い方が出るから英語を嫁。
話はそれからだ。
0458デフォルトの名無しさんNGNG
>>455
TimerがThreadのサブクラスなら
「timer.getName()」では?
0459455NGNG
java.util.Timerです。
getNameはないんです。
0460デフォルトの名無しさんNGNG
をぉ〜
そんなクラスが標準であったんか・・・
知らんかった_| ̄|○
スマソ
0461デフォルトの名無しさんNGNG
リフレクションでも使わない限り無理なんじゃないかな。激しくJRE依存だけど。
それよりも、なんでそんなことをしたいかの方に興味がある。Timer#cancel()じゃ不満?
0462デフォルトの名無しさんNGNG
>>455
JDK1.5にごー、名前付けれる。
0463デフォルトの名無しさんNGNG
>>454 >>457
日本語のマニュアルもあるよ。
http://java.sun.com/j2se/1.3/ja/docs/ja/tooldocs/tools.html
0464デフォルトの名無しさんNGNG
>>455
名前取得したいのならわざわざ無名クラスにする必要自体がないのでは?
タスクはTimertaskを継承して作るんだから自分で管理すれば問題ないよ

0465デフォルトの名無しさんNGNG
符号無しのbyteが存在しないということを知ったのですが、
どうにかbyteを元に作り出すことは可能でしょうか?
unsignedbyte A;
A = 250;
A.toString();
など一般の変数型と同じ(上は間違えがあるかもしれませんが)ように
使いたいです。ご存知の方、ご教授お願いします。
0466455NGNG
>464
Timerが動いているかどうかを別から取りたいんです。
なんかいい方法ないかな?
0467デフォルトの名無しさんNGNG
>>465
符合無し byte 型に期待する機能による。

> unsignedbyte A;
> A = 250;
これがしたいだけならプリプロセッサ使うのが近道、かな?
Java のプリプロセッサに関しては探すんでも作るんでも好きにしてください。
0468デフォルトの名無しさんNGNG
質問です。

IDE から直接貼り付けられる GUI の Beans を作っているのですが、
デザイン時に動かしたくない処理があるんです。(←メモリの確保なんですが)

Beans 側から今デザイン時かどうかを判定する方法ってないでしょうか。
NetBeans だと貼り付けられた時点でコンストラクタが呼び出されてしまうんですよね……
0469デフォルトの名無しさんNGNG
>>468
それよりも、GUIビルダが認識しないメソッドでその処理を行うようにしたら?init()とか。
0470デフォルトの名無しさんNGNG
>>465
符号なしの処理を期待するところだけshortとか使えばいいだけでは?
>>468
java.beans.Beans#isDesignTimeとかそういうこと?
0471デフォルトの名無しさんNGNG
>>466
Timer&TimerTaskでは動いてるかどうかは管理できない

外部から状態を取得したいと言うのは
TimerTaskのほうから通知してやるしかない

定期処理に使うTimer処理で動いてるのを別のタスクから
取得しに行くってのはあんまり必要な場面が思いつかないけど
0472454NGNG
>>456,457,463

よくわかりますた。
javaコマンドでの実行に成功しました。

…やっぱりantは便利だと知りますた。
0473デフォルトの名無しさんNGNG
統合環境は使わないのかな?

ま、まずはコマンドライン覚えてからのほうがいいとは思うけど

OJTという単語の元に好き勝手ぐちゃぐちゃになってる現実を見るとねぇ
0474zNGNG
この文章を見た人には身の回りで、

3日後になにかとても悪い事がおきます。

悪い事を起きさせなくするためには

これと同じ文を2日以内に、

違う所に5回書き込んでください。

5回書き込まなかった女子中学生が

書き込みを見た3日後に死にましたというnさんのレスはhttp://mbspro3.uic.to/use/4460.htnlでもききました
0475U ◆CZtFsGiu0c NGNG
>>438
HTTPレスポンスの出力ストリームのクローズは、サーブレットコンテナに任せる
のが基本。コンテナによっては、クローズ処理をサーブレット内で行わないように
推奨している場合もある。

ただしストリームすべてに当てはまる話ではない。自分でオープンしたものは自分
でクローズする、他人がオープンしたものは、クローズもそいつに任せるのが原則。
使用後クローズすることが明示されている場合はクローズするようにする。
0476465NGNG
>>467
ありがとうございます。プリプロセッサについては調べてみます。
しかし、作った符号なしbyte型で一般のbyte型と同じ機能が欲しい場合は
別の手順が必要ということですか?
0477デフォルトの名無しさんNGNG
javaの場合基本的な考え方がbyteはバイナリ、charが文字
intが数値演算用だからな

cの用にバイト数とかで考えるようなものじゃない

まぁ、そのせいでJNIなどのやりとりが面倒になってるのは確かだけどね
業務系だけなら符号付きかどうかはだいたい問題にならないけど
速度が欲しいときやJNIやると符号付きも欲しいんだよな

じぇねりくすとか拡張forよりこっちがほすい・・・
0478デフォルトの名無しさんNGNG
質問です。

RMIを利用してクライアントとサーバー間で
ファイルのやり取りをしたいのですが
ファイルの送信状況(何%が送信済みなど)を取得することは
可能でしょうか?

RMIを見る限り、メソッド間のオブジェクトのやり取りに
しか見えないのでどこで送信状況を把握すればよいかわかりません。
0479デフォルトの名無しさんNGNG
>>478
「メソッド間のオブジェクトのやりとり」の状況を見ればいいんじゃないの?
0480デフォルトの名無しさんNGNG
>>478
RMI を利用してファイルをやり取りするというのが激しく謎。
0481デフォルトの名無しさんNGNG
>>455
TimerTask 内で Thread.currentThread().getName() でもやれば?
0482デフォルトの名無しさんNGNG
Appletでスレッドを使ったゲームを作ってみましたが、ブラウザウィンドウを2つ開くとゲームが倍速で動いてしまいます。
何故?
0483デフォルトの名無しさんNGNG
それスレッドでstaticやクラスインスタンス変数つかってそうだな
servletでやってはいけないことがなにかというのと似ている
0484質問アゲNGNG
execcmd="java -classpath hoge huga";
java.lang.Runtime.getRuntime().exec(execcmd);
とやって hoge/huga.class を呼ぶのはできたのですが、
huga.class の中でカレントにファイルを出力すると
huga.class のカレントではなく呼び元のカレントに出力されてしまいます。

絶対パスを使わずにカレントディレクトリの移動はできないのでしょうか。
ピュアJavaにしたいのでバッチファイルやシェルスクリプトはナシの方向で
よろしくおながいします。
0485デフォルトの名無しさんNGNG
>>484
Runtime#exec 使っててどこがピュア Java なのか。
というのはおいといて安直な方法だと
execcmd を "cd dir; java -classpath hoge huga" とすればいいでないの。
0486デフォルトの名無しさんNGNG
>>484,485
ワーキングフォルダは指定できるわけだが。
Runtime#exec( String command, String[] envp, File dir)
2番目はnullにするよろし。
0487484NGNG
>>485
>Runtime#exec 使っててどこがピュア Java なのか。
Javaアプリからそのマシン上で動くコマンドなら何でも呼べる、という
まぁランチャーみたいのを作ってるですよ。

File path=new File("hoge");
execcmd="java -classpath hoge huga";
java.lang.Runtime.getRuntime().exec(execcmd,null,path);
という形で自己解決できちゃいました。

>"cd dir; java -classpath hoge huga" とすれば
こっちの方が遥かに簡単。。。_| ̄|○

あ、、、ありがとうございますたw
0488484NGNG
・・・とか書いてる間に>>486さんもありがとうございました。。。
0489484@追記NGNG
ワーキングフォルダを指定した場合は "-classpath hoge" はいらなかったです。。
0490デフォルトの名無しさんNGNG
すみません。教えてください。標準入力から文字を受け取り整数にしてSQLでデータベースにアクセスしたいのですがエラーがでて困っております。
import java.sql.*;
import java.io.*;
public class Hello{
public static void main(String args[]){
int a = 0;
String s;
try{
  BufferedReader buf = new BufferedReader(new InputStreamReader(System.in));
s = buf.readLine();
a = Integer.parseInt(s);
}catch(IOException e){
e.printStackTrace();
}
try{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection con = DriverManager.getConnection("jdbc:odbc:hello");
Statement stmt = con.createStatement();
String sql = "SELECT * FROM DB WHERE bangou= " + a +"";
ResultSet rs = stmt.executeQuery(sql);
→処理続く

エラー内容
Exception in thread "main" java.lang.NumberFormatException: For input string: ""
at java.lang.NumberFormatException.forInputString(NumberFormatException.java:48)
at java.lang.Integer.parseInt(Integer.java:489)
at java.lang.Integer.parseInt(Integer.java:518)
at Hello.main(Hello.java:13)
0491デフォルトの名無しさんNGNG
> Exception in thread "main" java.lang.NumberFormatException: For input string: ""
入力文字列が空文字列だから数値としてparseできないって言われてる。
0492まゆNGNG
質問です。

Javaを配布するときに、
ClassやJarだと、ランタイムを入れないといけないし
初心者にはわかりにくいです。

なので、Windowsの実行形式(exe)に変換?する
ほうほうってありますか?
0493デフォルトの名無しさんNGNG
public void assign(Command command) {
 synchronized (lock) {
  list.addLast(command);
 }
 notifyAll();
}

public Command accept() {
 while (list.isEmpty()) {
  try {
   wait();
  } catch (InterruptedException e) {
   ;
  }
 }
 synchronized (lock) {
  return (Command) list.removeFirst();
 }
}

public void run() {
 while (!stopped) {
  Command command = accept();
  
 }
}

なぜ止まるか指摘してくれませんでしょうか
0494デフォルトの名無しさんNGNG
>>492
なぜ調べんのかと小一時間(略
http://www.google.co.jp/search?q=java+class+exe+%E5%A4%89%E6%8F%9B&ie=UTF-8&oe=UTF-8&hl=ja&lr=
0495デフォルトの名無しさんNGNG
実行部分はしょらないほうがいいですか?
チェックとかしすぎで見難いと

別スレッド内でやつを捕まえて呼びたいんですがあ
0496デフォルトの名無しさんNGNG
>>493
前後がわからんから単純なミスなのか難しい問題なのかもわからんが、
以下のように run() の中にデバッグ出力を埋めてみれば何かわかるかも。

public void run(){
System.out.println("stopped="+stopped);
while(!stopped){
System.out.println("stopped="+stopped);
Command command=accept();
}
} // 見難くてもいいからソースに全角空白入れるのはヤメレ
0497デフォルトの名無しさんNGNG
>>492
前スレだったかで、JREと一緒に自分のアプリを配布する話してたよ。
解凍してexeを実行するだけでOKみたいな手軽な方法とか言ってたような。
不要なファイルを削ったJREと、java.exeをキックするexeを作るかDLするかして、
自分で作ったクラスと一緒に配布するみたいな話だった。
0498デフォルトの名無しさんNGNG
>>496
全角でインデント、見やすくていいと思うんだけど、ダメ?
0499デフォルトの名無しさんNGNG
>>498
親切にもコピペして実行してくれようとしている人に失礼でしょ
0500デフォルトの名無しさんNGNG
どっちでもいいや。エディタに
貼り付けてオートインデントにしても、
貼り付けて全角空白->半角空白の置換にしても
手間はほとんどかわらん。
0501まゆNGNG
>>494
>>497

ありがとうございました
調べてみます。
0502デフォルトの名無しさんNGNG
四択か五択ぐらいのクイズのソースってどっかにあります?
0503デフォルトの名無しさんNGNG
>>499
そうか?全角を半角にもしくはタブにちょちょいと変換できる知恵もないやつに、
コピペして実行してもらって何が分かるんだ?ふつーは>>500みたいにするぞ。
0504デフォルトの名無しさんNGNG
public class A{
B b = new B();
}
class B{
int foo;
}
class C{
//bar = A.b.foo;
}

こんな感じのことをしたいのですが、どうするのが一番なんでしょうか。
0505デフォルトの名無しさんNGNG
>>504
なにをしたいのかぜんぜんわからないのは漏れの頭が悪いせいか?
0506デフォルトの名無しさんNGNG
みんなわからないからレスがつかない
0507デフォルトの名無しさんNGNG
>>504
目的を提示せよ。
君の示したそれは手段(のできそこない)でしかない。
0508デフォルトの名無しさんNGNG
>>504
> B b = new B();
static B b = new B(); //アクセス修飾子は自分で適当なの付けてくらさい。
にすればいーとかそーゆー事ではなくて?
0509デフォルトの名無しさんNGNG
>>508
できるもんならやってみれ
0510デフォルトの名無しさんNGNG
static public class A{
 B b = new B();
}

class B{
 int foo;
 getFoo(){
  return foo;
 }
}

class C{
 bar = A.b.getFoo;
}
0511デフォルトの名無しさんNGNG
>>510
90点

class C{
 int bar = A.b.getFoo();
}
0512デフォルトの名無しさんNGNG
>static public class

今時のJavaは便利になったのでつね :-)
0513デフォルトの名無しさんNGNG
>>512
今も昔もトップレベルの class 宣言には static は付けられない。
0514デフォルトの名無しさんNGNG
2ちゃんねる用あpろだ
http://shogi24.s56.xrea.com/uploader/upload.cgi
0515496NGNG
とりあえずインデントを強制的に直すプログラムを書いてみた。
"{" と "}" の対応があってなかったりする場合の例外とかは
なんにも考えてないでつ。
ファイル操作系のメソッドは昔作ってからずっと使いまわしてるから
ツコーミ梨でおながい。

http://shogi24.s56.xrea.com/uploader/data/up0018.bin
拡張子が変わっちゃったけど、AutoIndent.java でテキストで保存してちょ。
0516デフォルトの名無しさんNGNG
>>515
つーかムキになんなよ。オートインデントぐらいエディタでみんな持ってるだろ
#使ってやる奴は優しい奴だ

動きのおかしいのは、試さずともソース見ただけで分かる。
貼られた内には原因が無い、ってときも、大抵分かる。
全角だろうが何だろうが、理牌して読みやすくしてくれさえすればいい。
0517515NGNG
ムキになってるんでなくて、ヒマだったからw
0518デフォルトの名無しさんNGNG
むしゃくしゃしてやった
0519デフォルトの名無しさんNGNG
バールのような物で作った
0520デフォルトの名無しさんNGNG
まさか、こんなことになるとは思わなかった
0521デフォルトの名無しさんNGNG
職業・塗装工
0522デフォルトの名無しさんNGNG
大変なことをしてしまったと思った
0523デフォルトの名無しさんNGNG
>>510
AにgetFooを書くんじゃなくて、Bに書くのか。
0524デフォルトの名無しさんNGNG
>>492
http://jsmooth.sourceforge.net
0525デフォルトの名無しさんNGNG
JDK1.3でServletとアプリケーションにてシリアライズなオブジェクトの通信を行いたいと思っています。
オブジェクトのサイズが大きくなることもあるので、ダウンロードの進捗率を表示させたいのですが
ServetからObjectOutputStream#writeObject()を行って、
アプリケーションでURLConnection#getInputStream()を行うと
ストリームをすべて受信するまでgetInputStream()でブロックされて
受信中のバイト数を取得できないのです。
JDK1.4ではブロックされず、InputStreamのインスタンス取得後にダウンロードを行えているようなのですが
JDK1.3でブロックされずに取得する方法はないでしょうか?
0526デフォルトの名無しさんNGNG
>>525
http://jakarta.apache.org/commons/httpclient/index.html
これはどう。
0527デフォルトの名無しさんNGNG
>>525
getInputStream でブロックするってありえるのか?
0528デフォルトの名無しさんNGNG
>>493
ロックの使い方がおかしい。
0529493NGNG
>496
おっしゃるとおりです。すいません!以後気をつけます
で、493の内容ですが、>496さんのご指摘の所はfalseでした。
いやむしろpublic void stop()でtrueにするの忘れてて常にfalseになってました
それはまーいいとして。
多数のスレッドからリクエスト追加しても止まらなかったり。
1つから入れるとなぜか処理されなかったりと理解に苦しみます。
根本から勉強しなおしてきます。なんかそれっぽい本御存知でしたらご一報ください

0530デフォルトの名無しさんNGNG
>>525
つい最近同じようなのみたきがするが気のせいかな

>>529
そもそも493がどういったことやりたいのか
どうやってよばれるのかわからん

0531デフォルトの名無しさんNGNG
一つのソースファイルが肥大化してきて、テキストエディタでは辛くなってきました。
いくつかのファイルに分割したいのですが、よくわかりません。
単純にクラスごとに分けて.javaにすればいいわけじゃないんですよね・・。
どこか参考になるサイトはありますか?入門系のぺーを見たら、
「パッケージ」が近いと思ったんですが、読んでもよく分からず・・。
0532デフォルトの名無しさんNGNG
>>531
似た機能をカテゴリとしてまとめて、パッケージ分けして、
クラスごとに分けて.javaにしる。
まずはこれだけでも十分。
0533デフォルトの名無しさんNGNG
>>531
C++ なんかと違って一クラス一ファイルが基本だぞ。わかってるか?
0534デフォルトの名無しさんNGNG
>>531
まさかとは思うが、main() の中ですべてやってたりはしないだろうな?
0535困NGNG
私もzipファイルの中の日本語のファイル名に悩んでいます。
ZipFileをどうやって入手してどのようにJavaで使用するのか
教えていただけないでしょうか。よろしくお願いします。
0536デフォルトの名無しさんNGNG
クラスごとにわけて、って自分で言ってんだから
ファイル内に併記してるだけだろ たぶん
0537デフォルトの名無しさんNGNG
>>535
私「も」って言ってるぐらいだから >>79 以降の回答は読んでるんでしょうな。
それにしても論点が分かりません。
圧縮されてるファイルの日本語名の話かと思ったら入手という意味不明な単語。
1日悩んでからもっかい来て下さい。

0538デフォルトの名無しさんNGNG
あ、ごめん分かった。
zip ファイルは *.zip なファイルのことで、
ZipFile はライブラリのことか。脳が死んでた。」

Apache Project のページに行って、Ant の jar パッケージを拾ってきて、
jar ファイルへのパスをコンパイル時と実行時に classpath に足す。
0539デフォルトの名無しさんNGNG
PropertyResourceBundleをMapに変換するいい方法はないでしょうか?
Javaの標準機能か、Jakartaもので。
0540デフォルトの名無しさんNGNG
初心者なのですがちょっと分からないことがあるので質問させていただきます。
JAVAでアプレットのコードを作成しコンパイルしました。
エラーはなく、クラスのファイルが作成されたので、htmlのコードを作成し
MS-DOSからapplet viewer 000.javaと入力しました。
本にはapplet viewerプロパティファイルが読み込まれていません、と出ても
気にするなと書いてあったのですが、その後入出力の例外が発生しました。
と、書いてあって起動がしません。コードが悪いのか、htmlのコードなのか
入出力の例外が出るような処理は入れてないはずなのですが…、入れないからなのか。
分かる方宜しくお願いします。長文ですみません。
0541デフォルトの名無しさんNGNG
>>540
お前の頭が悪い
なんのExceptionが出るのかもかかないでお前以外の人間にわかるわけがないだろ
0542デフォルトの名無しさんNGNG
1. 数字から始まるクラス名など不可。
2. appletviewer には html を指定する。
3. なんで「入力しました」のとこ、applet viewer と単語で切れてるねん。
 入力したもの表示されたものはできるだけ正確に伝わるようにコピペせい。
0543デフォルトの名無しさんNGNG
アプレットを実行するときに、Sunの環境だと普通に行えるのに、
Microsoftの環境だとNoClassDefFoundErrorが発生する不具合発生。

    ↓

javacでコンパイル時に"-target 1.1"を明示的にオプション指定する。


ちなみに環境:
 OS
  WinXP
 SDKのバージョン
  v1.4.2_03
 msjava.dllのバージョン
  5.0.3810.0
0544デフォルトの名無しさんNGNG
>>543まで言っていたのに一気に>>92までしかレスが無くなってしまったか
0545デフォルトの名無しさんNGNG
いや、そうでもなかったか。
0546デフォルトの名無しさんNGNG
>>493
とりあえず、
 while (list.isEmpty()) {
この部分でlistの同期漏れかな。
0547名無しさん@LinuxザウルスNGNG
テキストからDOMツリーを構築しようとしています。
そのテキストに

<root>
<hoge>data</hoge>
</root>
ここにごみ

こんな感じで「ここにごみ」のところに余計な文字が入っている場合に
SAXParseExceptionが送出されてしまいます。(無視して構築したらぬるぽが発生)
<root>タグ以下しかいらいないので、ゴミは無視したいのですが、
何か良い方法はないでしょうか?
0548546NGNG
>>493
493だと
  return (Command) list.removeFirst();
この部分でnullポインタが返っていた可能性がある。
多分、下みたいにしたら大丈夫だと思う。

public Command accept() {
 Command dest;

 do {
  try {
   wait();
  } catch (InterruptedException e) {
   ;
  }

  synchronized (lock) {
   dest = (Command) list.removeFirst();
  }
 } while (dest == null);

 return dest;
}

それと、スレッドの個数とlistのサイズによっては、
notifyAll()じゃなくてnotify()の方がいいかも。
0549デフォルトの名無しさんNGNG
初歩的質問すいません。
OutOfMemoryErrorってキャッチ出来ますか?
0550デフォルトの名無しさんNGNG
>>549
できます。が、回復させるのは多分無理なので、落すのがよさそう。
0551デフォルトの名無しさんNGNG
>>547
DOMのルールに違反しているので無理でしょ。
ゴミも含めてなんかてきとーなタグで囲っとけ。
0552デフォルトの名無しさんNGNG
>>493
notifyAll()したと気に、相手がwait()にはいってくれているとは限らん。
Javaのスレッドのコンテキストスイッチは、非常に何の脈絡もなくにいろん
なところで起こる。JVMアセで1ワードあれば同期ミスする可能性アリ。
0553デフォルトの名無しさんNGNG
javaって遅いような気がします。
VMごとコンパイルしてバイナリに出来ないのでしょうか?
0554デフォルトの名無しさんNGNG
>>553
ぐぐれば有償無償のコンパイラがすぐ見つかるだろう。

それらは起動時間は短縮してくれる可能性があるが
それ以上の過度の期待はしないように。
ガベージコレクションのオーバーヘッドは消せないからだ。

なぜなら、
ガベージコレクションの処理が不要になるように最適化されたコードを
そのコンパイラが出力することが可能ならば
SunやIBMのコンパイラにもそれができない理由はないからだ。

ただし
ガベージコレクション処理を実行ファイルに静的リンクするか
共通DLLやsoに追いやるかぐらいの自由度は残されているだろう。
0555デフォルトの名無しさんNGNG
http://www.pandora.nu/tv/src/img20040329235621.txt
まだ途中で申し訳ないのですが、わからないことがあるので教えてください
上のソースで、Testを実行すると、なぜかウィンドウが表示されます
プロジェクトの中に入っているソースの中で、ウィンドウを表示させるのは
WinQuizboxだけなので、多分それが呼ばれたのだと思いますが、
それはTestで呼び出しているほかのどのクラスにも(もちろんTestにも)
WinQuizboxを呼び出しているところはありません
AlgorithmはWinQuizboxを継承していますが、引数つきコントラスタ
しか使っていませんし、もし引数つきコントラスタがよばれたときにも
空のコントラスタを用意しているので、WinQuizboxが呼ばれることがありません(と思います)
それでは、なぜウィンドウが表示されるのでしょうか
どのファイルが原因かわからないので、全部挙げます
//ちなみに違うファイルのものをひとつにまとめてあるので、
//インポート文とかは各クラスの上にあることをご了承ください
0556555NGNG
今見たらかなり見づらい…
ご承知ください
ついでに555げとズサー
0557デフォルトの名無しさんNGNG
>>555
Algorithmのコンストラクタ開始時に、暗黙のうちにsuper()が呼ばれるんだよ。
0558555NGNG
それを防ぐにはどうすればいいのですか
0559デフォルトの名無しさんNGNG
>>558
1.明示的にsuperクラスの別のコンストラクタ呼ぶ。
2.継承するのやめれ。
0560555NGNG
わかりました
とりあえずAlgorithmでやろうとしたことを、WinQuizboxにやらせて、
どうにかしようと思います
ありがとうございました
0561553NGNG
>>554
ありがとう、ググッたらこんなん出ました
ttp://www.ingrid.org/java/vm/
0562デフォルトの名無しさんNGNG
javaで、あるページにHTTPアクセスするにはどうしたらいいでしょうか?
0563デフォルトの名無しさんNGNG
HTTPアクセス出来るようにコードを書く
0564デフォルトの名無しさんNGNG
..
0565デフォルトの名無しさんNGNG

      ─、、
    (゚皿゚ O) ガオー!
    / ̄/ >>
    | ̄|  | |
   @/\ \@/
     /'/ /'/
     | |  | |
    -┛ -┛
0566デフォルトの名無しさんNGNG
>>562
JavaでHelloWorld!
http://www.hellohiro.com/
ここのHTTP編とかソケット編とか参考にしる。
0567デフォルトの名無しさんNGNG
>>562
HttpUnit使うのはどうよ?
ttp://www.httpunit.org/
ブラウザに近い振る舞いをさせたい(リンク先にジャンプ、フォームをサブミットなど)のなら、
生のHttpURLConnectionをいじり倒すより楽なんじゃないかな。
0568デフォルトの名無しさんNGNG
JVMの最大ヒープサイズを増やすには
何をどういじればいいのでしょうか?
0569デフォルトの名無しさんNGNG
すみません、教えてください。
読み込んだファイルをBlob型でテーブルに取り込もうと思っています。
FormFileからInputStreamに取得してBlobに値を変えたいのですがどうしたら良いでしょうか?
0570デフォルトの名無しさんNGNG
>>568
なぜヒープを増やすの?その理由によっては別の解決策があるかもしれないぞ。

>>569
Blob型って何?
0571デフォルトの名無しさんNGNG
>>570
配列に格納する時にOutOfMemoryErrorが発生してどうにもならない状態です。
格納する以外に実装法はないから
それが一番簡単かと。
0572デフォルトの名無しさんNGNG
XmlDocumentの内容をString型にする方法ってありますか?
0573デフォルトの名無しさんNGNG
>>571
ほんとにそれしか手は無いのか?

まあ、自分で作ったアプリでないなら仕方が無い場合もあるが。
JDK,JREならjavaコマンドに
-Xmxn [n=サイズ] をつけれ。

http://java.sun.com/j2se/1.4/ja/docs/ja/tooldocs/win32/java.html
0574デフォルトの名無しさんNGNG
>>572
下記のオブジェクトに書き込んでtoStringでとりだす。
http://java.sun.com/j2se/1.4/ja/docs/ja/api/java/io/ByteArrayOutputStream.html
0575デフォルトの名無しさんNGNG
>>573
サンクス
0576デフォルトの名無しさんNGNG
>>570
BLOBと言えばSQL BLOB(Binary Large OBject)のことかと。

>>569
そこまで分かっているならもう一息なんだけどね。ほれ。
ttp://www.techscore.com/tech/Java/JDBC/4.html
できればこっちを最初に見て欲しい。
ttp://www.google.com/search?hl=ja&ie=UTF-8&oe=UTF-8&q=Java+JDBC+BLOB&lr=lang_ja
0577デフォルトの名無しさんNGNG
>>571
>配列に格納する時にOutOfMemoryErrorが発生してどうにもならない状態です。
>格納する以外に実装法はないから

だからなぜそうする必要があるのか質問したんだが。
なぜ格納する以外に実装方法がないと言い切れるの?
そういう思想だとどんな言語でもメモリ不足になるよ。
もうちっと具体的に説明汁。
0578デフォルトの名無しさんNGNG
うーん、わかるように質問できませんが・・・。

環境変数について教えて下さい。
TOMCAT_HOMEとJAVA_HOMEはどちらが先に読まれるんでしょうか?
0579デフォルトの名無しさんNGNG
>>578
アプリケーションによる。としか言えないな。
最低限以下のことは書いてみて。
1. やりたいこと
2. 1をするために使用したソフト(JRE、サーブレットコンテナ、ライブラリを、バージョンも含めて詳しく)
3. 困っていること
0580578NGNG
うう・・、ありがとうございます。
1.サーブレットとJSP、MYSQLを使いたい(最終目標)
2.トムキャット3.3.1とJAVAはインストールした。(バージョンは沢山ある)
3.沢山ある・・・。
 ■環境変数のドライブのCは大文字小文字区別するのか?
 ■トムキャットとアパッチの連携のさせ方(ネコと羽の絵を表示するところまではできた)
 
0581デフォルトの名無しさんNGNG
>>576
ありがとうございます。上のサイトは既にチェック済みだったんですが
FileInputStream input=new FileInputStream(file);
statement.setBinaryStream(2,input,(int)file.length());
を、FileInputStreamをInputStream使おうとしたらlength()は使えないとエラーが出てしまって混乱してました。
0582デフォルトの名無しさんNGNG
XmlDocument doc = new XmlDocument();
ByteArrayOutputStream out = new ByteArrayOutputStream();
ObjectOutputStream oout = new ObjectOutputStream(out);
oout.writeObject(doc);//Exception
oout.close();

このdocをStinrgに変換できない。例外が出てしまう。
どうやればStringにできますか?
0583デフォルトの名無しさんNGNG
>>582
例外の表示は読んだか?
意味がわからないのならここにコピーペーストすれ。
0584デフォルトの名無しさんNGNG
>>580
Javaで、DBを使用するWebアプリケーションを作りたい、
DBはMySQLを使いたい、っていうのがやりたいことかな。

・環境変数のドライブレターは大文字小文字の区別はなかったような気がする。

・Apacheとの連携はパフォーマンス上の理由から行うことなので、
JavaのWebアプリ開発の学習が目的であれば、
連携自体を目標にするのでなければしなくてもいい。
がんばりたかったらこの辺を参考にしてみて。
ttp://www.hellohiro.com/apacheservlet.htm
これはLinuxでの設定だけど、jk2のコンパイルより後の設定はほぼ一緒。

それから、Tomcatを使うなら、特別な理由が無い限りは4.1系を使った方がいい。
ただ、3.3.1と微妙な違いがある(ディレクトリ構成が違う、invokerがデフォルトで無効など)ので、
手元の入門書との違いに煩わされたくないなら3.3.1のままでもいいけどね。
そういや3.3系は3.3.2が出たな。
0585デフォルトの名無しさんNGNG
>>581
そのエラーの内容を詳しくプリーズ
0586578NGNG
>>584さん、ありがとうございます。
どういうわけか、環境変数の設定で大文字のCではつながらなかった。
小文字のcではつながった。
(Win2000)ヴァージョンや環境が何通りもあるのでなんともいえないけど・・・。
で、質問が漠然としすぎていましたが、お答えの情報は役立てることにして、
少し勉強してためしてみてみます。
0587デフォルトの名無しさんNGNG
>>586
全角の「C」とかいうオチじゃないだろうなぁ…
0588デフォルトの名無しさんNGNG
おすすめの本教えてください。
他の言語が使えるので、「入門書」でないものをお願いします。
0589デフォルトの名無しさんNGNG
>>588
その「他の言語」が何か、「使える」度合いがどうだかで大きく異なる。
C でも、C なのか C++ なのか。まさか C# ではないと思うがどうなのか。
それで何を作ったのか。
Perl でも 4 と 5 では全然違うし。
JavaScript をやってたんなら構文以外は一切忘れちゃった方がむしろいいし。

これまで「Cをやってました」と言った奴でろくな奴はほとんどいない。
0590デフォルトの名無しさんNGNG
Javaで何をするかによる。
文法なんかは大したことないと思っているんだろ?
ならどんなものを作るかによって参考になる書籍は違う。
0591デフォルトの名無しさんNGNG
もし仕事で使うなら、Servlet, JSP, Applet, J2ME となれば、話は全然違うし。
DB, XML などと絡めて考える際は Java かどうかなんてほとんど関係ない、
これまでどんなことをやってきたかによるわけだが、果たしてそれが分かっているか。
現時点で分かってないなら、「他の言語が使える」なんて、
「3歳まで岡山にいました」とかと同じで、ほとんど意味無い情報。
0592デフォルトの名無しさんNGNG
>>584
>>587
もはやスレ違いだが
Tomcatを今から始めるなら間違いなく4.1
3.x達よりは4.1の方が成熟度が高い(あたりまえ?)
それと設定ファイル周りが微妙どころか結構違う。
仕様策定に右往左往したらしいところが見て取れる。

ちなみに
3.3.1で動いたものを試しにに3.3.2で動かそうと思ってダメだった。
移行必須じゃなかったのでちゃんと調べてないので原因不明。
0593578NGNG
なんかうまくいかない・・・・。トムキャットが立ち上がっても何行もガーっと
表示されます。Embeded Tomcat:Startup time XXXXがありません。
全部0クリしてやり直すしかないのか?
やっぱ3.3.1でやるってことは致命的にダメなのでしょうか?
入門書ではTomcat単体で必要十分なので最初はこれでいきたいんですけど・・。
「ユーザ変数の編集」(上段)と「システム変数の編集」(下段)どっち
をかえればいいの?
総当たり戦(3通りまで) ↓
ユーザ変数:PATH c:\jdk1.3.1\bin
システム変数:TOMCAT_HOME c:\jakarta-tomcat3.3.1
システム変数:JAVA_HOME c:\j2sdk1.4.0

ユーザ変数:PATH c:\jdk1.3.1\bin
システム変数:TOMCAT_HOME c:\jakarta-tomcat3.3.1
システム変数:JAVA_HOME c:\jdk1.3.1

ユーザ変数:PATH c:\jdk1.3.1\bin;c:\j2sdk1.4.0\bin
システム変数:TOMCAT_HOME c:\jakarta-tomcat3.3.1
システム変数:JAVA_HOME c:\jdk1.3.1

以上全部ダメ。


0594588NGNG
バカでした。すみません。

今まではPythonを使っていて、GUIアプリケーションを作ったりしていました。
Pythonのオブジェクト指向はなんちゃってオブジェクト指向であるということを最近知って
Javaで本格的なオブジェクト指向を勉強したいです。

で、ついでに携帯用のアプリケーションを作ったりしてみたいです。
0595デフォルトの名無しさんNGNG
フォルダの「アドレス(D)]からコピペすりゃいいじゃん。
DIR "%PATH%" とかでちゃんとファイル一覧が見れるか?
0596578NGNG
EmbededTomcat: Init time 531
っつうのはなんですか?
0597デフォルトの名無しさんNGNG
>>596
ドキュメントも読めないのか?
読めないなら来るな。
0598デフォルトの名無しさんNGNG
Javaの初心者向けのおすすめ参考書ありますでしょうか?
独習買ったんですけどちょっと難しかったです。
Cはちょっとできる程度の者です。
0599デフォルトの名無しさんNGNG
>>598
お前はまず>>1をよく読め。
0600デフォルトの名無しさんNGNG
C:\servlets>javac Lesson01.java
Lesson01.java:2: パッケージ javax.servlet は存在しません。
import javax.servlet.*;
^
Lesson01.java:3: パッケージ javax.servlet.http は存在しません。
import javax.servlet.http.*;
^
Lesson01.java:5: シンボルを解釈処理できません。
シンボル: クラス HttpServlet
位置 : Lesson01 の クラス
public class Lesson01 extends HttpServlet{
^
Lesson01.java:6: シンボルを解釈処理できません。
シンボル: クラス HttpServletRequest
位置 : Lesson01 の クラス
public void doGet(HttpServletRequest request,HttpServletResponse response)
^
Lesson01.java:6: シンボルを解釈処理できません。
シンボル: クラス HttpServletResponse
位置 : Lesson01 の クラス
public void doGet(HttpServletRequest request,HttpServletResponse response)
^
Lesson01.java:7: シンボルを解釈処理できません。
シンボル: クラス ServletException
位置 : Lesson01 の クラス
throws IOException, ServletException{
^
エラー 6 個
0601デフォルトの名無しさんNGNG
JSTLからスタティックメソッドを呼び出す方法はないですか?
0602デフォルトの名無しさんNGNG
>>601
まず>>1を一通り実行してから質問すれ。
それすら出来ないなら来るな。
0603デフォルトの名無しさんNGNG
>>602
そうつれねぇこと言うなよ
な、いいだろ。今回だけちゃちゃっと教えてくれよ。
0604デフォルトの名無しさんNGNG
野菜スタティック
0605デフォルトの名無しさんNGNG
java初心者です。String型の変数に
代入されている文字の数を調べるにはどうすればいいのですか?
0606デフォルトの名無しさんNGNG
>>605
ttp://java.sun.com/j2se/1.4/ja/docs/ja/api/java/lang/String.html#length()
0607デフォルトの名無しさんNGNG
>>605
>>1を一通りやってればすぐわかることだろ?
お前はSDKドキュメントも読めんのか?
0608605NGNG
>>606
サンクス
0609606NGNG
ちなみにString#length()とズバリ答えを書かずにSDKドキュメントのURLを示したのは、
「次からはこれ見て自分で調べてね」という意図も含めてたんだが、伝わったかな…
0610605NGNG
>>606
これからそうしますです。
0611デフォルトの名無しさんNGNG
・・・
初心者なのでちょっと無理です。
0612デフォルトの名無しさんNGNG
何が?
0613デフォルトの名無しさんNGNG
             / / }
           _/ノ.. /、
           /  <   }
      ry、     {k_ _/`;,  ノノ パンパン
    / / }      ;'     `i、 
   _/ノ../、   _/ 入/ /   `ヽ, ノノ
  / r;ァ  }''i" ̄.   ̄r'_ノ"'ヽ.i   ) ―☆
 {k_ _/,,.'  ;.  :.      l、  ノ  
    \ `  、  ,i.    .:, :, ' / / \
     ,;ゝr;,;_二∠r;,_ェ=-ー'" r,_,/   ☆


【ラッキーレス】
このレスを見た人はコピペでもいいので
10分以内に3つのスレへ貼り付けてください。
そうすれば14日後好きな人から告白されるわ宝くじは当たるわ
出世しまくるわ体の悪い所全部治るわでえらい事です
0614デフォルトの名無しさんNGNG
チュートリアルで意味が分からないコードあるんすが、
ttp://java.sun.com/docs/books/tutorial/uiswing/learn/example-1dot4/LunarPhases.java
↑のメンバ関数のaddWidgets()の中でやってるBorder設定なんですが。

phaseIconLabel.setBorder()で二回連続でBorder設定しています。
一つ目は分かるのですが、二つ目のsetBorder()の意味が分かりません・・・。
コメントアウトしても見た目の違いが分からんのですが、この二つ目のsetBorder()は何しているんですか?

ちなみにどんなアプリかというと。
ttp://java.sun.com/docs/books/tutorial/uiswing/learn/example5.html
↑こんなアプリで、phaseIconLabel は月のjpeg画像の表示領域です。
0615デフォルトの名無しさんNGNG
こう書けばわかるかな。

Border innerBorder = BorderFactory.createCompoundBorder(
BorderFactory.createLoweredBevelBorder(),
BorderFactory.createEmptyBorder(5,5,5,5));
Border outerBorder = BorderFactory.createCompoundBorder(
BorderFactory.createEmptyBorder(0,0,10,0),
innerBorder);
phaseIconLabel.setBorder(outerBorder);

こういうローカル変数を定義しなくていいように、ということでしょう。
0616デフォルトの名無しさんNGNG
>>614
javax.swing.BorderFactory#createCompoundBorder(Border,Border) で三重の複合ボーダーを作ってるだけ。

http://java.sun.com/j2se/1.4/ja/docs/ja/api/javax/swing/BorderFactory.html#createCompoundBorder(javax.swing.border.Border,%20javax.swing.border.Border)
外側および内側の縁に使うボーダオブジェクトを指定して複合ボーダを生成します。
0617614NGNG
んーと、
>createCompoundBorder(Border outsideBorder, Border insideBorder)
ここまでは分かってたんだけど。

三重かなるほど・・・。んー。

BorderFactory.createLoweredBevelBorder(), 外1
BorderFactory.createEmptyBorder(5,5,5,5))); 内1
BorderFactory.createEmptyBorder(0,0,10,0), 外2
phaseIconLabel.getBorder()));          内2

とすると。

画像に近い順に並べると、内1外1内2外2 って事でいいのかな?・・
0618デフォルトの名無しさんNGNG
>>617
一個目の複合ボーダー
外:BorderFactory.createLoweredBevelBorder(),
内:BorderFactory.createEmptyBorder(5,5,5,5)));

二個目の複合ボーダー
外:BorderFactory.createEmptyBorder(0,0,10,0),
内:phaseIconLabel.getBorder()));

二個目の複合ボーダの内側は一個目の複合ボーダーそのものなので
外:BorderFactory.createEmptyBorder(0,0,10,0),
中:BorderFactory.createLoweredBevelBorder(),
内:BorderFactory.createEmptyBorder(5,5,5,5)));
って事になる。
0619デフォルトの名無しさんNGNG
>>618
あー、なるほどそうか。だからgetBorderなのか。
理解できました。ありがとうございます。
0620デフォルトの名無しさんNGNG
>>617
phaseIconLabel.setBorder(
  BorderFactory.createCompoundBorder(
    BorderFactory.createEmptyBorder(0,0,10,0),
    BorderFactory.createCompoundBorder(
      BorderFactory.createLoweredBevelBorder(),
      BorderFactory.createEmptyBorder(5,5,5,5))));

とかやってんのと同じ。
0621デフォルトの名無しさんNGNG
ユーザーが閉じるボタンなどを押し、用済みになった
javax.swing.JDialogを破棄したいんですけど、何使えばいいんでしょ。
0622621NGNG
自己解決。
java.awt.Dialog.dispose()ね。
0623デフォルトの名無しさんNGNG
j2sdk-1_4_2-nb-3_5_1-bin-windows.exe
をダウンロードしてインストールしようとしたら、何度やっても途中で止まってしまいます。
メモリが128MBしかないと無理なんでしょうか?
0624デフォルトの名無しさんNGNG
NetBeans同梱版か?
あれ動かない人もいるみたい

それぞれ単体インストールだと問題ない

こっちからおとすべし
http://www.netbeans.jp/download_3_5_1.htm
0625623NGNG
>>624
どうもありがとうございます!
0626デフォルトの名無しさんNGNG
128MBだとインストールは出来ても使うのが難しいかもしれん。
Linux上なら16MBで十分動くのだが。
0627デフォルトの名無しさんNGNG
教えて下さい。
Javaの超初心者なのですが、先日、QuickTimeVRのファイルをHPに設置しようと
Freeのアーカイブ(ptviewer.jar)を ダウンロードして記述したのですが、
モノクロの水玉模様の様なものがでるだけでQTVRファイルが表示できません。
どなたか詳しい方がいらっしゃいましたら詳しい設置方法教えていただけないでしょうか?

プロバイダ参照:
サーバのOS:UNIXサーバ
パソコンのOS:MacX
エディタ:ミミカキエディットとドリームウェーバーMX
FTPソフト:NetFinder
0628デフォルトの名無しさんNGNG
>>627
http://www.google.com/search?q=ptviewer.jar&ie=UTF-8&oe=UTF-8
0629デフォルトの名無しさんNGNG
>>628
ありがとうございます。
ただ、日本語で詳しく解説してあるページはご存じないですよね。
0630デフォルトの名無しさんNGNG
>>623
ファイルが壊れててインストールできなかった人が過去にいた
もう一度ダウンロードしてみれば
0631デフォルトの名無しさんNGNG
あの〜、javaについての本を買って今から勉強しようかと言う者ですが、開発ソフト(?)ってどこで入手できますか。
J2SDK1.4って奴が必要らしいのですが・・・
お願いします
0632デフォルトの名無しさんNGNG
jreの同梱の仕方を教えてください
0633デフォルトの名無しさんNGNG
Tomcatの同梱の仕方を教えて下さい
0634デフォルトの名無しさんNGNG
>>631
http://java.sun.com/j2se/1.4.2/ja/download.html
J2SE v 1.4.2_04 のダウンロード
Windows/Linux/Solaris SPARC 32 ビット/64 ビット
Solaris x86 32 ビット
0635デフォルトの名無しさんNGNG
J2SE v 1.4.2_04 のダウンロード                  SDK
Windows/Linux/Solaris SPARC 32 ビット/64 ビット     ダウンロード ←これ
Solaris x86 32 ビット
0636デフォルトの名無しさんNGNG
>>631
入門用の本を買えば、入手方法も書いてあると思われ。
0637デフォルトの名無しさんNGNG
java.io.FileWriterで改行を書くにはどうすればいいのでしょう
try{
FileWriter writer=new FileWriter("test.txt",true);
writer.write("改行テスト\nここで改行");
writer.flush();
writer.close();
}catch(IOException e){}
こんな風にやっても改行されません。
FileWriterではエスケープシーケンスは使えないのでしょうか
もし使えるとしたら原因は何ですか
もし使えないとしたらどうすればいいですか
0638デフォルトの名無しさんNGNG
自分でJavaのゲームを作って、jarファイルにして
友達にjarファイルを送ったんですけど、友達が開いても
どのプログラムを使うか聞いてきて開けないみたいなんです。
Javaの環境がない人でも遊べるようにするには、
どうしたらいいんでしょう???
0639デフォルトの名無しさんNGNG
>>637
エスケープシーケンスは使えるけど、DOS用の Cライブラリみたいに
「\n -> ネイティブの改行コード」みたいな変換はしない。
たぶん \r\n じゃないと改行コードとみなさないエディタとかで見たんじゃない?

ネイティブの改行コードが欲しいなら System.getProperty("line.separator") してください。
0640デフォルトの名無しさんNGNG
>>638
> Javaの環境がない人でも遊べるようにするには、
無理。
0641637NGNG
try{
FileWriter writer=new FileWriter("test.txt",true);
writer.write("改行テスト"+System.getProperty("line.separator")+"ここで改行");
writer.flush();
writer.close();
}catch(IOException e){}
これでうまくいきました
ありがとうございました
0642デフォルトの名無しさんNGNG
>>641
BufferedWriter#newLine()を使うのが漏れは好き。
0643デフォルトの名無しさんNGNG
javaの勉強を始めて、1週間程度の超初心者です。
javacでコンパイルエラーが出る時、
「どのクラスの何行目に○○エラーがありますよ」みたく
具体的に指摘してくれないものなんでしょうか?
(今はソースとにらめっこして確認しています)
0644631NGNG
皆さんありがとうございました
0645638NGNG
>>640
ちょっと言い方がわるかったです。。。
Javaの環境が無いというか、
ごく普通の人が遊べるようにするにはどうすればいいんでしょう?
普通jarファイルで遊べるものなんですか?
0646デフォルトの名無しさんNGNG
javaの時代がやってきました
0647デフォルトの名無しさんNGNG
javajava
0648デフォルトの名無しさんNGNG
>>645
JavaのVMを入れる。入れなきゃ動かない。

WinだったらMSJVMが標準搭載されている事もあるけど、裁判の関係
で外されちゃってる奴もあるし、MSJVMはベースバージョンが古いので
JDK1.2以降でサポートされたクラス/メソッドを使ってると動かない。

その場合はSunのJRE辺りをダウンロードして入れる必要がある。
0649デフォルトの名無しさんNGNG
符号無し数値の扱い方について質問があります。
1バイトの0xFFを255として扱うにはどうすればよいのでしょうか?
0650デフォルトの名無しさんNGNG
>>643
javac がエラーメッセージ出すからそれを読んでください。
0651デフォルトの名無しさんNGNG
>>649
int 等に昇格させて val & 0xFF するとかしてください。
0652631NGNG
ダウンロードは無事に終わりましたが、editerがどこにあるか分かりません。
notepad appで作成するのですか?
0653デフォルトの名無しさんNGNG
>>652
エディタなんか付属しとらんからnotepadでもフリーのエディタでも
好きなもん使え。
0654デフォルトの名無しさんNGNG
>>652
JDKにはエディタはついてない。
別途好きなのを用意汁。
0655デフォルトの名無しさんNGNG
>>650
あのう、エラーの個数しか出てないようなのですが・・・。
普通はどんなエラーメッセージが出るのでしょうか?
何度もすいません。
0656650じゃないけどNGNG
>>655
printlnのタイプミスならこんな感じだが。(^の位置はずれてるかも)

c:\work>javac hello.java
hello.java:3: シンボルを解決できません。
シンボル: メソッド prinln (java.lang.String)
場所 : java.io.PrintStream の クラス
        System.out.prinln("hello, world");
               ^
エラー 1 個

c:\work>
0657デフォルトの名無しさんNGNG
>javac A.java

A.java:2: シンボルを解決できません。
シンボル: クラス hoge
場所 : A の クラス
hoge a;
^
A.java:4: 戻り値の型が void のメソッドからは値を返せません。
return 5;
^
エラー 2 個
0658631NGNG
何度もすいません。
皆さんがお使い&お勧めのフリーのエディターを教えていただけませんか?
0659デフォルトの名無しさんNGNG
>>658
窓の杜 か Vector で色々ダウンロードして試してみろ。
エディタの使いやすさなんて人によって違うから教えられん。

おれはxyzzyつかってるから、なおさらお前には勧められない。
0660デフォルトの名無しさんNGNG
おもったんだがSDKにNetBeansついてくるし(一番目立つところがそこだし)
エディタがついてないというのとは違うような

ただ、全くの初心者が環境設定できないままでも困るので
一度はコマンドラインベースでやっておいたほうがいいかな
0661デフォルトの名無しさんNGNG
>>656,657
どうもお手数をおかけしました。
そんなに詳細にエラーを指摘してくれるものなんですね。
実は当方macでして、環境に問題があるのかもしれません。
mac板のほうで聞いてみます。
ありがとうございました。
0662デフォルトの名無しさんNGNG
がちょーん Mac かい・・・ひょっとして OS9 か?
OS9 用はたしか 1.1 ベースまでしか出てないよな。
かなりしんどいと思うなぁ
0663デフォルトの名無しさんNGNG
>>658
TeraPad とかどうかな
俺はかなり長い間お世話になった
Java や XML 以外では今でもなってる
0664デフォルトの名無しさんNGNG
コマンドライン引数から指定したディレクトリの中の入っているディレクトリ以外のファイルの名称を
取得したいんですが、list()だとディレクトリも取っちゃうので困っています。
なんか方法ありますでしょうか?

ループさせてファイルひとつひとつをDirectory()とかで判断させるとかで、できるかな・・・。
0665デフォルトの名無しさんNGNG
>>662
そうです。OS9ですw
でも、勉強できるだけありがたいのでがんばってみます。

#1.1.8までしか対応してないらしいです
0666デフォルトの名無しさんNGNG
>>664
File[] files = dir.listFiles(new java.io.FileFilter(){ public boolean accept(File f){ return !f.isDirectory(); } });
0667664NGNG
>>666
ありがとうございます。
0668デフォルトの名無しさんNGNG
>>651
非常にダサイんですが、そんなもんなのか
Socket経由で3バイト符号無し数値とか受け取らないといけないんですが
0669デフォルトの名無しさんNGNG
>>668
人にきておいてそんな反応かい
まじめに答えた>>651もかわいそうだな

javaで整数演算はすべてintでやるのが基本
3バイトだろうがなんにも問題ないだろうて

0670デフォルトの名無しさんNGNG
>>669
春だから仕方ない。
0671デフォルトの名無しさんNGNG
>>669
スマソ
もっとスマートに符号無し数値を扱う方法があるのかと思ってたので
0672デフォルトの名無しさんNGNG
>>665
まだ見てるかわからんが、Eclipseがオススメだと思う。
エディタというよりマルチプラットフォームIDEだけど。

【Java/C/他】統合開発環境Eclipse M11
http://pc5.2ch.net/test/read.cgi/tech/1076074293/
0673デフォルトの名無しさんNGNG
>>665
漏れもJavaの勉強は、MacOS9+MRJSDK2.2で始めたよ。
OS9のjavacだとエラーは「Java Console」に
表示されるけど、改行とかが無茶苦茶で読みにくかったね。
MPWと組み合わせて使えばコマンドラインでコンパイルできて
エラーメッセージもちゃんと読めたと思う。
だけど、OS9もMPWもJDK1.1も今となっては過去の物なんで、
これからMPWとかの使い方を覚えたりするのは勧められない。
環境が許せば、Xに移行したほうがいいよ。
Pure Java開発でも、MacOSX10.3+Xcodeの方が10000倍
使いやすいよ。JDKも最新だしね。(長文スマソ.)
>>672
Java2がいるんじゃない?
0674デフォルトの名無しさんNGNG
>>645
友達に
http://java.com/ja/
の"今すぐ入手"を開いてもらえ。
0675664ですがNGNG
あの、>>666で教えてもらったんですけど
いまいち仕組みが良くわかりません。
もう少しわかりやすく記述した場合、どんなになるんでしょうか?
0676デフォルトの名無しさんNGNG
ディレクトリ以外を選択するフィルタかませてるだけかと
APIマニュアル読んでわからなかったの?
わからないのならどこがわからないかかいてもらわんと
0677デフォルトの名無しさんNGNG
>>675
無名クラスのあたりがわからないのか?

{}のインデントをつけてみて
入門書の無名クラスのページを開くかググって
ソースとよくみくらべてみ?
0678664ですがNGNG
>>676
いまいちわからなかったのは、FileFilterインタフェースなのかFileNameFilterなのか
また、それらをインプリメントなりインポートする必要があるのかどうか。
あと、メソッド内にメソッド埋め込んでるようにも見えるがそれが可能なのかどうか?

これくらいです。
0679664ですがNGNG
>>677
2重カキコすんません。
無名クラスって匿名内部クラスのことでしょうか?
(本にそう書いてありましたが)
0680664ですがNGNG
3重カキコすんません
自己解決できました。
ただ、>>679は同じかわかりません。
0681デフォルトの名無しさんNGNG
>>674
そういうときにGetJavaのリンクを自分のページに張るとか、
JavaWebStart対応にするとかすればいいのに
0682デフォルトの名無しさんNGNG
>>680
同じ
どっちもanonymous class の訳名。

直訳だと匿名,意訳すると無名になるラシイ。
http://www.sk-jp.com/java/tips/javaglossary.html
0683デフォルトの名無しさんNGNG
>>682
2ch的には名無しクラスでFA?
0684デフォルトの名無しさんNGNG
どっちでもOKでしょ。
正確さを最大にしたいなら anonymous class 以外はアウトにしなきゃいかんし。
0685684NGNG
すまん。ちゃんと読んでなかった。名無しクラスかぁ…
0686デフォルトの名無しさんNGNG
java コマンドで引数に、アスタリスク * を含んだ文字列を渡したいのですが、
実際に実行すると、実行したディレクトリ内に存在する、
パターンに一致したファイル名に変換されてしまいます。

何か解決する方法はありませんか?

 例 java Test *.xml
-> args[0] が、test.xml になってしまう。(test.xmlが存在する場合)
0687デフォルトの名無しさんNGNG
>java "Test*.xml"
は?
0688デフォルトの名無しさんNGNG
>>687
java.lang.NoClassDefFoundError です。
0689デフォルトの名無しさんNGNG
てか、java Test*.xml なんてありえないだろ。

java hoge Text*.xml じゃねーの?

だとしたら
java hoge "Text*.xml" でできないか?

これはjavaじゃなくてシェルの仕様依存だよ。OSなに?
0690689NGNG
ごめん、みまちがえてたTest がプログラム名なのね。
じゃ

>java Test "*.xml"

でどう?
0691デフォルトの名無しさんNGNG
>>690
OS は、WindowsXPです。

java Test "*.xml" は、やはり同じ結果でした。(内部にある拡張子 xml の何か)
0692デフォルトの名無しさんNGNG
>>691
ごめんなさい。

Eclipse で引数して実行した時だけのようです。
大変失礼しました。
0693デフォルトの名無しさんNGNG
>>686
java.exe は Unix とかと似た挙動にするため、
ワイルドカードを展開するよーになってる。
0694デフォルトの名無しさんNGNG
>>693
689のいうように、shellの話だろ?
Java(というか、実行されるプログラム)の世界に渡ってくる段階で
既に*は展開されちゃってる。
0695デフォルトの名無しさんNGNG
置換すれば?
0696デフォルトの名無しさんNGNG
>>694
Windows ではワイルドカードの展開は shell の役目じゃない。
0697デフォルトの名無しさんNGNG
最近Javaの入門書を読み始めた初心者なんですが、その入門書を読んでいて
わからないところが2つでてきました。
1つは作業用クラスですmain()メソッドを持たないクラスなのですが
これの書き方がどうすればいいのかいまいちわからないです。main()メソッド
を含むクラスから先に書くのか、作業用クラスから先にかけばいいのか迷ってます。
2つめはパッケージを使う理由です。入門書にはパッケージを利用する主な理由は
クラス名を一意に保つためである。とあるのですがこれはどういう意味なのでしょうか?

0698デフォルトの名無しさんNGNG
>>697
>1つは作業用クラスですmain()メソッドを持たないクラスなのですが
>これの書き方がどうすればいいのかいまいちわからないです。main()メソッド
>を含むクラスから先に書くのか、作業用クラスから先にかけばいいのか迷ってます
「作業用」という感覚が既におかしい クラスっつーかプログラムは全部作業のために作る
それともユーティリティクラスのことか?
とにかく、API は全部、main 持たないクラスなんだから、
それらと同じ位置付けになるように書けばいい

>2つめはパッケージを使う理由です。入門書にはパッケージを利用する主な理由は
>クラス名を一意に保つためである。とあるのですがこれはどういう意味なのでしょうか?
君自身がかたくなに「List」という名前のクラスを作成したいのであれば、
パッケージというものがなければ 標準APIとバッティングする
既に 標準 API では java.awt.List と java.util.List があるがパッケージが別なため両立できる
0699初期不良NGNG
>>697
Main クラスから先に作れば?
User クラスとか自前で作ったとして、import しているパッケージに
同じ User クラスがあったらどうしよう。MyUser クラスなんかにしても
良いけどやぼったいからパッケージを使って同じ User というクラス名のものを
使い分ける。
0700貧乏紙NGNG
初期不良
貧乏紙
さあ、つぎは?
0701デフォルトの名無しさんNGNG
-Djavaplugin.outputfiles.overwrite=false
なんですが、いくつかのマシンで設定しても、一意のファイル名になりませんが、機能してるんでしょうか?
0702JPanelのpaintはだめ?NGNG
上手くいきません。JPanelのpaintでテキスト描画をしたいのですが、下のコードを実行するとクライアントエリアが真っ黒に塗りつぶされた状態になってしまいます。
DisplayArea をJPanelの派生ではなく、JComponentの派生にすると期待通りの結果になるんですが・・。JPanelはこういう使い方できないんでしょうか?
-----------------------------------------------------
import java.awt.*;
import javax.swing.*;;
public class App{
public static void createAndShowGUI(){
JFrame frame = new JFrame();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
DisplayArea disp = new DisplayArea("あいうえお");
Container cont = frame.getContentPane();
cont.add(disp, BorderLayout.CENTER);
frame.pack();
frame.setSize(200,150);
frame.setVisible(true);
}
public static void main(String[] args){
createAndShowGUI();
}
}
class DisplayArea extends JPanel {
private String message;
public DisplayArea(String message){
this.message = message;
}
public void paint(Graphics g){
g.drawString(message, 20,20);
}
}
0703デフォルトの名無しさんNGNG
そういう使い方はできる。
黒い背景の上に黒の字を書いてるだけ。

public void paint(Graphics g) {
g.setColor(getBackground());
g.fillRect(0, 0, getWidth(), getHeight());
g.setColor(Color.BLACK);
g.drawString(message, 20, 20);
}

でもJRE1.5だとそのままでも表示できる……?
0704デフォルトの名無しさんNGNG
String変数っていったい何文字まで、格納可能でしょうか?
実行環境によって変わることは、分かっているのですが、忘れてしまい、
思い出せません。確かUNIX上は2万5千文字ぐらいだったような気がする
のですが・・・WEBで調べても具体的な数値までは、かかれていなかったの
で、別に知らなくてもStringBufferを使えばいいのでしょうが、どのよ
うな理由で環境によって違いがでるのか、今後のためにも知っておきた
いです。どなたかご存知の方、ご教授いただけますでしょうか?
0705デフォルトの名無しさんNGNG
今後のためを思うなら そんな長い文字列 String に入れるなってこった
0706デフォルトの名無しさんNGNG
>>704
理論上は
・割り当てたメモリの量
・int型の上限
の何れかが限界になる。普通は割り当てたメモリの量だね。
Serializeするときは 64k文字(32k文字だっけ?)が限界になると思った。
0707デフォルトの名無しさんNGNG
上限なんて気にしたことないw
0708デフォルトの名無しさんNGNG
>>704
> 思い出せません。確かUNIX上は2万5千文字ぐらいだったような気がする
これは文字列リテラルの長さの上限かな?
それだとクラスファイルの上限に縛られる。
0709デフォルトの名無しさんNGNG
>>708
クラスファイルの上限って64kバイトだっけ?
0710デフォルトの名無しさんNGNG
返信おくれました。皆様回答ありがとうございます。
>>708
文字リテラルではないです。
>>705
おっしゃるとうりです。
ただ、どうしても気になってしまいます。
0711デフォルトの名無しさんNGNG
>>710
実験してみたら?
0712横槍NGNG
>>708, >>709
補足、日本語文字列ならリテラルはUTF8でclassファイルに格納されることは知っていたほうがいいと思う。
SJISやEUCに比べて最大1,5倍にふくれあがるからね。
0713デフォルトの名無しさんNGNG

( ゚д゚)おれも作ったアプリさらしていいですか?
0714デフォルトの名無しさんNGNG
MacOS9+MRJSDK2.2で勉強中の超初心者です。
パッケージした時の実行方法がどうにも分かりませんので、
どなたかお教えいただけないでしょうか?
javacでclassファイルを吐き出すところまでは出来たのですが・・・。

Jバイナリで実行時、エラーメッセージが以下のようにダイアログで出力されます。
>メインクラス"ほにゃらら"が読み込めませんでした。
>そのファイルがclasspathの中にないか、
>クラスを使うスタティック・イニシャライザが
>classpathの中にありません。
0715デフォルトの名無しさんNGNG
>>714
「Using JBindery」を読もう。
0716デフォルトの名無しさんNGNG
日本語すら読めないならやめれ
0717デフォルトの名無しさんNGNG
>>713
だれも止めはしないと思うけど、、
0718デフォルトの名無しさんNGNG
俺は止める
0719デフォルトの名無しさんNGNG
JPanelにJTableをaddしてみたのですが、
このパネル全体にテーブルが渡るような方法ありますか?
おねがいします。
0720デフォルトの名無しさんNGNG
setLayout(new GridLayout(1, 1));
とかどうだろ。
0721デフォルトの名無しさんNGNG
>>718
( ゚д゚)なぜ?
0722デフォルトの名無しさんNGNG
普通にボーダーレイアウト使うんじゃないのか?

あと根本的なところわかってないようだから
こういうときはテキストエディタベースより逆にGUIエディタつかって
配置してみてどういうレイアウトができるか勉強するといい

レイアウトをダイレクトにいじる場合はEclipseでVEより
NetBeansのほうが動きがわかりやすいかな
0723デフォルトの名無しさんNGNG
>>704
String.javaを覗けよ。
Eclipseとか使えばJavaコアAPIのソースコードなんて簡単に読める。
0724デフォルトの名無しさんNGNG
>>720,722
レイアウトをセットしたらできました!ありがとうございます。
根本・・・たしかに分かってません。なんとなく感覚です・・・

GUIエディタ使ったことないんですけど、配置すると勝手にソース作ってくれるという解釈でいいですか?
0725デフォルトの名無しさんNGNG
ヌルポレイアウツ ツカッチャエ
0726デフォルトの名無しさんNGNG
( ゚д゚)まあいいや
http://bbstest.info/iptelco/soft/
これなんですが。忌憚なきつっこみをいねがいします。
0727デフォルトの名無しさんNGNG
>>726
それはナニでできてるんですかうんこ?
おしえてくださいうんこ?
0728デフォルトの名無しさんNGNG
>>715
英語が読めませんでした。
0729デフォルトの名無しさんNGNG
>>727
( ゚д゚)だいたいJavaです。コーデックとキャプチャは
ネイティブでしかできないのでネイティブです。
0730デフォルトの名無しさんNGNG
>>729
どこにJavaを使っているんだ?
拡張子がmsiだと怪しくて怪しくて。


0731デフォルトの名無しさんNGNG
JVMを使わずに動くソフトかよ。
ほんとにJava使ってるのか?
Javaを使っているとはどこにも書いておらんし

「このソフトウェアは〜を含んでいます。」とは書いても
このソフトウェアはJavaを含んでいますとは書いていない。

どういうことよ? ライセンスがGPLならソースコード公開されてはいない?
0732デフォルトの名無しさんNGNG
>>730
( ゚д゚)MSIはインストーラで中身はプログラムです。
あやしいですか?
0733デフォルトの名無しさんNGNG
とてもね
0734デフォルトの名無しさんNGNG
exeよりはましか

100%PureJavaを目指すつもりは?

インストーラだけJavaでないならJavaWebStart対応にすればmsiいらないと思われ。

それとも、JETコンパイラてネイティブに変換してるとか?
0735デフォルトの名無しさんNGNG
>>731
( ゚д゚)JVMなしで起動してるわけじゃなく、内蔵してます。ソースの公開はしてないです。

うわなんか連投規制に引っかかるのとで質問まとめてお答えするようにします。
0736デフォルトの名無しさんNGNG
拡張子がexeやmsiよりもjar, jnlpのほうを信用してしまう。
0737デフォルトの名無しさんNGNG
Java使ってると書いてないのは、要するにJREをインストールしてなくても
同梱してるから大丈夫とか、そういうことなんだと思うし
(ランタイム付きVBソフトのように)
msiでインストールさせるJavaプログラムもある。

けど、両方兼ね備えてるのは見た事無いぞ。
0738デフォルトの名無しさんNGNG
JAVAのローカルで使えるリファレンスマニュアルって配布されてますか?
目次/キーワード/検索が使える様な・・・

VCやDirectXのヘルプの様な物があると言う事無しなんですが。
0739デフォルトの名無しさんNGNG
>>724
その解釈でいい
まずはダウンロードしてたちあげてみるがよろし
たぶん、テキストエディタベースでのGUIエディットはもうやるきしないだろうて
もちろん、イベントとかも自動生成してくれる

VBとかDelphi、BCBと同じようなものと考えればいい
0740デフォルトの名無しさんNGNG
>>735
だれかが投稿したあとにシフト押しながらリロードすれば連続投稿規制にかからねえよ。
それと、待てと言われたら20秒待ってから投稿すればいい。

JVMを内蔵? あのmsiファイルの中にJ2SE1.4が丸ごと入っているのか?
なわけないよな。
0741デフォルトの名無しさんNGNG
>>738
APIドキュメント落としてnamazuでも使うかEclipseでも導入しろ
0742デフォルトの名無しさんNGNG
>>737
> Java使ってると書いてないのは、要するにJREをインストールしてなくても
> 同梱してるから大丈夫とか、そういうことなんだと思うし
> (ランタイム付きVBソフトのように)
> msiでインストールさせるJavaプログラムもある。
>
> けど、両方兼ね備えてるのは見た事無いぞ。
Jakartaにいけばそういうのはいくらでもあるじゃん。Tomcatとか。
0743デフォルトの名無しさんNGNG
>>740
J2SE1.4が丸ごと?JDKがないと動かないとでも思っているのか?
なわけないよな。

お前のような馬鹿は発言する資格はないと思う。
0744デフォルトの名無しさんNGNG
やっぱこれからの時代はサーバのMIMEタイプにjnlpを登録して
GetJavaのリンクも張ってJavaWebStartでしょ。

0745デフォルトの名無しさんNGNG
>>742
おいおい、Tomcatはインストーラ無しのがちゃんとあるだろ
0746デフォルトの名無しさんNGNG
>>743
揚げ足取りなんかしてないでもっとましなことをいえ。
>>725は「JREをmsiに内蔵して配布している」という解釈でいいんだな?
0747デフォルトの名無しさんNGNG
インストーラ付きのTomcatは余計なアイコンが入るのでいらぬ
0748デフォルトの名無しさんNGNG
つーかTomcatってVMついて来たか?
0749デフォルトの名無しさんNGNG
>>737
Windows専用だからとりあえずそういうことができるわけか。
0750デフォルトの名無しさんNGNG
>>748
こない。
そういう話ではないと思われ
0751デフォルトの名無しさんNGNG
( ゚д゚)
>>734
それだとキャプチャする手段がないので。それらだけそれらだけネイティブです。

>>737
>> Java使ってると書いてないのは、要するにJREをインストールしてなくても
>> 同梱してるから大丈夫とか、そういうことなんだと思うし
おっしゃるとおりです。

>>740
すいません、OpenJaneでできますか?
VMは内臓です。

>>746
えっとどのレスでしょう、アプリに内蔵してます。
0752デフォルトの名無しさんNGNG
( ゚д゚)みなさんありがとうございます、もしなんかあればまた明日まとめてお答えさせていただきます。
0753デフォルトの名無しさんNGNG
>>751
JMF 使えばキャプチャできるけど(対応してれば)。
http://java.sun.com/products/java-media/jmf/
0754デフォルトの名無しさんNGNG
GCJ Web Pluginなんてのがあるんだね。
GCJを用いたJava Applet稼働プラグイン。

ttp://www.nongnu.org/gcjwebplugin/index.html
0755デフォルトの名無しさんNGNG
>>754
http://javanews.jp/ にのってたね。

> The current version does not provide a security manager capable of handling Java (tm) applets.
> Applets have UNRESTRICTED access to your computer. This means they can do anything you can do,
> like deleting all your important data.
おそろしや。
現在のバージョンは実験で自作のアプレットで遊んだりしたらとっとと削除しといた方がよさげ。
0756デフォルトの名無しさんNGNG
JavaはもうすぐSunがサポート打ち切るから早めに脱出準備しておいた方がいいよ
0757デフォルトの名無しさんNGNG
>>756
今のうちに IBM JDK を検討したほうがいいね。
0758デフォルトの名無しさんNGNG
BEA JRockitはどうだ?
0759デフォルトの名無しさんNGNG
>>758
Windows 専用だし。しかもそれ VM じゃないの?
0760デフォルトの名無しさんNGNG
>>759
一応SDKだ。
しかし、CPU占有率が高いのでいただけない。
速いことは速いけど。
0761デフォルトの名無しさんNGNG
>>753
( ゚д゚)JMF使ってます。でもJMFのキャプチャはVfWしか対応してないので
そこはJMF対応の独自実装でやってます。
0762デフォルトの名無しさんNGNG
Javaを使って先日、QuickTimeVRのファイルをHPに設置しようとFreeのアーカイブ(ptviewer.jar)をダウンロードして記述したのですがモノクロの水玉模様の様なものがでるだけでQTVRファイルが表示できません。
どなたか詳しい方がいらっしゃいましたら詳しい設置方法教えていただけないでしょうか?

環境は↓
サーバのOS:UNIXサーバ
パソコンのOS:MacX
エディタ:ミミカキエディットとドリームウェーバーMX
FTPソフト:NetFinder
0763デフォルトの名無しさんNGNG
>>762
どなたか教えて下さい
よろしくお願いします
0764デフォルトの名無しさんNGNG
FTP ソフトなんか挙げてる時点で
誰も答える気起こさないと思う
0765デフォルトの名無しさんNGNG
>>764
なぜですか?
0766デフォルトの名無しさんNGNG
>>762
>>627-629
日本語のページ検索すると1つそれらしいの見つかるけど、
それじゃダメなのか? それともGoogleの使い方知らないのか?

ところで、MacXって何?
0767デフォルトの名無しさんNGNG
>>766
おまえ死んだ方が良いね!
人のあげあしをとるのがそんなに楽しいか?
友達いないだろ!
0768デフォルトの名無しさんNGNG
>>751
スタンドアロンアプリならマルチプラットフォームを考えると言うことも多くないし
こういった一見javaにみえないアプリってのが現実的な線だね

すべてネイティブコードより移植性は高いと思うし、かりに環境固定でも
javaのプログラムの組みやすさと運用性考えるとネイティブコードガリガリより便利


サイズ的にwebstart部分削るくらいしかファイルサイズ押さえれないけど
ネイティブアプリでも数十メガあることも珍しくない現在では問題にはなりにくいかな
0769デフォルトの名無しさんNGNG
>>768
それってJavaでやる意味ないだろって感じがするんだが、どうなの?
0770デフォルトの名無しさんNGNG
>>767
あげあしと思うならそう思ってればいいさ。
でもここは一応プログラム技術板だしな。
OSの名前すら正確に書けない香具師の質問に
親切につきあってくれる人がどれだけいるだろうか?
0771デフォルトの名無しさんNGNG
javaであることの利点はやはりGCがある環境はもはやデフォだろうってところだな
.NETよりはランタイムが少し小さいが、今Winフォームって動作状況どうなの?
去年の夏くらいにみたときはjavaのほうがGUI周りましだったんだけど
このへんは好き嫌いはあるかもしれんがね

ま、結局jarよんでるだけなのでLinuxとか使ってる人なら実行のしかたは
すぐにわかるだろうし、Winユーザーでランタイムをいれてからこのファイルを起動しろと
いうのは気軽さが無いというか

商用アプリならあまり気にならないかもしれないけど、同人レベルでは
インストーラがあるってのがマイナスに取られることも多い

exeをダブルクリックで起動だよ、というのは問題ないんじゃないの?
あ、jniとか依存する部分なしでの話ね

また、この考え方だとjavaは単なる一言語という扱いなのでとっつきやすい人も多いかと
0772デフォルトの名無しさんNGNG
ランタイムのインストールがないということは単なる一言語におちるわけで
ランタイム必須の.NET(javaみたいに同梱だけで動くかによるが)より手軽さはある

そうなると比較すべきはネイティブなバイナリなので
旧VB、VC、BCB、Delphiあたりとなるか

でも、GCの存在とかを考えるとDあたりが一番の対抗馬となり
それなりにおもしろいポジションになる

データベースやXML、通信周りなどは得意分野だしね
0773デフォルトの名無しさんNGNG
質問なのですが、何か流れ無視っぽで…被っていたら|スレ違いだったらすみません。

Java でサイズ 0 のファイル作成(touch(1) 新規ファイル名と同等)を実現したいのですが、
可能でしょうか? write(0) はゴミが入ってしまいます…よね。
ストリーム取得はライブラリに隠蔽されており、java.io.In/OutputStream が取れる口だけが
ある状態です。
0774デフォルトの名無しさんNGNG
>>773
File#createNewFile()
0775デフォルトの名無しさんNGNG
スレ違いっぽいが、他にスレ思いつかんので。
SunのDeveloper Network内の、bug Database(javaの)にログイン出来んのだが、なんかある?

JRE1.4.2でアプレット動かす時のbugを調べたいんだが、、、
0776775NGNG
あぁ、ログイン出来んってのは、「内部サーバーエラー」吐かれる状態。
もちろん、IDとpassは正しい。
(メンテ画面にはログインできるので)
0777デフォルトの名無しさんNGNG
>>776
ログインできないね。Sun ダメポ。
0778デフォルトの名無しさんNGNG
>>774 さん
ありがとうございます。すみません。言葉足らずでした。

> ストリーム取得はライブラリに隠蔽されており、java.io.In/OutputStream
> が取れる口だけがある状態です。

なんですが、このライブラリが保存先のストレジを隠蔽して変えられるように
なっていて(その設定の一つとして、実際には java.io.File を使っている場合も
あり)、ライブラリの利用者側としては、java.io.OutputStream だけが取れる
口がある(java.io.File を直接は使えない)、と言う状態でした。
java.io.File#createNewFile() の中身を嫁ってことでしょうか…
0779デフォルトの名無しさんNGNG
各種検索エンジンの検索パラメータを解析したいのですが、
UTF-8、EUC-JPなどを判定するにはどのようにすれば良いのでしょうか?
0780デフォルトの名無しさんNGNG
>>778
Javaにそこまで求めるのがすでに・・・
0781デフォルトの名無しさんNGNG
>>768
( ゚д゚)これの場合はキャプチャ部分だけ移植すれば
コーデックはコンパイルしなおしだけなのでポート簡単なんですよね、おそらく。
MacOSXで使いたいってメリケン人の方が実際いらっしゃるんですが。
0782デフォルトの名無しさんNGNG
GCをもっと早くするにはどうすればいいでしょうか?
0783デフォルトの名無しさんNGNG
あの。。。恥を忍んでお聞きしますが、InputStreamでURLを
指定して開いた時、アプレットのある鯖と同じ鯖にあるファイルしか
開けないのはセキュリティ設定の問題なのでしょうか。
0784デフォルトの名無しさんNGNG
>>778
javaの問題じゃなくライブラリの設計が悪いだけと思われ
ストリームはあくまでもread、write部分
やるとすればその呼び出し元が処理するだけかと

>>783
サンドボックスの制限
そうしないと悪意のアプレットで好き勝手に情報ばらまいたりしちゃうから
ほかにもクリップボードとか印刷とかいろいろ制限あるよ

webstartなら多少やわらげることができる
たとえばローカルファイルの読み書きに関して依然勝手に読み書きはできなくて
ダイアログを表示させて選ばせたものだけ処理できるし印刷も出来る
0785783NGNG
>>784
有り難うございます。 すっきりしました。
正直、数時間悩んだ(´д`)

ちなみにsocket等低レベルな所にもそう言う制限が掛かっているのでしょうか?
0786デフォルトの名無しさんNGNG
>>785
もちろんソケットレベルで

アプレットじゃないとだめなのか、webstartでいいのか、
それともアプリケーションのほうがいいのかよく考えるといいよ

ちょっと上でもでてきているとおり、ランタイム入れてない人にも
実行してもらえるのがjavaアプリケーションの利点でもある
0787デフォルトの名無しさんNGNG
JavaのGregorianCalendarクラスについて質問です。入門書に
GregorianCalendar calendar = new GregorianCalendar(year,month,day);
Date hireDay = calendar.getTime();
というのがあったのですがこれはなんのためにDateクラスに変換して
いるのでしょうか?普通にSystem.out.print(get.Time());じゃ
ダメなんでしょうか?
0788デフォルトの名無しさんNGNG
その本わからんのでその文章だけでは答えようがないぞ
0789デフォルトの名無しさんNGNG
プログラム的な質問じゃないんで申し訳ないんですが・・・
JAVAを勉強することになりまして、とりあえず何かしらのアプリケーションを
作りつつ学んでいこうと考えています。
どうせならJAVAの特性を生かしたアプリを作りたいのですが、JAVAの何がよい
のかが良くわかってません。基本的にはプラットフォームに依存しないって特
性くらいは知っていますが、「プラットフォームに依存してはならないプログ
ラム」の必要性もあんまり感じないし・・・
他の特性で有効なことってありますか?
0790デフォルトの名無しさんNGNG
読んでるのはコアJavaなんですけどそれには
GregorianCalendarとDateクラスを変換する場合に特に便利なメソッドと
かかれています>getTime() setTime()
変換する理由がわからんです
0791デフォルトの名無しさんNGNG
>>789
通信ライブラリが充実。
ファイルやネットワ^クを通じたオブジェクトの受け渡しが楽。
スレッドがわりと簡単に作れる。けど再現性のないバグを作りやすい諸刃の剣。

オマケ
フルスクリーンアプリを作るのが実はDirectXより楽。

0792デフォルトの名無しさんNGNG
intの配列の中から、最大値を最速で求めるコードってどんなんですかね?

int max = 0;
 for(int i = 1; i < intArray.length; i++){
  if(intArray[i] > intArray[max]){
   max = i;
  }
 }

こんなのは、馬鹿正直?
0793デフォルトの名無しさんNGNG
>>792
いや、馬鹿
0794デフォルトの名無しさんNGNG
Java の場合 JIT がどう効くかが重要だから
JIT の種類を考えずに一概に最速といわれても答えようがない。
バイトコードの長さが短ければ速いってわけでもないしな。
0795デフォルトの名無しさんNGNG
>>789
>、「プラットフォームに依存してはならないプログラム」の必要性
あるのは必要性じゃなくて有効性だよ

サーバに配備(デプロイ)するサービスやら、ソフトウェアで利用したいライブラリが、
Win で運用してる場合も Unix で運用してる場合も皆が同時に手に入れられるってのはよろしくないか?
こことか http://www.apache.org/ みてごらん。

>>790
>>787 の System.out.print(get.Time()); はSystem.out.print(calendar.getTime()); のこと?
だとしたら君の話は完全な勘違いを前提にしてるぞ。
calendar.getTime() が変換であって、
Date hireDay = calendar.getTime(); は変換結果を参照させてるだけだ

で、君の疑問を正しく表現したとき
「なんでいちいち変数を用意して参照させるのか」と問われても、
続きのプログラムがどうなってるかわからんと答えようがない。
多分単純に「分かりやすかろう」ってことだろうが、他にも理由がありうる。
0796デフォルトの名無しさんNGNG
俺ならソートして端を抜き取る。遅そうだけど。
0797795NGNG
ごめん、http://www.apache.org/ からじゃどれが Java だかわからんな。
ま 別の機会に出会うこともあるだろう
0798デフォルトの名無しさんNGNG
DateクラスのtoString()を呼びたいんじゃないかと、想像してみる手巣ツ
0799デフォルトの名無しさんNGNG
String にバイトアクセスする方法を教えて下さい。
Cでいう、charにキャストして、バイトアクセスするみたいなことをしたいのですが、
0800デフォルトの名無しさんNGNG
>>799
これ何回もでてるけど
APIマニュアルよんだ?
0801デフォルトの名無しさんNGNG
すいません。。読んだつもりなんですが。。
StringBufferInputStreamをつかえばいいのかなぁ?
なんておもっていたんですが、非推奨とあるし
悔しいけど解りませんでした。
0802デフォルトの名無しさんNGNG
>>799
もっとちゃんと読め。String クラスのところを読んでるか?
0803デフォルトの名無しさんNGNG
入門書らしく、GregorianCalendar(Calendar)クラスと
Dateクラスの関係を示しただけでは?
0804デフォルトの名無しさんNGNG
もしかして、getBytes?
0805デフォルトの名無しさんNGNG
マニュアルでgetBytes()って見なかったか?

まずバイナリで扱いたい場合、java内部はunicodeが原則なので
なんのバイナリにしないといけないかということを考えないといけない
デフォはそのプラットフォームの文字コード

ほとんどの場合char配列で足りると思うけどね
0806貧乏紙NGNG
Strint str = "貧乏紙";

Byte bt = str.getBytes();

指定された文字セットを使用してこの String をバイトシーケンスに符号化し、結果を新規バイト配列に格納します。
指定された文字セットでこの文字列を符号化できない場合、このメソッドの動作は指定されません。符号化処理をより強力に制御する必要がある場合、CharsetEncoder クラスを使用する必要があります。
だって。。。
0807デフォルトの名無しさんNGNG
char 配列にするには toCharArray ってのもなかったか。
0808デフォルトの名無しさんNGNG
まじすいません、正直恥ずかしいです。。
StringReaderとかそっちのほうにめがいってしまって、
肝心のString見てませんでした。。。

ありがとうございました。
0809789NGNG
>>791
>通信ライブラリが充実。
>ファイルやネットワ^クを通じたオブジェクトの受け渡しが楽。
なるほど。ちょっとネットワーク関係にも弱いのですが、これを機会に何か
プログラムを考えて見ます。

>>795
確かに「必要性」→「有効性」ですね。ちょっと言葉間違えました。
異なるプラットフォームでライブラリを共有できるってのは面白いですね。
ちょっと思いつかなかったです。

お二方とも回答いただきありがとうございました(^^
0810デフォルトの名無しさんNGNG
サウンド周りも楽だといっておくか
PCMはDirectXのセカンダリバッファガリガリ書くのを綺麗にラッピングしてる感じだし
midiはソフトウェアmidi内蔵しているのでwinでもLinuxでも同じ音がでる

ただし、winだけランタイムからsoundbank.gmが抜かれているのでアプリに添付することに注意
0811デフォルトの名無しさんNGNG
>>808
API 中に他のどんなクラスがあろうが、
String の内側からデータを引っ張り出してこなきゃならないんだから、
String に相応のメソッドがなきゃしょうがないのよ。
Doc 読む以前にこういうことに気が付くようになるといいんだけどな。
0812775NGNG
>>777
thx。こっちの環境の影響ではないと判って安心した。

ちなみに今日はOkな様だ。
0813デフォルトの名無しさんNGNG
>>782
http://www.nminoru.jp/~nminoru/java/cms/concurrent_mark_sweep.html
0814デフォルトの名無しさんNGNG
質問よろしいでしょうか。

switch(data) {

  case 1:
  case 2:
  case 3:
    System.out.println("1 - 3");
    break;

  case 4:
    System.out.println("4");
    break;

  default:
    System.out.println("Else");
    break;

}

このcase 1:から3のように、caseが連続している場合、
dataが1,2,3の時は"1 - 3"と表示されるということですか?
0815デフォルトの名無しさんNGNG
正解。試しにbreakはずして実行すると理解が深まっていいかも。
0816デフォルトの名無しさんNGNG
>>814
そうです。

14.10 switch 文
http://www.y-adagio.com/public/standards/tr_javalang2/statements.doc.html#35518
> C及びC++ と同様,switch ブロックにおける文の実行は,"ラベルの間を落ちていく"。
0817デフォルトの名無しさんNGNG
>>814です。
ご回答ありがとうございました。
Java入ってないマシンと印刷資料で研修中なもので、実行して確かめられなかったのです。
0818デフォルトの名無しさんNGNG
DB上にあるデータ(EUC)の全角ハイフンをjavaで取得して
content-type:charset=Shift_JIS のファイルに書き出すと化けてしまいます。
そこでjava側で str.replace('\uff0d', '\u2212');で全角ハイフンを置換しようと思うのですが
これでも全角ハイフンをshift-jisファイルに書き出せません。

どうしたら全角ハイフンを書き出せますか?
0819デフォルトの名無しさんNGNG
>>818
文字コードにShift_JISを使わずにWindows-31Jを使うのはダメか?
0820デフォルトの名無しさんNGNG
Shift_JISといってもほとんどの場合MSのCPだろ

javaで出力する場合は機種依存文字も出したい場合もあるだろうから
eucやShift_jisは選択肢になりにくくてUTF8かMS932が一番現実的と思われ
0821デフォルトの名無しさんNGNG
shift-jisは変更出来ないです。
replaceで半角スペースに置き換えるしかないんですかね??
0822デフォルトの名無しさんNGNG
↑半角スペースじゃないや。
半角ハイフンの間違いでした。
0823デフォルトの名無しさんNGNG
>>821
ttp://java-house.jp/ml/archive/j-h-b/014452.html#body

変更できないと思いこんでるだけだろうが、まあ、ここでも読め。
0824デフォルトの名無しさんNGNG
>>823
どうもでした
0825デフォルトの名無しさんNGNG
Tomcatのこともここでいいですか?
実行時エラーの画面で
HTTP????? 500
という感じで?になってしまっている個所があります。
htmlのソースを見ましたが?でした。
解決方法をご教授ください。
(エラーの内容は英字なので読めているので問題ないですが)

よろしくお願いします。
Tomcat 5.x
Windows 2000
0826デフォルトの名無しさんNGNG
>>825
文字コードの問題。正しく設定したまえ。
0827デフォルトの名無しさんNGNG
>>825
バグ
ttp://www.jajakarta.org/kvasir/bbs/technical/616?msg=2#msg2132
0828デフォルトの名無しさんNGNG
macでアプレットのクラスを実行するには、どうすればいいのでしょうか?
htmlファイルを作るところまでやったのですが、
アプレットビューワらしきものが見当たりません。
入門書にはwinのやり方しか載ってないし・・・。
よろしくお願いします。
0829デフォルトの名無しさんNGNG
MacゆうてもOS9とOSXじゃ、全然ちゃうんやけど。
0830デフォルトの名無しさんNGNG
ブラウザ使えばいいだろ
アプレットてのはブラウザで使うためのもんだぞ
0831デフォルトの名無しさんNGNG
日本語がおかしいな

つーか pc5 って串規制ないの? 書き込めておどれーた
0832デフォルトの名無しさんNGNG
>>829
あ、すみません。
OS9です。
0833デフォルトの名無しさんNGNG
>>832
ブラウザ or Apple Applet Runner
0834デフォルトの名無しさんNGNG
Javaアプレットを作ったんです
DOSでAppletviewer syokai.javaってやればちゃんと動くんですが
実際にHTMLでやってみると灰色のままでアプレットは開始しましたって
なっていて画面にうつらないんです
何が原因か教えてください
0835デフォルトの名無しさんNGNG
>>834
IE 6.0 + MSJVM だったら、
 ツール->インターネットオプション->詳細設定->Microsoft VM->Javaコンソールの使用(再起動が必要)
にチェック入れて再起動後、アプレット動かせ。
 表示->Javaコンソール
でJavaコンソールが出るから、それでエラー出てる箇所を確認しろ。

もしくは jview -a applet.html でもいーけど(PATH弄ってないなら)
0836834NGNG
>表示->Javaコンソール
>でJavaコンソールが出るから、それでエラー出てる箇所を確認しろ

HTMLで起動したんですがJavaコンソールってやつでてこないんですが・・・・
DOSで起動しても出てこないし・・・
0837834NGNG
あ、すいません勘違いしてました(・∀・)
0838デフォルトの名無しさんNGNG
>>836
> ツール->インターネットオプション->詳細設定->Microsoft VM->Javaコンソールの使用(再起動が必要)
> にチェック入れて再起動後、アプレット動かせ。
の手順を踏まないと
> 表示->Javaコンソール
は出てこない。
0839834NGNG
キタ━━━━━━(゚∀゚)━━━━━━━!!!!
ありがとですまじで助かりました
0840デフォルトの名無しさんNGNG
>>833
走りました。ありがとう!
0841デフォルトの名無しさんNGNG
strutsのActionFormでIntegerをもたせています。
はじめにこのページにきたときは
このフィールドが空なんですが、
一度サブミットしてvalidateチェック(サーバサイドのチェック)で
もどってくると、0がフィールドにはいっています。
Integerフィールドに数値以外の文字がはいると0が入る仕様ですが、
これを0でなく""(空欄)にすることは可能でしょうか?
0842デフォルトの名無しさんNGNG
あげてすいません。Javaって将来性大丈夫なのですか?
なんかMSが多額の出資金を出したってことで
買収されそうなんですけど?
0843デフォルトの名無しさんNGNG
釣り師キター
0844デフォルトの名無しさんNGNG
クマー(略
0845デフォルトの名無しさんNGNG
Strutsごっこしようぜー!
俺、アクションクラス〜!
↓お前はアクションフォームな!
0846デフォルトの名無しさんNGNG
よーし、じゃあ、俺からフォームビーンに、ログインIDとパスワード渡しちゃうぞ〜!
それっ!
↓次のおまえは、フォームビーンな!
0847デフォルトの名無しさんNGNG
ダイナ使うからんなもんいらねーよーだ
0848デフォルトの名無しさんNGNG
ウルトラマンダイナ?
0849デフォルトの名無しさんNGNG
ちんこ蛇腹式
0850デフォルトの名無しさんNGNG
Macでプログラミングってできますか?
0851デフォルトの名無しさんNGNG
>>850
できるよ
0852デフォルトの名無しさんNGNG
JAVAで日時を取得しSQLに格納したいのですがjava.text.SimpleDateFormatを使って1996.07.10 AD at 15:08:56 PDTと取得したとき、テーブル格納時はスペース含めた文字分だけとればいいのでしょうか?
0853デフォルトの名無しさんNGNG
>>852
テーブルの方、Date型で定義すれば?
0854850NGNG
>851
OS9なんですが、JAVA2をどこでダウンロードするのかわかりません。
0855デフォルトの名無しさんNGNG
>>854
ttp://developer.apple.com/java/download.html
下の方にSDKがあるからそれ使え。
0856デフォルトの名無しさんNGNG
>>854
使ったことは無いけど、MRJ(Mac OS Runtime for Java)とMRJ SDKつうのがあるらしいよ。
くわしくはこちらを。
ttp://numata.aquasky.jp/programming/java/mrj/mac_java.shtml
0857デフォルトの名無しさんNGNG
OS9のJavaはJDK1.1.8までしかない。
OSXならJDK1.4.2が使える。
0858デフォルトの名無しさんNGNG
sqlで取得したdate型のカラムを
ResultSet#getString()で取得するとどうなりますか?
正しく動作してるように見えるんですがダメですか?
0859デフォルトの名無しさんNGNG
>>858
そのまま出力するならいいけど。
ただSinmpleDateFormatとかでparseする場合、DBの設定によってフォーマットが変わるからあまりお勧めしない。
0860デフォルトの名無しさんNGNG
JAVAには符号無しの型が無いそうですが、byte型の負の数を、
short等の正数に変換するにはどう言った方法がありますでしょか。
0861デフォルトの名無しさんNGNG
>>860
byte a = -67;
int b = ( -128 ^ a ) +128 ;

0->0, 127->127、-128->128、-1->255 になる。
0862デフォルトの名無しさんNGNG
>>861
どもです。

Cのオバーフローを前提にした式をJAVAに移そうと思ったのですが、
ビットシフトを>>>でして、最終的なバイトを正にすれば良いのかと
思ったら、何か見当違いだった様なので、一から書き直す事にします・・
0863デフォルトの名無しさんNGNG
えっとJavaで音をならそうとしたんですが
DOS上でAppletviewerで起動するなら音がなるんですが
HTMLで起動してもならないんです

Javaコンソールには
NativeAudioStream: invalid file type.
NativeAudioStream: invalid file type.
ってでて何が悪いのかさっぱりです
分かる方お願いします
音源は.wavです
0864デフォルトの名無しさんNGNG
なんのライブラリ使っているのかとか環境かいてもらわんと
0865863NGNG
AudioClipってので再生させようとしています
JDK1.3.1_10です
0866デフォルトの名無しさんNGNG
エラーがでている箇所のスタックトレースくらいのせてもらわんと
0867863NGNG
えっとスタックトレースて何ですか?
あとエラーがでてる箇所がわからないんです・・・

Javaコンソールに
NativeAudioStream: invalid file type.
NativeAudioStream: invalid file type.
ってでてるだけなのでどこがエラーだかわかんないです
0868デフォルトの名無しさんNGNG
>>860
byte b = -1;
short s;

s = (short) ( 0xFF & b );


0869デフォルトの名無しさんNGNG

>>782
java.lang.ref.Reference

>>842
M$はSunの株も買っていなければ出資金なんて出していないが。ニュースをしっかりと見ろこの雑魚。


【企業】米サン、マイクロソフトと和解
http://book2.2ch.net/test/read.cgi/bizplus/1080919003/
0870デフォルトの名無しさんNGNG
>>867
VM が違うからじゃないか? 要するに
IE標準のVMなど、1.1 ベースだと .au しか鳴らせなかったはず
0871デフォルトの名無しさんNGNG
AudioClipというところからして>>870のいうとおりだな

1.3以上用ならjavasoundがあるのでそっちならwavとか自由に出せるけどね
0872863NGNG
えーとそしたら.wavならすのには
AudioClipじゃなく何を使えばいいんですか?
0873デフォルトの名無しさんNGNG
>>872
JRE入ってるのか?
0874デフォルトの名無しさんNGNG
.wavの圧縮率やビットレートを変えるにはどうすればいいのでしょう?
ググってみたりVector行ったりしても全くそれっぽいソフトが見つからず・・・。
何か今それっぽい話題なので質問させて頂きましたです。
0875863NGNG
>>873
入ってます
0876デフォルトの名無しさんNGNG
>>875
コントロールパネルのJavaアイコンをクリックして
IEが使うJavaがMS判になってないか確認してみ?
0877デフォルトの名無しさんNGNG
>>872
javasoundは調べたのか?
0878デフォルトの名無しさんNGNG
>>874
ぜんぜん関係無い。
ついでに言うと、.wavに圧縮率なんてない。
0879デフォルトの名無しさんNGNG
> wavに圧縮率なんてない。
馬鹿だw
0880  NGNG
DataSourceで質問です。下のコードで、ds2を取るところでNamingExceptionが出ることがあります。どこか悪いところはあるでしょうか?
こんなクラスを作って、
public class Hoge{
  private InitialContext ic = null;
  private DataSource ds = null;
  public DataSource hoge(String key){
     ic = new InitialContext();
     ds = (DataSource)ic.lookup(key);
  }

  public getDatasource(){
    return ds;
  }
}

public class main{
  public static void main(String [] args){
    Hoge hoge = new Hoge("foo");
    Datasource ds1 = hoge.getDatasource();
    // ds1を使って処理。

    Hoge hoge = new Hoge("foo");
    Datasource ds2 = hoge.getDatasource();
    // ds2を取るところでエラー   
    
  }

}
0881デフォルトの名無しさんNGNG
二度目の
Hoge hoge = new Hoge("foo");
がよくコンパイル通ったな
0882880NGNG
>>881
あっと、そこは入力ミスです。

Hoge ho = new Hoge("bar");

に置き換えてください。
0883デフォルトの名無しさんNGNG
MediaTrackerのwaitForAllメソッドでイメージを読み込ませるのと同じように、
オーディオファイル(.au)を読み込ませる方法はあるのでしょうか?
それとも、getAudioClipをすると自動的に読み込まれるのでしょうか?
0884貧乏紙NGNG
  public getDatasource(){
    return ds;
  }
の戻り値の型が不明。
public Object lookup(Name name)throws NamingException
例外:
NamingException - ネーミング例外が見つかった場合。
0885デフォルトの名無しさんNGNG
javax.sound.sampledのライブラリを調べなされ。
ストリームからのロードを完了させてから実体化させる「Clip」を使えばオケ。
0886デフォルトの名無しさんNGNG
>>880
InitialContextって、そんなにポコポコインスタンスつくるものなんですか?
0887880NGNG
>>886
static で持って、1回だけnewするようにしたほうがいいでしょうか。

>884
入力ミスです。
0888デフォルトの名無しさんNGNG
>>880

ソース貼るときはさあ、コピペしろよ、ボケ
0889880NGNG
>>888
長いから縮めたんだよ。ゴンダクレが!
0890デフォルトの名無しさんNGNG
>>874
昔はsox使ったりしたけどな、
今もそういうのあるんじゃない?
http://www.spies.com/Sox/
http://www.forest.impress.co.jp/soundeditor.html
0891888NGNG
>>880

縮めるなら縮めるでコンパイルくらい通るものを貼れよ、ボケが
どこがエラーなのか人に見てもらおうって気持ちが根本的に欠けている

まあ 889 みたいな物言いするくらいだから人間性も知れているがな
0892880NGNG
>>891
てめーにゃ聞いてねーよ包茎チンカス

>>all
こんな童貞は放っておいてよろしくおねがいします。
0893デフォルトの名無しさんNGNG
また鎌倉の再来か
0894デフォルトの名無しさんNGNG
>>789
Javaの特性。
C++やC#よりバグが出にくいプログラミングが可能。
型安全性も高い。コンパイラのエラーチェックが厳重。
JVMのセキュリティチェックが厳重。
低レベル部分で余計な機能を省いているためJavaから他の言語への以降、コンバートが容易。
オブジェクト指向を素早く習得できる言語。
0895デフォルトの名無しさんNGNG
何も考えずに書けるかわりに、かゆいところに手が届かない。
0896デフォルトの名無しさんNGNG
>>892
>>all って all を敵に回したことに気づけ・・・
0897デフォルトの名無しさんNGNG
>>792
これってどうよ?

private final double[] vector;

 public DoubleVector(double[] vector) {
  this.vector = (double[]) vector.clone();
 }

 public double max() {
  double max = (-1) * Double.MAX_VALUE;
  for (int i = 0; i < this.vector.length; i++) {
   max = StrictMath.max(max, this.vector[i]);
  }
 return max;
}

これにピボット操作を加えたらさらに高速化するかな
0898デフォルトの名無しさんNGNG
StrictMath.max (Math.max でも) 呼んでる時点で問題外
0899デフォルトの名無しさんNGNG
んじゃ、三項演算子だな。

 double max = (-1) * Double.MAX_VALUE;
 for (int i = 0; i < this.vector.length; i++) {
  max = max > vector[i] ? max : vector[i];
 }
 return max;


>>892
無闇に怒りを表すレスをするな。そういうレスを嫌う香具師がいると答えようとする香具師らの気力が
失われる可能性がある。すでに失っている香具師もいるみたいだが。

それより、さっさとgetDataSource()の返り血の型を指定したか?DataSourceでよさそうだが。
0900880NGNG
>>899
だからそこは入力ミスだって言ってんだろ?無能が

ここには答えられる人はいないのか。
0901デフォルトの名無しさんNGNG
>>900
お前の存在自体が入力ミス。
0902デフォルトの名無しさんNGNG
鎌倉キタ−−−−−−
0903デフォルトの名無しさんNGNG
おまえ、例のSun One Studioの使い方を聞こうとした暴れていた自称係長か?
0904デフォルトの名無しさんNGNG
>>900
悪いところを指摘したのになんでそうなるんだか。
試しに指摘されたとおりにコンパイルしれ。

んでそのときに出たエラー、例外メッセージを読んで理解し事故解決するかここにコピペしてみれ。

0905デフォルトの名無しさんNGNG
宿題の○投げではないですが、これ以上考えてもわからんから
質問します。
問題:文字列の配列を引数として受け取る、次のようなaverage()メソッド
があるとします。このメソッドでは、受け取った文字列をすべて倍精度浮動
少数点に変換し、それらの平均値を返します。配列の要素が1つもない場合
NullPointerException例外、要素が不正な形式の場合にNumberFormatException
例外が投げられます。このメッソドを宣言し、使用するプログラムを作成
しなさい。メッソドの宣言には、発生する可能性がある例外を示す
throwsステーメントを使います。
0906デフォルトの名無しさんNGNG
指針:avgのthrowsステのexceptionにNumberFormat、NullPointer
ArrayIndexOutOfBoundsなどのRuntimeExceptionのサブクラスを例外として
指定する。グロバール変数として、public static String args[]を宣言する
。avgのステは、Max+=args[i]の平均値である。ここまで、わかってるけど
main(String args[])コマンドライン引数とmainスコープ外のargs宣言の
配列のelementsの指定の仕方がわからない。
0907デフォルトの名無しさんNGNG
public class Sample03 {
static String args1[];
public static void main(String args[]) {
try{
average();
}
catch(NullPointerException e){
System.out.println(e);
}
catch(NumberFormatException e){
System.out.println(e);
}
catch(ArrayIndexOutOfBoundsException e){
System.out.println(e);
}
this.args1[]=new Stirng [args.length+1];
for(int i=0;i<args.length+1;i++)
System.out.println(args[i]);
for(int i=0;i<args.length+1;i++)
this.args[i]=args[i];
}
public static void average() throws
NullPointerException,NumberFormatException,ArrayIndexOutOfBoundsException{
double Max=0;
for(int i=0;i<args1.length+1;i++)
Max+=Double.parseDouble(args1[i]);

System.out.println(Max);
}
}
0908デフォルトの名無しさんNGNG
>>905
学校の宿題は俺にやらせて下さいver.2.0βfor Java
http://pc5.2ch.net/test/read.cgi/tech/1076054000/
0909デフォルトの名無しさんNGNG
どうせ新人研修の課題だろ。
そんな簡単のも解けないのか
0910デフォルトの名無しさんNGNG
宿題の○投げにしか見えない
0911デフォルトの名無しさんNGNG
カタカナ英語変ですよ
0912デフォルトの名無しさんNGNG
誘導が済んでいるんだから、もう相手するなって

↓次の質問ドゾー
0913デフォルトの名無しさんNGNG
やはりSunはMSに買収されたに等しい。

http://www.itmedia.co.jp/news/articles/0404/09/news017.html

> もしMicrosoftが毎年支払いをし、Sunを特許侵害で訴えなかった場合、
> 両社は2014年に、互いが保有する特許と2014年までに出願した特許
> すべてを対象とする包括的クロスライセンス契約を結ぶことになる。
> このクロスライセンス契約は、現有製品とその将来バージョンに適用される。

> 「これは事実上、両社の全特許資産を対象とするクロスライセンス契約だ」
> とボストンの法律事務所Testa Hurwitz & Thibeaultのパートナー、
> スティーブン・フランク氏は指摘する。

> フランク氏によると、両社の訴訟回避契約には二つばかり異例な点がある。
> Microsoftが毎年末、契約延長のためSunに支払いをしたいかどうか決断する
> という点と、Sunには契約延長についての発言権がなく、一方的な契約解消が
> できない点だという。

> 「Microsoftには、どちからが提訴するのを避ける権限があるが、Sunにはない。
> もしMicrosoftが支払いをしなければ、すべての賭けは帳消しになる。
> Microsoftはどうも、Sunの特許が自社のビジネスにとってどれだけ長期に
> わたって有用かを測りかねているようだ。同社には毎年末、支払いを
> ストップする権利がある」
0914デフォルトの名無しさんNGNG
>>913
【議論】Javaに関する野次馬的話題【中傷】
http://pc5.2ch.net/test/read.cgi/tech/1081242461/
Javaマカ、MSを恐れすぎ(藁 2人目
http://pc5.2ch.net/test/read.cgi/tech/1081147731/
【A級】Java厨懺悔スレ【戦犯】
http://pc5.2ch.net/test/read.cgi/tech/1081136781/
0915デフォルトの名無しさんNGNG
実際にプログラムを動かしたことが無いと、
例外の発生の仕方が分からない。
0916デフォルトの名無しさんNGNG
例外処理exception, runtime_errorの使い方
http://pc5.2ch.net/test/read.cgi/tech/1051690231/l50
ボボボーボ・ボクは例外処理が嫌いなんだな
http://pc5.2ch.net/test/read.cgi/tech/1068302657/l50

0917デフォルトの名無しさんNGNG
JAVAの開発エディターで軽くて使いやすいのって
何かありますか?
0918デフォルトの名無しさんNGNG
作成した「age.java」(仮名)というjavaファイルをコンパイルすると、
「age.class」というクラスファイルの他に「age$1.class」「age$2.class」「age$3.class」「age$4.class」
というファイルが出来るんですが、これはなんですか?
もともとあったjavaファイルをコンパイルしてもクラスファイルが1つできるだけなのに、
それを一部改変したこのファイル(「age.java」)をコンパイルするとこういう風に複数のjavaファイルができてしまうんですよ。
また、そのせいかどうかはわかりませんが、私のXP上ではこのアプレットは再生できるのですが、
知人のXP上では再生できないのです。
なぜでしょうか…

説明がうまくできなくてすみません。
どなたか分かる方いらっしゃいましたら、教えてください。
0919918NGNG
すいません、私のPCはMeです。
知人のXP上ではアプレットが動きません。
0920デフォルトの名無しさんNGNG
インターフェース
0921デフォルトの名無しさんNGNG
>>918
無名クラスのクラスファイルだね。例えばこんなコードを書くとできる。
public class AgeApplet extends Applet{
 public void init(){
  Button button = new Button("click me!");
  add(button);
  button.addActionListener(new ActionListener(){
   public void actionPerformed(ActionEvent event){
    //...
   }
  });
 }
}
くわしくはこちらをどーぞ。
ttp://www.gimlay.org/~javafaq/S016.html#S016-06

公開するときは、それらのclassファイルも一緒にサーバに置くか、一緒にjarファイル化するといいでしょう。
0922デフォルトの名無しさんNGNG
>>919
JREのインストールが入っていないのなら、一緒に入れてもらいましょう。
ベストはこれを使うことだけど、
ttp://java.sun.com/j2se/1.4/ja/docs/ja/guide/plugin/developer_guide/html_converter_more.html
面倒くさかったらこのページにアクセスしてもらってもいいかも。
ttp://www.java.com/ja/download/windows_automatic.jsp
0923880NGNG
えーと、>>889以下の発言は偽物です。

>>880の原因は、web.xmlでresourceを指定していなかったのが原因でした。
複数のDatasourceを使用するときは、使用するDatasourceを全て、web.xmlで宣言しておく必要があるようです。
(ひとつだけなら不要なのかも。)
0924デフォルトの名無しさんNGNG
>>917
catコマンドが一番軽い。
次にvi
次にEmacs
次にEclipse
0925デフォルトの名無しさんNGNG
>>924
UNIXマンセーですか。
0926デフォルトの名無しさんNGNG
>>924
catでどうやってエディットするんじゃう゛ぉけ

と、これでよいのじゃな。
0927デフォルトの名無しさんNGNG
>>926は、catで書き込めない偉大な人です。
0928デフォルトの名無しさんNGNG
>>917
Windowsならメモ帳
0929デフォルトの名無しさんNGNG
っていうかAudioClipで.wavとかって再生できるんじゃないの?
0930デフォルトの名無しさんNGNG
>>927
すいません。素で分からないんですけど…。
0931デフォルトの名無しさんNGNG
自分でどう思っているか知らんが、メル欄つまらんよ
初心者向け質問スレでなに粋がってるの?
0932デフォルトの名無しさんNGNG
あらあら
0933デフォルトの名無しさんNGNG
おやおや
0934デフォルトの名無しさんNGNG
>>930は、メル欄がつまらない偉大な人です。
0935デフォルトの名無しさんNGNG
>>930
cat <<EOF>Hello.java
0936貧乏紙NGNG
>>913
折はてっきりIBMに買収されるかと思ってた。。。
0937792NGNG
>>897>>899
なるほど〜参考になった。
試してみるね。
0938792NGNG
JavaStudioCreator-EarlyAccess版リリースage
ttp://developers.sun.com/prodtech/javatools/jscreator/index.jsp
0939デフォルトの名無しさんNGNG
>>930
結局 >930 は恥ずかしい香具師だったのか。
0940デフォルトの名無しさんNGNG
C++のプログラムをJavaに移植するとき、
たとえば、enum や struct が複数含まれているヘッダファイルを
幾つかのファイルから include しているようなC++のプログラムは、
どのようにすれば実現できますか?

(javaには includeが無いので 複数のパッケージのクラスから共通で
使いたい enum や struct をどうやればうまく取り込めれるのかが
よく分からないのです。 )
0941デフォルトの名無しさんNGNG
完全にヘッダをヘッダらしく移植したいなら
ヘッダ部分をインタフェースにするのがよかろう。

で実装部分 (ヘッダをインクルードしてる方) は
そのインタフェースを implement するようにする。

まあ普通は何もする必要はなく
単にどこかで定義しておいてそれを import するだけでいい場合が多いけど。
0942デフォルトの名無しさんNGNG
そもそもヘッダという考え方から脱却しないと
0943デフォルトの名無しさんNGNG
>>936
ああいうネタを信じるおまえも(ry

なんでおまえがこのスレで暴れとるんじゃヴォケ
ソフ開の勉強はどうしたゴルァ
マ板のJava死滅スレに帰れ。

0944デフォルトの名無しさんNGNG
substring(int s, int e)メソッドについての説明がどこもかしこも
「先頭文字を0としてs番目からe-1番目の文字列を返す」と言う風な事を書いてあるのですが、
概要的には「文字との間を基準に(先頭文字の前を0)sからeの間の文字列を返す」が正しいと言う話を聞きました。
不自然に-1されずsとeが同じ値ならば""が返る理由が説明できる後者の話は本当だと思うのです。
皆さんはどう思いますか?
0945デフォルトの名無しさんNGNG
>>944
そうだよ。で?
0946デフォルトの名無しさんNGNG
>>945
ソースはどこにあるか知りませんか?
0947デフォルトの名無しさんNGNG
JAVAで
int *a;
int b[10];
a=&b[5];
a++;
の様な事をするにはどうしたら良いんでしょか。
0948デフォルトの名無しさんNGNG
++b[5];
0949デフォルトの名無しさんNGNG
すみません、やりたいのはポインタの代入・演算です。
a=b; は出来ても、a=&b[5]、a++の様な事は出来ませんよね?
0950デフォルトの名無しさんNGNG
Java は C++ から*ポインタ演算などを除いて*設計された言語です
別の方法を探してください。
0951デフォルトの名無しさんNGNG
引導を有り難うorz
0952デフォルトの名無しさんNGNG
>>935
不粋なツッコミをすると、編集しているのはcatではなくシェルなわけだが。
0953デフォルトの名無しさんNGNG
はぁ?
編集してるのはシェルじゃないだろ?
俺が編集してるんだ!
そのくらい気づけよ。
馬鹿ですか?
0954デフォルトの名無しさんNGNG
>>930 = >>952?
恥の上塗り?
0955935NGNG
いや、>>952の言う通りなので>>930=>>952だったら雪辱。無粋だけど。
0956デフォルトの名無しさんNGNG
>>951
こんなんで我慢してくんない?

int[] b = new int[10];
int[] a = b;
a[5]++;

意味無いけど
0957デフォルトの名無しさんNGNG


Javaのオブジェクトは参照型だから>>947みたいなことができないこともない。
値型をどうにかしてクラスでラップしてから考えてみると

0958デフォルトの名無しさんNGNG
>>956
意味無いって言うかa++の意味が違う。
0959デフォルトの名無しさんNGNG
配列をIteratorに変換(ラップ?)するメソッドか何かってありますか?
0960デフォルトの名無しさんNGNG
Jakarta Commons Collections にある。

参照型の配列なら Arrays.asList(Object[]).iterator() なんかでもできないことはない。
0961デフォルトの名無しさんNGNG
Tomcat5.0.19を使っているのですが、
コンソールが文字化けしてしまいます。

解決策をご教示願います。
0962デフォルトの名無しさんNGNG
インターフェイスってのはなんのためにあるのですか?
入門書の例で「Arraysクラスのsort()メソッドは必ず
オブジェクトの配列をソートする。ただし、この場合、
オブジェクトがComparableインターフェイスを実装する
クラスに属していることが条件となる。」とかかれていたのですが
なぜ配列をソートするのにインターフェイスを実装しな
ければならないのですか?普通に配列をソートする
メソッドをかけばいいのではないでしょうか?
0963デフォルトの名無しさんNGNG
ソートするときに大小を判定しないといけない。
で、Comparableインターフェイスにある判定のメソッドを実装する。
0964962NGNG
>>963
大小を判定するメソッドをかけばComparableインターフェイスは
使う必要ないんじゃないですか?
そもそもインターフェイスを使う理由てなんなんでしょうか?
0965デフォルトの名無しさんNGNG
java以前にオブジェクト指向の基本を勉強してくれ
0966デフォルトの名無しさんNGNG
自分で開発言語作ればJAVA使う必要ないじゃないですか〜と言うがごとし。
0967デフォルトの名無しさんNGNG
>>962

実装を他人任せにするのに使える。

例えば、JDBCのResultSetやConnectionなどはインターフェース
になっています。

当然、どういうデータベースに接続するかで実装が変わりますが、
プログラムを書くときには実装を気にしなくても済みます。

Comparableについても同じようなもので、ソートなどはComparable
に対してプログラムが書かれているからです。
0968デフォルトの名無しさんNGNG
>>962
JDK の多数のクラス、例えば
String とかは最初から Comparable が実装されてるでしょ。

ユーザが作成したクラスも同じルールを適用してもらったほうが
分かりやすい。好き勝手にソートメソッドを書いてもいいけど、
Comparable を実装してルールを守ってれば誰が見ても
ソートできることが分かりやすい。

TreeMap や TreeSet でも使える。インターフェースが
あることで他のクラスから汎用的に利用できるのがメリット。
0969デフォルトの名無しさんNGNG
>>960
ありがとうございす。
標準では一旦リストに変換するしかないんですねぇ。
IteratorUtilsのほうでがんがってみます。
0970デフォルトの名無しさんNGNG
BOOL CDMApp::InitInstance()
{
char dir[MAX_PATH];
::GetModuleFileName(NULL, dir, MAX_PATH);
char* pdest = strrchr(dir, '\\');
pdest[1] = '\0';
::SetCurrentDirectory(dir);
strcat(dir, _T("XXX.ini"));
free((void*)m_pszProfileName);
m_pszProfileName = _tcsdup(dir);
m_nCmdShow = GetProfileInt(_T("Window"), _T("show"), SW_SHOWNORMAL);
//(中略)
m_pMainWnd->ShowWindow(m_nCmdShow);
//(略)
}


これはどうでしょう?
0971デフォルトの名無しさんNGNG
>>970
少なくとも Java ソースではないな。
0972デフォルトの名無しさんNGNG
JAVAの問題じゃないのかもしれませんが・・・。
現在DB2というデータベースを使ったWEBアプリを作ってます。
JavaのResultSetMetaDataを使ってテーブル名と項目名を取り出したいんですが、
なかなかそれがうまくいってくれず困ってます。
INNER JOINを複数組み合わせるときにうまくいってないようなんですが・・・。
以下のSQLの時テーブル名がうまく出てきません。(項目名しか取れない。)
SELECT テーブルA.項目A, テーブルB.項目B, テーブルC.項目C
FROM ( スキーマ.テーブルA AS テーブルA INNER JOIN スキ
ーマ.テーブルB AS テーブルB ON テーブルA.キー1 = テーブ
ルB.キー1) INNER JOIN スキーマ.テーブルC AS テーブルC ON テーブルA.
キー1=テーブルC.キー1 AND テーブルA.キー2=テーブルC.
キー2

WHEREで結合するとテーブル名も項目名もうまく取得できるんです
(下のSQLだとうまくいく)
SELECT テーブルA.項目A, テーブルB.項目B, テーブルC.項目B
FROM スキーマ.テーブルA AS テーブルA, スキーマ.テーブルB
AS テーブルB, スキーマ.テーブルC AS テーブルC
WHERE テーブルA.キー1 = テーブルB.キー1 AND テーブルA.キ
ー1 = テーブルC.キー1 AND テーブルA.キー2 = テーブルC.キ
ー2

が、今作っているアプリケーションの特性上INNERJOINのヤツが
取得できないと困る状態に陥っています。
ResultSetMetaDataって、多少複雑なSQLにすると取得できないのか
私のSQLの書き方が間違ってるのか・・・。たぶん後者なんでしょうが、理由が分かりません。
どういう理由でこうなってしまってるんでしょうか。
0973貧乏紙NGNG
>>970、971
C++のMFC
0974デフォルトの名無しさんNGNG
>今作っているアプリケーションの特性上INNERJOINのヤツが
>取得できないと困る
なんで?
0975デフォルトの名無しさんNGNG
すいません、JAVAチャットで連続書き込みをして大きなAAを貼り付けたり
するのはどうやってやるんですか?どなたか教えてください。
0976デフォルトの名無しさんNGNG
>>975
や
0977デフォルトの名無しさんNGNG
>>974
>もともと作られた際の設計がそういう感じで、
結合は全部JOINで処理するような設計になってます。
WHEREはどういえばいいのか・・・。用はWHEREはユーザーが
入力した条件しか扱わないようにしたいみたいです。
WHEREで結合させようとするとその辺が
めちゃくちゃになってしまう恐れがあります。
既に作られてるデータベースもそんな感じなんです。
0978デフォルトの名無しさんNGNG
>>922
おい、なんなんだよ、そのページにアクセスしたら

いきなり自動的にダウンロードしていますとでたぞ。
すでにインストールされているのになんで、かってにインストールしやがるのか。
JREが重複する迷惑になるんではないかと危惧するじゃないか。
0979デフォルトの名無しさんNGNG
>>978
ウィルスに何度も感染したことがあるだろう?
0980デフォルトの名無しさんNGNG
ああなんども感染した。
ブラウザはOperaを使っているのだが。
最近はnyの影響でNortonが激しく検疫する。
さらにAddWareにも感染している。メールにも毎日ウィルスもよく添付されNortonが激しく唸る。
0981デフォルトの名無しさんNGNG
すいません。
どなたか家庭教師していただけませんでしょうか?
実際には家ではありませんが。
学校から出題された課題について教えていただければ終了です。
時給2000円でいかがでしょうか。
0982デフォルトの名無しさんNGNG
>>981
>>983がやってくれるそうだ
0983デフォルトの名無しさんNGNG
それじゃ安い
0984デフォルトの名無しさんNGNG
質問です。

class TestContinue{
public static void main(String arg[]){
int j = 3;
for(int i=0;i<=5; i++){
System.out.print(i+" Block Start...");
if(i==j){
System.out.println("");
continue;
}
System.out.println(i+" Block END...");
}
System.out.println("Program END...");
}
}

↑これだと、forのブロックがcontinueされるのに、
0985デフォルトの名無しさんNGNG
class BreakRei{
public static void main(String[] args){
int aaa = 1;
while(aaa<10){
System.out.println("-------------");
if(aaa==5){
System.out.println(aaa);
System.out.println("-------------");
continue;
}
System.out.println(aaa);
aaa++;
}
System.out.println("終わり");
}
}

↑これだと、ifのブロックがcontinueされてしまい、無限ループに、はまってしまいます。

この違いは、なんで起こるのでしょうか?
0986デフォルトの名無しさんNGNG
continueの前に aaa++ 入れたら解決した。
失礼しました。
0987デフォルトの名無しさんNGNG
お尋ねします。。

java.awt.Colorのオブジェクトから、htmlの色指定の文字列表現(例えば、#FF0000)を
取り出す上手い方法は無いでしょうか。

どなたかご教授、お願いいたします。。
0988デフォルトの名無しさんNGNG
>>987
コードを書くのがいやだということでしょうか?
0989987NGNG
>>988
はい、、用意されているものがあればできるだけ使いたいと
思って^^;
このよような場合、普通はgetRed(), getGreen(), getBlue()で
16進数に変換するメソッドを自分で実装するのでしょうか。
0990デフォルトの名無しさんNGNG
>>989
>16進数に変換する
ドゾー
java.lang.Integer.toHexString
0991デフォルトの名無しさんNGNG
>>989
C#でよければ私が書いて差し上げますが?
0992デフォルトの名無しさんNGNG
>>989
java.langString java.lang.Integer#toHexString(int)
意外とシラン人多いかも。
0993デフォルトの名無しさんNGNG
>>992
シラン人はいないと断言できる。
0994デフォルトの名無しさんNGNG
>>990
ありがとうございます。
こんな具合でできました↓

  public String formatColor(Color _color){
    return "#" + Integer.toHexString(_color.getRed())
            + Integer.toHexString(_color.getGreen())
            + Integer.toHexString(_color.getBlue());
  }

>>991
なぜC#。。
0995デフォルトの名無しさんNGNG
>>994
それ、密かにバグがあるんだけど、どう思う?
0996デフォルトの名無しさんNGNG
記念カキコ v(^-^=)
0997デフォルトの名無しさんNGNG
次スレ立てれ
0998デフォルトの名無しさんNGNG
>>994
それだとRGBが15以下の場合不具合ない?

public static String formatColor(Color col)
{
String str = Integer.toHexString(col.getRGB() & 0xFFFFFF);
switch (str.length())
{
case 1 :
return "#00000" + str;
case 2 :
return "#0000" + str;
case 3 :
return "#000" + str;
case 4 :
return "#00" + str;
case 5 :
return "#0" + str;
case 6 :
return "#" + str;
default :
return null;
}
}
0999デフォルトの名無しさんNGNG
無事スレを消化いたしました。
次スレはC#をご利用ください。
1000デフォルトの名無しさんNGNG
1000get
10011001Over 1000Thread
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。