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

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

レス数が1000を超えています。これ以上書き込みはできません。
0001デフォルトの名無しさんNGNG
  _、_
( , ノ` )
  \,;  シュボッ
    (),
    |E|
  _、_      Java質問相談スレ パート13だ…
( ,_ノ` )y━・~~~

関連情報は >>2-20 あたりにあります。

Google で検索 ⇒ http://www.google.co.jp/
JavaFAQ で探す ⇒ http://www.gimlay.org/~javafaq/javafaq.html
ご要望によりじゃばこサイト ⇒ http://www.javaco.org/

JavaScriptの質問はWeb製作板へどうぞ ⇒ http://pc3.2ch.net/hp/
パソコンの基本操作に関しては、PC初心者板で質問しましょう ⇒ http://pc.2ch.net/pcqa/

『コマンドまたはファイル名が違います』>>2
『'javac' は、内部コマンドまたは外部コマンド、
 操作可能なプログラムまたはバッチ ファイルとして認識されていません。』>>2
『Exception in thread "main" java.lang.NoClassDefFoundError: Hello』>>2

Java(TM) 2 SDK インストールガイド
http://java.sun.com/j2se/1.4.1/ja/install.html

基本的にsage進行でおねがいします。また煽り厨は放置でお願いします。
0002デフォルトの名無しさんNGNG
■■■ 最近多い質問とその答え ■■■
Q. javac コマンドを実行したときに、
 『コマンドまたはファイル名が違います』や
 『'javac' は、内部コマンドまたは外部コマンド、
  操作可能なプログラムまたはバッチ ファイルとして認識されていません。』
 と表示されてコンパイルできません。
A. javac.exeへのPATHが通っていません。
 http://java.sun.com/j2se/1.4.1/ja/install-windows.html
 を良く読んで、javac.exe のあるディレクトリ(例: C:\j2sdk1.4.1_01\bin )のパスを
 環境変数PATHに追加してください。
 その後、
  Windows98/MEの場合はOSを再起動、
  Windows2000/XPの場合はコマンドプロンプトを新たに立ち上げなおしてください。
 設定したパスが正しければ、javacが使えるようになります。
 それでも同じエラーが出る場合は、設定した値が間違っています。よく見直してください。

Q. javac Hello.java でコンパイルはできるのですが、
 java Hello を実行しようとすると
 『Exception in thread "main" java.lang.NoClassDefFoundError: Hello』
 と表示されて実行できません。
A. カレントディレクトリ(.)がクラスパス(classpath)に含まれていません。
 コマンドプロンプトで、
 set CLASSPATH=%CLASSPATH%;.
 と設定する。最後の「;」と「.」を見落とさないように!
 または、
 http://www.gimlay.org/~javafaq/S004.html#S004-02
 を読んでカレントディレクトリ「.」を環境変数CLASSPATHに追加してください。

JavaFAQ 基礎知識
http://www.gimlay.org/~javafaq/S004.html
0003デフォルトの名無しさんNGNG
>>1
おツー
0004デフォルトの名無しさんNGNG
モツ
0005名無しさん@EmacsNGNG
ログ書きプロセスを非同期にしたいのですが
(本処理速度に影響しないように)jdk1.3だと
どうやるのが正しいですか?Pipeがあったけど
1.4からですよね。ServerSocketで待つくらい
しか思いつかないのでよろしくおながいします。
0006デフォルトの名無しさんNGNG
>>5
自由に非同期にすれば?
JakartaのLog4Jだと、非同期オプションついてるよ。
Streamレベルでやりたければ、BufferedOutputStream Extendsした
クラスを、1秒ごとにFlushするスレッド起動する。
これで復帰ははやくなる。あと、PrintStream,PrintWriterみたく、Synchronizedする
のを忘れずに。
0007デフォルトの名無しさんNGNG
otsu
0008デフォルトの名無しさんNGNG
>>5
本処理をするスレッドとは別にログ吐き専用スレッドを立ててやるのが定番。
メモリ上のバッファを経由して出力文字列をやり取りする。本処理に影響
しないので、書き込む都度ファイルのオープン/クローズやっても平気
(これやっとくと実行中にログファイルを消せる)。
0009デフォルトの名無しさんNGNG
>>6
ServerSocket使うと、Synchronized無しでも実装できるかな。
そうすると、その方が速い?
0010デフォルトの名無しさんNGNG
■■■ ダウンロードと API リファレンス ■■■
【Sun JDK 1.3】
http://java.sun.com/j2se/1.3/ja/download.html
http://java.sun.com/j2se/1.3/ja/docs/ja/api/index.html

【Sun JDK 1.4】
http://java.sun.com/j2se/1.4/ja/download.html
http://java.sun.com/j2se/1.4/ja/docs/ja/api/index.html

【Sun JDK 1.4.1】
http://java.sun.com/j2se/1.4.1/ja/download.html
http://java.sun.com/j2se/1.4/ja/docs/ja/api/index.html

【IBM JDK 1.1/1.3】 (要ユーザ登録)
http://www-105.ibm.com/developerworks/tools.nsf/dw/java-devkits-byname?OpenDocument&Count=100

※JDK = Java2 SDK
0011デフォルトの名無しさんNGNG
■■■ 無料の統合開発環境 ■■■
【Eclipse R2】
http://www.eclipse.org/downloads/index.php

【Sun ONE Studio 4 (Forte 4)】
http://jp.sun.com/products/software/tools/jde/try/index.html

【NetBeans v3】
http://www.netbeans.jp/dowonload.htm

【JBuilder 7 Personal】
http://www.borland.co.jp/jbuilder/jb7/download/
0012デフォルトの名無しさんNGNG
■■■ Javaの基礎と よくある質問 ■■■
Q. Javaのインストール方法、パスや環境変数の設定方法が分かりません。
A: Java(TM) 2 SDK インストールガイド
http://java.sun.com/j2se/1.4.1/ja/install.html
http://java.sun.com/j2se/1.4.1/ja/install-windows.html

Q: クラスの使い方が分かりません。
A: Java 2 プラットフォーム API 仕様
http://java.sun.com/j2se/1.4/ja/docs/ja/api/index.html

Q: SDKの仕様や、Javaの使い方、コマンドの使い方を教えて下さい。
A: Java(TM) 2 SDK ドキュメント
http://java.sun.com/j2se/1.4/ja/docs/ja/index.html

Q: Javaの言語仕様が知りたいです。
A: Java言語規定
http://www.y-adagio.com/public/standards/tr_javalang/index.htm
http://java.sun.com/docs/books/jls/second_edition/html/j.title.doc.html

Q: 「僕以外の人も、同じ疑問を持ったはず」と思えるような質問があります。
A: Java House ML Topics / Java FAQ / Java Tips
http://java-house.jp/ml/topics/
http://www.gimlay.org/~javafaq/
http://www.javaworld.com/columns/jw-tips-index.shtml

このほかのFAQ(良くある質問とその回答)はこちら↓をご覧ください。
http://www.gimlay.org/~javafaq/javafaq.html
0013デフォルトの名無しさんNGNG
■■■ 過去スレの一覧 (1) ■■■
JAVA厨房
http://piza.2ch.net/tech/kako/966/966391052.html
Java相談室
http://piza.2ch.net/tech/kako/971/971960169.html
Java相談室 Part2
http://piza.2ch.net/tech/kako/980/980858322.html
Java相談室 Part3
http://piza2.2ch.net/tech/kako/994/994150280.html
Java相談室 Part4
http://pc.2ch.net/tech/kako/997/997791189.html
Java相談室part5
http://pc.2ch.net/tech/kako/1003/10035/1003567552.html
0014デフォルトの名無しさんNGNG
■■■ 過去スレの一覧 (2) ■■■
ネタ心者歓迎!今更ながらにJavaを学ぼう!
http://piza.2ch.net/tech/kako/981/981424252.html
ネタ心者歓迎!今更ながらにJavaを学ぼう! その弐
http://pc.2ch.net/tech/kako/993/993358225.html
ネタ心者歓迎! 今更ながらにJava相談室
http://pc.2ch.net/tech/kako/1003/10035/1003569074.html
ネタ心者歓迎! 今更ながらにJava相談室 その2
http://pc.2ch.net/tech/kako/1006/10064/1006408230.html
ネタ心者歓迎!今更ながらにJava相談室 その3
http://pc.2ch.net/tech/kako/1007/10078/1007802486.html
ネタ心者歓迎!今更ながらにJava相談室 その4
http://pc.2ch.net/tech/kako/1010/10105/1010545421.html
初心者歓迎! Java相談室 その5
http://pc.2ch.net/tech/kako/1012/10129/1012968994.html
初心者歓迎! Java相談室 その6
http://pc.2ch.net/tech/kako/1015/10154/1015418174.html
初心者歓迎! Java相談室 その7
http://pc.2ch.net/tech/kako/1018/10186/1018631329.html
初心者歓迎! Java相談室 その8
http://pc.2ch.net/tech/kako/1020/10204/1020453823.html
0015デフォルトの名無しさんNGNG
■■■ 過去スレの一覧 (3) ■■■ (一部 HTML 化待ち)
【初心者・ネタ】Java質問・相談スレ【大歓迎】
http://pc.2ch.net/tech/kako/1021/10218/1021817147.html
【初心者】Java質問・相談スレ2【大歓迎】
http://pc.2ch.net/tech/kako/1023/10233/1023319551.html
【初心者】Java質問・相談スレ3【大歓迎】
http://pc.2ch.net/tech/kako/1024/10248/1024885660.html
【初心者】Java質問・相談スレ4【大歓迎】
http://pc3.2ch.net/test/read.cgi/tech/1026601774/
【初心者】Java質問・相談スレ5【大歓迎】
http://pc3.2ch.net/test/read.cgi/tech/1028096225/
【初心者】Java質問・相談スレ6【大歓迎】
http://pc3.2ch.net/test/read.cgi/tech/1029774594/
【初心者】Java質問・相談スレ6【大歓迎】(本当は7)
http://pc3.2ch.net/test/read.cgi/tech/1031397913/
【初心者】Java質問・相談スレ�F【大歓迎】(重複の7)
http://pc3.2ch.net/test/read.cgi/tech/1032944182/
【初心者】Java質問・相談スレ8【大歓迎】
http://pc3.2ch.net/test/read.cgi/tech/1032944246/
【初心者】Java質問・相談スレ9【大歓迎】
http://pc3.2ch.net/test/read.cgi/tech/1034303501/
【初心者】Java質問・相談スレ10【大歓迎】
http://pc3.2ch.net/test/read.cgi/tech/1035570359/
【初心者】Java質問・相談スレ11【大歓迎】
http://pc3.2ch.net/test/read.cgi/tech/1036142056/

上級者の方で教える技術が無い方は下記スレでダベりましょう。
初心者無視! Java相談室 その9
http://pc3.2ch.net/test/read.cgi/tech/1021555964/
0016デフォルトの名無しさんNGNG
■■■ Java関連スレいろいろ ■■■ (一部 HTML 化待ち)
【統合開発環境】
[Java]JBuilder5[Java]
http://pc3.2ch.net/test/read.cgi/tech/995044723/
JBuilder 7日本語版発売、Personal無償7月中
http://pc3.2ch.net/test/read.cgi/tech/1023102379/
【Meadow】Java開発環境(・∀・)イイ【JDEE】
http://pc3.2ch.net/test/read.cgi/tech/1017214967/
Forte for Java
http://pc3.2ch.net/test/read.cgi/tech/1016161880/
【Java/C/他】統合開発環境Eclipse GM3
http://pc3.2ch.net/test/read.cgi/tech/1033079172/

【サーバサイド】
JavaサーブレットQ&A LV2
http://pc.2ch.net/tech/kako/1012/10127/1012728608.html
サーバーサイドJAVAをまたーり語るスレ
http://pc.2ch.net/tech/kako/1004/10049/1004972840.html

【携帯】
携帯JAVAのスレッド
http://pc3.2ch.net/test/read.cgi/tech/1011977260/
iアプリ
http://pc3.2ch.net/test/read.cgi/tech/1000723476/
i‐MODEのJAVA
http://piza2.2ch.net/tech/kako/975/975428633.html
iアプリでゲーム
http://game.2ch.net/test/read.cgi/gamedev/1005042631/
0017デフォルトの名無しさんNGNG
■■■ 民間サイト ■■■
巨大なJavaリンク集
Java的リンク
http://www.geocities.co.jp/SiliconValley/6064/java_link.html

※2chではないので暴れないように。
0018デフォルトの名無しさんNGNG
■■■ 撲滅させたいかた、死滅を心配してるかた ■■■

CとJavaを比較した場合Cの良いとこと悪いとこ
http://pc.2ch.net/tech/kako/1009/10097/1009707596.html

Java撲滅委員会
http://pc.2ch.net/tech/kako/996/996848309.html

●●JAVAって死滅しちゃうの????●●
http://pc.2ch.net/tech/kako/1005/10051/1005159122.html
●●JAVAって死滅しちゃうの???? PART2●●
http://pc.2ch.net/tech/kako/1006/10060/1006053686.html
●●JAVAって死滅しちゃうの???? PART3●●
http://pc.2ch.net/tech/kako/1008/10081/1008162230.html
0019デフォルトの名無しさんNGNG
>>9はなにがしたいんだ?Socketなんか挟んだら、
SendBufとRecvBuf間の転送分だけ無駄にコスト
でそうだが・・・

ログバッファの永続化を行うだけのデーモンス
レッドをプライオリティ最低で起動しといたら
十分かと。
0020初心者NGNG
JAVAで

map[][] ={{0,0},{0,0},{0,0}};
で初期化した配列に値を入れる場合、

例えばmap[1][1]=0;のようには代入できますが、
map[][] ={{1,1},{2,2},{3,3}};
のようにまとめて入れることができません。
一度にまとめて値を代入することは可能ですか。
お願いします。

0021デフォルトの名無しさんNGNG
map[1]={1,1}とか
map={{1,1},{2,2},{3,3}}とか。

配列オブジェクトインスタンスの差し替えになるけど。
00221NGNG
>>10-18
おつかれさまです。
関連情報が >>2-20 に収まらないんじゃないかとヒヤヒヤしたっすよ。
0023デフォルトの名無しさんNGNG
>>9
ServerSocket 使ってログ吐きサーバ立ててやるつもりかもしれんが、どの道
サーバ側で全部同期取ってれば本処理側もソケットの I/O ウェイトを食らうぞ。
どうやってもこういう形に落ち着くと思う (10 スレッド程度なら全部同期
とってもさして変わらないだろうけど)。

・同期取る部分は最小限に ⇒ メモリ上のバッファを使用
・ディスクの I/O ウェイトは本処理に影響ないように ⇒ ログ出力専用スレッド
0024なんとでもNGNG
>>20
int[][] map;
map = new int[][]{{0,0},{0,0},{0,0}};
map = new int[][]{{0,0},{1,1},{2,2}};
...
002521NGNG
>>24
あそか。しもた。
初期化時以外はアレイインスタンス生成せにゃナランね。

map[0]= new int[]{1,1};

もオケということでお許しを。
0026デフォルトの名無しさんNGNG
実験したら、>>20の
map[][] ={{1,1},{2,2},{3,3}};
ができちゃったのだが、どうしよう。
0027デフォルトの名無しさんNGNG
Javaの引数はコピーが渡されているみたいですが、
実体を渡すにはどうするのでしょうか?
(C言語で言うポインタを渡す)

void setString(String msg) {
msg = "Hello";
}

これだとmsgを渡した側では書き換わってくれません。
よろしくお願いします
00281NGNG
>>27
素直に return で String 返せば良くないか?
0029デフォルトの名無しさんNGNG
>>27
ポインタみたいにしたいなら
void setString(String[] msg) {
 msg[0] = "Hello";
}
とか やる方法もあるけど…
>>28 のが良さげ。
0030デフォルトの名無しさんNGNG
Windows XPでJavaが「1年半」復活へ

マイクロソフトは6月18日、180度方向転換して、
Windows XPでのJavaネイティブサポートを復活させることを明らかにした。

同社は、夏末頃にリリース予定のWindows XPのService Pack 1(SP1)に、
独自のJavaソフトを含める予定だとしている。

しかし同社は、長期的にはWindowsからJavaを一切削除する計画だ。

http://www.zdnet.co.jp/enterprise/0206/19/02061906.html

今から勉強しても使えるようになった頃にはなくなってしまうのでしょうか?
0031デフォルトの名無しさんNGNG
>>30
1.1.4ベースなら、「復活」はむしろ悪いニュースのように聞こえる。
0032デフォルトの名無しさんNGNG
>>30
M$ は IE4.0 の頃にも同じ事を言ったことがあったよ。別に使えなくなる
わけじゃないし、IE なら Flash や Acrobat みたいなプラグイン扱いに
なるだけ。
0033デフォルトの名無しさんNGNG
>>31
1.1 ベースで作れるなら MS JVM の方がはるかに速い (特に GUI 周り)。
0034デフォルトの名無しさんNGNG
Java Web Startがデフォで入って欲しい、というのは贅沢かな。
0035デフォルトの名無しさんNGNG
正直、今更1.xベースだと非常に迷惑。
0036デフォルトの名無しさんNGNG
javaは、もうだめぽ・・?
この先、携帯で生き残るぐらいしかないのかな・・。
003735NGNG
1.1ベースの間違い。
0038デフォルトの名無しさんNGNG
何が迷惑なのですか?
003927 ◆x.foYHo1R2 NGNG
>>28 >>29
戻り値はbooleanとかにしたい場合なのですが。

boolean setString(String msg) {

if(XXXXX){
msg = "aaa";
return true;
}

return false;
}

こうゆう場合にmsgの中身を書き換えたいのですが。
Javaじゃ無理なんでしょうか?
0040デフォルトの名無しさんNGNG
>>39 こんなんどう?
boolean isClazz(Clazz c){ // Clazzは、msgを持っているクラス
 if (XXXXX){
  c.meg = "aaa";
  return true;
 }
 return false;
}
0041デフォルトの名無しさんNGNG
> 今から勉強しても使えるようになった頃にはなくなってしまうのでしょうか?

SUN や多くのベンダが注力し続けたから今の Java がある。
MS が独自の Java を作るのを止めただけで、Java が無くなることはありません。
0042デフォルトの名無しさんNGNG
>>30
半年も前のネタを持ち出して釣りかよ。
それに、普通はいまさら、MSのJavaなんか見向きもしない。
なぜなら、AppletとしてのJavaは終わっているから、
1.1系の存在意義は既にない。

.NET対応のアセンブリを生成するJavaコンパイラとかだったら
ちょっと脅威だが、CLIからJava2のライブラリは使えないだろうから
当面はほっておいてもいいしね。
0043デフォルトの名無しさんNGNG
M$にとっては、サンのJVM乗せるぐらいなら、旧い独自JVM乗せる方が有利なんでしょうな。
「長期的」ってのは、訴訟が終わるまでだな。
004439NGNG
>>40
ご教授ありがとうございます。
やはりそのやり方しかないのでしょうか・・・・(゚д゚)



0045前スレ974NGNG
関連リンク追加してくれた人に感謝。出かけてました
004630NGNG
無くならないんですね?

>>42
釣りではありません。これから仕事でjavaをやるそうなので
プロジェクト終わったあとに使用価値がなくなったらいやだな〜と不安になったものでして・・。
あんがとさんでした。
0047デフォルトの名無しさんNGNG
1.1系のJavaはまだ現役ですよ。
勘違い厨房は先走りしすぎ。
0048デフォルトの名無しさんNGNG
Windows だけでシコシコ Java やってる奴は死滅するかも知れない。
商用 Unix で RDBMS 絡めて Java やってる奴はしばらく生き残りそう。
ただコーダーレベルの人間はもう飽和状態なのよね。設計まで出来る奴は
かなり少ないけど。
0049デフォルトの名無しさんNGNG
>>44
Javaには、暗黙のポインタに対してアクセスする手段はないけど、
>>40のように、明示的なポインタを作ることはできる。
つまり、それをふまえたクラス設計が必要になると思う。
かったるいだろうが、たとえば以下のように

boolean isValid(String msg) {
if(XXXXX){
return true;
}
return false;
}
String convertString(String msg) {
return "aaa";
}

とかで、
if (isValid(msg)) convertString(msg);

するのがJavaでは一般的。
0050デフォルトの名無しさんNGNG
いまちょっと調べてみた。jview.exe ってコマンドが Sun の java.exe
みたいにコマンドラインで動くわけね。昔作った 1.1 の GUI アプリ動かして
みたらたしかに jview の方が軽いですわ。
0051 NGNG
>map={{1,1},{2,2},{3,3}}とか。

コンパイル時に「文ではありません。」というエラーが
出てしまいます。
0052デフォルトの名無しさんNGNG
>>47
では聞くけど、Applet以外でどこで使われているの?
しかも、MS Javaがらみで、、、。
うちでは、サーバサイドの開発案件がほとんどなんで、管理用の
アプリもほとんどJava2だけど、世の中広いからなぁ。
005344NGNG
>>49

>Javaには、暗黙のポインタに対してアクセスする手段はないけど、

アクセスできないのですね。
勉強になりました。
ありがとうございました。
0054初心者NGNG
>map={{1,1},{2,2},{3,3}}とか。

コンパイル時に「文ではありません。」というエラーが
出てしまいます。

いろいろ調べた結果、JAVAの文法が糞すぎて
直感的に分かりずらいことが分かりました。
やはりJAVAはやめてC++に戻ります。

本当にJAVAとかLINUXとかって糞ですね。
だからぜんぜんはやらないんですね。
0055デフォルトの名無しさんNGNG
>>54
試してみたんだが、そのエラーは出ない。
前後のコードを見せてくれる?
0056デフォルトの名無しさんNGNG
わかった。
○通る
int[][] map = {{1,1},{2,2},{3,3}};

×通らない
int[][] map;
map = {{1,1},{2,2},{3,3}};
0057デフォルトの名無しさんNGNG
1.1系がMS Javaだけだと思ってる馬鹿がいるスレはここですか?
初心者には有害だな。
0058デフォルトの名無しさんNGNG
初心者のFAQに答えなくてはいけなくなる我々にも有害だな。
0059デフォルトの名無しさんNGNG
>>54が何故Linuxを否定するのかわからん
0060デフォルトの名無しさんNGNG
すっぱいリンゴだろ。
0061デフォルトの名無しさんNGNG
また〜り いきましょ。
0062デフォルトの名無しさんNGNG
>>57
>1.1系がMS Javaだけだと思ってる馬鹿がいるスレはここですか?

どこからそんな話が出たんですか?
0063デフォルトの名無しさんNGNG
自分の頭が悪いことを認められず、使っている道具に責任転嫁している馬鹿がいるスレはここですか?
int[][] map;
map = new int[][]{{11, 12}, {21, 22}, {31, 32}};
0064デフォルトの名無しさんNGNG
>>59
たんなるこのスレへの煽りかとおもったが、
Javaとは関係のないLinuxを持ち出したということは、
過去にLinuxでも挫折したことがあるおかたなのでしょう。

FreeBSDなどではちょっと前まで1.1.8がよく使われていました。
いまは1.3もあるし先日1.4のパッチも開発されましたが。
0065デフォルトの名無しさんNGNG
BSDにしても色々あるし、
世の中にOSもまたいろいろあるので、
1.1系のJavaも私が知らないところで色々使われているのでしょう。
0066名無しさん@EmacsNGNG
>>54

そうだね。君みたいな人にはういんどうずでVC++がぴったりだね。

僕は頭が弱いんでLinuxでJavaやってますが。
0067デフォルトの名無しさんNGNG
>>54

そうだね。君みたいな人にはういんどうずでVBAがぴったりだね。

僕は頭が弱いんでLinuxでJavaやってますが。
0068デフォルトの名無しさんNGNG
> LinuxでJavaやってますが。

そりゃ頭弱すぎ。もう少し賢くなろうぜ。
0069this != 66NGNG
>>68
いやけっこうLinuxのJava快適。
うちのパソコンはWindowsとのデュアルブートだけど、
スレッドのあつかいの関係なのかWindowsより高速に感じる。

高速に感じるのは俺の気の牲かもしれないが、
少なくともWindowsと遜色なく動作するのだけは確か。
0070デフォルトの名無しさんNGNG
>>69
わかってねえなあ。帰っていいよ。
0071デフォルトの名無しさんNGNG
>>44
いまさら手続き指向ですか?W
class Clazz {
String state;
private boolean execute() {
}
public String getState() {
return state;
}
}
007244NGNG
>>71
いまいちJavaが理解できないので、すいません。
00735NGNG
>>8
>>23
どもです、非同期ログうまくいきますた。
ログ管理クラス(実行時にログファイルを
追加/削除)で内部クラス(スレッド)を走ら
せてキューを読むようにしてみますた。
00745NGNG
>>6
log4jとはちょっと用途が違ったんですが
debugとかのフラグの判断がif(debug)より
速いっていうとこだけ真似したいんで

(妄想)
初回だけフラグ判断して関数ポインタに
突っ込む、
if(debug)
this.func = debug_func;
else
this.func = normal_func;
みたいなことってjavaでできますか?
0075名無しさん@EmacsNGNG
>>74
オブジェクト指向の基礎とポリモーフィズム勉強しなさい。
0076デフォルトの名無しさんNGNG
関数ポインタはJavaにはありません。
anonymous class等で小汚いwrapperを作ってください。
C#(.NET)ならdelegateでスマートに書けるのにね。
0077名無しさん@EmacsNGNG
>>73
ちなみにそのキューはどうやって実装した?
非同期にして余計に遅くなってなきゃいいが。。。
0078名無しさん@EmacsNGNG
>>76
解ってない人は黙ってなさい
0079デフォルトの名無しさんNGNG
http://mentholm.hp.infoseek.co.jp/cgi-bin/max150/img-box/xxx
このURLは自動的にisweb内の404ページへ飛ぶんですが、
URLクラスを使って、HTTPのステータスコード302を取得するにはどうやれば
良いのでしょうか?

HttpURLConnectionオブジェクトのsetFollowRedirectsメソッドをfalseに設定しても、
ステータスコードは200を返してしまいます。
Socketクラスを使えば302を取得出来るんですが…
0080デフォルトの名無しさんNGNG
>>76
78は、やさしくああ言ってくれてるが、不愉快だから、マジレスする。
なぜ、.NET Framework 1.1でAnonymous Methodなんていうもんを導入する必要が
あるか、考えて見ろ。関連ある処理をいちいちクソ離れた場所に記述しなければ
使えない、delegateこそクソ丸出し。
0081デフォルトの名無しさんNGNG
>>80
初心者向けスレで馬鹿丸出しのflameごっこはやらんでくれ。
あとお前は知識無さ過ぎ。
008273NGNG
>>77
キューはArrayList型で入れる部分は同期で
addで、デキュー+出力をスレッドからという
感じにしますた。
0083名無しさん@EmacsNGNG
>>82
LinkedListにした方がいい。どうせシーケンシャルアクセスのみだし。

とは言え、BufferedOutputStreamのみで非同期I/Oを実装した場合と
性能差を比べた方がいい(10万回くらいループして性能を取る)。
008474NGNG
>>75
> ポリモーフィズム
ifで分岐するより速いものでしょうか?振る舞いを
変えるというより、ある文字列を出力するかしないか
程度の違いの関数を呼び分けたいというのが目的の場合
0085デフォルトの名無しさんNGNG
>>73
キューというかバッファは StringBuffer 使わないで独自に実装しろよ。
StringBuffer は一時的に内部バッファが大きくなってもあとで縮小するようには
出来てない ⇒ メモリ無駄に食うから。
008685NGNG
あ、ArrayList でやってるのか、失礼。
0087デフォルトの名無しさんNGNG
int型で√演算が肢体です。
えーお約束ですが、

「教えてください」
0088デフォルトの名無しさんNGNG
sqrt()があった。ゴメソ
0089デフォルトの名無しさんNGNG
int value = 100;
double result = Math.sqrt(value);
0090名無しさん@EmacsNGNG
interface Logger{
public void log(String message);
}
class NoLogger implements Logger{
public void log(String message){}//何もしない
}
class SimpleLogger implements Logger{
public void log (String message){
System.out.println(message);//stdoutへ出力
}
}
として、
Logger logger;
if (debug){
this.logger = new SimpleLogger();
} else {
this.logger = new NoLogger();
}
とする。
009190@EmacsNGNG
>>90は、>>84に対するレス
0092こんばんわNGNG
218.43.192.205
0093デフォルトの名無しさんNGNG
       >>92

  ∧_∧ ッパシャ ッパシャ
  (   )】
  /  /┘
 ノ ̄ゝ
009484NGNG
ようやく理解できますた。
0095デフォルトの名無しさんNGNG
delegate は良くない。
スマートじゃない。
goto文の悲劇を思い出す。
009682NGNG
>>83
BufferedOutputStreamから読み出すのが
分かりません。PipedOutputStreamなら
漏れでもファイルとか介さないで読めそう
ですが..
0097デフォルトの名無しさんNGNG
>>95
なるほろ。そういう意見があったか。
確かに汚いソースになる元凶を作りそう。
009890@EmacsNGNG
>>96

BufferedOutputStreamにそのまま書けばいい。
flushしなきゃI/Oしないから非同期になる。
(>>6を見てるよね?)
flushはバッファのサイズを超えて書き込もうとした
ときに勝手にflushされる。
009996NGNG
>>98
なるほどキュー員具のじゃなくて
出力のとこですね。
010090@EmacsNGNG
>>99
キューイングせずに、直にwriteメソッドを実行する場合と、君の作った
非同期と性能を比べてみろって言ってるんだが。
さらに言えば、log4jとも比べるべき(これが一番おすすめ)。

結論から言うと、君みたいな素人が作った物より、既存の物の方がずっと
優れてるから、早く気付けと言いたいだけ。
君はポリモーフィズムも知らない*超ド*素人だろ。LinkedListじゃなくて
ArrayList使ってるあたりからもデキューは絶亡的な性能だろうし、仕様
変更にも弱いだろう。
第一I/Oのバッファリングなんて、IO系クラスでも、JavaVMでも、OS(Unix系)
でもするんだから、さらに君の作ったクラスでキューイングするのは無駄で
しょ。
0101デフォルトの名無しさんNGNG
>>100
FileInputStream/FileOutputStream/RandomAccessFile
って int read() だけで読み込むとメチャクチャ重いけど
アレってバッファリングしてんすか?
0102デフォルトの名無しさんNGNG
>>101
してないっすね。バイト単位のreadごとにI/O発生してる。
010399NGNG
>>100
log4jが使えなかった理由は、やりたいことが
もう少し複雑だったんですね。
メッセージを実行時に指定された複数のラベルで
フィルタリングしてそれぞれの出力先をファイルや
画面に振り分けするやつです。

んでLinkedListを使わなかった理由というのは
ですね、APIリファレンスを読み違えてなければ
indexでゲットするような場合はArrayListを
使え、と書いてあったんですね、今回はキュー
だから0から読んでいくのでArrayListの方かなと。
LinkedListはIterator使ってなぞってくような
時に使うもんだと思ってましたが、今回はIterator
作成後にがんがんListの内容が変わってしまうんで
まずいと重いますた。
0104103NGNG
Iterator
s/作成後/取得後
010599NGNG
>>100
>I/Oのバッファリングなんて
はもともと気にしてなかったす。振り分け処理が
重いんで、本処理がそれを待ちたくなかっただけ。
010699NGNG
行: 100, 1000, 10000 ループ
列: new, add, get(0)&remove(0), itr.next()&itr.remove()

LinkedList:329282
434326
3925424

ArrayList:127262
1333515
070409384

indexでアクセスする場合でもリストのサイズが1000超えると
LinkedListのが全然速いという結果。Iteratorでなぞるか
うんぬんは関係なかったらしいんでスマソ.

今回のキューはあくまで非同期処理時の遅延バッファなんで
100も溜まるようだとヤバイのですが、損はなさげなので
LinkedListにしときますた。
0107スマソNGNG
LinkedList:
3 29 28 2
4 34 32 6
3 92 54 24

ArrayList:
1 27 26 2
1 33 35 15
0 70 409 384
0108コレクションの基本講座NGNG
LinkedList:内部的に次/前のエントリオブジェクトのポインタを持つオブジェクト
を次々とリンクして作るリスト。LinkedListクラス自体はそのリストの先頭へのポイ
ンタを持っていて、先頭オブジェクトの前エントリには、リスト最後尾のオブジェク
トがはいってる。
先頭、最後尾の頻繁な追加削除を行う、スタックやキューを実現するには最適。
リストの真中あたりをインデックスで取り出すのは糞遅い。
エントリごとにオブジェクトインスタンスを一個消費するので、ちょっとメモリ
消費量が多い。

ArrayList:長さが足りなくなったら自動拡張する機能を追加した、単なる配列。
削除や追加を行うと、今まであった参照の保存位置をずらす作業をそのたびに行
うので、追加削除を頻繁に行うのは不向き。インデックスで取り出すのコストは、
単なる配列に添字で取り出すのと殆ど変わらない。
メモリ消費量はコレクション中最低。配列+状態情報ちょっとだけ。
更新がなくてインデックスで参照することだけが多いコレクションに向いてる。

インデックスが数値以外の何かになる場合は、ハッシュテーブルかツリーを使う
べし。
0109デフォルトの名無しさんNGNG
>>95
>delegate は良くない。
>スマートじゃない。
>goto文の悲劇を思い出す。

これはなかなか核心をついた意見のような気が
0110デフォルトの名無しさんNGNG
>>109
理由も書いてないのに核心も無いだろ。
ただの言いがかり。 >>95=97=109か?
0111デフォルトの名無しさんNGNG
>>103
> メッセージを実行時に指定された複数のラベルで
> フィルタリングしてそれぞれの出力先をファイルや
> 画面に振り分けするやつです。

log4jでできるけどね。少なくともlog4jにラッパかませば
できる。
0112109NGNG
>>110
確かに理由は書いてないが、VJ++の独自拡張delegateに関する過去の議論を
踏まえていれば、それらを総括して端的にdelegateの欠点を言い表した言葉として
非情に簡潔で分かりやすい。背景を知らない初心者にも理解しやすいだろう。

たぶんに感覚的なものではあるけれど。ニュアンスはぴったり。
言いがかりにしか聞こえないのはセンスの違いかな。

ここで議論するつもりはないからこれで終わるけどね。
delegateに関する過去の議論に興味がある人は「delegate java sun microsoft」でGoogle
0113デフォルトの名無しさんNGNG
最近業界でVectorは遅いから業務で使うなっていうヤツが増えてますが、
気にするほど遅いものなのでしょうか?
また、その解決法や、synchronizedしてないVectorと似た機能もってクラスなどを
教えていただけないでしょうか。お願いします。
0114デフォルトの名無しさんNGNG
log4j って糞だろ。
0115デフォルトの名無しさんNGNG
>>112
delegateが良いか悪いかは好き嫌いの程度の問題だろ。
gotoはほとんどの人が悪と考え使用しないのに対してC#ではdelegateを使用する。
明らかにJava厨の発言であり、ニュアンスは全然違う。
>>95=97=109を否定してないとこを見ると自分すげーこと言ったぜモードに入ってるのかな(w
0116デフォルトの名無しさんNGNG
>>112
>踏まえていれば、それらを総括して端的にdelegateの欠点を言い表した言葉として
>非情に簡潔で分かりやすい。

さっぱりわかりませんが?
0117109NGNG
>>104
>goto
わざわざ「delegateの『欠点』」と書いているだろうに。
当然delegate/inner class双方に長所も短所もある。

> >>95=97=109を否定してないとこを見ると自分すげーこと言ったぜモードに入ってるのかな(w

そんなに否定して欲しいのか? >>109=112=117だが 95と97は別人だよ。
匿名掲示板でこんな書き込みにどれほど意味があるか知らんがね

これ以上続けたいなら↓こっちで
http://pc3.2ch.net/test/read.cgi/tech/1021555964/
暇なら遊んでやるかもしれないし、他の誰かが相手してくれるかもな
0118デフォルトの名無しさんNGNG
>>113
ArrayListがsynchronizedしないVectorだ。
0119117NGNG
>>104 じゃなくて >>114 だった
自分でカコワルイ
0120117NGNG
>>104 でなくて >>115 鬱だ・・・
0121デフォルトの名無しさんNGNG
>>117
で、どこが核心をついた意見なの? 核心はどこにあるの?
0122デフォルトの名無しさんNGNG
>>121
delegateの欠点とgoto(の欠点)が両方とも「欠点」という点で似てる。
故に核心をついた意見だ。

と言いたいんでしょ。アホだね。
0123デフォルトの名無しさんNGNG
争いはヤメレ
0124デフォルトの名無しさんNGNG
>>118
質問、便乗させてください。
Synchronizedが必要だったらやっぱりVectorつかいますよね?

いまちょうどそこら辺で悩んでたんですよ。
0125デフォルトの名無しさんNGNG
ArrayListをVectorと同等にしたいなら、
List list = Collections.synchronizedList(new ArrayList());

ただ、synchronizedListにしたからといって(=Vectorを使ったからといって)同期が
とれるわけではないから、普通は
list = new ArrayList();
〜
synchronized(list) {
 ...listへの操作...
}
0126デフォルトの名無しさんNGNG
>>125
なるほど。わかりました。
となると、私が実装したいのはこんな感じなのですが、
class A() extends Thread{
  Vector q = new Vector();
  for(;;){
    synchronized(q){
     x(buf.remove(0)) こんな感じの処理
    }
  }

  public void addQueue (arg0){ ←非同期の複数のスレッドから呼ばれるメソッド
    synchronized(q){
      buf.add(arg0);
    }
  }
}
実際にはもう少し複雑になるとは思いますが・・・。
これはVectorよりもArrayListを使う方がよいでしょうか?
私の場合にはそれほどパフォーマンスに影響は出ないと思いますが、
>>113の書き込みが気になるもので。
012795NGNG
なんとなく通りすがりで思ったことを書いただけなんだなぁ、これが。
んで、今通りすがってみたらちょっと話題になっていてびっくりしたよ。

>>95に書いたことは深い意味があるわけじゃないよ。
何となく思っただけ。
要するに俺は好きじゃない。
でも、諸事情で使うしか無いときってあるじゃない?
だからちょっと愚痴ってみただけ。
ごめんよ。

あ!
俺がこのスレに書き込むのは二度目ですよ。
これ以降は>>117でお願いします。
いや、俺は逝かないけどね。
0128デフォルトの名無しさんNGNG
>>126
余計なロックがかからないぶんArrayList使ったほうが速いよ。
あといらんお世話かもしんないけど
キューの途中のデータにアクセスする必要がなければLinkedListのほうが速い。
0129126NGNG
>>128
ありがとう。
早速LinkedList調べて使ってみまする。
ぱっとみた感じ、ほとんど変更いらなさそうなので。
0130デフォルトの名無しさんNGNG
 大学でJavaを勉強し始めて2ヶ月たらずの初心者です。
 大学の課題でSwingのJTableを使う必要があるのです
が,表示されているテーブルの表示内容を更新する方法が
分かりません。
 今やっているのはAbstractTableModelを継承した自作の
テーブルモデルで配列などからデータを取り出し,JTable
のテーブルに表示させるというプログラムなのですが,元
の配列などに入っているデータの数がユーザの何らかの
操作によって増えたときにテーブルの表示内容を更新した
いのですが,方法が分かりません。
 JTableクラスのオブジェクトのupdateメソッドを呼ぶだけで
はテーブルの行数が増えたりといった変化は起きませんよね?
どうしたらいいのでしょうか? 表示の更新はユーザが何かの
操作をしたときにできさえすれば十分です。

よろしくお願いします。
0131デフォルトの名無しさんNGNG
java半年の初心者なんだけど

コード書くの面倒だから
コードジェネレータ実装して
パターン化してXMLに記述して
動的にソース作成してから
コンパイルしてロードしたいの
JSPがサーブレットクラスになるみたいに

com.sun.tools.javac.Main
上記のクラス使えば良さそうだけど
誰か日本語のドキュメントかサンプル
どこにあるか知らないですか?

UnsupportedClassVersionErrorとか飛んでくるし
ようわからん
0132RMINGNG
RMIで画像データを送受信するには
どのようなリモートオブジェクトを使用するべきでしょうか?

0133名無しさん@EmacsNGNG
>>130
fireTableChanged

>>131
> com.sun.tools.javac.Main
> 上記のクラス使えば良さそうだけど

普通にjavacでコンパイルするのと同じようなもんだよ
com.sun.tools.javac で、tomcatとかのソースファイル検索してみ

>>132
Serializableなオブジェクト
0134デフォルトの名無しさんNGNG
appletっておもしろいですか?
0135デフォルトの名無しさんNGNG
>>131
結局XML記述がJavaコード記述以上に面倒になるだけかモナー。

自動化って、仕事が画一なものじゃなければ単にエンジン作る
コストの無駄だモナー。
0136デフォルトの名無しさんNGNG
>>134
今更必要ないです。JavaWebStartにしましょう。
0137デフォルトの名無しさんNGNG
>>131
>パターン化してXMLに記述して動的にソース作成してから
>コンパイルしてロードしたいの
Googleすると幸せになれる予感。
0138デフォルトの名無しさんNGNG
RelaxNGCC
0139デフォルトの名無しさんNGNG
WSDLという手も。
0140デフォルトの名無しさんNGNG
>>136
なんかわからんけど、すげー、サンクス!
0141130NGNG
>>133
うまくいきました。
どうもありがとうございました。
0142デフォルトの名無しさんNGNG
>>136
それってieとかmozでも動くの?
何か追加でインストールしなくても
いいならappletはもう要らないか
0143デフォルトの名無しさんNGNG
>>142
JavaWebStart は Sun 製の JRE をインスコしなきゃ動かん。
win 限定だし、ブラウザ上で動くものでもない。
IE を使っている人が JRE をインストールしてくれるとは思えないので、
JavaWebStart が活躍する場は現状ではかなり限られる。
# 社内でのアプリ配信とか…?

Sun は普及させる気があるのかな?あんまり本気が感じられないのだが。

そんなわけで、多くの人が閲覧可能という点ではまだ applet も
捨てたものではないと思う。

ただし、よほど工夫しないと誰も面白がってくれずにウザがられるだけだし、
仕事ではまず使えないので、趣味で使う人向けだけど。
0144デフォルトの名無しさんNGNG
Macと、RedHatも動くYO!!
>>142
一度見てみたら、どうかの?
0145RMINGNG
>>133 ありがとうございます
0146質問NGNG
何層もディレクトリで階層化された状態で
そのすべてのディレクトリにおけるすべてのclassファイルのみを抽出してjarファイルに圧縮したいんで
すがどうすればいいですか?
jarファイル化したときの構造はもとのディレクトリ構造と同じように
格納したいです。
何度も心みてみたもののできません。
0147デフォルトの名無しさんNGNG
Container.add(Component comp, Object constraints);
これしたあとに、constraints を取り出す方法はありまつか?
0148デフォルトの名無しさんNGNG
そういえば、ATI のグラフィックカードで Java1.4.1 を使ってると Win2k/XP
が落ちるバグ、fix したらしいね。

次のリリース (1.4.1_02) が楽しみ。
0149名無しさん@EmacsNGNG
>>146
エントリ作って、jarファイルに書くだけ
java.util.zip, java.util.jarのjavadoc読め
後、何ができないのか書け

>>147
誰が取り出すの?
0150131NGNG
お答えありがとうございます

>133
検索して書いてみたけど
UnsupportedClassVersionErrorとか飛んできて
ショボーン

>135
豆みたいな物から独自実装のDaoクラスにマッピング
するだけなので自動化できそうだったのよ
豆のセッターからdaoのセッターにXMLでマッピングしてるだけ
ゲッターもだけど

>137
幸せになれなかったのでここに書いてみたので

できないので、とりあえず寝ます

0151デフォルトの名無しさんNGNG
>>149
誰?
誰というか、add 時に与えた constraints を、後から取り出そうと思ったけど、
Component にも Container にも LayoutManager にも、getConstraints みたいな
メソッドは見つからなかった。
0152名無しさん@EmacsNGNG
>>147
つうか何故取り出す必要があるの?

>>150
例外じゃなくて、Errorなんだから、よっぽど非道い事やってんだろ。
Javaのシステムクラスパス上のクラスファイルを、VM実行時に書き替えるとか。
0153名無しさん@EmacsNGNG
>>151
そのままでは取り出せない。だから取り出せるように実装する必要がある。
0154デフォルトの名無しさんNGNG
>>153
やっぱだめか。
LayoutManager の実装クラス作って対処します。
サンクス。
0155デフォルトの名無しさんNGNG
>>154
Componentをキー、Constraintsを値にするMap一個作っとけばいいだけやん。
0156デフォルトの名無しさんNGNG
>>150
マメ-DAO間でメンバごとにいちいち入れ替えてるのか?アホだ・・・

setterとgetterの名前工夫して、リフレクションパッケージ使えば
そんな外側での苦労ナシに自動的にいれ替えられるロジックくめる
と思うけど。

そもそも入れ替える必要なんかないと思うけどねえ。
DAOがメンバ変数にマメをもつようにして、DAOにマメのsetter置いて
DAOの処理がマメの変数をいじるようにすれば、簡単じゃ。
大それたシステム組む前に、オブジェクト参照をちゃんと使いこな
せるようになれや。
0157デフォルトの名無しさんNGNG
>>156
通ぶって変な用語多用したばっかりに可読性が損なわれている。

あんたのプログラム、保守する奴かわいそうだわ。
0158デフォルトの名無しさんNGNG
ベジェ曲線上の座標を得ることは可能でしょうか?
ベジェ曲線を描き、その上をなぞる形で画像を動かしたいのですが。
0159デフォルトの名無しさんNGNG
158ですが、自分で計算式を作り、ベジェ曲線を描けば可能でしょうか?
0160デフォルトの名無しさんNGNG
>>159
自分で作るなら可能ですね。
0161158NGNG
数学しんどい(泣
0162158NGNG
あ、よく読んだら結構簡単、式は全部高校数学レベル。理論はよくわからないけど(w
0163158NGNG
できたー!
3点ベジェも4点ベジェも座標を取得することに成功!
誰かほめてください。
0164デフォルトの名無しさんNGNG
>>163
よくやった。
ここに晒せ。
0165デフォルトの名無しさんNGNG
文字列がアルファベットかどうかって
どうやるんでしたっけ?
0166158NGNG
それでは覚悟して晒すことにします。

double t;int tc;
int[] x={0,160,320,640};
int[] y={240,0,0,240};
int[] b_x=new int [40];
int[] b_y=new int [40];
for (t=0.0,tc=0; t<1.0; t=t+0.025,tc=tc+1)
{
  b_x[tc]=(int)(x[0]*(1-t)*(1-t)*(1-t) + 3*x[1]*t*(1-t)*(1-t) + 3*x[2]*t*t*(1-t) + x[3]*t*t*t);
  b_y[tc]=(int)(y[0]*(1-t)*(1-t)*(1-t) + 3*y[1]*t*(1-t)*(1-t) + 3*y[2]*t*t*(1-t) + y[3]*t*t*t);
}
g.drawPolyline(b_x,b_y,40);

ググってたらC言語だけど、ベジェ曲線を計算して
描いてるソースを見つけられたので楽勝でした。
0167デフォルトの名無しさんNGNG
158はイイヤツ。
0168デフォルトの名無しさんNGNG
native2ascii 相当のメソッドの実装をしたいのですが、
方法がわかりません。助けてください。

"システム" -> "\u30b7\u30b9\u30c6\u30e0"
0169デフォルトの名無しさんNGNG
HashtableってListにおけるVectorみたいなもんですか?
0170デフォルトの名無しさんNGNG
>>169
そんな感じ。
valueにnull放り込めないのがイライラする。
0171169NGNG
ありがとうございます。

ってことは、VectorよりArrayListの方が好まれているように、
HashtableよりHashMapを使った方がいいのれすか?
0172デフォルトの名無しさんNGNG
>>171
「HashMap クラスは Hashtable と同じと見なしてもかまいませんが、
HashMap の方は同期がとられず、null の場合もあります。」

上の通り、同期をとる必要がないならHashMap。
関係ないけど、java.util.HashSetの中を覗くとHashMap使って手抜き
している。
0173169NGNG
なるほど。よくわかりました。
ありがとうございます。
0174デフォルトの名無しさんNGNG
>>172
別に手抜きじゃねーよ
0175デフォルトの名無しさんNGNG
Appletを継承したクラス内の任意のメソッドで

Image img = getImage(getDocumentBase(), "image.jpg");
とした場合

imgはImageクラスのインスタンスなんでしょうか?

しかしImageクラスはabstractだし

newで作成したオブジェクトがインスタンスと呼べるのでしょうか?
だれか教えてください。
0176デフォルトの名無しさんNGNG
>>175
>Image img = getImage(getDocumentBase(), "image.jpg");
の場合 img は「Image のインスタンス」を指す、と言える。
実際にどのImageの実装が使われるかは Applet#getImage() の実装次第。
0177デフォルトの名無しさんNGNG
>>176
少なくともImageかそれを親に持つ派生クラスか。ってとこか。
0178デフォルトの名無しさんNGNG
FileReaderクラスでファイルを開いているとき、
別のプロセスから、そのファイルを開いて読み書きすることは
可能なのでしょうか?教えて下さい
0179デフォルトの名無しさんNGNG
>>178
少なくとも非推奨。
0180デフォルトの名無しさんNGNG
>>179
ありがとうございます。
0181デフォルトの名無しさんNGNG
>>178
FileReader で開いてるときって別プロセスから書けたっけか?
0182RMINGNG
>RMIで画像データを送受信するには
>どのようなリモートオブジェクトを使用するべきでしょうか?
という質問をした者です。実装するリモートオブジェクトは
FileOutputStream 及び FileInputStream を使って作成し、
シリアル化すればいいのでしょうか?

0183デフォルトの名無しさんNGNG
>>182
0184デフォルトの名無しさんNGNG
>>182
パラメータにSerializableなオブジェクト使えという話にみえるが。
画像ファイルをロードして作ったバイトアレイを返せばいいだけかと。
0185名無しさん@EmacsNGNG
>>182
何でFileOutputStreamなんだよ。って言うか、RMIを
本当に知ってるのか?
0186デフォルトの名無しさんNGNG
インターフェースをどう利用したら言いかがわかりません。
例えばTaxiクラスとBusクラスをつくる場合、
public interface DrivingImpl {
  pubilc abstract void accelerator();
  public abstract void brake();
  public abstract void clutch();
}
のようなインターフェースを作って確実に実装するように両クラスに
インプリメントしたりすればいいんですか?
それならインターフェースをつかわずに抽象クラスに定義してもいいような
気がしますがどのように使っていけばいいのか頭が混乱してわかりません。
手元の本には確実にプログラマがメソッドを定義するような設計・仕様書
的な意味合いが強いと書いてありますが。
0187デフォルトの名無しさんNGNG
>>186
>それならインターフェースをつかわずに抽象クラスに定義してもいいような

その通り。

でも、ファイルを保存できるSerializableとかスレッドにできるRunableとかを考えてみる。
エロ本クラスとファイルクラスと言う全然違う用途のクラスが同じ親を継承しているというのは非常に奇妙だとは思いませんか?

そして、そういうオプション的な機能のためにJavaの1本しかない継承関係を消費するのは非常にもったいない。
0188デフォルトの名無しさんNGNG
>>186
interface は、まさに仕様書と言っていい。
提供するサービスを規定するものだ。

よくある構成はこんな感じ。
・interface でメソッドを規定
 ・interface を実装する抽象クラスで共通な処理を記述
 ・抽象クラスを継承するサブクラスで個別の処理を記述
 ・使う側は interface 型の変数を宣言してインスタンスを代入する

interface の使い方に思いをはせるのは、工夫の第一歩だ。がんばれ。
でも、Implで終わる名前は interface を実装するクラスに付けるものだから気をつけれ。


0189デフォルトの名無しさんNGNG
>>150
HighStandardプロジェクトって所に、DynamicCompilerってクラスがあったんだが、
今見たら無くなってるな。
0190131NGNG
なんとか動いたっす
>>152
Mainをnewしたら飛んできました
>>156
おまえアホ?豆、及び、抽象化クラス群の実装を自動生成しようとしてるんだぞ
classどころかソースさえないのに、どうやってリフレクションするんだ?
実装の仕様が来る毎に豆作ってテストするの面倒なんだよ

こんな感じでできるみたい
import java.io.*;
// javac -classpath ./;D:\j2sdk1.4.1\lib\tools.jar jc.java // java -cp ./;D:\j2sdk1.4.1\lib\tools.jar jc
interface base { public void print(); }
public class jc {
  static final String javaclass = "public class baseImpl implements base { public void print() { System.out.println(\"ヽ(゚∀゚ )丿\"); } }";
  public static void main(String[] arg) {
    try {
      BufferedWriter bw = new BufferedWriter(new OutputStreamWriter( new FileOutputStream("./baseImpl.java") ));
      bw.write(javaclass , 0 , javaclass.length());

      Class cls = Class.forName("com.sun.tools.javac.Main");
      com.sun.tools.javac.Main javac = (com.sun.tools.javac.Main)cls.newInstance();

      String[] args = new String[] {"-g","-encoding", "Shift_JIS","-classpath", "./","-d", "./","./baseImpl.java"};
      javac.compile( args );
      cls = Class.forName("baseImpl");
      base bs = (base)cls.newInstance();

      bs.print();
    } catch( Exception e ) { e.printStackTrace(); }
  }
}
0191デフォルトの名無しさんNGNG
複数のプロセスが同一データ構造にアクセスしたときに、お互い干渉を受けないように
同一プログラムを実行させられるようにできる制御を組みたいんだけど、
どうやって書いていけばいいかな?

また、そんなことについて書いてある参考書やWebページがあったら教えて欲しい。
0192デフォルトの名無しさんNGNG
Javaで?
OS依存のコードを書くことになると思うけど...
0193191NGNG
単に排他制御が出来ればいいというだけなら、スレッドを使ったプログラミングを
すればいいのかな?
0194デフォルトの名無しさんNGNG
>>191 とりあえずAPIマニュアルから. atomicについてちゃんとかいてある。
ttp://java.sun.com/j2se/1.4/ja/docs/ja/api/java/io/File.html#createNewFile()
0195デフォルトの名無しさんNGNG
>>190
ttp://jakarta.apache.org/bcel/
0196RMINGNG
>>184
ありがとうございます。早速試してみます
>>185
訳のわからないことを書いてすいませんTT
RMIについては最近勉強を始めたところなので・・・
0197デフォルトの名無しさん NGNG
誰か居ますか?
質問してもいいですか?
0198デフォルトの名無しさんNGNG
>>197
おうよ。仕事か?
0199デフォルトの名無しさんNGNG
いいよ。
0200デフォルトの名無しさんNGNG
やっぱだめ
0201200NGNG
俺、頭悪いから、
いつもスレみてもチンプンカンプン。
0202デフォルトの名無しさんNGNG
>>197
お兄さんの胸に飛び込んできなさい!
はやくぅ〜。
0203デフォルトの名無しさんNGNG
これより >>197をよってたかって教え込むスレになりました。

超XPだな
0204デフォルトの名無しさんNGNG
>>197
早く質問しろ。
い〜や、して下さい!
0205195NGNG
>>190
 ClassGen cg = new ClassGen(
  "HelloWorld", "java.lang.Object", "<generated>"
  , Constants.ACC_PUBLIC | Constants.ACC_SUPER, null
 );
 ConstantPoolGen cp = cg.getConstantPool();
 InstructionList il = new InstructionList();
 MethodGen mg = new MethodGen(
  Constants.ACC_STATIC | Constants.ACC_PUBLIC, Type.VOID, new Type[] {new ArrayType(Type.STRING, 1)}
  , new String[] { "argv" }, "main", "HelloWorld", il, cp
 );
 InstructionFactory factory = new InstructionFactory(cg);
 il.append(factory.createFieldAccess(
  "java.lang.System", "out", new ObjectType("java.io.PrintStream"), Constants.GETSTATIC
 ));
 il.append(new PUSH(cp, "Hello, World"));
 il.append(factory.createInvoke(
  "java.io.PrintStream", "println", Type.VOID, new Type[] { Type.STRING }, Constants.INVOKEVIRTUAL
 ));
 il.append(InstructionConstants.RETURN);

 mg.setMaxStack();
 cg.addMethod(mg.getMethod());
 il.dispose();
 cg.addEmptyConstructor(Constants.ACC_PUBLIC);
0206195NGNG
>>190

cg からバイナリを生成し、クラスとしてロードし、main メソッドを呼び出す。

 ByteArrayOutputStream out = new ByteArrayOutputStream();
 try{
  cg.getJavaClass().dump(out);
  Class clazz = new ClassLoader(){
   public Class load(byte[] data){
    return defineClass(null, data, 0, data.length);
   }
  }.load(out.toByteArray());
  new JavaWrapper(clazz.getClassLoader()).runMain(clazz.getName(), new String[0]);
 } catch(Exception anException){
  anException.printStackTrace();
 }
0207131NGNG
>>195
お答えありがとうございます

com.sun.tools.javac.Main
を使わずに自分で.class作るとの?
難しすぎます・・・
JVMの仕様など知らないし

でも面白そうだしJVMの勉強になりそうなので
ちょこっと調査してまします
0208デフォルトの名無しさんNGNG
>>207
すべてのぷらっと
0209デフォルトの名無しさんNGNG
データベースから取ってきたデータを詰め込むとき、

ArrayList al1 = new ArrayList();
ArrayList al2 = new ArrayList();
while(rs.next()){
al1.add(rs.getString(0));
al2.add(rs.getString(1));
}
String[] data = new String[]{al1,al2};
.......
return data;

みたいな感じでやっているのですが、
変数の宣言が多くてなんか効率が悪いような気がします。
例えば10行10列のデータだと、
ArrayListを10個も作らないといけなくなってしまうし。

皆さんはどんな風にしてますか。
どういう風に書けば効率がいいのでしょうか。
0210初心者その1NGNG
HPの閲覧に関してなのですが、
PCから見てる人と携帯から見てる人で表示するページを
切り替えるにはどうすれば良いのですか?
JavaScriptで可能でしょうか?
0211デフォルトの名無しさんNGNG
>>209
なぜ、ビーンを使わないの?
というか、1レコード1オブジェクトにするとすっきりすると思うよ。

ArrayList records = new ArrayList();
while(rs.next()){
XXXRecord rec = new XXXRecord(rs.getString(0),rs.getString(1));
records.add(rec);
}
return records;

0212デフォルトの名無しさんNGNG
>>209

>String[] data = new String[]{al1,al2};
これってコンパイル通るの?
というか、普通「行」方向にArrayList使いません?

列数はともかく、行数を知る術がない(知りません)ので、最低
一つはArrayList()が必要だと思います(たぶん)。
自分は下のような方法を良く取ります。

int columSize = rs.getMetadata().getColumCount();
ArrayList ary = new ArrayList();
while( rs.next() ) {
String[] row = new String[columSize];
for(int i = 0; i < columSize; i++) {
row[i] = rs.getString(i);
}
ary.add(row);
}
String[][] data = (String[][])ary.toArray(new String[0][]);
return data;
0213デフォルトの名無しさんNGNG
>>210
JavaScriptでも可能だが、
ここはJavaだぜ!混同してねぇか?

サーバーならHTTPのUserAgent見て判断なされよ。
てか、それだったら言語関係ないだろ。
質問するスレ間違ってねぇか?
ネットワークプログラミング相談室 Port4で聞いてこいや!
0214209NGNG
どうもです。
今までずっと独学でやってきているので、
変なことやってても矯正してくれる人がいないんですな。

1レコード1オブジェクトですか。勉強になりました。
0215デフォルトの名無しさんNGNG
>>213
ちがうよ!>>210はきっとJSP使ってしたいんだよ!
0216デフォルトの名無しさんNGNG
>>210
携帯でJavaScriptは動かんだろ・・・
213と同じだが
String userAgent = request.getHeader("User-Agent");
で。
0217デフォルトの名無しさんNGNG
画像を読み込むときに、作成したクラスの下にあるフォルダから
読み込むにはどうすればいいんですか?¥を使ってみたらエラーが出ました。
0218デフォルトの名無しさんNGNG
>>217
ギャー¥一個しかつけてなかった。
0219デフォルトの名無しさんNGNG
String str = "てすと文字列";

を、実行環境によらず Shift_JIS(あるいは EUC-JP) のファイルで出力するには
どうすればよいのでしょうか?
0220デフォルトの名無しさんNGNG
>>219
java.io.OutputStreamWriter ですな
0221デフォルトの名無しさんNGNG
Hashtableのリファレンスを見ると、put(Object key, Object value); とか書いてありますが、
格納するモノの型が不定なので、取り出すときに困る・・・そこで型を明示したものを
一緒に格納しようと考えています。
(つまり、intを入れるときは"int"という文字列を一緒に入れておき、出すときに判別する)

こういうのってアリですか?それとも豪快に勘違いしてます?(´・ω・`)
アリだとしたら、引数はObjectになってますが、複数の違う型を入れることってできるんでしょうか?
0222デフォルトの名無しさんNGNG
staticなクラスHogeがgetHoge()というメソッドを持っている場合、
直接、
Hoge.getHoge();
と書くのと、インスタンスを作って
Hoge hoge = new Hoge();
hoge.getHoge();
とするのは、何が違うのですか?
どのように使い分けられているのでしょうか。
0223RMINGNG
>>184
仰るとおりバイトアレイを返すだけでできました。
ありがとうございました
0224デフォルトの名無しさんNGNG
>>221
>intを入れるときは"int"という文字列を一緒に入れておき、出すときに判別する

キーに含めるってこと?ならいいんじゃない。

>引数はObjectになってますが、複数の違う型を入れることってできるんでしょうか?

int型は入らんと思うが。
参照型のデータならなんでも入ると思うけど。
hash.put("Integer",new Integer(5));
hash.put("String","あああ");
ってことでしょ?
0225219NGNG
>>220

う〜ん。UNIX 環境だと「�@」が文字化けしてしまうのはしょうがないところなのかな。
パラメータは色々試したのですが、何かいい手はないでしょうか?


String str = "てすと文字列\uff5e\u2460";

File file = new File(filename);
FileOutputStream fos = new FileOutputStream(file);

ByteArrayInputStream ins = new ByteArrayInputStream(str.getBytes());

InputStreamReader in = new InputStreamReader(ins, "JISAutoDetect");

OutputStreamWriter out = new OutputStreamWriter(fos, "MS932");

int c;
while ((c = in.read()) != -1) {
out.write(c);
}

out.close();

0226デフォルトの名無しさんNGNG
>>224
Keyに含めるんじゃないです。ユーザが入れたデータをKeyとValueに
関連づけて処理するんですが、Keyの名前(これは文字列)とValueに入るデータの
型が不定なので、Valueを入手してから中身の型を判別できないかなと思ったんです。

put時はString→Objectで入れますが、逆はどうしようってことですね。
0227デフォルトの名無しさんNGNG
文字列処理についての質問です
StringからindexOfとsubstringを用いてある部分を取り除きたいのですが、
その部分に空白が含まれていた場合その空白を取り除きたいです。
StringTokenizerを使ってトークンに分解し、連結するしか方法が浮かぶのですが、
他に良い方法はないのでしょうか
0228227NGNG
連結するしか方法が浮かぶのですが ×
連結する方法が浮かぶのですが ○

すいません
0229デフォルトの名無しさんNGNG
>>226
instanceof で調べれば?
0230デフォルトの名無しさんNGNG
>>227
s = s.replaceAll("\\s+", "");
0231デフォルトの名無しさんNGNG
>>230
正規表現?って1.4のみですね。
0232デフォルトの名無しさんNGNG
oro(Jakarta) もありかな。
0233デフォルトの名無しさんNGNG
>>229
うぁっ、そんなのがあったとは。 Σ(・ω・ノ)ノ
サンクス、試してみます。
0234名無しさん@EmacsNGNG
>>226
要件ってどんな?なんかえらいマズーな
設計のにほひ..
0235名無しさん@EmacsNGNG
>>227
replaceのcharで空白飛ばせばいいんでないの
0236座標などについてNGNG
今チャットを作ってるんですが文字の転送はできたんです。
final BufferedWriter out3 = new BufferedWriter(new OutputStreamWriter(out2.getOutputStream()));
try
     {
out3.write(f3.getText()+"\n");
out3.flush();
こんな感じで。
それで次に、自分の描いた絵を相手に送れるように作りたいのですが、座標を送ったら
いいと思うんですけど座標とかを送るメソッドとかは何を使ったらいいんでしょうか?
0237227NGNG
>>230,231,235
ありがとうございます。
replaceAll を利用しました。
1.4使ってるので使えました。
ついでにreplaceも使ってみます。
0238デフォルトの名無しさんNGNG
すみません。既出だと思いますが教えて下さい。
Win98+JBuilder5+J2SE1.4.1で作成したクラス(画面)を
linux[Redhat7.3] + J2SE1.4.1で実行してのですが
文字化けが発生しました。
いくつかのWEBサイトで、渡辺フォント?を入れろ(設定しろ)と書いてあったのですが
なぜこのフォントを入れないと日本語が表示出来ないのでしょうか?
またこのフォントを入れなくても表示できる方法はあるのでしょうか?
0239デフォルトの名無しさんNGNG
>>238
論理フォント名使っている?
DialogとかMonospacedとか。
0240238NGNG
>239
論理フォント名・・・?
Linux(UNIX)も今回始めて触った程度なので
スミマセン、何の事を言われているか分かりません。
Linuxは別人がインストールしたのでどう言う設定になっているか分かりませんが、
多分、手順に沿って標準インストールだけしてあると思います。
先に書き忘れましたが、WEBサイト参考にして渡辺フォント?を設定したら、
確かに日本語表示出来るようになりました。
けど、なぜそれでOKなのか知りたかっただけです。
0241126NGNG
>>236
どんな絵?
もしかして、ベクタグラフィック?
読んでるとそんな気がしたものだから。
0242デフォルトの名無しさんNGNG
>>236
何か仕様に則って作っているの?
もし、そうじゃなくて独自のチャットシステムを作っているなら、
作り急がずに、プロトコルの設計からはじめた方がいいよ。
たとえば、図形の座標を送って描画させるにしても、
別な通信路を用意するのか、同じ通信路でやるのか、
同じ通信路(ここではBufferedWriter)を使う場合は、
通常の会話と図形情報を区別する必要があるよね。
例えば、先頭の文字が'#'だったら、会話ではなく
図形コマンドとする、などの決まりを作ることを、
プロトコルの設計というのだけど、このあたりを
うまく考えておかないと、機能を増やしていった時に
苦しくなるよ。
0243デフォルトの名無しさんNGNG
int型とdouble型を組み合わせて計算をする場合に
自動的にint型がdouble型に変換され計算されますが。
コレには型の優先順位みたいなものがあるのですか??
0244デフォルトの名無しさんNGNG
double型って何て読むの??
0245デフォルトの名無しさんNGNG
>>243
これを読みましょう。
http://www.gimlay.org/~javafaq/S014.html#S014-02

>>244
倍精度浮動小数点数
0246デフォルトの名無しさんNGNG
>>243
コレでもいいよ。
http://www.y-adagio.com/public/standards/tr_javalang/5.doc.htm#25222
0247デフォルトの名無しさんNGNG
Javaで作ったJavaアプリケーションってどのような形で配布するのですか?
たとえばVBならインストールプログラムを作成して、それを配布すれば
EXEとランタイムがインストールされてVBが入ってなくても実行できますよね。
Javaの場合はどうするのかなぁと思いまして。
誰か教えてください。
0248デフォルトの名無しさんNGNG
>>247
まず検索しろ。

>>247 も FAQ に加えたほうが良いかも。
0249デフォルトの名無しさんNGNG
>>245
>>246
なんか難しすぎてよくわからないのですが・・・。
0250デフォルトの名無しさんNGNG
>>247
jar使ってマニフェストファイルもまとめて圧縮せよ。
ついでに署名もいれるとよし。
0251デフォルトの名無しさんNGNG
>>249
そんなんで難しいなんて甘えすぎ、と書かれても怒るな
そこらへんの簡単な本を読めばよし
検索しろ
0252デフォルトの名無しさんNGNG
>>251
いま入門書を片手にレスしているのですが
「自動的にint型がdouble型に変換され計算されます。」
としか書かれてないのです(´・ω・`)
0253デフォルトの名無しさんNGNG
JAVAだけじゃ転職できませんか?
0254デフォルトの名無しさんNGNG
>>252
intのみでdoubleに変換したくなければ

int i = 10;
double d = 20.2d;

int a = i * (int)d;
0255247NGNG
使用するクラス郡をjarやzipに圧縮することは分かりました。
でも実行環境にJVMがない場合JREをインストールしなくちゃいけないんですよね?
結構面倒?ですね。配布ウィザードなんてあったっけ?
0256デフォルトの名無しさんNGNG
>>254
>int a = i * (int)d;
それだったら
int d =(int)20.2;
で良いような気もする。
0257デフォルトの名無しさんNGNG
>>254
キャストっていうヤシですね。
そこを学んでいる時に自動的に変換される
ってあるケドどの型に変換されるとかの
法則はあるのかって考えたのですよ。
0258デフォルトの名無しさんNGNG
>>254
「 20.2d」のdはなぜついてるのですか??
0259デフォルトの名無しさんNGNG
>>255
Appletならたいていのブラウザは自動downloadで勝手にインストールをやってくれる。

WinならJVMがデフォルトで入っていることがある。
XPにも入っていたかどうかは忘れた。
だがそのJVMはM$独自仕様のMVM(Microsoft VM)でセキュリティ弱し。
0260デフォルトの名無しさんNGNG
>>257
恒等変換(同じ型どうしの変換)と
拡大変換(int->longみたいに大きい型への変換)は キャスト不要。
0261デフォルトの名無しさんNGNG
>>259
MVM ってのは初耳。 普通 MSJVM って書くような。
0262デフォルトの名無しさんNGNG
>>258
doubleならd付けた方がfloatと区別しやすいから、というのが理由だと思った。つけなくてもいい。
C/C++にもにたようなものがある。
0263デフォルトの名無しさんNGNG
>>260
メモリが大きい方に変換されるってことなんですか?

0264デフォルトの名無しさんNGNG
>>263
>メモリが大きい
???
0265デフォルトの名無しさんNGNG
>>262
20.2dとdが付いていてもコンパイラは20.2と読んで
くれるのですか?
0266デフォルトの名無しさんNGNG
tst
0267デフォルトの名無しさんNGNG
>>264
え〜型は大きい方(ビット数?)ってことです(*゚ー゚)
0268デフォルトの名無しさんNGNG
>>263
32bitsと64bitsの違いだろ。本に書いてあるはず。
ちゃんと読みましょう。

>>265
それくらい自分でコンパイルして確かめてくれ。
doubleならdをつけるくせ付けた方が無難。
dがないとfloatとみなされると思った。
0269デフォルトの名無しさんNGNG
>>267
だったら却下。
int -> float, long -> double, は同じビット数でも拡大変換。
long -> float に至っては ビット数減ってるのに拡大変換。

プリミティブ型の拡大変換は
>byte から short,int,long,float,又は double への変換。
>short から int,long,float,又は double への変換。
>char から int,long,float,又は double への変換。
>int から long,float,又は double への変換。
>long から float 又は double への変換。
>float から double への変換。
って
http://www.y-adagio.com/public/standards/tr_javalang/5.doc.htm#25222
に書いてあるだろが。ちゃんと読めよ…
0270デフォルトの名無しさんNGNG
>>268
http://www.y-adagio.com/public/standards/tr_javalang/3.doc.htm#230798
>浮動小数点リテラルは,接尾語にASCII文字の F 又は f が使われている場合は, 型 float とする。
>そうでないときには,型 double とし,ASCII文字 D 又は d を接尾語として使ってもよいが,オプションとする。
だそうです。
0271デフォルトの名無しさんNGNG
>>270
あ、逆だったね。でもおれはつねにdとかfつける癖つけてるんで全然きにしてませんー。
0272デフォルトの名無しさんNGNG
Sun、格好悪い。
ttp://www.zdnet.co.jp/news/0212/04/nebt_07.html
0273デフォルトの名無しさんNGNG
>>271
確信の無い事(実はウソ)を教えたって事に関しては
気にしたほうが良いと思われ…
0274デフォルトの名無しさん NGNG
ゾーン10進(符号付)の値を文字型に変換したいんですが、どうすればよいですか?
例えばマイナス123ならば、−123と出力。プラス456ならば、456と出力させたいのです。
0275デフォルトの名無しさんNGNG
String#valueOf()
0276デフォルトの名無しさんNGNG
275さん、ありがとうございます。
もう少し詳しく書くと、
オラクルのvarchar2で定義してある列:金額に、ゾーン10進(符号付)の値が入っています。
これを数値チェックしたいのですが、どうすれば良いですか?
また、−123とか789のように文字型で出力させたいのです。(JAVA)
どなたか、お知恵を!m(__)m
0277デフォルトの名無しさんNGNG
>>272
M$も格好悪い。というかどっちもどっちだ。
スコットマクネリとビルゲイツは仲が悪い。Javaというすばらしい技術を持ちながら、
何を考えているのか、毒舌好きのスコットは短気でM$に対する強烈な憎しみばかりいだいている。
それに比べLinuxのリーナストーバルズは平和って気で攻撃的でなく、憎しみも無い。彼は。ただOSを作ることを楽しんでいるという。

>>276
そのあたりは苦手(というか控えめにしたい)な分野なので、知恵を貸せませんが、ゾーン10進なんて(2進な)難しいもの使わないでStringや数値型そのままでINSERTしておいたほうおが楽でない?
速度とディスク容量節約重視のためそれは許されてない?
0278デフォルトの名無しさんNGNG
つかもうSunはJavaから手を引いたほうがいいと思う
0279デフォルトの名無しさんNGNG
>>276
Stringに基数変換できるメソッドとか使えない?
Stringをそれで変換してビット演算子でどうにかならん?
ゾーン10進の値というのは0と1だけの値で入っているんかい?
それとも10進、16進?
そこら辺はわしは馬鹿なのでゾーンのこともう忘れてしもた。2進数8文字で表現するやつか?
0280デフォルトの名無しさんNGNG
>>278
それはすでにM$がやってるだろ。
というより、その理由は?
0281デフォルトの名無しさんNGNG
>>278
ところで、推測かもしれないが、投稿しまくっているあんたも暇だな。人の事いえないけど。もしかして、他のスレッドでJavaの質問を繰り返していたか?
0282デフォルトの名無しさんNGNG
まあIBMがひきとった方がJavaのためにはよさそうだがな
0283デフォルトの名無しさんNGNG
>>282
国連がISO標準として引き取るのが理想だな。
ISOに提出しようとしたが、ヨーロッパなど一部の国はISO標準化を認めたが、アメリカが徹底的に反発したらしい。
それでJavaのISO標準化は駄目になったとさ。背後にM$から賄賂で流れていなかったことを祈る。

その後ECMAに提出しようとしたが、M$が邪魔をしてきた。
M$ が Visual J++ を作り出したたため、 Sun はECMAへの提出を取りやめた。理由はJavaの進化が途絶えるからだそうだ。
VJ++によってプラットフォーム非依存性が約束されなくなることを恐れたのだろう。

M$はなんとかしてJavaを自分のものにしたかった。が、VJ++で裁判にかけられものにできなかった。
そこで仕方が無くC#を作った。
0284デフォルトの名無しさんNGNG
>>276
ゾーン10進って扱ったことがないけど、だいたい以下のような感じかな。
たぶん、ResultSetからgetBytes()でバイト列を取り出せると思うから、
それを渡してみて。

public class ZonedBCD {
public static final int ZONE = 0xF0;
public static final int PLUS = 0xC0;
public static final int MINUS = 0xD0;
public static final int BCD = 0x0F;

private byte[] bcd;

public ZonedBCD(byte[] bytes) {
this.bcd = bytes;
}

public String toString() {
StringBuffer buf = new StringBuffer();
int len = bcd.length;
int sign = ZONE & bcd[len - 1];
if (sign == MINUS) buf.append("-");
for (int i = 0; i < bcd.length; i++) buf.append(BCD & bcd[i]);
return buf.toString();
}
}
0285デフォルトの名無しさんNGNG
クラス構造って何ですか?
0286デフォルトの名無しさんNGNG
>>285
package内のクラスの集まりじゃねえの? クラス図とか?
一口にクラス構造といってもいろいろありそうだが。

http://e-words.jp/ これ使っていろいろ調べろ
質問するならもっと具体的な情報を提供しような。
いくら初心者大歓迎といってもこれはひどすぎる。
メーリングリストでこんな質問の仕方したら教えてクンとして非難されるぞ。
おそらく本を読みながら質問したんだろうけど、本を隅から隅まで読んでもわからなかった質問するのが理想だ。

2chだからどうでもいいだろ、2chだったらほうっておけ、といわれればそれまでだが。
0287238,240NGNG
なぜ渡辺フォント入れないと日本語表示出来ないのか、誰か教えてくれませんか?
0288デフォルトの名無しさんNGNG
>>287
さぁ、font.properties でも調べてみれば?
0289デフォルトの名無しさんNGNG
サーバにアップロードしたファイルのパーミッションを変更したいのですが、
どうすれば良いのでしょうか?
0290デフォルトの名無しさんNGNG
リフレクションいついて質問です。
private Stringのフィールドに値を入れて、
geterで取り出すとnullになってしまいます。
参照が違ってしまっているからなのかななどどかんがえてみましたが、
頭がこんがらがって分かりません。
可能な方法ご存知でしょうか?
0291デフォルトの名無しさんNGNG
public final class AccessSupplier {
  public static Object getField(Object obj.String fieldName) {
    try {
      Field field = obj.class().getDeclaredField(fieldName) {
      field.setAccessible(true);
      return field.get(obj);
    } catch(Exception e) {
    }
  }
}

public class Data {
  private String a = null;
  public String getA() {
    return a;
  }
}

public class Main {
  public void execute() {
    try {
      Data data = new Data();
      //フィールドを取得
      String a = (String)AccessSupplier.getField(data,"a");
      //フィールドに値を設定
      a = "a";
      //↓nullが帰ってくる
      System.out.println(data.getA());
    } catch(Exception e) {
    }
  }
}
0292デフォルトの名無しさんNGNG
あと引数がないメソッドの呼び出しのばあい、
parametaTypesには何をいれて置けばよいのでしょうか?
↓java.lang.Class
public Method getDeclaredMethod(String name,
Class[] parameterTypes)
throws NoSuchMethodException,
SecurityException
0293デフォルトの名無しさんNGNG
>>291
data.a に値をセットしてないから
null が返るのは当然といえば当然なわけだが…

>>292
null もしくは new Class[0] で良かったような…
0294デフォルトの名無しさんNGNG
>>291
>      //フィールドに値を設定
>      a = "a";
…
0295126NGNG
ちょっと気になったんだけど、
メソッドの引数を加工するのは良くないよね?
例えば、
public void a(byte[] data){
 data[0] = 0x80;
 ...処理
}
こんな感じなんだけど
やっぱりいったんテンポラリかなんかつくって、そっちを操作するのが
基本だよねぇ・・・・。
Javaの作法が今ひとつわからないもんで、教えてください。
0296デフォルトの名無しさんNGNG
293
292が自己解決しました。
Class[] parameterTypes =null;
として渡せばOKでした
0297デフォルトの名無しさんNGNG
>>293
なんとなく分かってきたかも。
セッターを使わないとだめなんでしょうかね
0298デフォルトの名無しさんNGNG
SAXParseException : the root element is required in well-formed document
っていう例外がでるんですが、これってXML文書本体に誤りがあるってことですよね?
でもXML文書本体もスキーマも正しいはずなんですが、どうしてなんでしょうか?
誰かおねがい!!
0299デフォルトの名無しさんNGNG
>>298
本当に正しいならそんな例外は飛ばない
0300デフォルトの名無しさんNGNG
>>298
いや、ねんのためにブラウザから閲覧したがエラーでなかったし、
DTDとの整合性を調べるプログラムも書いてチェックしたが問題なかったのよ。
初心者だからサッパリわからんくて困ってます
0301デフォルトの名無しさんNGNG
>>300
肝心のXMLも載せないで誰がどうやって答えんの?
0302デフォルトの名無しさんNGNG
yahooのチャットをjavaアプレットで使いたいのですが
java.lang,NoClassDefFoundError=com/yahoo/yacs/lYAEvents
というメッセージが出て使えません。以前は問題なかったのですが・・
プログラムのことは分かりませんがエラーにjavaとあったのでここに
きてみました。お願いします。
0303デフォルトの名無しさんNGNG
JVMのヒープ領域がどれくらい空いているかを、アプリから知る方法ってないですかね?
それから、マニフェストファイルでjava -Xmxみたいな指定はできます?ヒープサイズを指定したいのですが。
よろしく〜。
0304デフォルトの名無しさんNGNG
>>303
>JVMのヒープ領域がどれくらい空いているかを
java.lang.Runtime の freeMemory とか totalMemory とか maxMemory とか。

>マニフェストファイル
マニュアルちゃんと読め。

>よろしく〜。
すげームカツク
0305デフォルトの名無しさんNGNG
>>303です。
>>java.lang.Runtime の freeMemory とか totalMemory とか maxMemory とか。
なるほど、調べてみます。

>>すげームカツク
2ちゃん的反応ありがとう(^^;
0306デフォルトの名無しさんNGNG
配列オブジェクトを作るとlengthってオブジェクト変数が使えますが、
オブジェクト変数の一覧ってマニュアルのどこに載ってるのでしょうか?
探してみたんですが
http://java.sun.com/j2se/1.4/ja/docs/ja/api/java/lang/Object.html
には載ってないし。
0307デフォルトの名無しさんNGNG
>>306
「オブジェクト変数」って何ですか? 初めて聞きました。
フィールドを意図して言ってるなら、Objectクラス自体には
フィールドは存在してませんよ。
0308306NGNG
配列オブジェクトのクラスにはフィールドが存在しているということでしょうか?
どこで見られるのですか?
0309デフォルトの名無しさんNGNG
たとえば、TCPでリクエストを送信するクラスがあるとします。
このクラスの中でソケットを作るとき、呼び出されるたびに Socket sock = new Socket していたら、
実体は呼び出された回数だけ別モノが生成されてしまうんですか?

初回呼び出されたらnewしてソケットを作り、次回以降呼び出されたらさっき作ったのを再利用
させたいんですが、このsocketは自分が既に作ったか?というのは調べられるんでしょうか?
0310デフォルトの名無しさんNGNG
>>308
配列は特別なオブジェクトなので…
たぶんAPIドキュメントには書いてないと思う。
言語仕様見るとかしてくれ。
http://www.y-adagio.com/public/standards/tr_javalang/10.doc.htm#11364

ちなみに reflection で配列にアクセスする場合は
java.lang.reflect.Array を使用する。
0311306NGNG
>>310
ありがとうです
0312デフォルトの名無しさんNGNG
>>303です。
JVMのヒープサイズはわかったのですが、実行された環境のメモリの大きさを知ることはできないですか?つまり、JVMの最大ヒープサイズではなくて、OSが管理しているメモリの利用可能な最大数というか。
メモリの限界までヒープを取りたいのですが、何か方法があったら教えてくださいm(_ _)m

0313デフォルトの名無しさんNGNG
swingでの画像表示方法を教えてください

public void paint(Graphics g)とかじゃダメですよね?
0314デフォルトの名無しさんNGNG
>>313
ラベル。
0315デフォルトの名無しさんNGNG
yymmddの日付チェック方法教えれ。
いや教えてくださいませ。
0316デフォルトの名無しさんNGNG
>>315
>日付チェック
はい?
0317デフォルトの名無しさんNGNG
入力されたyymmddが妥当かチェックするのでございます。
0318デフォルトの名無しさんNGNG
>>317
http://java.sun.com/j2se/1.3/ja/docs/ja/api/java/util/Calendar.html

で、ちゃんと例外がでるか?とか。
0319名無しさん@EmacsNGNG
>>312
> JVMの最大ヒープサイズではなくて、OSが管理しているメモリの利用可能な最大数というか

無理。プログラム中で知ったところで、-XmxはJVM起動中には変更できない。

> メモリの限界までヒープを取りたいのですが、何か方法があったら教えてくださいm(_ _)m

スタックサイズ×スレッド数と、PermSizeと、ヒープサイズ足せばいいだろ。

0320名無しさん@EmacsNGNG
>>313
Javaインストールフォルダ\demo\jfc\SimpleExample\src\SimpleExample.java
を嫁
0321320@EmacsNGNG
失礼。画像だったか。
じゃぁ、SwingSet2でも見てみ。
java -jar JAVA_HOME/demo/jfc/SwingSet2/SwingSet2.jar
0322デフォルトの名無しさんNGNG
>>309
ローカル変数じゃなくてインスタンス変数とかクラス変数にSocketの参照格納しとけ。
次回以降nullじゃなければ作成済みだ。
0323デフォルトの名無しさんNGNG
>>322
シングルトン?
0324デフォルトの名無しさんNGNG
>>323
いつ切れるか分からなく、1度切れたら再利用不可能なSocketインスタンスに
シングル豚を適用するバカがいたら見てみたい。

最近どこもかしこもシングル豚なプログラムを散見するが、オマエラ本当にその
インスタンスはJVM起動中にゼッタイに一個しか必要ないのか?と小一時間問い
詰めたくなるようなプログラムも多い。ちゃんと考えろ、生兵法のアホどもが!
0325323NGNG
>>324

俺が怒られたってことはじゃあ>>322はシングルトンじゃないの?

まぁ。ソケットの使い回しって例えコネクションが無くてもあまり気持ちの良いもんではないね。
と言うか、ソケットの再利用ってできたっけ。。。
0326デフォルトの名無しさんNGNG
ファイルのサイズの取り方おせーて。お願いします。
0327デフォルトの名無しさんNGNG
いわゆるふつうのunixだとできないねえ
0328デフォルトの名無しさんNGNG
シングルトンをグローバル変数の代わりに使うのがナウい
0329デフォルトの名無しさんNGNG
>>326
Fileオブジェクトに必要以上に固執すると良いよ。

>>328
教科書通りですね。
0330苦労人NGNG
誰でもどこからでも参照可能で、参照の管理が必要なくて便利だからとい
うアホな理由で安易にシングル豚パターンを使うのはやめれ。
グローバル変数マンセーバカCOBOLER OR BASICERと発想が同レベルだぞ。
特にサーバサイドでの開発はマルチスレッドアクセスが前提なんだから、
そんなもんが散乱してたらどうなるカワカランってのに・・・
できるだけインスタンス参照のライフタイムとアクセス可能なスコープ
範囲はコントロールするようにプログラム組んでくれよ・・・まじで、頼む
から・・・バタンキュー
0331デフォルトの名無しさんNGNG
>>330
この場合、いろんなメソッドに通信処理が分散されてどれがどの順に呼ばれるかが曖昧になるのが怖いですね。
0332326NGNG
しまった!! もしかして、File.length()か。ガボーン。
0333苦労人NGNG
>>325

すまぬ、あんたに怒ったわけじゃない。日頃の苦労でシングルトン
という単語に過剰反応するようになってしまいました。マ板イッテキマス。
0334デフォルトの名無しさんNGNG
Boolean oBoolean = new Boolean(false);
boolean b = oBoolean.booleanValue();

↓

boolean b = new Boolean(false).booleanValue();

↑と同じよーな感じで

Thread thread = new Thread() {
    public void run() {
        ...
    }
};
thread.start();

↑を↓(イメージ)のように書けないでしょうか?

new Thread() {
    public void run() {
        ...
    }
}.start();
0335デフォルトの名無しさんNGNG
>>334
できなかった?
0336デフォルトの名無しさんNGNG
できる。
0337334NGNG
ぐはぁっ,で,出来ました m(_ _)m
0338 NGNG
JSPなんですけど、Sessionに入れてあるクラスのメソッドに引数を渡して
リターンを得るにはどうすればよいのですか?

スクリプトレットじゃなくてTaglibでやりたいのですが、
参考資料とかだとプロパティの値を取ってくる例は良くあるのに
そういう例が無くて困ってます。
0339sdsl-216-46-66-114.dsl.nyc.megapath.netNGNG
I'm in New York near the Yoshinoya.
0340デフォルトの名無しさんNGNG
Please give order for negidaku and gyoku.
0341デフォルトの名無しさんNGNG
>>283
ん?
MSにJavaを遣わせまいと「意地悪」したら、
本当にJava切られちゃって、それは困ると
慌てて法廷に泣きついてる最中だろ?>Sun
0342デフォルトの名無しさんNGNG
ボタンは表示されるのですがイメージが表示されません。なぜでしょう?

class ClientFrame extends JFrame
{
public ClientFrame()
{
JPanel jp = (JPanel)getContentPane();
Container cp = getContentPane();

cp.setLayout(null);
cp.setBackground(Color.white);

super.setTitle("The Study.Server");
super.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

JButton transmitbutton = new JButton("送信");
transmitbutton.setBounds(30, 30,100, 20);

cp.add(transmitbutton);

ImageIcon icon = new ImageIcon("C:/load.jpg");

JLabel label = new JLabel(icon,SwingConstants.CENTER);

cp.add(label);
}
}
0343デフォルトの名無しさんNGNG
(つづき)
JButton transmitbutton = new JButton("送信");
transmitbutton.setBounds(30, 30,100, 20);

cp.add(transmitbutton);

ImageIcon icon = new ImageIcon("C:/load.jpg");

JLabel label = new JLabel(icon,SwingConstants.CENTER);

cp.add(label);
}
}
0344デフォルトの名無しさんNGNG
EJBを使ってらっしゃる方、どのように勉強したのでしょうか?
何かいい本かHPがあれば教えてください。
0345デフォルトの名無しさんNGNG
>>344
がんばれ。
0346デフォルトの名無しさんNGNG
>>342
直接の原因は、labelにsetBoundsしてないから。
間接的には、レイアウトマネージャの支援を受けてないから。
layoutをnullにせず、LayoutManagerつかってみたらどう?

setTitle("The Study.Server");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

JButton transmitbutton = new JButton("送信");

ImageIcon icon = new ImageIcon("load.jpg");
JLabel label = new JLabel(icon, SwingConstants.CENTER);

Container cp = getContentPane();
cp.setBackground(Color.white);
cp.add(transmitbutton, BorderLayout.NORTH);
cp.add(label, BorderLayout.CENTER);

pack();
0347デフォルトの名無しさんNGNG
>>341 ぬ?じゃぁこの記事はいったいナンダ?
http://japan.cnet.com/Enterprise/News/2002/Item/020619-3.html
0348デフォルトの名無しさんNGNG
>>315
DateFormatのパースを使ってみてエクセプションを投げつけられるかどうかで判定か?
しかし有り得ない日付は勝手に違う日付に解釈される仕様のようだから、
再びDateFormatのフォーマットを使って文字列に戻してから元の文字列を比較して、
違う日付にされてないかも調べないと危ないな。
0349デフォルトの名無しさんNGNG
Calendarクラスなんですが、IE 5.50(SP2)のアプレットで実行した場合、
set(Calendar.DAY_OF_MONTH, 2);
で設定した場合、正しく2が入りますが、
set(Calendar.DAY_OF_YEAR, 2);
で設定した場合、無視されてしまいます。

NC 4.75/AppletViewer(JAVA1.1)/AppletViewer(JAVA1.2)
の環境で動かした場合ちゃんと動きます。
VMのバグですか?

とりえあず試せるソース
import java.applet.*;
import java.awt.*;
import java.util.*;
import java.text.*;
public class TestCalender extends Applet
{
public void paint(Graphics g)
{
Calendar A = Calendar.getInstance();
Calendar B = Calendar.getInstance();
SimpleDateFormat F = new SimpleDateFormat("yyyy/MM/dd");
try{
A.setTime(F.parse("2002/1/1"));
B.setTime(F.parse("2002/1/1"));
}catch(Exception e){}
A.set(Calendar.DAY_OF_MONTH, 2);
B.set(Calendar.DAY_OF_YEAR, 2);
g.drawString("A=<" + F.format(A.getTime()) + ">", 20, 30);
g.drawString("B=<" + F.format(B.getTime()) + ">", 20, 50);
}
}
0350デフォルトの名無しさん NGNG
JAVAアプレットについて質問です。
ブラウザで動作するアプレットをつくり、そのアプレットから
インターネット上にあるサーバ内DBにアクセスできるのでしょうか?
アクセスできたとしてその情報をリアルタイムに表示とか出来るんでしょうか?
サーブレット等はサーバに入ってないです。

もし、出来ないとしたらそれはなぜなんでしょうか?
全然JAVAわかってない香具師でごめんなさい;;。
0351デフォルトの名無しさんNGNG
class MyCanvas extends Canvas{
private Image image1;
private Graphics graphics;

public void MyCanvas() {
image1 = createImage(100,100);
}

public void paint(Graphics g) {
graphics = image1.getGraphics();

graphics.setColor(new Color(0,0,0));
graphics.drawRect(0,0,10,10);

g.drawImage(image1,10,10,this);
}
}
イメージ作ってから表示するクラス作って
これをインスタンスにしてaddしてみたのですが
ぬるぽぬるぽ言われるんです。
どうすればまともに動きますか?
0352342NGNG
>>346
setBoundsしたらできました
ありがとうございます
0353デフォルトの名無しさんNGNG
>>315
>>348
setLenientを知らんのか?
0354デフォルトの名無しさんNGNG
>>351
createImageのAPIドキュメント読め。

class MyCanvas extends Canvas {
private Image image1;

public void MyCanvas() {
}

public void paint(Graphics g) {
if (image1 == null) image1 = createImage(100, 100);
Graphics graphics = image1.getGraphics();

graphics.setColor(new Color(0,0,0));
graphics.drawRect(0,0,10,10);

g.drawImage(image1,10,10,this);
}
}
0355351NGNG
>>354
おお、動いた。ありがとうございます。

ただAPIDocument読みましたけど、よくわからないです。
http://java.sun.com/j2se/1.3/ja/docs/ja/api/java/awt/Component.html#createImage(int, int)
なのでぐぐって調べても手元の本読んでもようわからんので
無い頭捻って色々試してみたところ
コンストラクタのところに書いちゃうと駄目ってのだけがわかりました。

ぼくは馬鹿ですが馬鹿でも考えないで答えだけ聞いてワーイとしてたら
余計馬鹿になるのですいません、ヒントだけください。
よろしくお願いします・・・。
0356デフォルトの名無しさんNGNG
>>355
何がどうわからなくて何を知りたいのかサッパリわかりません。
0357351NGNG
public void MyCanvas() {
if (image1 == null) image1 = createImage(100, 100);
}

だとぬるぽになるのがわかりません。
0358デフォルトの名無しさんNGNG
「何が」ぬるぽ?
0359357NGNG
漏れの頭が。
0360デフォルトの名無しさんNGNG
CCDカメラを使用して画像を取り込むにはどうしたらいいですか?
0361デフォルトの名無しさんNGNG
EUCのファイルを読み込んで別のファイルに出力しているのですが
「〜」の文字だけが変換できずに?で出力されてしまいます。
どうすればよいのでしょうか?

BufferedReader in = new BufferedReader(new InputStreamReader(new FileInputStream(args[0]), "EUC_JP"));
FileWriter out = new FileWriter(args[1]);

String line;
while ((line = in.readLine()) != null) {
out.write(line);
out.write("\n");
}
0362デフォルトの名無しさんNGNG
Componentの仕様だけ把握してもどうしょうもないだろー
Containerの仕様も把握しとかねば。
0363362NGNG
あれ?
>>362は>>357へのレスね
0364デフォルトの名無しさんNGNG
Tiger(jdk1.5)用拡張案らしい
http://jcp.org/en/jsr/detail?id=201

enum, (generics用にかなり拡張されてるみたい)
autoboxing,
foreach, (実際には forを拡張するみたい )
static import (コンパイル時にインライン展開するため?)

だそーです。
0365デフォルトの名無しさんNGNG
>>361
>FileWriter out = new FileWriter(args[1]);
Writer out = new OutputStreamWriter( new FileOutputStream(args[1]),"SJIS");
0366デフォルトの名無しさんNGNG
public class Applet1 extends Applet
{
public void init()
{
textField1.setText("厨");
add(textField1);
textField1.setBounds(132,36,60,24);
SymText lSymText = new SymText();
textField1.addTextListener(lSymText);
//…としてから、initを終了する前に
textField1.setText("漢");
//…とする1行を加えるだけで、その後のアプレットの挙動が暴走寸前になってしまいますが、
//何かヤバイですか?
//この1行が無ければ何の問題もないのです。
}
}
0367デフォルトの名無しさんNGNG
>>364
usingブロック/java.lang.Disposableもホスィ...
0368デフォルトの名無しさんNGNG
>>355
遅くなったね。
要は、コンポーネントの構築中は、まだ表示されていないから。
おそらく最初の表示時にGraphicsが割り当てられているんだと思うよ。
下記参照のこと。
http://java.sun.com/j2se/1.4/ja/docs/ja/api/java/awt/Component.html#createImage(int,%20int)
0369デフォルトの名無しさんNGNG
糞質問で申し訳ない。

基本情報のためにjava覚えようと思い本を読んだりしてるんだけど
さっぱりやる気が起きません

delphiやvbとかを覚えようとしたときは、自分がよく使うフリーウェアを
まねて作ったりして覚えていったんですが
javaだと凝ったウインドつくったりするだけで少々私には無理があり、
また、実行速度が遅い、とよく聞くのでフリーウェアを作る気も起きません

個人でjavaを使用されてる方は、どのような目的で使われてるのでしょうか?

ほんとにしょうもない質問で、ほんとに申し訳ない
0370デフォルトの名無しさんNGNG
>>366
単に登録したリスナーのバグだろ?
SymTextのソース晒せ。
0371デフォルトの名無しさんNGNG
>>369
iアプリ作れば?
後はサーブレットで掲示板作るとか。
0372デフォルトの名無しさんNGNG
>>369
今は文法覚えてるヒヨッコだけど、
俺の場合、特にオブジェクト指向について勉強したいと思ったから。
デザインパターンやらUMLの本もjavaが多い(と思う)しね。
しかもjavaのアルゴリズム本買っちゃったし。
おいおいC++などにも触れてみたいから。イキナリハ・・・
例外処理書かないと、コンパイルが通らんところとかガベコレやら
面白いとおもった。
俺も基本情報目指してる(w
0373デフォルトの名無しさんNGNG
>>372

調子載って略語使うのや目なさい。
0374デフォルトの名無しさんNGNG
iアプリですか。iアプリ自体使ったことないので眼中に全く無かったのですが
iアプリとは一体どんなものなのか早速今から試してみます
サーブレットとか掲示板とかは全く未知の領域.

>例外処理書かないと、コンパイルが通らんところとかガベコレやら
>面白いとおもった。

凄いですね。全く面白いと思ったことないのですが、なんか文章を見てると
java覚えるのがもの凄く楽しそうで羨ましいです



基本情報の試験にpascalがあれば...ググ..
0375351NGNG
>>362さん、>>368さん、ありがとうございます。
Canvasクラスとかでpaintメソッドを使う場合、
paintメソッドが再実装されるってことだから
super.paint(g) が呼び出されてなくちゃいけない。
http://java.sun.com/j2se/1.4/ja/docs/ja/api/java/awt/Container.html#paint(java.awt.Graphics)
ぼくAppletのinitでCanvas呼び出してたのでsuper.paint(g)はAppletのpaintのことだから、
処理はinit終えてからpaintに行くのでsuper.paint(g)はまだ呼び出されてない、だから表示不可能。
よってcreateImageはnullを返すと。。

・・・ええと、こう理解したですが・・・合ってますか?
0376デフォルトの名無しさんNGNG
>>375
というか、表示してみないと必要な大きさも分からないのに、
createImageできるか、ボケ。ってとこだと思うがどうか。
0377デフォルトの名無しさんNGNG
JFrameに対してダブルバッファリングで描写するのはできるんだが、
JPanelに対してダブルバッファリングで描写するのってどうするの?
できないの?
0378デフォルトの名無しさんNGNG
>>377
ふと、そんなにちらついたっけ?と思った。
0379プロの逝って良しの1 ◆MvRbZL6NeQ NGNG
>>377
ダブルバッファリングは実は問題の解決になってない。
同期転送や同期切り替えしか正しい解決法は無い。
>>378
赤と白の塗りつぶしを1フレームで交互にやってみれば?
0380377NGNG
>>378-379
レス頂いたのに言葉足らずで須磨祖。
ウィンドウに隠れるなどして失われた描画の再描写なんです。
例えばボタンを押すとPanelに図形描写するプログラムで
void jButton1_actionPerformed(ActionEvent e) {
Graphics2D G = (Graphics2D)jPanel1.getGraphics();
G.setColor(Color.cyan);
for(int i=10;i<=100;i=i+5){
Shape S = new Rectangle2D.Double(i,i,i+10,i+10);
G.draw(S);
}
では、隠れると再描写されないので
Dimension mySize = jPanel1.getSize();
Image myImg = createImage(mySize.width, mySize.height);
Graphics2D G = (Graphics2D)myImg.getGraphics();
G.setColor(Color.cyan);
for(int i=10;i<=100;i=i+5){
Shape S = new Rectangle2D.Double(i,i,i+10,i+10);
G.draw(S);
}
としたいのですが、この場合
G.drawImage(myImg,mySize.width,mySize.height,jPanel1);
をどこに記述すればいいのかわからんのれす。
だいたいこれでいいのか???それもわからなくなってきた。。。
0381デフォルトの名無しさんNGNG
ウィンドウの上にあるステータスバーを消去したいのですが どうしたらいいでしょうか?
ヒントとなるキーワードでいいです・・ 教えて下さいませm(_ _)m
0382デフォルトの名無しさんNGNG
CCDカメラから画像を取り込むにはどうしたらいいでしょうか?
0383デフォルトの名無しさんNGNG
>>382
JMF
0384382NGNG
>>383
ありがとうございます
0385デフォルトの名無しさんNGNG
javacのエラーメッセージは全部でどれぐらいあるのでしょうか?
一覧見たいものがあれば見たいんですけど、無いでしょうか?
プログラムに関する質問でなくてすいません。
0386デフォルトの名無しさんNGNG
tools.jar の
com.sun.tools.javac.v8.resources.javac.properties
com.sun.tools.javac.v8.resourcse.javac_ja.properties
com.sun.tools.javac.v8.resources.compiler.properties
com.sun.tools.javac.v8.resources.compiler_ja.properties
0387デフォルトの名無しさんNGNG
>>380
うーん、普通はActionListenerに描画コードは書かないだろ?
たとえば、380が作っているアプリに将来undo機能をつけようと思ったりしたら、
その方法では破綻するよ。
基本的には、リスナーでは描画に必要な情報(たとえば座標とか)を何らかの仕組みで
追加し、管理するだけにして、
paint(g)の方で、その情報を元に再描画コードを実装するってのが基本かな。
ダブルバッファリングで、途中までのイメージを残しておき、追加された
描画情報の分だけを追加描画して高速化を図るってのもありだと思うが、
その前に、基本的な仕組みを作り上げてからパフォーマンスチューニングに
取り組んだ方が良いと思うよ。
0388デフォルトの名無しさんNGNG
awtやswingなどGUI関連をJSPで使用することって可能なのですか?
教えてテレホマン。
0389デフォルトの名無しさんNGNG
<jsp:plugin>とか書くと、アプレットが使えたような。
そこでawtやswingを使えるよ。
参考:JavaServer Pages
http://java.sun.com/j2se/1.4/ja/docs/ja/guide/plugin/developer_guide/jsp.html
0390デフォルトの名無しさんNGNG
>>388
JSPはサーバサイドで動いているので、何も考えずに使うとサーバの画面に表示されることになる。
クライアントの画面に表示させたいなら、Appletを使いましょう。HTMLと同じようにApplet関係のタグを埋め込んで普通に使えます。
JSPも、JSPのタグの評価が済んでしまえばHTMLと変わらないんですよ。
0391デフォルトの名無しさんNGNG
>>390
嘘ではないが、極めて不合理的な方法だな。
IEとNetscapeでは、そもそもアプレット用のタグが違う。
<applet... <object... <embed...
こういったケースに個別に対応するよりは、<jsp:plugin type="applet" ...
とJSPの提供する方法を利用して書いたほうがいいと思う。


0392デフォルトの名無しさんNGNG
>>389-391
なんか、議論がかみ合ってないように見えるけど、、、。
要は、Appletでしか使えないってことでしょ。
JSPでAppletの配置をどう書くかってのは、388に対する答えではないと思うよ。

>>388
awt, swingそのものではないけど、そのやり方を利用したHTMLグラフィックを
行う方法はあるよ。Apache XMLプロジェクトのBatikを使って、SVGコードを生成し、
ServletやJSPから利用するんだけど、、。SVGを知らなくても、JavaのGraphicsを
扱うような方法で描画し、SVGを生成できるのが特徴なのだ。
ただし、ブラウザ側にAdobeのSVGプラグインが必要だけどね。

http://xml.apache.org/batik/
http://xml.apache.org/batik/svggen.html
0393380NGNG
>>387
>普通はActionListenerに描画コードは書かないだろ?
レスありがとうございます。
「10日で覚えるJava実践教室」のサンプルですが、
再描写について調べてもpaint(g)のオーバーライドしかないのはそういう理由なんですね。
ActionListenerで描画してそれを再描写するのは無理みたいですね。
ちなみに、
.NETではPictureBoxが保持するBitmapクラスに描画して転送する方法で再描写できるんですが、
Javaではこういうことは「しない」と考えた方がいいのですね。
<C#>
private void button1_Click(object sender, System.EventArgs e)
{
Rectangle r = pictureBox1.ClientRectangle;
pictureBox1.Image = new Bitmap(r.Width,r.Height);

Graphics g = Graphics.FromImage(pictureBox1.Image);
Pen p = new Pen(Color.Aquamarine,2);
for(int i=10;i<=100;i=i+5)
{
g.DrawRectangle(p,i,i,i+10,i+10);
}
}
0394デフォルトの名無しさんNGNG
>>393
「できるけどしない」っていうことなら、そうだね。
そのC#のコードだって、undo入れたりするとき苦労するでしょ?
リスナーではモデルに当たるデータを変更することにつとめ、
ビューへの描画ロジックはpaint()に任せることで、モデルと
ビューの分離ができるのさ。こうすることで、ビューの変更、
たとえば、更新履歴をテーブル形式で見たいなど、
ビューの追加や変更に柔軟に対応できるようになる。
0395 NGNG
taglibで文字列の比較をやりたいんだけど、
2つの変数同士を比較するにはどーすればよいの?
0396380NGNG
>>394
そういった実用上の「作法」を理解してないので、
サンプルに惑わされてしまいました。ありがとうございました。
0397デフォルトの名無しさんNGNG
うんうん、気持ちは分かる。
なんだか俺もプログラムをはじめたときの気持ちを思い出したよ。
ひたすらコーディングするべし。
0398デフォルトの名無しさんNGNG
オンラインで対戦できるホッケーゲームみたいの作ってるんですけど、
データ転送の速度が描画の速度に追いつかず、描画が飛び飛びになってやれたもんじゃありません。
DataInputStream を Socket を連結させて今はやってます。滑らかに描画するにはどうしたらいいんですか?
0399JMF@382NGNG
CCDカメラをUSB接続してるんですけど、
MediaLocatorの指定場所はどこになるのでしょうか?
0400デフォルトの名無しさんNGNG
switch文は、条件二つ指定できなかったよね?一つだけだよね?
0401デフォルトの名無しさんNGNG
switch(*****) // ←こっちは1つのみ
0402デフォルトの名無しさんNGNG
できるの?switchで二つ条件指定できるの?
0403switch文の基本的な形式NGNG
switch(x){
 case 0:
  // 処理
  break;
 case 1:
  // 処理
  break;
 default:
  // 処理
}
0404デフォルトの名無しさんNGNG
ですよねぇ、無理ですよねぇ。素直にif使おう。
0405デフォルトの名無しさんNGNG
>>404 ものによるが代替手段はありそう。
0406デフォルトの名無しさんNGNG
よくアプリケーションで設定を変更すると,
「この設定を有効にするためには(アプリケーションを)再起動する必要があります」
なんてことを聞かれ,OKボタンなどを押したのち,
自身で再起動するものがありますが,
この「自身で再起動」をJavaアプリケーションで行おうと思った場合,
一般的にはどのような方法が用いられるのでしょうか?

僕が思うにデーモンスレッドあたりをうまく使うのかなと思うわけですが.
0407デフォルトの名無しさんNGNG
>>406
もう一つ立ち上げて自分は終了したら?
0408デフォルトの名無しさんNGNG
>>391のお話に関連して質問したいことがあります。

appletなんて仕事で使ったことないんでいまいち分かってない者なんですが、
<applet>はブラウザ付属のVMを起動してしまい、
<object>や<embed>は、SUNが配布しているplugin(ActiveX経由?)->JRE
を呼び出すためのタグと考えてよろしいのでしょうか?

IEだと<applet>でもSUNのpluginを呼び出すような設定が出来るようですが、
実際に仕事でappletを使用したい場合はどちらが好ましいのでしょうか?
0409デフォルトの名無しさんNGNG
>>399
JMF API Guideの以下の章を読んでみて。
http://java.sun.com/products/java-media/jmf/2.1.1/guide/JMFCapturing.html#98540
環境がないから試せないけど、
1.CaptureDeviceManagerからgetDeviceList()で、認識されているデバイス情報(CaptureDeviceInfo)の
リストを取得
2.取得したデバイス情報から、getLocator()でロケータを取得する、
ということみたいね。
手持ちのカメラが認識されなければ、そのままでは無理そうだね。
できたら、結果教えてね。興味あるから。
0410桜庭 葵NGNG
.     l ::::|l .i   ::::::::::;;;',;::;゙、:;;',、:::::;;;;;l ,,、-、'""、;;:;::::;;;',. ヾ;;゙、 ,r<_,.,、、z゙'、、゙;、ヾ;゙、;;;;;;l;;;!;;::::::::::::
      ',::::l ! :.l. . .:::::::::::;;;;',;:;;,゙、;;',゙、::;、rl'"  ,,.゙、',..,゙'、;;;;;;;;゙、   ヾ;、 ,,,;;シ''!"~~゙゙';,ヾx、.゙、;;;!;;l;;;:;::::::::::
       ',:::l ',:;;',.:゙、;;;::::::::;;;;;',;;;;, ヾ;r'、::;;;;!.r'',,、zェュ、. ヾ、;;;;゙、    ヽ''"  l,  ,,、:':'、 ヾ:;、;!;l;;;';;::::::::::
.      ゙、:!. ',:;',、::゙、;;;;:::::;;;;',゙、;;/ヽ.ヾ;;;'ill!'''"゙i ~`   ゙ヾ、゙、.        lr''゙!::li!::;i,  ヾj//;;;;::::::  
       ヾ ゙、:',゙、:゙'、;;;;::::;;;゙、ヾ;、 ヽ;lrヾ、  .,i,       ``       l;;::ゞン;::;j   ツ;/;;;;;;::::;;
        ゙、 ゙、.!:ヽ、ヾ;;;;;;;;;゙;、 ヽ、;ll!. l  ,r';::l,              l;;;. .::: ,;;j  ',;イ:;;;;;;;;::;;;;
           ,'ヽ、;:::l';,、゙、r、;;゙;、. ill!.  ';;:'゙'i,,j;::l,           、,. ゞ--一゙- ,//:;;;;;;;;;;;;;;;
             i ::::;:::!;;;;;;;l゙'',、.゙、ヽll!.  'i;:: ゙''゙:. l、                   ,/'/;;;;;;;;;;;;;;/;;
             ! :::: :::l;;;;;;;;;! l  .゙、. ヾ、.  ゙、;;;;:、‐'''''"                 / /;;;;;;;;;;;;;シツ'
.            |.:::;:: :::l;;;;;;;;;l  、〈゙、   、 '´           ,          ´ ,.';;;;;;、-'" ´
.           l::::; ::i:::l;;;;;;;;;ヽ, ヽ、゙、               ;l           /''" /   藍より青し 公式ホームページ    
            l::::;;:::',::',;;;;;;;;;゙、゙ヽ、. ゙、.             ゙'               ,イ    http://www.aiyoriaoshi.com/index2.html  
          ',:::;;;:::',::',;;;;;;;;;;r'"~゙''ー'、           -‐ '''''"          ,.';;;!     2話 - 夕餉 - 画像
           ゙、:;;;;::;',:゙、'''"      ヽ、            、:::'         /!;;;i!l    http://wqio6xt.hp.infoseek.co.jp/aiao/idx022.html  
0411デフォルトの名無しさんNGNG
>>398
それだけの情報では、何とも答えようがないし、、、。
転送されているデータってどういうものなの?
あと、データの転送タイミングは?
追いつかないほどのデータ量なのか、気になるところ。
データが、座標とかわずかなものなら、原因は別なところにあると思う。
0412JMF@382NGNG
>>409
さっそく試してみます
0413JMF@382NGNG
デバイスリストの取得プログラムを実行したのですが、
何も引っかかりませんでした。(オーディオ、ビデオ共に)
CCDカメラはドライバをインストールしてPC上では認識されています。

import java.util.*;
import javax.media.*;
import javax.media.format.*;
public class CaptureTest {

public static void main( String[] args ) {

System.out.println( "List of All Capture Divices:" );
Vector list = CaptureDeviceManager.getDeviceList(
new VideoFormat( VideoFormat.YUV ) );
// new AudioFormat( AudioFormat.LINEAR ) );
for( int i=0; i<list.size(); i++ ) {
CaptureDeviceInfo info
= (CaptureDeviceInfo)list.elementAt( i );
MediaLocator locator = info.getLocator();
System.out.println( locator.toString() );
}
}
}
0414デフォルトの名無しさんNGNG
>>413
以下のページを見ると、標準でサポートしているデバイスは以下の通りみたい。
http://java.sun.com/products/java-media/jmf/2.1.1/formats.html#Capturers

それと、JMFの配布パッケージはpure Java/Solaris/Windows版の3種類あるけど、
pure Java版はビデオキャプチャできないから、Windows Performance Packって
いうのを落とす必要があるよ。
それでもだめなら、ちょっとでは対応できないから、残念だけど
あきらめるしかないかもね。
0415デフォルトの名無しさんNGNG
これからJAVAを勉強しようかと思っているCOBOLerですが、
初心者でもわかりやすくJAVAが勉強できるようなサイトがあったら教えて下さい。
0416デフォルトの名無しさんNGNG
>>415
本買えよ。
0417デフォルトの名無しさんNGNG
>>415
だからJavaはここだってば。
http://park.ruru.ne.jp/ando/work/who/index.html
0418momoNGNG
JEditorPaneに表示したもの全体を、そのままImageオブジェクトとして保存したいのですが、その方法を教えていただけませんか?
0419398NGNG
>411 レスありがとうございます。
転送しているデータはStringで、
ボールの座標、相手のバー(ボールを跳ね返すためにつかう)の座標、自分のバーの座標が一緒になって入っています。
(例えば、129,80,20,30,33,280, みたいになってます。)
転送のタイミングは40ミリ秒置きになっています。
0420デフォルトの名無しさんNGNG
>>419
255は1Byteに入る。
"255"は1Byteには入らない。
まぁ、原因はここじゃないだろうけど。

スピードほしいならUDP使えば?別に40ミリ秒毎のデータが1枚届かなかったところで影響は深刻ではないわけで。
0421398NGNG
>420
ちょっとUDPにしてやってみます。
レスサンクス。
0422デフォルトの名無しさんNGNG
自分、入門3日目のコボラーなんですが、
JAVAってREADした固定長テキストをデータレイアウトにつっこんで
処理するという概念はないんでしょうか?
無い事はないんでしょうが、本屋のテキストみてもその辺りの記述が見つけられません。
どこかにいい見本は無いでしょうか・・。
0423デフォルトの名無しさんNGNG
>>422
無いです。つぅかすごい教育受けてきたんだなぁと手続き世代の僕は思いました。
0424デフォルトの名無しさんNGNG
>>422
XMLをDOMに読み込んで書き換えて吐き出すのとどう違うの?
0425デフォルトの名無しさんNGNG
>>423
まじっすか。
なんかいきなりでかい壁にぶちあたった気が・・。
汎用機でバッチ流すのがめんどい処理をローカルにしちまおうと思ってたんですが
ちと挫折気味。
0426デフォルトの名無しさんNGNG
>>424
うーん全然わかりません。
0427デフォルトの名無しさんNGNG
>>424
>どう違うの?

入力と出力がXMLではない。
0428デフォルトの名無しさんNGNG
コボラー恐るべし・・・
0429デフォルトの名無しさんNGNG
>>419
エアホッケー?ボールの軌道の計算は、クライアント側に任せられない?
0430422NGNG
>>428
脳内プログラム概念の再構築がでんでん進みませんです。
JAVAやC畑の人はシステム乗り換え時のセットアップ用データ受け渡しとか
どうしてるんですか?
DBの情報渡してはいおしまいとか?
0431デフォルトの名無しさんNGNG
コンバータするか、アダプタかます。もしくは、DBの情報渡してはいおしまい。
0432デフォルトの名無しさんNGNG
>>431
なぁ、コンバータするって変だぞ?
0433デフォルトの名無しさんNGNG
バージョン1.4のBufferクラス活躍できるかもの予感
0434デフォルトの名無しさんNGNG
JavaやCやその派生言語って入出力は基本的にストリームじゃないですか。
unixの影響も大きいと思うんですけども。

コボルって入出力がすんげー特殊なんすか?
0435デフォルトの名無しさんNGNG
>>434
なぁ、UNIX作った言語CがUNIXの影響が強いというのはこれ如何に。
0436デフォルトの名無しさんNGNG
標準Cライブラリ(FILE*)やC++のstd::iostreamの話では?
0437デフォルトの名無しさんNGNG
テキストコンポーネントに表示したもの全体を、
そのままImageオブジェクトとして保存したいのですが、
どう実現したらよいのでしょうか?
0438デフォルトの名無しさんNGNG
ImageオブジェクトからGraphicsをゲットしてそこにdrawして差し上げる
0439not 437NGNG
>>438
結局,その方法になっちゃうんだろうなぁ.
どうにかして,ComponentのインスタンスからgetImage出来ないものか・・・
0440デフォルトの名無しさんNGNG
AWTのモデルからして描画"した"結果は揮発性な扱いでしょう。
(それゆえexpose/WM_PAINTでpaintが呼ばれるわけですが)

描画内容を保持するモデルならば、コンポーネント自身がImageProducer
になれると思うです。まあ、重いからやんなかったんでしょうね。
0441デフォルトの名無しさんNGNG
>>422
それって、Cでいう共用体みたいな使い方をしたいってことだよね。
Javaでやる場合はクラスを使うんだけど、同じようなことは実現可能だよ。

1.固定長データを1件READ
2.データ(byte配列)を引数に、ビーンを生成。
3.ビーンのgetterメソッドで必要な位置のbyte列を必要な情報に加工したものを取得する。


COBOLやCの共用体のように言語の支援がないので、趣きが異なるように感じるかもしれないけど、
データ1件分を1レコードではなく、1オブジェクトとして扱うだけと考えれば、
そんなに違うわけでもないでしょ?
0442デフォルトの名無しさんNGNG
>>441
>>433が簡潔に述べています。
0443デフォルトの名無しさんNGNG
レコードとクラスのマッピングはどうするの?
と質問してくるに100はらたいら
0444デフォルトの名無しさんNGNG
>>437
java.awt.Robotクラスで似たようなことはできる
0445デフォルトの名無しさんNGNG
JFrameではなくてJWindowを継承してGUIを作っているのですが、
JWindowの上にJPanelを貼って、JPanelの上にボタンやらテキストフィールドやら
を貼っています。

Frame上にボタンやらを貼ったら普通に動作しますが、
JWindow上に上記のように貼ってもテキストにカーソルすら置けないし、ボタンも押せるけどアクションが聞きません。
どうすればテキストの中を書き換えたり、ボタンをアクションさせたりできるのでしょうか?
0446デフォルトの名無しさんNGNG
>>445
JWindowの上にJFrame春。
0447デフォルトの名無しさんNGNG
>>446
Frameのタイトルバーや管理ボタンを表示させたくないのでWindow継承したのですが・・・・・
そうするとタイトルバーや管理ボタンがでてしまいませんか?
どうなんでしょう?
0448デフォルトの名無しさんNGNG
Windowの上にContainer、Panel、Buttonってやっても動かないです。
0449デフォルトの名無しさんNGNG
今、RealPlayerを内蔵したJAVAアプリケーションを作ろうとしているのですが、
どうにもRealPlayerを内臓する方法が見つけられなくて困っています。
もし、参考になるサイト、もしくは書籍がありましたら教えてください。
0450デフォルトの名無しさんNGNG
Ja-Jakartaってなんて読むの?じゃじゃかるた?じぇいえーじゃかるた?

あとわかんないのは char。ちゃー?きゃら?
0451デフォルトの名無しさんNGNG
>>449
一行目で正確な漢字使っておいて・・・
0452JMF@382NGNG
>>414
JMFはウィンドウズ依存版です。
また、教えて頂いたサポート一覧表を見ると、
僕が使っているカメラはサポートしていないみたいです。

ところでJavaCamっていうのはCCDカメラから画像を
取り込む機構でしょうか?
0453437NGNG
<<438 <<439 <<440
レスありがとうございます。
参考になりました。

<<444
これから調べてみます。
ありがとうございました。
0454デフォルトの名無しさんNGNG
>>453
がんばれよ
0455デフォルトの名無しさんNGNG
もうだめぽ・・・
誰かバカな私にご指南くださいませ

現在、クライアント班、サーバー班にわかれて通信実験をすることになり、
クライアントのjavaを私ががんばってます。が・・・

socket(host,80)でソケット生成、
"GET ファイル名 http/1.0\n"
にgetBytes[]をして送ると、希望したファイルの内容が
dos窓に表示されるのでこの時点での
私のjavaソースにミスは無いものと思われます。

しかしながら、
"POST サーバー班が指定したcgi名 http/1.0\n"
+"Content-Length: 4\n\n"
+"moe-"
と送信すると、サーバーから返答がありませんし、
期待した成果は得られません。
ちなみにPOSTをGETにしてもまったく変化ありませんでした。

これはクライアントの私のミスなんではないかと思い
色々探したのですが、わからないんです。

私にどうか間違いを教えてください。
0456455NGNG
すみません。
色々実験してて、勘違いをしてしまいました。

>>455での相談では、サーバの返答は
HTTP/1.0 400 Bad Request(以下略
が返って来ます。

どうか、間違いを教えてください。
0457455NGNG
さらにミスです。
色んなソース書いて、色んなこと実験してたから間違いだらけですみません。

GETの場合はBad Requestで
POSTの場合は返答無しです。
0458デフォルトの名無しさんNGNG
>>455 なんでHttpURLConnection使わないの?
http://java.sun.com/j2se/1.4/ja/docs/ja/api/java/net/HttpURLConnection.html

つーか寝る。
0459385NGNG
>>386
御指導ありがとうございます。

ZipInputStream等を使ってtools.jarのリストを取得してそれらのファイルの存在を確認できたのですが、
そこからどうすればエラーメッセージを得ることができるのかわかりません。
どうすればよいのでしょうか?
0460385NGNG
解凍ソフトで解凍しちまえばとかったですね。すいません。
0461デフォルトの名無しさんNGNG
>>452
もう、ググって分かったと思うけど、僕も興味があったので調べてみたよ。
JavaCamってのは、WebCam32という製品をサーバにしたAppletなんだね。
動画というよりは、静止画を一定時間でリロードしていくようなものみたい。
だから、カメラとのやり取りはWebCam32の方がやっているから、そっちの
製品概要を調べてみるといいよ。
0462デフォルトの名無しさんNGNG
javaで0〜23の数字を入力して
0−11ならおはよう
12ならお昼
13−18なら今日は
19−23ならこんばんわ
それ以外なら範囲を超えてます
いうのを作りたいんですけど
if文で作るのはわかるんですが
ユーザに入力させるのはどうすればいいんですか?
readlineって奴ですか?
初心者ですいませんが教えてください。
あと参考になるようなサイトをご存知なら
教えていただけないでしょうか。
0463デフォルトの名無しさんNGNG
>>462
Servlet使ってWEBブラウザから入力するってのはどう?
0464デフォルトの名無しさんNGNG
>>462
PC初心者板で答えてやった。マルチか?
0465ひよこ名無しさんNGNG
>if文で作るのはわかるんですが

お前ついさっきまでわかってなかっただろ?
0466デフォルトの名無しさんNGNG
文字列検索で、OR検索ってできないの?
イメージでは「ab」か「cd」が最初に出てくる場所を探すのに
int i = str.indexOf("ab"||"cd");
って事をしたいんだけど、||は使えなくてエラーでした。
2回(以上)検索して値の小さい方を選ぶしかないのかな。
0467385NGNG
すいませんまだわからないです。
jarファイルを解凍してファイルの中を見ると日本語部分と思われるところが
\u8A00のように文字化けしてしまいます。色々調べたのですがunicodeによる文字化け?
かなというとこまでしかわかりませんでした。どのようにデコードすればよいのでしょうか?
0468デフォルトの名無しさんNGNG
>>466
正規表現使え。
0469デフォルトの名無しさんNGNG
最近は、入門書の始めの方に出て来るようだ。これ
>>462
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
String line = reader.readLine();// lineに読み取った文字が入る。
0470デフォルトの名無しさんNGNG
>>467
native2ascii -reverse マニフェストファイル
0471デフォルトの名無しさんNGNG
>>467
native2asciiを使いませう
0472デフォルトの名無しさんNGNG
訂正 s/マニフェストファイル/プロパティファイル/
もう寝る。
0473385NGNG
できました。ありがとうございます。
ここの住民の方々すごくやさしいですね。ありがとうございました
0474ほんとーに初心者で申し訳ないNGNG
コマンドラインから「java moner」として(もちろんmoner.classはちゃんとある)
System.out.printlnがコンソールに表示されないのですが、どのヘンに理由があるのでしょう?
環境はWin2KSP3+JDK1.2、他に必要な情報があればご指摘を(拝)
0475デフォルトの名無しさんNGNG
たとえば、コンパイルしたクラスファイルが前のバージョンで、
System.out.println文が入っていないとか。
0476474NGNG
>>475
それは大丈夫です。なぜかというと、実はこれ、JSPがメインのシステムなんです。
で、JSPやJavaBeansからはちゃんとSystem.out.printlnが(Servletエンジンで
吐き出すシステムログに)出力されています。
んで、たまたまバッチ処理を書かなければならなくなったので、同じ環境でstatic mainな
コードを書いてコンパイルして、現在コンソール上からデバッグ中、上手く言ったらATコマンドで
自動実行、と考えているのですが……

0477デフォルトの名無しさんNGNG
1.System.out.printlnが入ったメソッドが呼ばれていない。
2.System.out.printlnの出力が空文字列
3.System.outがリダイレクトされて、どっかのファイルに出ている
の可能性はないか?特に1.は往々にしてありがち。
0478デフォルトの名無しさんNGNG
>>474
main(String[] args){
  System.out.println("オマエモナー");
}
でも表示されないのかと問い詰めたい。
0479JMF@382NGNG
>>461
ある方の協力の下、デバイス情報の取得に成功しました。
解決方法とその結果は以下の通りです。

JMF1.2.1\bin\jmfinitを実行すると、
jmfregistryにPC上にある全てのCaptureDeviceが追加され
JMFから認識可能に。
0480デフォルトの名無しさんNGNG
>>479
すばらしい。よかったね。
ところで、手持ちのカメラは何使ってるの?
0481JMF@382NGNG
>>480
I/O DATAのUSB-CCDっていうUSB接続CCDカメラです
(特に名前はなし?みたいです)
0482デフォルトの名無しさんNGNG
>>481
どうもありがとう。
興味があったけど、いろいろ調べるきっかけを作ってくれて
とても参考になったよ。
0483JMF@382NGNG
>>482
とんでもないですw
丁寧にご指摘して下さいましてありがとうございました。
0484デフォルトの名無しさんNGNG
>>1
     ∧_∧∩ / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
    ( ´∀`)/<先生!こんなのがありました!
 _ / /   /   \___________
\⊂ノ ̄ ̄ ̄ ̄\
 ||\        \
 ||\|| ̄ ̄ ̄ ̄ ̄||
 ||  || ̄ ̄ ̄ ̄ ̄||
http://freeweb.kakiko.com/hiroyuki/
0485デフォルトの名無しさんNGNG
最近の広告は、まぎらわしくなってきた。
0486デフォルトの名無しさんNGNG
DisplayMode(640, 480, 32, DisplayMode.REFRESH_RATE_UNKNOWN)
使って以上のような解像度変えようとしても、
java.lang.UnsupportedOperationException
が出てきて変えられない。。。。。。。。。。
サポートされてないってドキュメントにかいてあるぉ・・・・・・・
どうやって変えればいいんだろう・・・
知ってる方ご教授願います。

ちなみにDisplayModes()で確認しますたけど、上記の640×480解像度はうちのマシンでは出せるはずなんすけど
0487デフォルトの名無しさんNGNG
わあああああああーい
今まさに初めてJAVAりますた!

結城のプログラミングレッスン上を通学電車で読み今日まさに
Hello
と表示できました・・・涙

本読んでとりあえずHelloを出そうとしたよ。
じゃあそのたった5行のプログラムをどこに書くんだろう、とまずはまった。
友人に聞いたらメモ帳やxyzzyを教えてくれた。

xyyzyをインストールして書いたよ、たった5行をね。
コマンドプロンプトで
javac Hello.java
したけどうんともすんともいわねー。
cd、そうcdでディレクトリを移動するんだーって移動したけど
どうにもならん。
で、また友達に聞いたら問題は>>2に書いてあることだった。




0488デフォルトの名無しさんNGNG
Java超初心者です.
今、Applet上でスクロールバーを使って絵を動かすプログラムを作ってます。
リセットボタンを押すと、絵が元の位置に戻るようにしたのですが、
スクロールバーが元に戻りません。これはどうしたらいいでしょうか。
おしえて下さい。
0489デフォルトの名無しさんNGNG
path追加しようとしたけど、え、どこにあるのjsdkちゃんは・・・・
って良く見たらJDK(開発用)じゃなくてJRE(実行環境)インストールしてたじゃん。。。

んなわけでJDKをインスコして
http://www.hellohiro.com/appli.htm
ここを見て環境変数の設定をしてやりましたよおおおおおおお

javacすると何やらマスィンが作業して・・・うまくいったか?!
よし
java hello
と思ったがエラー。直後
java Hello
を打つと・・・・感動の・・・・




Hello
0490デフォルトの名無しさんNGNG
>>487,489
質問か相談を書けやヴォケ
0491デフォルトの名無しさんNGNG
なんだと
0492デフォルトの名無しさんNGNG
>>489
その感動を大切に
0493486NGNG
>>487,489のせいで俺の質問が流れた・・・・・・・・・
せめてもっと小さく書いてください。
0494デフォルトの名無しさんNGNG
感動の後、今焼肉を食べました。

>>490
java Sorry

>>492
今日は僕にとっての記念日です。
2002.12.8 ディセンバーエイト

>>493
java Sorry
0495494NGNG
引き続き、荒らさせてください。
0496名無しさん@EmacsNGNG
serverVMで-Xmx64mしているのですが、
Runtimeで*Memory見ているとせいぜい
1.4,5メガしか確保されていません。
これは64mまで必要に応じて逐次増えて
いくようなものなのでしょうか?
0497398NGNG
>420
UDPにしたら相当改善されました。
さんきゅう。

>429
そうです。エアホッケーもどきです。
ボールの軌道の計算をクライアントにさせる・・・
トライしてみます。レスサンクス。
0498デフォルトの名無しさんNGNG
>>496
そうです。
SunのVMは(他はシラン。自分で-verbose:gcして調べてね)その1.5メガの領域が
オブジェクトインスタンス(ゴミふくむ)で一杯になったところで、MajorGC起
動とともに確保領域の拡張を行います。
0499デフォルトの名無しさんNGNG
>>496
そ。
-Xmx は最大ヒープサイズ
-Xms が初期ヒープサイズ
0500名無しさん@EmacsNGNG
>>498
>>499
有り難う御座いました。
0501デフォルトの名無しさんNGNG
Jtreeを使っていて壁にぶつかりました。
+ルートノード
  |_test1
   |_test2
   |_teset3
   |_test4
   |_test5
例えば、このようなツリーがあるとします。
この場合test3のインデックスを知りたい場合どうすればいいのでしょうか??
どなたかご教授お願いします。

   
0502デフォルトの名無しさんNGNG
>>501
インデックスって何のこと?
0503デフォルトの名無しさんNGNG
例えば、↑の例でいうと、Test3は2ということです。

私がやりたいことは、test3を消したいのです。
で、remove(int index)とやったら消えると思うのですが、
このindexの求め方がわかりません。
0504デフォルトの名無しさんNGNG
スレ汚しすまぬ。
自己解決しますた。<<500
0505474NGNG
>>477
>1.System.out.printlnが入ったメソッドが呼ばれていない。

>の可能性はないか?特に1.は往々にしてありがち。

ビンゴでした・・・逝ってきます(T_T)


>>478
>main(String[] args){
>  System.out.println("オマエモナー");
>}
>でも表示されないのかと問い詰めたい。

小一時間問い詰めてください(T_T)
0506デフォルトの名無しさんNGNG
int p[] = new int[1000];
int rank[] = new int[1000];
int BOX_SIZE = Integer.parseInt(args[0].substring(0, args[0].indexOf('.')));
のように宣言した変数が、後で同クラスのメソッド内で
例えば
rank[x] = 0;
などと書いた時に、rankの元々の宣言を認識してくれてないのか、何なのか、で、動いてくれません。

これって何故でしょうか。
0507デフォルトの名無しさんNGNG
>>506
まずコンパイル通ってんの?
順序だてて説明しろ。
0508デフォルトの名無しさんNGNG
>>506
モチツケ。何言ってるかよくわかんねーぞw
0509デフォルトの名無しさんNGNG
ここで聞いてよいかどうかわかりませんが、
JBuilder7 Personalの使用方法についての質問です。

OSはWin2000 personalで、スクロールマウスは他では正常に動作してますが、
JBuilderのソースエディット画面でスクロールしようとグリグリやっても
うんともすんとも、ピクリとも動きやしません。

調べたらJDK1.4からスクロールマウス使えるようになったそうですが、
JDK1.3でコンパイルされてる?っぽい?JBuilder7じゃ駄目なんでしょうか。

0510506NGNG
おはようございます。
えっと >>506ですが、コンパイル通ってません。

program.java:52: シンボルを解決できません
シンボル: 変数 rank
場所 : Krus の クラス
rank[x] = 0;
^
というエラーがでます。
どういうことなんだ〜???
0511デフォルトの名無しさんNGNG
>>509
どこでもホイールでもむりぽ
0512デフォルトの名無しさんNGNG
>>509
jbWheel使うか、JBuilderをJVM1.4の上で動かせばOK。jbWheelが無難かな
0513509NGNG
>>512
おお、jbWheelすげー。動いてます動いてます。
サンクス!
0514デフォルトの名無しさんNGNG
>>506
>>int rank[] = new int[1000];

int[] rank
が最近の書き方でないかな。
あと、
public int[] rank ...と書いてみてコンパイル通るかためしてみろ。
通ったら自分で原因を考えろ。
0515デフォルトの名無しさんNGNG
>>506
ふつーに変数スコーポだろ
0516デフォルトの名無しさんNGNG
UNIX の diff みたいなことをしたいんですが、
どっかに Java に移植したサンプルってありませんか?
0517デフォルトの名無しさんNGNG
UNIX の diff みたいなことをしたいんですが、
どっかに Java に移植したサンプルってありませんか?
0518516NGNG
>517
誰?
0519デフォルトの名無しさんNGNG
UNIX の diff みたいなことをしたいんですが、
どっかに Java に移植したサンプルってありませんか?
0520516NGNG
>518
誰?
0521519NGNG
>520
誰?
0522デフォルトの名無しさんNGNG
>>521
俺?
0523デフォルトの名無しさんNGNG
>>516-522
あるんだが、どいつにレスすりゃいいんだ?

0524デフォルトの名無しさんNGNG
>>516-522
あるんだが、どいつにレスすりゃいいんだ?
0525デフォルトの名無しさんNGNG
>>523-524
おい。お前は今誰にレスしたんだ?
0526デフォルトの名無しさんNGNG
>525
俺?
0527デフォルトの名無しさんNGNG
>>516
http://www.bmsi.com/java/#diff

とか?
0528デフォルトの名無しさんNGNG
>>506

>のように宣言した変数が、後で同クラスのメソッド内で
どこで宣言してんの?フィールド?

>例えば
>rank[x] = 0;

rank[x]が初期化されてない可能性大です。
配列の宣言だけでは初期化されないよ
0529初心者NGNG
最近Javaを始めたばかりで全然できなくて困ってます。
ax+b=cまたはax-b=cのかたちの一次方程式を解くプログラムをだれか
教えていただけませんか?マジでお願いします。。。
授業の課題なのですがテキストは「やさしいJava」で、授業は
クラスライブラリのとこまでやったのでそれまでの知識でできるはず
なんですが。。。お願いしますm(__)m

0530デフォルトの名無しさんNGNG
x=*******;
にするだけじゃないのか?
0531デフォルトの名無しさんNGNG
int a = 100;
int b = 20;
int c = 222;
x = (c - b) / a;
System.out.println(x);
0532初心者NGNG
いや、たぶん違うと思います・・・。。。
くわしくはここに書いてあります。。
http://lecture.ecc.u-tokyo.ac.jp/~chiraki/pro-8.html
0533デフォルトの名無しさんNGNG
開 一夫 さんにメールしました
0534デフォルトの名無しさんNGNG
WebProgのJAVAスレにもポストしてしまったのですが、こちらの方が
早いかもと思い、マルチポストゴメンなさい…

Tomcat4.0.4、PostgreSQL7.3から配列をキャストしたいのですが

String[][] my_Array = (String[][])rs.getArray("name");

等とすると

「この型は declaration には不適合です。
 java.lang.String[][] から java.sql.Array には変換できません。」

と言われてしまいます。SQL配列をキャストする、変換する方法ってないのでせうか?
0535デフォルトの名無しさんNGNG
マルチポスト厨ウザイよ。しねば?
0536デフォルトの名無しさんNGNG
うつだしのう
0537デフォルトの名無しさんNGNG
>535
ハァ?テメーが死ねよ(ワラ
0538デフォルトの名無しさんNGNG
Java の質問なんですけど、不要になったオブジェクトって
C++ の delete 演算子のように明示的に破棄できるんですか?

初心者的質問ですみません。
0539デフォルトの名無しさんNGNG
nullでも代入汁
0540デフォルトの名無しさんNGNG
>>539
オイオイ
null を代入したら即座に破棄されると勘違いされるぞ。
0541デフォルトの名無しさんNGNG
ちょっとSQLも混じってるけど、ここで質問させてもらいます。

DBからSELECTした数字に1足して、DBにUPDATEしようとしています。
以下は、Bean内の記述の一部(UPDATE)です。

int qqq= 3;
sttSql.executeQuery(
"UPDATE sample SET count='qqq' WHERE id=1"
  );

結果、DBにはcountの中に0が入ってしまいます。
3を入れるにはどうしたらいいのですか?
DB内のcountの型はint型です。
0542デフォルトの名無しさんNGNG
UPDATE sample SET count=3 WHERE id=1
0543534NGNG
>>541

"UPDATE sample SET count='" & qqq & "' WHERE id=1"
0544デフォルトの名無しさんNGNG
>>542
いや、そういうことじゃなくて。。

>>543
レスどうもです。

試してみたのですが、エラーが出ました。

bean_count.java:42: 演算子 & は java.lang.String,int に適用できません。
"UPDATE sample SET count='" & kkk & "' where id=1");
0545デフォルトの名無しさんNGNG
>>541
int qqq= 3;
sttSql.executeQuery(
"UPDATE sample SET count=" + qqq + " WHERE id=1"
  );
ちなみに、0が返っているわけではなく、NULLが返っているんだろ?
APIよめ。
0546デフォルトの名無しさんNGNG
ってオイ、executeQuery じゃなくて executeUpdate だろ。
0547デフォルトの名無しさんNGNG
>>538
できない。できるのは、参照をきること。
オブジェクトへの参照が全てなくなれば、ゴミ収集日に回収されます。
0548デフォルトの名無しさんNGNG
>>546
だね。
0549デフォルトの名無しさんNGNG
>>538
hogehoge.finalize();
hogehoge = null;

これでバッチリ
0550デフォルトの名無しさんNGNG
>>486
32ってのが怪しいけど、、、。
DisplayModes()で取得したやつで、変えてみてできるかどうか見てみたら?
0551デフォルトの名無しさんNGNG
>>549
それって、hogehogeのスーパークラスのfinalize()も呼ばれちゃわねーか?
0552デフォルトの名無しさんNGNG
>>449
なわけない。結局はゴミ集め待ちだが?
0553デフォルトの名無しさんNGNG
>>503
どうやって、そのtest3を特定するつもり?
マウスで選択したらってこと?
その場合、リスナーでタイミングをとるだろ。
リスナーの引数のイベントから選択パスがとれるから、それ使って消せ。
APIにあたれ。
0554デフォルトの名無しさんNGNG
>>549
finalize() は protected だから普通はそーゆー事できんね。
それに finalize() ってガベージコレクタ以外が呼んでも良いんだっけ?
0555デフォルトの名無しさんNGNG
>>532
課題の趣旨を考えろ。
誰も一次方程式の解き方なんか聞いちゃいねぇよ。
入力文字列をどうパースするかってことだろ。
ここまでヒントやるから、あとは自分で解決しろ。
0556デフォルトの名無しさんNGNG
>>554
チッ
じゃあリフレクション使って Method#setAccessible(true) しろ YO!
つーかネタを (ry
0557デフォルトの名無しさんNGNG
>>545
541っす。

>ちなみに、0が返っているわけではなく、NULLが返っているんだろ?
>APIよめ。

すまん。そのことは理解してたんだけど、まだjava始めたばっかだから、
0と表現してしまった。

とりあえず、できたよ!ありがとう。
0558デフォルトの名無しさんNGNG
強制的にゴミ収集してもらいたかったら
System.gc();
これで即座に破棄される。
0559!1-558NGNG
解決しますた。
0560デフォルトの名無しさんNGNG
>>558
>これで即座に破棄される。
なるべく早く回収してね♪じゃなかったっけか?
0561デフォルトの名無しさんNGNG
Javaで簡単なアプリケーションをつくって、shockwaveプラグインを
表示したいのですが、どうやればいいのでしょうか?
よくアーティストのCDの付録でCで書いた、ShockwaveやQuicktimeなどで
プロモーションビデオの再生や簡易ゲームが表示できる簡単なソフトがついてい
ますが、あれのJavaバージョンです。
本にはFlashなどのプラグインの導入はそれほど難しくはないと書いてあっただけで
具体的にどうするのかは書いてありませんでした。
宜しくお願いします。
0562デフォルトの名無しさんNGNG
>>561
「簡単なアプリケーション」をWebアプリケーションにすれば
ふつうにHTMLにうめこむだけですね。
0563デフォルトの名無しさんNGNG
わかる人、おすぇてぇ〜。

いきなり、最初でつまづいてます・・・。
サーブレットを学んでいます。
本に書いてあるとおりに指定のフォルダに作成したjavaファイルを置いて、
プロンプトからコンパイルすると、↓エラー(一部)が出ます。

rrv_intro.java:5: シンボルを解釈処理できません。
シンボル: クラス HttpServlet
位置 : srv_intro の クラス
public class srv_intro extends HttpServlet {

コードの内容は、予めCD-ROMにあるサンプルファイをそのまま
コピペしたので間違えてないです。
もしかしたら、サンプルファイルのそのファイルだけ、間違ってると
思ったので、他のサンプルファイルで試してみたのですが、
やっぱりうまくいきません。
前に試したときは、うまくいったのに、サーブレットをコンパイルしようと
するとたまにこういうことがあって、なぜコンパイルできないのか
考えているのですが、わからないです。
0564デフォルトの名無しさんNGNG
>>563
CLASSPATHが通ってない。
いじょ。
0565デフォルトの名無しさんNGNG
>563
classpathのパス名にスペースがあるのに、""で囲っていない
0566デフォルトの名無しさんNGNG
Socket接続したStreamからreadLine()をスレッド中で呼んでいるのですが、
スレッドを停止するのにSockt.close()でreadLine()からIOExceptionを
throwさせてcatchしています。

スレッドを停止するのに他にいい方法はないでしょうか?
0567初心者NGNG
サーバサイドのプログラミングで煮詰まってます。
ユーザが指定した検索条件から検索結果を表示するページを作成しているのですが、
検索結果が複数ページになった時、前のページ・次のページ等の
リンク(検索処理のURLに"?index=n"を付加)で移動させる為、
検索条件をscope="session"のbeanに格納する事にしました。
が、何故か次のページのリンクをクリックした時、
格納されていた筈のbeanのプロパティの値がnullになってしまいます。
何故でしょうか?
学習する時間が無いまま開発に入っていますので、
基本的な事が抜け落ちている可能性もありますが、
何か思い当たる事がありましたら、よろしくお願いします。
0568デフォルトの名無しさんNGNG
>>566
Socket#setSoTimeout() セットしてループしながらデータ読み込み。
停止する側から Thread#interrupt() で割り込み。
0569566NGNG
>568
やってみたんですが、Socket#setSoTimeout() の変更が利きませんでした。
なぜだろう?こんな感じでやったのですが。
class reader extends Thread{
...
run(){
 while(flag)
  try{
   String data= buffer.readLine();//bufferはsocketに接続
   System.out.println(data);
  }catch(Exceptione e){
   flag=false;
  }
}
...止めるルーチン
 socket.setSoTimeout(1);//readerのbufferはsocketに接続
 reader.interrupt();
socketを維持したまま、スレッドを止めたいのです。
Javaを始めて1週間の初心者なので、すみません。
0570566NGNG
すみません。上のは
class Reader extends Thread
....
止める側
Reader reader = new Reader(
です。とりあえず、BufferedReaderやInputStreamの仕様を
もっと読んでみます。
0571566NGNG
またまたすいません。>569のSocket#setSoTimeout() の変更は、
次回入力では利いていました。
0572デフォルトの名無しさんNGNG
>>569
ちがう。スレッドに割り込みが掛けられていないか定期的に確認するために
setSoTimeout() を設定して I/O ブロックを抜けれって意味。

public void run(){
  Socket socket = new Socket("www.2ch.net", 80);
  socket.setSoTimeout(1000);
  InputStream in = socket.getInputStream();
  byte[] buffer = new byte[1024];
  while(! this.isInterrupt()){
    try{
      int len = in.read(buffer);
      System.out.print(new String(buffer, 0, len));
    } catch(InterruptedIOException ex){/* */}
  }
  return; // クローズとかは自分でヤレ
}
0573561NGNG
>>562
それはswfファイルを<object>タグでHTMLファイルにHTMLで埋め込めばいいという意味でしょうか?
いろいろカスタマイズしたいのでできればアプリケーションとして独立させたいのですけど、なにかやり方をご存知でしょうか?
ちなみにswingで<object>タグで埋め込んでみても何も反応はありませんでした。
0574566NGNG
>572
どうもありがとうございました。要するに、readLineは使うなということですね。
オライリージャパンのJava ネットワークプログラミングを今よく読んでいたら、
readLineは使うなということが書いてありました。本に改行処理のコード
も書いていたので、572さんのコードと組み合わせてやってみます。

ほんとうに、ありがとう
0575デフォルトの名無しさんNGNG
Webアプリケーションに関する質問です。

同一の JVM 上で複数のweb-appを動かしている場合、
例えば「/abc」というコンテキストに属するクラスを
「/def」コンテキストのクラスから使用することは可能
なのでしょうか?
次のような構造の時に、AクラスからBクラスを使えるか
ということです。宜しくお願いします。

/abc
  /WEB-INF
    /classes
      /net
        /2ch
          /abc
            /A.class

/def
  /WEB-INF
    /classes
      /net
        /2ch
          /def
            /B.class
0576デフォルトの名無しさんNGNG
>>573
IEコンポーネントをSwing上で使えるようにがんばってみるとか。
0577デフォルトの名無しさんNGNG
>>575
クラスパス通ってるならできないと困ると思われ。
0578デフォルトの名無しさんNGNG
>>563で質問した者ですけど、ご指摘のとおり、
CLASSPATH=.;c:\j2sdk1.4.0\jre\lib;c:\j2sdk1.4.0\lib;c:\j2sdk1.4.0\lib\tools.jar;"C:\Program Files\Apache Tomcat 4.0\common\lib\servlet.jar";"C:\Program Files\Apache Tomcat 4.0\webapps\jsp10\WEB-INF\classes";
として、classpathのパス名にスペースがあるので、""で囲みました。
で、再起動して、再び、
C:\Program Files\Apache Tomcat 4.0\webapps\jsp10\WEB-INF\classes
にあるjavaファイルをコンパイルしたのですが、まだ同じ
エラーがでます。""の囲み方が間違ってますか?
0579デフォルトの名無しさんNGNG
JDIまたはJPDAについて分かりやすい解説のあるHPを教えろ。
0580デフォルトの名無しさんNGNG
EditorPaneを使って、簡単なブラウザを作ってみたんだけど、
ときどきエラーが出てくる。
↓
java.lang.NullPointerException
at sun.net.www.http.KeepAliveStream.close(KeepAliveStream.java:63)
at java.io.FilterInputStream.close(FilterInputStream.java:159)
at sun.net.www.protocol.http.HttpURLConnection$HttpInputStream.close
(HttpURLConnection.java:1283)
at java.io.FilterInputStream.close(FilterInputStream.java:159)
at javax.swing.JEditorPane.read(JEditorPane.java:514)
at javax.swing.JEditorPane$PageLoader.run(JEditorPane.java:551)

これって、どんなエラーなのか教えれ。
おながいします。
0581デフォルトの名無しさんNGNG
>>579
http://www.google.com/
0582デフォルトの名無しさんNGNG
>>578誰かわかりませんか?
何かお気づきの点がありましたら、お願いします。
0583JAVA初心者のCOBOLERrNGNG
>>580
漏れも同じようなものを作ってます。
ページの取得は多分GETPAGE(URL)で行ってると思うんだけど、
これの読み込み速度に回線の速度が追いついていないんじゃないでしょうか。
解決策は…どっかにバッファとしてURLからの入力ストリームを溜めておいて、
読み込みが終わったら一気に描画するとかでしょうか…。
言ってる本人もよく判ってないのですが(゜Jし゜)
0584デフォルトの名無しさんNGNG
一定周期で何かする、というルーチンをどうやって組ンでます?

例えば10秒周期でhoge()を実行する無限ループ、とかだと
for(;;){
 hoge();
 sleep(10000);
}
なンて書き方だと、hoge()の処理時間分だけ
どンどン周期がずれていくから、一日経つと
結構ずれるンだよね。
hoge()の実行時間が一定ならいいンだけど・・・

やっぱ、いちいちカレンダーを見るしかないンでしょうか?
0585デフォルトの名無しさんNGNG
タイマー
0586デフォルトの名無しさんNGNG
>>585
(゚∀゚)サンクスコ
探してたのはまさにコレだった
0587デフォルトの名無しさんNGNG
>>578
CLASSPATHだけど、以下のでいいんじゃない?
"もいらないよ。XPだけど、"で囲んでないよ。
CLASSPATH=.;c:\j2sdk1.4.0\lib\tools.jar;C:\Program Files\Apache Tomcat 4.0\common\lib\servlet.jar
0588デフォルトの名無しさんNGNG
java.lang.clone()を使おうとしたら
コンパイルエラーで
The method clone() from the type java.lang.Object is not visible
と出ます。
オーバーライドしているクラスでは
publicで宣言しているのですが・・・
public Object colne() {
try{
return super.clone();
}catch(Exception e) {
return null;
}
}

というか、Clonableをimplementするだけでいいんですね・・・
0589デフォルトの名無しさんNGNG
>>587

ありがとう。試してみます。
当方、98SEです。
0590デフォルトの名無しさんNGNG
>>587

だめでした。
となると、クラスパス以外に何か原因を考えた方が
いいのでしょうか。わからんです。。
0591デフォルトの名無しさんNGNG
>>590
ほんとにservlet.jarのパスあってる?
コマンドラインの引数でコンパイルしてみたらどうかな?

javac -classpath ".:C:\Program Files\Apache Tomcat 4.0\common\lib\servlet.jar" *.java
0592デフォルトの名無しさんNGNG
javac -classpath ".;C:\Program Files\Apache Tomcat 4.0\common\lib\servlet.jar" *.java

:と;間違えた。
0593588NGNG
で、誰か
The method clone() from the type java.lang.Object is not visible
が出る理由わかりませんか?
0594デフォルトの名無しさんNGNG
>>593
cloneがprotected
0595デフォルトの名無しさんNGNG
>>593
もちろん、API見てから書いてるんだろうな。
もう一回読んでみな、書いてあるから。
0596デフォルトの名無しさんNGNG
>>594
じゃあ、clone()ってどうやって使うんだ?
意味ないじゃん。
0597デフォルトの名無しさんNGNG
>>596
オーバーライドする。
0598デフォルトの名無しさんNGNG
>>596
子クラス作って権限緩和。
0599デフォルトの名無しさんNGNG
>>597
protectedをpublicでオーバーライドできなかったような・・・
0600デフォルトの名無しさんNGNG
>>600
できるよ。
答えはそこじゃないのに、、、。
マニュアル読めって、、、。
0601デフォルトの名無しさんNGNG
>>599だった。つい、キレがいいので間違った。
0602デフォルトの名無しさんNGNG
>>588
のところに書いてある通りでできるけど
0603588NGNG
再起動したらできました
IDEのバグですかね・・・

レスどうもです。
0604デフォルトの名無しさんNGNG
>>591
ありがとう。
教えてくれた
javac -classpath ".;C:\Program Files\Apache Tomcat 4.0\common\lib\servlet.jar" *.java
のコマンドでコンパイルすると上手くいくみたい。
一部、変なコンパイルエラーがでるファイルがあったけど。
やっぱり、servlet.jarのパスが通ってない見たいですね。
cドライブ直下にある「Autoexec.bat」ファイルを直接いらわずに
システム設定ユーティリティのAutoexec.batタブから
パスの編集したんだけど、どうもうまくいかないみたいです。
鉛筆みたいなマークが出てるのが気になるけど、それは関係ないかな?
そこでいろいろパスを指定してるようだったけど、
順番とか考えずに、classpathって項目を勝手に作ってしまったけど
いいのかな?
最初は「Autoexec.bat」から編集してたんだけど、どんどん汚いファイルに
なってきてるけど。。
0605デフォルトの名無しさんNGNG
>>604
Antの使い方を覚えよう!
システムの環境変数はあまりいじらない方がよろし。
0606デフォルトの名無しさんNGNG
>>604

システム設定ユーティリティのAutoexec.batタブから編集しようと
したんだけどそれでいいんだよね?

Antってなんですか?

0607デフォルトの名無しさんNGNG
>>604
悪いこと言わないから、本気でやるんだったら
ant使っておいた方が良いと思う。
0608デフォルトの名無しさんNGNG
>>606
antについては検索して。

別にautoexec.batはメモ帳かなんかで編集すれば良い。
autoexec.batを編集して再起動してるのか?
0609デフォルトの名無しさんNGNG
>>580
前スレ辺りで似た話題あり。

>>604
皆の言うとおり、Antを使うか(おすすめ)、
バッチファイルの使い方がわかるのであれば、
Dosプロンプト起動時にCLASSPATHを作っておいたバッチファイルから
読みこませたりすると、Autoexec.batが汚くならない。
0610デフォルトの名無しさんNGNG
Apache Jakarta Ant
http://jakarta.apache.org/ant/index.html
http://www.ingrid.org/jajakarta/ant/
http://objectclub.esm.co.jp/eXtremeProgramming/antdoc/PracticeAnt/ant_frameset.html

俺はJava開発者必須のツールだと思ってる
0611デフォルトの名無しさんNGNG
つーか知らないと結構弊害が出てくるようになってるんじゃない。
隣のやつが苦戦してた。
0612デフォルトの名無しさんNGNG
>>608

そうです。最初は、直接、書き込んでそれから再起動してました。

>>607-610

ant有名なんですね。610のリンクも参考にさせてもらうよ。
antなんか聞いたことなかったよ。
プログラマやるには覚えることいっぱいあるんだな。
皆はどれくらいでJAVAを使いこなせるというか
苦手意識がなくなったというか、仕事として、プログラマ
やっていけるようになった?
早く上達するには何に注意したらいいかな?
細かな文法の意味は、ほとんど覚えないで、
本見ながらとりあえず組むみたいなプログラムの書き方で
こんなことしてたら、あとあと伸びないかもと思い始めてる。
0613デフォルトの名無しさんNGNG
>>612
個人的な意見だが、
ガタガタ言わず、とにかく速度優先で作りたいものを作る。
理論は後からついてくる。
ハマる量が多ければ多いほど、力になる。

ただし、入門書はとりあえず読んだけどね。
0614デフォルトの名無しさんNGNG
>>576
SWTだとIEコンポーネントを使うのは簡単だけどね
0615デフォルトの名無しさんNGNG
>>613
あー、そうなの!?
てっきり、何も考えずに先すすむとあとで壁にぶちあたるみたいな
話があると思ったんだけど、そういう意見もあるんですねん。
0616デフォルトの名無しさんNGNG
>>613
激しく同意。結局本ばっかよんでる奴はプログラムも書かずこんなところで揚げ足取るだけで終わる。
0617デフォルトの名無しさんNGNG
ハマらないと、なぜそれが必要なのか結局理解できない。
WeakReference、listenerリークの回避、poolingなど。
0618デフォルトの名無しさんNGNG
>>615
まず、壁を体験しろ、ということです
0619デフォルトの名無しさんNGNG
>>613,616
うんうん。
いろいろ作っている過程で必要なことが腐るほど出てくるからそれを調べて覚えるのが楽だし、理解が速いと思う。
0620デフォルトの名無しさんNGNG
>>614
どうやって使うの?
0621デフォルトの名無しさんNGNG
>>620
SWTスレへ行け
0622デフォルトの名無しさんNGNG
com.oreilly.servlet.MultipartRequestの質問なのですが
どなたかわかりますでしょうか?

MultipartRequest multiRequest =
new MultipartRequest(request, tmpdir.getPath());

・・とすると以下の例外がでます


javax.servlet.ServletException: サーブレットの実行により例外を投げました
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
 :

root cause

java.lang.NoClassDefFoundError: javax/servlet/ServletRequest
at com.oreilly.servlet.MultipartRequest.(MultipartRequest.java:222)
at com.oreilly.servlet.MultipartRequest.(MultipartRequest.java:109)
at com.oreilly.servlet.MultipartRequest.(MultipartRequest.java:89)
    :
0623デフォルトの名無しさんNGNG
>java.lang.NoClassDefFoundError: javax/servlet/ServletRequest
書いてあるジャン

com.oreilly.servletの.jarはどこに置いてる?まさか jre/lib/ext とかじゃないよな
0624デフォルトの名無しさんNGNG
先生!質問!

class Hoge {
 public static void main(String args[]) {
  new Hoge();
 }

 Hoge() {
  ...
 }
}

みたいな感じで、
mainメソッドにはインスタンス生産だけしか書いておかないっていうのは、多用していいの?

上の書き方のほうが普通にmainメソッドに書いてくよりは便利かな〜と思ったから聞いてみまひた。
0625デフォルトの名無しさんNGNG
>>624
ちっさなさンプルソースか?せめて、
new Hoge().doSomething();

pvivate void doSomething() {
}
にしとけ。
0626デフォルトの名無しさんNGNG
>>625
?
0627デフォルトの名無しさんNGNG
PERLにおける前方参照
/(\w)dad(\w)/
の$1をゲットしたいんだけどどうやるの
0628デフォルトの名無しさんNGNG
>>627
group(1)
0629624NGNG
>>625
レスどうもです。

うっとおしいとは思いますけど、
何故そのようにしたほうがいいかを教えていただけると、なるほど!と思えるんで、
教えてくらさい。

×pvivate
○private
0630デフォルトの名無しさんNGNG
>628
thanks
↓に書いてあるネ
http://java.sun.com/j2se/1.4/ja/docs/ja/api/java/util/regex/Matcher.html#group()
0631デフォルトの名無しさんNGNG
>>630
ああ、maches()唱えてからじゃないと取り出せないから注意してね。
0632デフォルトの名無しさんNGNG
>631
findでもGETできたYO!
0633デフォルトの名無しさんNGNG
引数 int[] data でメソッドに渡されたものを、そのメソッド内で data[i].byteValue(); とかやると
cannot be dereferencedと怒られますが、これは何故なんでしょうか?
(int[]をbyte[]に変換する手段は無いのかな・・・)
0634624NGNG
>>633
(byte)でいいんじゃないんですか?

>>625
…ニゲタ?
0635624NGNG
>>634
うわっ。なんか違うっぽい。
>>633さん無視してくらはい。よく読んでなかった…。
0636デフォルトの名無しさんNGNG
>>634
いや、そう大きく間違ってはないと思われ。

0637デフォルトの名無しさんNGNG
>>624
Hogeの初期化だけで動くものならもちろん多用してOKだと思うよ。
HogeがたとえばGUIアプリのメインフレームとかならよくあるパターンだと思う。

逆にHogeの初期化以外の処理をHogeのコンストラクタに書く必要があるときは
スマートじゃないと思う。
いま思いつく例だとコマンドラインオプション文字列の解析とか。
0638624NGNG
>>637
回答ありがとうございます。
なるほど!と思いました。(・∀・)
0639デフォルトの名無しさんNGNG
コンパイラのダウンロードの仕方教えて下さい。
0640デフォルトの名無しさんNGNG
>>639
ダウンロードするコンパイラのURLをブラウザに入力してエンター
0641デフォルトの名無しさんNGNG
サンは英語ばっかっりで解らないんです。
0642デフォルトの名無しさんNGNG
>>641
戦う前から負けています。以上。
0643デフォルトの名無しさんNGNG
>>642
え、まじで?
0644デフォルトの名無しさんNGNG
>>643
JBuilderには古いJDK付いてくるけど?
0645643NGNG
JDK=SDK
なの?
0646デフォルトの名無しさんNGNG
>>645
戦う前の前から負けています。
0647デフォルトの名無しさんNGNG
>646
げ、マジ?
冗談でしょ?
0648デフォルトの名無しさんNGNG
>>647
正直、さじを投げた。
適当な入門書くらい読んでからきてくれ。
丸腰じゃ戦えん。
0649デフォルトの名無しさんNGNG
>>648
えーー。
そりゃないよーー。
つきあっちくらはい。
0650デフォルトの名無しさんNGNG
>>647
 >>10の上から3番目をクリック汁。
0651デフォルトの名無しさんNGNG
>>649
http://java.sun.com/j2se/1.4/ja/download.html
0652デフォルトの名無しさんNGNG
>>649
よく考えたら昔俺も英語苦手だったわ。
だから>>651に書いとく。がんばってくれ。
後、入門書くらいはほんと読んでください・・・。
0653デフォルトの名無しさんNGNG
>>652
ええーーー。
0654デフォルトの名無しさんNGNG
JREって何?
これだけでも教えてくらはい。
SDKの方ですよね?
0655デフォルトの名無しさんNGNG
>>654
もう死ね。それでいいじゃん。
0656デフォルトの名無しさんNGNG
VBのランタイムみたいなものだ>JRE
0657デフォルトの名無しさんNGNG
誰か別ネタふれよ
0658デフォルトの名無しさんNGNG
>>656
マジ?ダサッ
0659デフォルトの名無しさんNGNG
マジ話、なんでJ2SDKインストールするとJREまでインストールされるのかわからん。
LIBをJREにインストールしたいなれj2sdkフォルダにもわざわざインストールしてくれるなと思うが・・

0660デフォルトの名無しさんNGNG
>>623
java.lang.NoClassDefFoundError: javax/servlet/ServletRequest
at com.oreilly.servlet.MultipartRequest.(MultipartRequest.java:222)
at com.oreilly.servlet.MultipartRequest.(MultipartRequest.java:109)
at com.oreilly.servlet.MultipartRequest.(MultipartRequest.java:89)
・・・だからcom.oreilly.servlet.MultipartRequestは識別していると思ったのですが・・
cos.jarは手当たり次第に
j2sdkのlib/ext
jreのlib/ext
Tomcat4.1のcommon/lib
Tomcat4.1のserver/lib
にいれたけどダメでした・・なぜ!?(*_*)
0661デフォルトの名無しさんNGNG
>>660
>java.lang.NoClassDefFoundError: javax/servlet/ServletRequest
思ってるだけですね。クラスパス通す。
0662デフォルトの名無しさんNGNG
例外を出しているのは、
javax/servlet/ServletRequest になっていますよ。落ち着いて。
0663デフォルトの名無しさんNGNG
>>662
落ち着いてもわからないワタクシ・・・コード見直しても悪い箇所ないっぽいし・・あるんだろうか?もう一回みてみよ・・
0664ほげNGNG
文字列FFを数字256に変換する関数ありますか?
digitは調べたのですが、charで入力しなければならないので、F,Fは16,16と表現されます。後で掛け合わせて計算してもよいのですが、
楽な方法ないかなって思いまして。
0665デフォルトの名無しさんNGNG
1バイトの上位(又は下位)4ビットを2進数で参照するにはどうすれば良い
ですか。
例えば上位4ビットが1111(2進数)ならOKとかしたいのです。
0666デフォルトの名無しさんNGNG
汚いコードですまん。
BigInteger b = new BigInteger("FF", 16);
return b.intValue();
0667デフォルトの名無しさんNGNG
>>665
保守性を考えないのなら〜 &の論理和でGo〜
0668デフォルトの名無しさんNGNG
>>666
Integer.parseInt("FF", 16);の方が良い。
0669665 NGNG
667さん、もう少し具体的にお願いできませんでしょうか?
すいません。m(__)m
0670ほげNGNG
>>666,668ありがと。
あとchar型の配列をstringに直すにはどうしたらよいのでしょうか。
0671ほげNGNG
ごめん、String hoge=new String(Char[] char);
でいけた。
0672665NGNG
誰か私の質問よろしくです。m(__)m
0673デフォルトの名無しさんNGNG
昨日からcom.oreilly.servlet.MultipartRequestの質問をしてる者ですが・・
ようするにHTMLからファイルをアップロードできればいいのですが
みなさんはどうやってやってますか?
JavaMailとか使った方が一般的ですか??
0674デフォルトの名無しさんNGNG
>> 665
boolean hoge( byte b ){
 return ( (b & 0xF0) == 0xF0 )
}
これじゃだめ?
ツーかこれなにやってるかわからないなら、>>2-20参照汁
0675 ◆F52DmOxJlc NGNG
>>665
ここ読んでみ。下の方にサンプルもある。
http://java.sun.com/docs/books/tutorial/java/nutsandbolts/bitwise.html
たとえば 169 & 240 は次の通り。

 10101001
& 11110000
---------
 10100000
0676デフォルトの名無しさんNGNG
>>673
servlet.jarをロードしたクラスローダよりも上位のクラスローダがcom.oreillyを読み込んでいるからそうなる。
→javax.serveltからはcom.oreillyが見えるが、com.oreillyからはjavax.servletが見えない。

>cos.jarは手当たり次第に
これが最悪。
手当たり次第に置いたファイルを*全部*削除して、WEB-INF/lib だけに入れとけ

だいたいcom.oreillyなんてパッケージよく使う気になるな。あれはオライリ本買わないと使えないぞ。
ファイルアップロードなら検索すればサンプルがでてくるだろうに。
0677288NGNG
CJK互換漢字をJavaMailを使ってISO-2022-JPで送るにはどうしたらよいでしょう?

MimeMessage msg = new MimeMessage(session);
....
String message = "�� �� �� �ア �リ �� �� �X �^ �u �} �~ �� �� �� �� �� �� �� �� �ゥ �ア �ウ �エ �キ �モ �レ �� �� �� �� �I ";
msg.setText(message,"ISO-2022-JP");
Transport.send(msg);

こんな漢字に送るともう化け化けです。
0678デフォルトの名無しさんNGNG
>>677
自分でエンコードする・
0679デフォルトの名無しさんNGNG
メソッドのstatic、非staticって奴は何によって決まるのでしょうか?
0680デフォルトの名無しさんNGNG
>>667
&の論理和って何?意味不明。
0681デフォルトの名無しさんNGNG
age
0682デフォルトの名無しさんNGNG
>>679
staticを使うか使わないかだと思ふ。
0683677NGNG
>>678
自分でISO-2022-JPに変換するってことですか??
ちょっとそれはいきなり難しくないですか??

0684デフォルトの名無しさんNGNG
>>679
そのメソッドがインスタンスを必要とするかだろ。

必要としない場合でも、オーバーライドできるようにしたい場合や、
どちらがいいか悩むくらいなら迷わず非static。
0685682NGNG
>>684を見ると、自分の読解力の無さがよく分かる…。
鬱。
0686デフォルトの名無しさんNGNG
servletではなく、
classから、JSPをdispatchするってことはできるのでしょうか?
0687デフォルトの名無しさんNGNG
>>686
マルチポスト氏ね
0688デフォルトの名無しさんNGNG
スレッドを停止、開始を行うにはどういった方法がBESTですか?
0689デフォルトの名無しさんNGNG
>>688
wait,notify
0690デフォルトの名無しさんNGNG
>>689
ありがとうございました。
それにフラグ一つつけてあげればできそうです。
0691689NGNG
>>690
synchronizedも忘れずにチェックしなされ
0692デフォルトの名無しさんNGNG
忘れてました・・・
仕方ない、今日はこれ調べよう・・・
0693デフォルトの名無しさんNGNG
https://211.10.75.189/k-sfa/index.jsp
このページ、i-mode N503iで表示されません。
P504i では表示されるのですが、
表示させる方法をお分かりの人がいたら、教えてください。
サーバー構成は、Apache+SSL(Apache1.3.27 OpenSSL0.9.6g) です。
0694デフォルトの名無しさんNGNG
↑ブラクラ
0695初心者NGNG
GOUKEI 2
0 4
0.1 0.2 0.3
0.4 0.5 0.6
0.7 0.8 0.9
1.0 1.1 1.2
1 6
0.1 0.2 0.3
0.4 0.5 0.6
0.7 0.8 0.9
1.0 1.1 1.2
1.3 1.4 1.5

たとえばこのようなファイルがあり
GOUKEIの隣の2がすべてのオブジェクト数を表しているとします
次の行の0 4ってのが1個目のオブジェクトで[4][3]の行列を用意、
その次がデータで
その後にある1 6が2個目のオブジェクトが[6][3]の行列を用意してます
4や6などこれはnumberとしてます。
それで実際はGOUKEIの隣の数もファイルによって違い、オブジェクトの
中身も違ってきます。

続く〜
0696初心者NGNG
続き〜

double kekka[][];
int number;
....
//とりあえずgoukeisuu(ここでは2)を最初に読む
for(int i=0;i<goukeisuu;i++){
//i番目のオブジェクトのnumberを読む
kekka =new double[goukeisuu][3];
for(int a=0;a<number;a++){
//nextToken()やnvalなど使って1行づつ読み、以下の三つに入れていきました
kekka[a][0]=...  //1番最初だと0.1が入る
kekka[a][1]=... //1番最初だと0.2が入る
kekka[a][2]=... //1番最初だと0.3が入る
}
}
このような感じで作っていくとkekkaの配列にはgoukeisuu回ほどnewを繰り返してしまうので
ここの例でいうと[6][3]の最後のデータしか残りませんよね?
本当は
kekka0は[4][3]の領域確保してデータを入れる
kekka1は[6][3]の領域確保してデータを入れる
みたいに別々に保持したいんですがここでどういう書き方をすればいいのかわかりません
newのところを kekka(a) =new double[goukeisuua][3]
みたいな感じにしたいんですがなにか良い方法とかありましたらお助けください。
よろしくお願いします。
0697デフォルトの名無しさんNGNG
★最新情報★
★http://yahooo.s2.x-beat.com/linkvp/linkvp.html★
0698デフォルトの名無しさんNGNG
必要な領域を確定させてから生成。
0699デフォルトの名無しさんNGNG
>>695-696
オブジェクトにした方がいろいろ良いと思うけど、
どうしても配列でやりたいなら、以下のような感じだよ。
Javaの配列は、特殊なオブジェクトであることを利用するのさ。

Object[] array = new Object[goukeisuu];

for (int i = 0; i < goukeisuu; i++) {
//i番目のオブジェクトのnumberを読む
double[][] rec = new double[number][3];
for (int j = 0; j < number; j++) {
rec[j][0] = 1;
rec[j][1] = 2;
rec[j][2] = 3;
}
array[i] = rec;
}



で、使う場合は、例えば以下のようにして
目的の配列を取り出せばいいよ。

double[][] anyrec = (double[][])array[1];
System.out.println(anyrec[5][2]);
0700デフォルトの名無しさんNGNG
>>700は、

double[][][] array = new double[2][][];

としても同じだけど、3次元のまま使うのはおすすめできない。
0701初心者NGNG
>>699
丁寧にありがとうございましたっ!!
さっそくやってみます
ありがとうございました
0702デフォルトの名無しさんNGNG
>>665は、zoneBCDのヤシとは別人?
もし同じだったら、>>284は参考にならんかった?
0703デフォルトの名無しさんNGNG
他スレから誘導されました。

private int DatagramSocket ds;
って宣言の仕方おかしいですか?

Eclipseをつかっていまして
トークン"ds"に構文エラーがあります。正しくは";","."です。と表示されますが、
どういうことでしょうか。

0704703NGNG
あ、解決しました。
スマソ
0705デフォルトの名無しさんNGNG
Javaの参考書で勉強しているんですが、その中のソースで
ちょっと疑問に思ったことがあったので質問させてください。

public class DBAccess {
/* 〜中略〜 */
// DBから書籍情報を取得する
static BookData getBook(String primary_key) {
BookData bk = null;
// 書籍オブジェクトを生成して、書籍情報を格納する
bk = new BookData();
/* 〜中略〜 */

// 生成した書籍オブジェクトを返す
return bk;
}
/* 〜中略〜 */
}

これを他のクラスから
BookData bk = DBAccess.getBook(primary_key);
として呼び出します。

ここで思ったのですが、DBAccess.getBook()の戻り値である
BookDataオブジェクトはDBAccess.getBook()内で宣言されたものです。
ということは、
BookData bk = DBAccess.getBook();で
bkにBookDataオブジェクトのアドレスが渡されているのだとすれば、
C言語流の考えだとBookDataオブジェクトはDBAccess.getBook()内で
宣言されたオブジェクトですから、DBAccess.getBook()を抜けた時点で
解放されてしまう可能性がありますよね。

ここのところどうなってるんでしょうか・・・。ご存じの方お願いします。
0706705NGNG
ああ、なんか自己解決かも (ノД` ;)
static宣言してるから解放はされませんね・・・。
ごめんなさい。

質問を変えます、
BookData bk = DBAccess.getBook(primary_key);
ここで参照ではなくオブジェクトのコピーをbkに渡したい場合どうしたらいいでしょうか?
0707デフォルトの名無しさんNGNG
>>705
まず、705の方。Javaでは強い参照が残っているオブジェクトは解放されない。
オブジェクトを受け取った方がそのオブジェクトに対して、強い参照を持っている。

706の方。Javaの場合、複製をサポートしていないクラスは複製することはできない。
0708デフォルトの名無しさんNGNG
>1
なんで基本的にsage進行なんだ.あほか.
0709デフォルトの名無しさんNGNG
>>705
参照と実体の区別を意識した方がいい。staticか否かは関係ないよ。
C流に言うならnewはmallocと同じ。
BookData bk という変数はDBAccess.getBook()メソッドの中でのみ有効で、
そのメソッドが終了すると無くなるけど、
bkが参照しているBookDataオブジェクトはgetBook()終了後も生き続けます。
mallocでメモリリーク起きるようなもの。ただし、Javaではどこからも参照されなく
なったオブジェクトは自動的にそのうち廃棄される。
getBook()メソッドでは毎回別のBookDataオブジェクトを作っているので、
以下のコードを実行すると"違う"と表示される。
BookData bk1 = DBAccess.getBook("a");
BookData bk2 = DBAccess.getBook("b");
if( bk1==bk2){
 System.out.println("同じ");
} else {
 System.out.println("違う");
}
0710デフォルトの名無しさんNGNG
>>705
基本的に、returnで返される値は呼び出し元に戻るまで、
参照が維持されているから、GCの対象にはならないよ。
言語仕様を見てくれ。

>>706
Javaでは、複製は自分で実装することになっている。
基本的に、Cloneableをimplementsして、
clone()をオーバライドするわけだが、super.clone()で
すむと思っているヤシもいるようだけど、
そのオブジェクト固有のフィールドは自前で複製を
作る必要がある。その際、浅いコピーにするか、
深いコピーにするかちゃんと考える必要がある。
フィールドがStringとか値が書き換わらないオブジェクトなら、
浅いコピーで十分だが、setterで値が変更されてしまうような
フィールドは、影響度を検討して、深いコピーにするかどうかを
決める必要がある。

>>709
同じ値として扱うことも可能だよ。
その場合、equals()とhashCode()をオーバライドすることになる。
そのような例としては、Stringなどが代表的だね。
0711デフォルトの名無しさんNGNG
>>709
ごめん、コードをよく見てなかった。==で判定の場合はそうだね。
メモリ上の別な場所を参照しているから当然違うね。
0712デフォルトの名無しさんNGNG
JavaにはGotoはないのかよ!!
0713デフォルトの名無しさんNGNG
>>712
なんの為の例外処理なんだ・・・
0714デフォルトの名無しさんNGNG
>>713 (゚Д゚)ハァ
0715デフォルトの名無しさんNGNG
>>713
本来の使い方ではない&完全なGOTOの代替にはならない。バックジャンプできないし。
0716705NGNG
>>709
>>710
なるほど、要するに生成されたオブジェクトはどこからも参照されなくなるまで
廃棄されないってことですね。
丁寧な説明どうもです。すごく助かりました。
0717デフォルトの名無しさんNGNG
Win98SE + JDK1.3.1 です。

Frame を幾つか開いていると、
時折、モーダル Dialog が出ているかのように GUI に対する反応がなくなります。
このときには Windows の wav も鳴ります。(Toolkit の beep の時と同じ奴)
Frame は、継承しつつ内部に WindowAdapter を持っている奴ですが、
酷くなると単純に main から Frame を表示するプログラムさえ同様の症状に遭います。
表示させるときは show を使っていますが、setVisible でも起こります。

これは何かのバグでしょうか? 作法のようなものが必要でしょうか?
お教え下さい。
0718717NGNG
追加情報を。症状が出ている間は、
Alt + Tab のリストに、無反応な Frame が含まれなくなっています。
0719デフォルトの名無しさんNGNG
>>718
ごちゃごちゃ言わんとソース出した方が早くないか?
0720717NGNG
一度起こるとこれでも起こるようになるんです。

import java.awt.*;

public class Tes {
public static void main(String[] args) {
Frame f = new Frame();
f.setSize(200, 120);
f.show();
}
}

WinMe の PC でもたまに起こっています
0721デフォルトの名無しさんNGNG
713は中卒
0722デフォルトの名無しさんNGNG
>>712
ラベル付breakもあるでよ
0723デフォルトの名無しさんNGNG
>>721
多重にネストしたループから脱出するためのbreak,continueのラベル移動以外で、
goto使う必要なんてあんの?
0724デフォルトの名無しさんNGNG
notify(),wait()を使ってスレッドの停止、再開を行う場合は
スレッドが一つしかない場合では停止はできても再開はできないのでしょうか?
キー入力でそれを実現したいのですが・・・
0725デフォルトの名無しさんNGNG
>>724
>キー入力でそれを実現したいのですが・・・

???
0726デフォルトの名無しさんNGNG
>>724
そらそうだな。キー入力待つ奴を別スレッドにするしか。

っていうか空ループとかじゃだめなの?
0727デフォルトの名無しさんNGNG
>>726
そのてがあったかあぁぁぁ!!!!!!!!!
ありがとうございました。早速試してみますね。
0728デフォルトの名無しさんNGNG
どなたかjava.awt.MenuBarの背景色の変更の仕方を教えてください。
出来ないのなら出来ないといってください。
0729デフォルトの名無しさんNGNG
>>728
http://java.sun.com/j2se/1.3/ja/docs/ja/api/java/awt/MenuBar.html
0730デフォルトの名無しさんNGNG
Jtreeで最初から子ノードが展開された状態で表示したいのですが
どうすればよろしいでしょうか?
0731デフォルトの名無しさんNGNG
>>729
それはもう見ました。
それっぽいメソッドがないんで、何か他に方法が
あるのかと思って聞いてるんです。
わかるんなら教えてください。
てゆーかその中に変更する方法があるんですか?
答え知っててそのリンク貼ってんの?
0732デフォルトの名無しさんNGNG
>>731
>それっぽいメソッドがないんで、何か他に方法があるのかと思って聞いてるんです。

できないことをわざわざ書く奴はいない。アホか。と。
0733デフォルトの名無しさんNGNG
>>732
まじで出来るの?
何回読んでもわからないんですけど。
親クラスにも見当たらないし。
勿体つけないで教えてください。(とか書くと教えないんだろーなー)
てか出来ないんでしょ?
0734デフォルトの名無しさんNGNG
>>733
日本語理解できない人には無理です。
0735デフォルトの名無しさんNGNG
>>733
>>732できないって言ってるじゃん。
0736デフォルトの名無しさんNGNG
質問です
アクションリスナを載せた内部クラスで
初期化した変数を別のクラスに参照渡したいのですが
どうしたらいいんでしょうか?宜しくお願いします。
0737デフォルトの名無しさんNGNG
IEのツールバーにある戻るボタンのように履歴を実装したいのですが、
何か参考になるものがあったら教えてください。
0738デフォルトの名無しさんNGNG
>>737
Vector
0739デフォルトの名無しさんNGNG
クラスパス上に有るクラス一覧を
取得する方法はないでしょうか?
パッケージとインターフェイスのみがわかっている状態で、
そのインターフェイスを実装するクラスをすべて
取得したいのです。
宜しくお願いします
0740デフォルトの名無しさんNGNG
>>739
環境変数読んでそのディレクトリFile#findで列挙すれば?
074177NGNG
最近迷惑メールの中で差出人が自分になってることが多いのですが、それはどうなってるのですか!?
なんか業者はそうなるようなコマンドとかスクリプトとか使ってるのですか?
からくりを教えてください!!
       
0742デフォルトの名無しさんNGNG
>>741
FROMは自己申告。アホか。
0743デフォルトの名無しさんNGNG
配列についての疑問なんですが・・・。

int[] test = new int[3]; とやってから適当な数値を3つ放り込み、
classA.hoge( test ) で classAの中にある

public void hoge(int[] data ) {
    System.out.println( data.length ); }

を呼び出すと、3 が表示されるかなと思ったんですが、出てきたのは 13。
呼び出す前はちゃんと 3 なのですが、何故なんでしょうか・・・。
0744 ◆F52DmOxJlc NGNG
>>743
ちゃんとできるよ。あなたのソース見せて。

import java.util.*;

public class hoge {
 public static void main (String args[]) {
 int [] test = new int[3];
 for (int i = 0; i < 3; i ++) {
  test[i] = i;
 }
 System.out.println(test.length);
 hero hero1 = new hero();
 hero1.moe(test);
 }
}

class hero {
 public void moe (int [] data) {
 System.out.println(data.length);
 }
}
0745デフォルトの名無しさんNGNG
>>743
ありえん。
0746739NGNG
>>740
その方法も考えたのですが、jarとかwarになったときに・・・
でもjava.util.zipを使えって話にもなりそうだが・・・
やっぱり外部ファイルにクラス名を記述するのがいいのかな
0747デフォルトの名無しさんNGNG
>>746
>jarとかwarになったとき

はクラスパスにファイル名まで指定しなくてはいけない。よって問題なし。
0748739NGNG
>>747
ん?結局はやっぱりzip解凍してクラス取得ですか?
0749デフォルトの名無しさんNGNG
>>730誰かこたえてー。
0750743NGNG
>>744-745 ありがとうございます。
すみません、13じゃなくて、3にデバッグ用の文字がくっついてたようです。
お騒がせしました・・・ケーブル抜いてルータ投げて逝ってきます。・゚・(ノД`)・゚・。
0751デフォルトの名無しさんNGNG
>>750
PCは下記住所に送ってくれ。大事にする。
0752デフォルトの名無しさんNGNG
>>740 環境変数だと実行系依存するから危なそう。システムプロパティのほうが
まだましっぽいけど、例えばSunのJ2REだとjava.class.pathにはユーザクラス
パスしか入っていなくて、ブートストラップクラスパスとかはsun.boot.class.path
に入るからこれまた実行系依存だね。だから例えばBeanShellなんかがクラスを
探す方法はSunのJ2REに限定してたきがする。なにか汎用的な方法があったら、
私も知りたいので誰か教えて。
0753デフォルトの名無しさんNGNG
なんかこのままスルーされそうなんで
>>736を宜しくお願いします。
0754デフォルトの名無しさんNGNG
>>753
つぅか意味不明でみんな無視を決め込んでるだけかと。
0755デフォルトの名無しさんNGNG
>>753
「内部クラス」と「他のクラス」を具体的に示したほうが分かりやすいと思う
0756デフォルトの名無しさんNGNG
>>752
こういうのってjakartaあたりで作ってないのかな。
0757デフォルトの名無しさんNGNG
>>754-755
なるほどwすみませんでした。例えば
class A{
int i;
---
class B implements ActionListener{
---
i=100;
}
のiを別クラスのclassCで使いたいのですが…
初心者なもんでこれ以上うまく説明できないので
理解できた方は翻訳お願いします(ノД` ;)
0758デフォルトの名無しさんNGNG
>>757
class A{
public int i;

〜
0759デフォルトの名無しさんNGNG
new B().iをCに渡せばいいんじゃない?
0760デフォルトの名無しさんNGNG
>>752
ちなみにJava CookBookという本にはこう書いてある。
Q.環境変数はどうやって取ったらいいですか?
A.やるな。
0761デフォルトの名無しさんNGNG
>>730
ち、しかたねぇな。
自分で展開してから表示するしかない。
リスナーとか設定する前にやれよ。

int rc = tree.getRowCount();
for (int i = 0; i < rc; i++) {
tree.expandRow(i);
rc = tree.getRowCount();
}
0762デフォルトの名無しさんNGNG
>>760
環境変数とかってあまり推奨されてないよね。
Class[] classes = HOGE.getClasses("java.lang.*");
みたいなのがあればいいけどなー
0763デフォルトの名無しさんNGNG
レス有り難うございます。
new B().iですか。それで出来たんですね。前やったときは
出来なかったのでもう一度ためしてみます。

ActionListenerを載せた内部クラスでiを初期化したから
Aのiにもその値が入ると思っていました。
なんでiをBで初期化したあとでnew A().iしてもnullなんでしょうか?
自分でもなにいってるかわからない・・・意味不明ならスルーしてください。
とりあえず有り難うございました


0764デフォルトの名無しさんNGNG
>>761丁寧な答え本当に有難うございます!
助かりますた.
0765デフォルトの名無しさんNGNG
環境変数すら拾えないって不便だねえ。
環境変数LANGでロケールを切り替えたいんですが?みたいな。
0766デフォルトの名無しさんNGNG
>>765
Javaですることでもあるまい。

と、言うかアプリが勝手に環境変数いじるのはどうよ?
0767デフォルトの名無しさんNGNG
>>765
同感。でもロケールは得られたような・・・

環境変数もそうだけど、Javaのこのへんの無理な仕様は、
小事にこわだって大事をおろそかにする馬鹿の典型だね。
0768752NGNG
>>760 で、そのやるなって理由が環境変数という仕組み自体が実行系依存だから...
なのよ。ちなみにいま調べてみたけど、j2reだとデフォルトクラス
ローダはsun.misc.Launcherの内部クラスで、URLClassLoaderの
サブクラスになってる。sun.misc.Launcher自体のメソッドからも、
URLClassLoaderのメソッドからも検索パスの取得はできるけど、これなら
システムプロパティからでも実行系への依存度はかわらないね。
0769デフォルトの名無しさんNGNG
>>763
プリミティブ型だとiはnullにはならないよ。
ActionListenerって使ったことないから分らないけど
Bのフィールドが初期化されたことをAは知ることできないんじゃないの?


0770デフォルトの名無しさんNGNG
環境変数に依存してたらマルチプラットフォームは実現できないでしょ。
Cみたいに環境移行するたびにコンパイルしなおさなければいけないし。
でもロケールは取得できるよ。
0771デフォルトの名無しさんNGNG
環境変数に依存してたらマルチプラットフォームは実現できないでしょ。
Cみたいに環境移行するたびにコンパイルしなおさなければいけないし。
でもロケールは取得できるよ。
0772デフォルトの名無しさんNGNG
Javaでマルチプラットフォームってネタだろ。
誰もそんなこと期待してないし。
0773デフォルトの名無しさんNGNG
もしかして、771までの一連の書きこみのは、
クラスパスにあるクラスの情報取ろうとしてるものやったんすか?
なんでまた、環境変数の話題に?
0774デフォルトの名無しさんNGNG
>>773
クラスパスは多くの環境では環境変数に登録されてます。
0775デフォルトの名無しさんNGNG
別に使いたいやつは、java.lang.System.getenv(String name)
使えばいいんじゃねーの。可搬性は自分で判断することで他から
いろいろ言われるすじあいじゃねー。って、Sunのコンパイラからは
文句いわれるか。
0776デフォルトの名無しさんNGNG
>>774 最近ブートストラップパスは環境変数で指定されないから...
話がループしているね。
0777デフォルトの名無しさんNGNG
>>772
私は普段からUNIX上で稼働するシステムをWindows上で開発してますが何か?
WinでearファイルにしてUNIX上にデプロイしてますが何か?
0778デフォルトの名無しさんNGNG
>>772
私は普段からUNIX上で稼働するシステムをWindows上で開発してますが何か?
WinでearファイルにしてUNIX上にデプロイしてますが何か?
0779デフォルトの名無しさんNGNG
おいらも開発はWindowsだけど
実行環境はLinuxだな。
文字コード関係が氏ぬほどウザイ。
んで、結局クラスパス上のクラスを
不完全な名前で取得する方法ってないのかな。
0780デフォルトの名無しさんNGNG
earファイルって何ですか?
jarとかwarの仲間?
0781773NGNG
クラスファイルの置き場所が知りたいの?
クラスパスが通っているクラスが知りたいの?
後者なら、別の手もあるんじゃない?
0782デフォルトの名無しさんNGNG
>>779 beanshellのソースでも漁れ。
0783デフォルトの名無しさんNGNG
>>780
J2EEアプリケーションのアーカイブ形式。
0784779NGNG
>>781
クラスパス上にあるクラスをクラス型で取得したいのです。
具体的に何をやりたいのかというと、
特定のパッケージ内で特定のインターフェイスを実装した
クラスを全取得したいのです。
取得するときは、パッケージ名とインターフェイス名は
知っている状態で、クラス名は何も分らないという状態です。
0785782NGNG
なんか煽っているみたいだったから、自分で見てみた。
ttp://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/beanshell/BeanShell/src/bsh/classpath/BshClassPath.java?rev=1.17&content-type=text/vnd.viewcvs-markup
ちゃんとjar/zipの中も見てくれている。あとは、
ttp://java.sun.com/j2se/1.4/ja/docs/ja/api/java/lang/Class.html#getInterfaces()
で一個ずつチェック。

>>784 ほんとに条件/目的はそれだけなのか?
746 の「やっぱり外部ファイルにクラス名を記述するのがいいのかな」っての
読む限り、他の条件/目的がありそうだ。例えば、クラスローダ中を一度
通ったクラスだけ調べられればいいとか条件があればより楽な方法はあるやね。
0786デフォルトの名無しさんNGNG
>>784
Javaのクラスって、必要になったときにクラスローダで
動的に読み込まれるはずだから (ネットワーク越しとかも可)、
784 そのままの目的はたぶん達成できないだろうね。
0787デフォルトの名無しさんNGNG
"てすと" == "てす" + "と"
はどうしてtrueになるんですか?

String str = "てす";
"てすと" == str + "と"
はfalseになりました。
0788デフォルトの名無しさんNGNG
>>787
>"てすと" == "てす" + "と"
コンパイルの時点で結合されて
"てすと" == "てすと"
にされてるんじゃないか?

>String str = "てす";
>"てすと" == str + "と"
>はfalseになりました。
final String str ="てす";
"てすと" == str + "と"
にすると true になるみたいだし。
0789デフォルトの名無しさんNGNG
>>787
コンパイラの実装による。
コンパイラが最適化を行った結果そうなることもあるが言語仕様としては
そうなることは保証されていないのでそういった動作を前提にしたプログラムを
作らないように注意しよう。
0790デフォルトの名無しさんNGNG
>>787
コンパイラの実装による。
コンパイラが最適化を行った結果そうなることもあるが言語仕様としては
そうなることは保証されていないのでそういった動作を前提にしたプログラムを
作らないように注意しよう。
0791779NGNG
>>782
サンクスコ。
ソースを落としてきたので見てやってみます。
目的って言うのは、あるインターフェイスを実装している
クラスを実行したいのです。。。
プラグインみたいな使い方が出来ないかなと思って・・・
0792いよぅNGNG
Exception in thread "main" java.lang.NoClassDefFoundError:

コンパイルした後、実行したらこんなエラーが出てしまいます。
わかる方は、お願いします。
0793デフォルトの名無しさんNGNG
>>792
>>1。お前はアホなのか?
0794いよぅNGNG
なにぶん初心者なので、、、、
0795デフォルトの名無しさんNGNG
>>794
書いてあること読めないのは初心者以前の問題だろう。
0796デフォルトの名無しさんNGNG
>>794
それ以前に日本人かどうかもあやしいな
0797いよぅNGNG
訳してみると、クラスの定義が見つからないですな?
スタートアップJavaとかいう本に、付属してるCDの中のサンプルを
コンパイルして、実行してみたのですが、このようなエラーが出たので
聞いてみたのです。
0798デフォルトの名無しさんNGNG
>>797
ごちゃごちゃ言わんと>>1ヨメというのが聞こえんか?
0799デフォルトの名無しさんNGNG
どう訳したらそんな日本語になるのだろうか。
ていうか>>1を読めという>>793の親切なレスを無視しているあたり、中学生?
0800デフォルトの名無しさんNGNG
>>797
>>1読めっていわれても読めませんか?
『Exception in thread "main" java.lang.NoClassDefFoundError: Hello』>>2

二度と来るな。氏ね。
0801デフォルトの名無しさんNGNG
そして「釣れた」という。
0802デフォルトの名無しさんNGNG
ツレタ(・V・)
0803いよぅNGNG
釣れたw
0804いよぅNGNG
おおー!こんな所に!気が付かなかった。すまそ
0805デフォルトの名無しさんNGNG
>>798
793では、793と1があほだと言っている、と勘違いしたのでしょう。
0806デフォルトの名無しさんNGNG
>>805
名前かくさんでいいぞ(*´・ω・`*)イヨウ
0807いよぅNGNG
>>805
そのとうり!動きましたありがとうございました
0808デフォルトの名無しさんNGNG
http://java.sun.com/j2se/1.4/ja/download.htmlの日本語版 J2SE 1.4.0 ドキュメントっていうのDLしたのですが、
インストールの仕方がわかりません。。
誰かこの次にする作業を教えてくださ〜い
0809デフォルトの名無しさんNGNG
>>808
ただの「.zip」ファイル。
べらぼうなファイル数なんで解凍場所気をつけれ。
0810デフォルトの名無しさんNGNG
ってかこれSDKじゃねーじゃん
いらんもんDLしてしもた〜〜
0811デフォルトの名無しさんNGNG
namazu等で検索できるようにしておくとgood
0812デフォルトの名無しさんNGNG
Swingで質問します
JBottun等をクリックした時にブラウザを開き設定されたURLへ
ジャンプする機能をつけたいのですが、方法がわかりません。
よろしくおねがいします
0813デフォルトの名無しさんNGNG
http://digikei.kir.jp/
0814デフォルトの名無しさんNGNG
>>812
藁
0815デフォルトの名無しさんNGNG
基本的なことのような気がするけど、分からないのでお助け下さい。
以下のようなことやりたいんですけど、コンパイルが通りません。
まぁ、確かに危ういことやってるような気もするのですけど、
どういう理由でコンパイルが通らないのかがよく分かりません。
こういう風に、条件によって配列を異なる初期化をしたいとき、
どうするのがいいんでしょう?

int[] hogehoge( int a ){
if( a == 0 ){
int[] b = { 40,90,20, 0, 〜〜〜 };
}
else if( a == 1 ){
int[] b = { 30,30,20, 0, 〜〜〜 };
}
return b;
}
0816デフォルトの名無しさんNGNG
>>815
ありがとうございました。よくわかりました。
0817デフォルトの名無しさんNGNG
>>815
コンパイルエラーでエラー内容書かない奴ってアホだと思う。
0818デフォルトの名無しさんNGNG
>>816-817
まぁそういわず……ということは、Javaの文法としてはそんなに間違って
ないのかな?
エラー内容さらしますので、よろしくお願いしますです。

--

シンボルを解釈処理できません。
シンボル: 変数 b
位置 : toroChangerCanvas の クラス
return b;
^

やってるのはiアプリです。
iアプリとかあんまり関係ないようかと思ったんでここで聞いてる次第。
0819818NGNG
関係ないよう → 関係ない内容
0820デフォルトの名無しさんNGNG
>>815
変数のスコープって知ってる?
ifブロックの中で宣言した変数はそのブロックの中でしか有効でない。
elseブロックも当然同じ。
変数bはメソッド変数として宣言するがよろし。つまりif〜elseブロックの外側ね。
0821デフォルトの名無しさんNGNG
>>815
変数のスコープって知ってる?
ifブロックの中で宣言した変数はそのブロックの中でしか有効でない。
elseブロックも当然同じ。
変数bはメソッド変数として宣言するがよろし。つまりif〜elseブロックの外側ね。
0822820/821NGNG
スマソ。某2ちゃんねるビューア使っているんだが、この板に限ってなぜか2重書き込みされてしまう。他意はない。
0823820-822NGNG
と思ったら今度は大丈夫ぽ・・・・
0824815NGNG
>>820
サンクス。
そういうことですか。理解しました。
んー、では、こういうふうにint配列を、条件によっていろんな値で
初期化するには、要素ひとつひとつ代入するしかないってことですかね。
要素数が多くて大変めんどくさいのだけど・・・
0825812NGNG
無視かよ!!もうこねーよ!
0826815NGNG
ひらめいた。こうすればいいのか。

int[] hogehoge( int a ){
int[] c = null;
if( a == 0 ){
int[] b = { 40,90,20, 0, 〜〜〜 };
c = b;
}
else if( a == 1 ){
int[] b = { 30,30,20, 0, 〜〜〜 };
c = b;
}
return c;
}

ちょっと回りくどいけど……これが一番いい方法かな?
0827デフォルトの名無しさんNGNG
JPDAのいい日本語ページないですか?
グーグルじゃあ、ろくなのひっかかりません。
0828デフォルトの名無しさんNGNG
>>826
int[] hogehoge( int a ){
int[] b = null;
if( a == 0 ){
eb = { 40,90,20, 0, 〜〜〜 };
c = b;
}
else if( a == 1 ){
b = { 30,30,20, 0, 〜〜〜 };
c = b;
}
return c;
}
0829デフォルトの名無しさんNGNG
int[] hogehoge( int a ){
int[] b;

if( a == 0 ){
b = new int[]{ 40,90,20, 0, 〜〜〜 };
}
else if( a == 1 ){
b= new int[]{ 30,30,20, 0, 〜〜〜 };
}
return b;
}
でいいだろ。javaの文法の基本。
0830815NGNG
>>828
???
b = { 30,30,20, 0, 〜〜〜 };
のところが通らないかと……

>>829
サンクス。俺が目指していたのはこれだよ。
しかし、
b = new int[]{ 40,90,20, 0, 〜〜〜 };
なんて書き方、うちにある初心者向けの本には載ってない。
とにかく助かった。
0831デフォルトの名無しさんNGNG
>>825
Runtime.exec("explorer http://www.yahoo.co.jp/");
0832811NGNG
ナマズで検索できるようになって、楽しくなってアレコレ検索してみたよ。
それで分かったんだが、JDKの日本語訳は糞だな。
0833デフォルトの名無しさんNGNG
>>832
プ。あれほど日本語版日本語版言っといて・・・
0834デフォルトの名無しさんNGNG
>>832
機械翻訳よりはマシだろ。贅沢言うな。
0835ほげNGNG
J2SEで使える赤外線通信用のクラスってありますか?iApply用のはあるみたいですが。
フリーのクラスでも教えてもらえるとうれしいです。
0836デフォルトの名無しさんNGNG
>>834
「Serializable=直列化」って訳は意訳だったのか?。
0837デフォルトの名無しさんNGNG
>>836
1:1対応させやすくてよし。

っていうかプログラミング言語に限っては直訳は多いと思われ。名前空間とか。
ハッシュ=連想配列とか変に意訳しようとして死んでる例もある。
0838デフォルトの名無しさんNGNG
もともと連想配列はlispのassociation listのことだったんじゃないかなあ
で機能が似てるからハッシュにも名前を流用したと
0839デフォルトの名無しさんNGNG
英語ドキュメントがなんとか読めるのは、
日本語ドキュメント上で専門用語がほとんど直訳orカタカナ化しただけだから、
とも思える。
0840デフォルトの名無しさんNGNG
public String httpget(URL url) throws Exception{
int character;
String s;

URLConnection urlconnection = url.openConnection();
s="";

int contentlength = urlconnection.getContentLength();

if(contentlength > 0){
InputStream in = urlconnection.getInputStream();

while((character=in.read()) != -1){
s+=(char)character;
}
in.close();
}

return s;
}

こんなんやってJEditorPaneにsettextしてわーい簡易httpクライアントできたー
ってやりたかったんですがなんかうまくいきません。
出力されたのが
<HTML><HEAD><TITLE>2?????????????????±?≫</TITLE>
っていう感じになっちゃいます。

HTML表示させるにはどうしたらいいでしょう。
0841デフォルトの名無しさんNGNG
>>840
>InputStream in = urlconnection.getInputStream();
InputStreamReader in = new InputStreamReader( urlconnection.getInputStream() );
0842デフォルトの名無しさんNGNG
>>841
何が来るかわかんねーならとりあえず "JISAutoDetect" を付けておいた方が
良くないか? まぁちゃんとやるなら Content-Type や <META> タグを見るという
方がいいけど。
0843デフォルトの名無しさんNGNG
>>840
>s+=(char)character;

強烈に遅いはず。
0844デフォルトの名無しさんNGNG
下記のようにコードを書いたのですが、何度やっても、内部サーバエラーがでてしまします。
セッションのテストをしていて、1回目の訪問には「aaa」を返して、更新するとそれ以降、「bbb」を返すというようにしようとしてます。
どこが問題かわかるでしょうか??

『jsp』
<%@page contentType="text/html; charset=Shift_JIS"%>
<jsp:useBean id="sess" class="jspbean.JspBean" scope="session" />
<html>
<head><title>JspBean</title></head>
<body>
<%= sess.getset() %>
</body>
</html>

『bean』
package jspbean;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class JspBean
{
private String sval = "aaa";
JspBean(){}
public String getset(){
 if( sval.equals("nothing") ){
  sval ="bbb";
  return "nothing";
 }else{
  return sval;
 }
}
}
0845デフォルトの名無しさんNGNG
844です。
すみません。『bean』の下の方の部分間違えました。
正しいのです。↓

private String sval = "aaa";
JspBean(){}
public String getset(){
 if( sval.equals("aaa") ){
  sval ="bbb";
  return "aaa";
 }else{
  return sval;
 }
}
}
0846デフォルトの名無しさんNGNG
で、どんな例外が出てるんですか?
0847デフォルトの名無しさんNGNG
こんな例外です。


root couse
java.lang.InstantiationException: class jspbean.JspBean : java.lang.IllegalAccessException: Class java.beans.Beans can not access a member of class jspbean.JspBean with modifiers ""
0848デフォルトの名無しさんNGNG
>>845
コンストラクタをpublicにして試してみて。
0849デフォルトの名無しさんNGNG
>>845

ありがとうございます。できた。
たぶん、できないだろうと思ってたんだけど、
コンストラクタにpublic付けないだけで、jspからアクセスできなく
なるんですね。サンクス。
0850デフォルトの名無しさんNGNG
12月からJAVAを始めた新人です。
素朴な疑問ですが、教えてください。

ResultSetで取り出した項目「処理年月日」('20021215'のように入っています)を
文字列から数値型へ変換するのに

int SyoriYmdint = Integer.parseInt(rs.getString("SYORI_YMD"));

とした場合、結果は8桁の数値になると思いますが、これはint型の桁数を
超えてしまうのでダメでしょうか?
0851デフォルトの名無しさんNGNG
>>850
intの桁数って何じゃらほい?

intは31bit分の正の整数を扱えます。
0852デフォルトの名無しさんNGNG
すいません。short型と間違えてました。
0853デフォルトの名無しさんNGNG
byte a;
が16進の0xF0から0xF9の範囲内かチェックするので、
if (a >= 0xF0 && a <= 0xF9) としたのですが、うまく判定されません。
どこが問題でしょうか?
0854デフォルトの名無しさんNGNG
こんにちは、
ほんとに初心者でプログラム組んだ事無いんですが、この度javaを勉強してみたいと思いました。
本屋に行ってjavaの本を一冊と思いましたが多すぎてよくわかりませんでした。
そこで、ここにいる皆さんが初めてjavaをやるときに買った本をお聞きしたいです。
どうか宜しくお願いします
0855デフォルトの名無しさんNGNG
>>854
Sunの売れ残りの本を教科書として買わされた。

でも、さすがオフィシャルで一通りのことは書いてあった。

はっきり言って自分で読んでわかりやすい本。来れにつきる。
0856デフォルトの名無しさんNGNG
>>853
よくわからんが・・・単純に1バイトが0〜9の範囲か聞くんじゃダメなのかな?
0857デフォルトの名無しさんNGNG
>>853
何か問題ですか?

0858デフォルトの名無しさんNGNG
>>1
     ∧_∧∩ / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
    ( ´∀`)/<先生!こんなのがありました!
 _ / /   /   \___________
\⊂ノ ̄ ̄ ̄ ̄\
 ||\        \
 ||\|| ̄ ̄ ̄ ̄ ̄||
 ||  || ̄ ̄ ̄ ̄ ̄||
http://freeserver.kakiko.com/hiroyuki/
0859デフォルトの名無しさんNGNG
class a{
public static void main(String args[])
{
String str="Hello";
String stru=str.toUpperCase();
String strl=str.toLowerCase();
System.out.println("元の文字列"+str+"です");
System.out.println("大文字に変換した文字列"+stru+"です");
System.out.println("小文字に変換した文字列"+strl+"です");
}
}
どうですか?
0860デフォルトの名無しさんNGNG
853です。
00Q というような文字列を1byteずつ取り出して判定しています。
1byte目は0なので、これは16進で0xF0なのでokだとおもうのですが、
条件式のelseでエラーになってしまいました。
ちなみに、その内容をSystem.out.printlnで見たところ48となってました。
(何のコードだろう?)
上記例だと、00Q が 48 48 81 ですべてエラーとなっていました。
0861デフォルトの名無しさんNGNG
>>859
public class aの方がいいよ。
0862デフォルトの名無しさんNGNG
>>860
間違いなく'0' == 48ですけど。
0863デフォルトの名無しさんNGNG
F0ではないのですか?
0864デフォルトの名無しさんNGNG
>>863
http://www.psl.ne.jp/perl/pdojo00b.html

48 = 0x30
0865デフォルトの名無しさんNGNG
元データが汎用機(富士通?)からくるのです。
それは符号付10進?というものらしくて、123なら F1 F1 C3 とか
-456なら F4 F5 D6 とかはいっています。
これがそのまま、ORACLE上の文字列に入っており、数値の判断をしたいのです。
うーん。。。
0866デフォルトの名無しさんNGNG
System.out.println("Help me !");
System.err.println("Help me !");
両者の違いを教えてください。
0867デフォルトの名無しさんNGNG
>>865
ガイシュツ。>>284見れ。
0868デフォルトの名無しさんNGNG
>>866
標準出力と標準エラー出力
0869デフォルトの名無しさんNGNG
何度も申し訳ありません。284を見た上での質問です。
865に書いたデータが実際ORACLE上では、00Qといったように入っています。
これを、byte a[]; 格納後、1byteずつ取り出して、数値チェック(0xF0から0xF9の範囲内かなど)しています。
if (a[i] >= 0xF0 && a[i] <= 0xF9) としたのですが、うまく判定されません。
どこが問題でしょうか?
0870デフォルトの名無しさんNGNG
>>869
だからJavaタンかSQLタンが親切にASCIIに変換してくれてるんだと思われ。
0871866NGNG
>>868
標準出力と標準エラー出力の違いを教えてください。
言葉が違うというくだらない答えは却下します。
0872デフォルトの名無しさんNGNG
>>871
標準出力:処理結果などを出力する場合に使用
標準エラー出力:主にエラーを出力する場合に使用


共にデフォルトではコンソール(ディスプレイ)に割り当てられている。
リダイレクトでファイル/スペシャルファイルにアサイン可能。
0873866NGNG
>>872
用途の違いだけなのですか?
技術的(仕組み的)には変わらないのですか?

両方とも
共にデフォルトではコンソール(ディスプレイ)に割り当てられている?
リダイレクトでファイル/スペシャルファイルにアサイン可能?
0874デフォルトの名無しさんNGNG
>>864
似たような事で悩んでいる奴がいるもんだ。便乗して教えて下され。
漏れはコード変換で悩んでいるのだが、アスキーコードの
0が0x30とういのはわかるが、何故これが48なんだ?
0875デフォルトの名無しさんNGNG
>>874
変換テーブルで変換しています。
0876デフォルトの名無しさんNGNG
変換テーブルとは、0x00〜0x7Fを00〜127に自力で変換するのですか?
0877デフォルトの名無しさんNGNG
>>874
0x30 = 3 x 16 + 0

   3
x . 16
---------
   18
   3
---------
   48


0x30 = 48
0878デフォルトの名無しさんNGNG
>>869
通りすがりですまんが、2進数でチェックすれば、何のコードかなんて気にしなくて
いい気もするが。
でもoracle上にそういう値が入っているなら同じことか?
0879840NGNG
>>841
InputStreamReaderというのを使えばいいんですか。
ありがとうございます。

>>842
getContentType();でとればいいんすね。はい。

>>843
強烈に遅いです。
BufferedReader in= new BufferedReader(new InputStreamReader(urlconnection.getInputStream()));
とやってreadlineで読み込むことにしました。今度は早くなりました。


0880デフォルトの名無しさんNGNG
>>878
oracleにはいっている値を16進で見ようが2進で見ようが同じでは?
0881デフォルトの名無しさんNGNG
>>879
StringBufferを使うともう一寸速くなるかもな。
(コンパイラによっては最適化してくれるのか、これ?)
0882デフォルトの名無しさんNGNG
>>881
つぅか内部は全然違うことしてると思われ。
0883デフォルトの名無しさんNGNG
ないぶはだいぶちがう。
0884デフォルトの名無しさんNGNG
>>869
つまり、Oracle上はEBCDICで、RusltSetからgetBytes()するとASCIIが返ってくる
ということでよろしいか。それはOracleのJDBCドライバが自動コード変換を
行っているものと思われる。(NLSがらみね)
で、どうするかだけど、今回たった30文字程度なんだから、自前で変換すれば
すむんじゃないの?
JavaにEBCDICのエンコーディングが用意されていれば、文字列にして
getBytes(エンコーディング名)で取り出すことができそうだけど、
あるのかどうかわからんし、、、。("Cp1026"あたりだろうか。)
0885デフォルトの名無しさんNGNG
>>884
>RusltSetからgetBytes()するとASCIIが返ってくるということでよろしいか。

よろしいかもへったくれも結果がそう語っている。
0886デフォルトの名無しさんNGNG
>>885
だが結果が全てとは限らない
0887デフォルトの名無しさんNGNG
>>886
でも、それを否定すると説明が付かんぞ。
0888デフォルトの名無しさんNGNG
Oracle用JDBCドライバの仕様書を読むしかないんでは。
884の中で仮定されてるのはそこだけだよね。
0889デフォルトの名無しさんNGNG
>>869
コード表見ながら、作ってみた。
今回は、こんなので十分じゃないかな。

public static int convertToInt(byte b) throws Exception {
switch (b) {
case 0x30: case 0x7B: case 0x7D: return 0;
case 0x31: case 0x41: case 0x4A: return 1;
case 0x32: case 0x42: case 0x4B: return 2;
case 0x33: case 0x43: case 0x4C: return 3;
case 0x34: case 0x44: case 0x4D: return 4;
case 0x35: case 0x45: case 0x4E: return 5;
case 0x36: case 0x46: case 0x4F: return 6;
case 0x37: case 0x47: case 0x51: return 7;
case 0x38: case 0x48: case 0x52: return 8;
case 0x39: case 0x49: case 0x53: return 9;
default:
throw new Exception();
}
}

public static boolean hasMinusSign(byte b) {
switch (b) {
case 0x7D: case 0x4A: case 0x4B: case 0x4C: case 0x4D:
case 0x4E: case 0x4F: case 0x51: case 0x52: case 0x53:
return true;
default:
return false;
}
}
0890デフォルトの名無しさんNGNG
つーか、単純に取り出した1バイトごとにASCII→EBCDIC変換すりゃいーじゃん。
0891デフォルトの名無しさんNGNG
>>890
今回の目的はEBCDICにすることじゃなくて、数値判定したいんだろ?
ASCII->EBCDIC->数値では無駄と思われ。
0892デフォルトの名無しさんNGNG
>>891
じゃあ別にASCIIでもええやん。
0893デフォルトの名無しさんNGNG
>>892
ASCIIで"11Q"と書かれていて、これが118とすぐ分かれば問題ないが?
0894デフォルトの名無しさんNGNG
>>893
853です。
00Q というような文字列を1byteずつ取り出して判定しています。
1byte目は0なので、これは16進で0xF0なのでokだとおもうのですが、
条件式のelseでエラーになってしまいました。
ちなみに、その内容をSystem.out.printlnで見たところ48となってました。
(何のコードだろう?)
上記例だと、00Q が 48 48 81 ですべてエラーとなっていました。


0895デフォルトの名無しさんNGNG
>>892
だからASCIIで判定してるやん。(と、突っ込み鋭くあごも鋭い・・・)
0896デフォルトの名無しさんNGNG
>>894
議論の内容理解してるか?
F0ってのはEBCDICコードでの話。ASCIIなら0x30
0897デフォルトの名無しさんNGNG
質問者のif文ロジックを生かすなら、取り出したbyteをEBCDICに変換する
方法を教えてやるのが一番簡単な方法じゃないの?
この後、EBCDIC使って何かしたいのかも知れないし。
たぶん、この人276と同一人じゃないかな?
0898デフォルトの名無しさんNGNG
>>894
>>889を使ってみろ。
if文で書き直せば速くなるぞ。
符号は配列の最後のバイトにしかないので、そこだけ相手にすればOK
残りのバイトは、& 0x0Fで十分だぞ。
0899デフォルトの名無しさんNGNG
>>897
ASCII->EBCDIC変換にif文なんていらないだろ?
256のbyte配列だけでOKだが?
0900デフォルトの名無しさんNGNG
>>899
なる。数字だから嫌でも1;1対応だもんな・・・。
0901デフォルトの名無しさんNGNG
符号つきゾーン10進って、、、、懐かしいww
これって確かCOBOLだとS9(5)とかってやつだよね。
だとしたら、たとえば0123Qとか入っていたら、0123まではそのまま数字
で、最後のQだけ見ればよいのでは。つまり最終桁以外は見えてる数字そのものということ。
Qは-7だから、01237のマイナス、すなわち-1237ということでokですか。>皆様
0902デフォルトの名無しさんNGNG
QはEBCDICで0xD8だから、-8じゃないの?
0903デフォルトの名無しさんNGNG
何か訳わからなくなってきたぞ。
QはASCIIの0x51ですよね。
これを889さんの記述に当てはめると-7ですよね。
0904デフォルトの名無しさんNGNG
>>903
バグです。2つのコード表比べながら書いたから、ミスった。
0x51, 0x52, 0x53ではなくて0x50, 0x51, 0x52だな、スマソ。
0905デフォルトの名無しさんNGNG
ちなみに889さんの表は左の列がプラス0から9、右の列がマイナス0から9
だと思うのですが、真ん中の列は何?(恥ずかしい質問スマソ
0906デフォルトの名無しさんNGNG
ftp://ftpd.borland.com/download/jbuilder/jb8enterprise/jbuilder8.zip
130MB
英語/日本語が選択できます
既に海外のteamがkeygenをリリースしておりますので
オーソライズは可能です
ftp://licke.myftp.org/licke's share 2/progs/jbuilder 7 ent/
ftp://licke.myftp.org/licke's share 2/progs/jbuilder 7 ent/jbuilder_7_enterprise_fr.zip
ftp://oth:[email protected]/05 - S O F T -/DEVELOPMENT/Borland Java Builder/jbuilder6.part01.rar
ftp://ratio:[email protected]:812/=[ a p p z ]=/JBuilder Enterprise 5.0/
ftp://ratio:[email protected]:812/=[ a p p z ]=/JBuilder Enterprise 5.0/jbuilder5.rar
ftp://Look:[email protected]:69/PC Apps [ISO]/!! Offline !!/Borland JBuilder 5.0 Enterprise/
ftp://Look:[email protected]:69/PC Apps [ISO]/!! Offline !!/Borland JBuilder 6 Enterprise/
ftp://Look:[email protected]:69/PC Apps [ISO]/!! Offline !!/Borland JBuilder 7 Enterprise/
ftp://lookappz:[email protected]/Appz/Borland Inprise JBuilder 6 Enterprise/
ftp://ratio:[email protected]/c:/ftp/uploads/Linux/J_Builder_for_Linux/JBuilder6.part01.rar
ftp://oth:[email protected]:131/-==Apps==-/B - C/Borland Jbuilder 5 Enterprise/
ftp://oth:[email protected]:131/-==Apps==-/B - C/Borland Jbuilder 5 Enterprise/setup.rar
ftp://look:[email protected]:2000/f:/FTP/Apps/-= APP ISOz =-/-=Offline=-/JBuilder7/
ftp://look:[email protected]/01. -=Apps=-/Bundle of appz, just take a look inside/jbuilder7.zip
ftp://lookmisc:[email protected]/Appz/Borland Inprise JBuilder 6 Enterprise
0907java入門NGNG
>>906
漏れも知りたい
0908java入門NGNG
しまった、
>>905
だった。。。打つ出し脳
0909デフォルトの名無しさんNGNG
初歩的な質問ですが、よろしくお願いします。

JavaでAWTやSWINGを使ってアプリケーションを作りたいと思っているのですが
作成したアプリケーションを、アイコンをWクリックして起動させることは可能なのでしょうか?

よろしくお願いします。
0910デフォルトの名無しさんNGNG
>>909
jarでいけるはず
0911デフォルトの名無しさんNGNG
>>909
てかOSは?
0912デフォルトの名無しさんNGNG
>>905
最後尾バイトは符号をかねていて、マイナスなら0xD?だが、
プラスなら0xC0なのだ。
文句があるなら、ゾーンBCD決めたIBM?のヤシにいってくれ。
0913デフォルトの名無しさんNGNG
0xC?だな。っていうか、>>284見れ。
0914デフォルトの名無しさんNGNG
途方に暮れてます。
すみませんが、どなたか教えて頂けませんか?
public class Box {
 private static int data;
public Box(){
}
public static int getData() {
return data;
}
public static void setData(int data) {
Box.data = data;
}
}
とやっておいて、
0915デフォルトの名無しさんNGNG
import java.util.Enumeration;
import java.util.Vector;
public class VectTest {
public static void main(String[] args) {
Vector dataBox=new Vector();
for(int i=0;i<100;i++){
Box b=new Box();
b.setData(i);
dataBox.addElement(b);
}
Enumeration ea=dataBox.elements();
while(ea.hasMoreElements()){
Box la=(Box)ea.nextElement();
System.out.print(la.getData()+" ");
}
}
}
を実行すると、99が100個並びます。
1 2 3...とする為にはどうしたら良いでしょうか?
0916デフォルトの名無しさんNGNG
>>914

class Boxのdataからstaticをはずしてみてください。
0917914NGNG
>> 916
早速ありがとうございます。
2行目の事でしょうか?
はずすと、getter, setterの所で
「static 参照は、非staticフィールド dataではできません。」
というコンパイル・エラーが出ます。

0918916NGNG
>>917

説明が足りなかった。
Boxからstaticを全部はずしてみて。
0919914NGNG
>> 918
ありがとうございました!!!
0920デフォルトの名無しさんNGNG
Web上でアプレット見ようとするとclassが見つからないと怒られてしまいます(;;)
・appletviewerでは見れました。
・jviewerではダメ(><)
・バイナリモードにしてます。
・クラス名の大文字小文字を間違えたりはしてません。
何か他にも考えられる原因はあるでしょうか?
0921デフォルトの名無しさんNGNG
>>920

applet単体だけのプログラムなの?
他に必要なクラスにクラスパスが通っているかな?
0922デフォルトの名無しさんNGNG
JPDAだせ。
0923デフォルトの名無しさんNGNG
>>921
クラスはひとつだけで同じディレクトリ内にありますし・・・
>>922
JPDA??
0924デフォルトの名無しさんNGNG
>>920
ブラウザで見るとき古いvmが立ち上がってるとか。
0925デフォルトの名無しさんNGNG
>>920
HTMLのコードベースの記述あたりのブラウザ間の解釈の微妙な違いがくさい気がする。
0926デフォルトの名無しさんNGNG
自分の家でコンパイルしたクラスファイルを
友達の家で実行できますか?
できるようなことをきいたのですが。
0927デフォルトの名無しさんNGNG
>>926
友達の家に JRE があって、
コンパイルしたクラスファイルを友達の家に持っていけば実行できます。
0928デフォルトの名無しさんNGNG
>>920
JDK 1.4 でコンパイルして IE 標準の JVM で実行させようとしているに
一票。-target 1.1 を付けてコンパイルしてみ。
0929デフォルトの名無しさんNGNG
>>926
実行するにはJRE(ランタイム)が必要です。
友達の家で実行するみたいに不特定多数に配るのが目的なら
ランタイムがいらないDelphiを使ったほうが良いですよ。
0930デフォルトの名無しさんNGNG
すみません。JREってなんですか?
友達も自分も普通の一般環境?でJAVAしてます。
大丈夫ですか?
0931929NGNG
>>930
友達もやってるならJREは入っていると思いますが
バージョンが違うと不具合が出たりします。
しかも新しいのを入れると前のものに不具合が
発生したりして困る可能性があります。
0932デフォルトの名無しさんNGNG
>>931

そうですか。
だったら、ソースファイルだけ持っていくことにしますね。
ありがとう。
0933デフォルトの名無しさんNGNG
>>929
Java Runtime Environment、 Java実行環境
「普通の一般環境」って言われてもなぁ…
0934デフォルトの名無しさんNGNG
933
>>930 だった。
0935デフォルトの名無しさんNGNG
>>934
まま、そこはご愛嬌ということで。。
0936デフォルトの名無しさんNGNG
Math.roundっていうのは四捨五入なんでしょうか?
0937デフォルトの名無しさんNGNG
返り値が配列になっているメソッドから結果を受け取るには
受け側で配列を用意しないといけませんが、それには元々長さを指定して
生成しないといけないですよね。

ピッタリの長さで受け取るのは無理なのでしょうか?
0938デフォルトの名無しさんNGNG
メソッド内で配列作れば?
0939デフォルトの名無しさんNGNG
>>937

もともと長さを指定する必要は無いはずだが。
0940939NGNG
補足説明をすると、配列を宣言する時にメソッドから配列を取得すれば大丈夫。

でも、これだと宣言したスコープの中でしか使えないから、スコープの外で配列を
使用できないかな。
0941920NGNG
>>928
それでした。神認定!

他の皆さんもありがとうございましたm(_)m
0942デフォルトの名無しさんNGNG
>>940
そんなわけない
return new String[] {"1ch", "2ch", "3ch"};
何の問題もなく使える。
0943デフォルトの名無しさんNGNG
>>940
>でも、これだと宣言したスコープの中でしか使えない
… C++ と勘違いしてませんか?
0944デフォルトの名無しさんNGNG
>>936
Math.round()は (long)Math.floor(a + 0.5d) らしいから、ほとんどの場合に四捨五入になる。

ただ、double自体に10進2進の変換誤差が出てくるので、シビアな場面では
最初から最後まで String + BigDecimalで計算するのが無難。

System.out.println(0.6 + 0.3 - 0.4);
System.out.println(Math.round(0.6 + 0.3 - 0.4));
System.out.println(new java.math.BigDecimal(0.6 + 0.3 - 0.4));
0945デフォルトの名無しさんNGNG
>>937
public int[] hoge(){
int[] x = {1,2,3};
return x;
}
受ける側

int[] xx = hoge();
とか
int[] xx;
xx = hoge();
で大丈夫。
0946945NGNG
ついでに、
object xx = hoge();
でもいけたような気がする。
リフレクトにあるArrayクラスを使えば
そのまま値も取得できた気がする。
上記の例で言えばIntegerで取れるんじゃなかったかな。
間違ってたらスマソ。
あと、スコープ云々は関係ない話と思われ
0947デフォルトの名無しさんNGNG
>>939
ありがとうです。配列の実体が戻ってくるので、受けるときにnewする必要はないんですね・・・。
hoge()がint[]を返すとき、↓だと信じていました。・゚・(ノД`)・゚・。
obj指向を勉強し直してきます。

public static void main(String[] args) {
 int[] funi; = new int[?];
 funi = hoge();
}
0948デフォルトの名無しさんNGNG
>>947
そんなんOO勉強しても何の意味もない罠(w
とりあえず、逝ってらっしゃ〜いヽ(´ー`)/
0949デフォルトの名無しさんNGNG
>>944
どうもです。
0950デフォルトの名無しさんNGNG
すいません、一個質問させて欲しいのですが
今Linux上でCSVファイルを生成しようとしているのですが
Windowsでは文字化けしないのにLinuxだと文字化け
してしまうんですがどうしたらいいでしょうか?
try {
java.io.FileWriter r = new java.io.FileWriter( "/usr/local/uma.csv" );
String str1 = "ウマー";
String str2 = "マズー";
String str3 = "クマー";
r.write( str1 + "," + str2 + "," + str3 + "\n" );
r.close();
}catch( Exception e ) {
e.toString();
}
Stringの変数を
str1 = new String( str1.getBytes("8859_1"), "JISAutoDetect");
str2 = new String( str1.getBytes("8859_1"), "Shift_JIS");
とやっても化けてしまいます。
どうやったら回避できるか教えてください〜
0951デフォルトの名無しさんNGNG
>>950
try {
 OutputStreamWriter w = new OutputStreamWriter(
  new FileOutputStream( "/usr/local/uma.csv" ), "SJIS");
 String str1 = "ウマー";
 String str2 = "マズー";
 String str3 = "クマー";
 w.write( str1 + "," + str2 + "," + str3 + "\n" );
 w.close();
} catch( Exception e ) {
 e.printStackTrace(System.err);
}
とかではどう?
0952デフォルトの名無しさんNGNG
>>950 いろいろ小細工をする前に、まずデフォルトエンコーディングを
確認してごらん。
0953デフォルトの名無しさんNGNG
[既定コンストラクタ]ってなんですか?
0954デフォルトの名無しさんNGNG
>>953
デフォルトコンストラクタとも言います。
プログラマーが自分でコンストラクタをソースに書かなくとも、
Javaのシステムが最初から用意してくれているコンストラクタのことです。
http://www.bohyoh.com/Java/FAQ/FAQ00002.html

このデフォルトコンストラクタというシステムがあるおかげで、
たとえコンストラクタを一つも記述しないクラスを作ったとしても、
そのクラスのインスタンスを生成することができるわけです、

↓コンストラクタはソース中に記述されていないがコンパイル可能。
public class Sample {
 public static void main(String[] args) {
  Sample sam = new Sample();
 }
}
0955デフォルトの名無しさんNGNG
>>954
丁寧な回答ありがとう。
google してもなぜかほとんどヒットしなかったのよね。
「デフォルトコンストラクタ」という名前で覚えておきます。
0956950NGNG
>>951 952
ありがとうございます!
稼動しました〜、今回のようにエンコードしながらって場合には
OutputStreamWriterを使うんですね〜・・・
勉強になりました
0957デフォルトの名無しさんNGNG
nioパッケージって何に使うの?
あんまり使い道が浮かばないよ。
活用事例とかある?
0958デフォルトの名無しさんNGNG
>>957
バイトストリームを切り出すとき。
0959デフォルトの名無しさんNGNG
>>957 実装と使い方によっては速い
0960デフォルトの名無しさんNGNG
nioいろいろ便利そう。
http://java.sun.com/j2se/1.4/docs/guide/nio/index.html

ところでそろそろ次スレの準備を・・・。
0961vi/vi2NGNG
次スレ
【初心者】Java質問・相談スレ14【大歓迎】
http://pc3.2ch.net/test/read.cgi/tech/1040150533/

馬鹿に一度邪魔されたのでもう一つは放置で。
0962デフォルトの名無しさんNGNG
appletでタイピングソフトを作りたいのですが参考になるソースどっかにありませんか??
教えてください。
0963デフォルトの名無しさんNGNG
>>962
たまには自分の頭で考えてみたらどうだい?
0964デフォルトの名無しさんNGNG
で、どうすればいいのかな?
0965デフォルトの名無しさんNGNG
>>964
具体的なイメージが浮かばないなら、
まずはJavaの入門書や入門サイトなどをみて勉強するといいかも。
0966デフォルトの名無しさんNGNG
>>965
それ以前の問題だと思うけどな。
まぁ、一つネイティブラングイッジな言語作ってれば便利だわね。
0967デフォルトの名無しさんNGNG
>>962
http://pc3.2ch.net/test/read.cgi/tech/1032944182/356-362n

既出みたい。おんなじ学校のひと?
0968デフォルトの名無しさんNGNG
タイピングが成功していったら脱いでくのはどうかなあ?
0969デフォルトの名無しさんNGNG
>>968
存在してたと記憶。
0970デフォルトの名無しさんNGNG
成功するとゴスリングが一枚いちまい、
Javaティーシャツを脱いで逝くタイピングゲームきぼんぬ。
0971965NGNG
>>968
プレイヤーが?

って言うのはジョークで、
>>966
>それ以前の問題だと思うけどな。
何で?
0972デフォルトの名無しさんNGNG
アドレスきぼんぬ
0973デフォルトの名無しさんNGNG
はじめに public static void main(〜〜〜
云々って毎回書きますがこれは 何を意味してるのでしょう?
まだ勉強し始めて3日ぐらいなのでわかりません
おしえてください
0974デフォルトの名無しさんNGNG
おいおまいら、今売ってる JavaWorld、付属の CD-ROM に 2001/12〜2002/11 までの
記事が全部 PDF で入っとるぞ!

廃刊決定でとりあえず手持ちのネタを金に換える策に走ったか…
0975965NGNG
>>973
public : 他のクラスから呼び出せる。
static : 静的である(インスタンスをnewしないでそのまま「クラス名.メソッド」で呼び出せる)←これをクラスメソッドという。
void : 戻り値がない。
main : java Hoge.javaで最初呼び出されるクラスメソッド。
0976965NGNG
>>975
>main : java Hoge.javaで最初呼び出されるクラスメソッド。
間違い。
java Hoge
ね。
0977デフォルトの名無しさんNGNG
(int)変数
で変数に少数が入ってる場合は四捨五入されるんでしたっけ?
0978デフォルトの名無しさんNGNG
>>977
0方向に丸めた整数になる
0979デフォルトの名無しさんNGNG
あ、切り捨てですかサンクスです。
0980973NGNG
>>975
ありが�d でも書いている内容が全くわからない^^; あぅぅ
0981965NGNG
>>980
どこがわからない?
参考書読んでる?
0982965NGNG
>>980
じゃあもっと簡単に書くと、君がAppというクラスを書いたとするでしょ。
そしてコンパイルするとApp.classってファイルができる。
これを、
java App [引数1,引数2...]
で起動するんだけど、
引数1,引数2...はString[]型のオブジェクトまとめられて
最初に
App.main(引数);
って呼び出される。
だから、君はAppクラスにmainクラスメソッドを作っておいてそれを受け止めるんだ。
0983965NGNG
>>982
>java App [引数1,引数2...]
java App [引数1 引数2...]
ね。
0984デフォルトの名無しさんNGNG
100%既出な質問なのでもっとよく検索しろと言われるでしょうが…。

ふだんはCやPerl使ってますが、Javaにも足を突っ込んでみようかと。
で、真っ先に困ったのが“sprintf (printf)がない”という事実。
単に(コンソールで)表示数値の右揃えとかがやりたいだけなのにぃィ。
Sunで AS IS な PrintFormat.java は拾ってはきましたが、
jovadoc でドキュメント抜き出しても今ひとつ使い方が読み取れない。
(基礎知識がまだ不足しているからでしょうが…)
できれば日本語でこれを解説している、あるいはサンプルの豊富な
解説ページ等をご存知でしたらお教えください。

#他言語からJavaへ進んだ人はよくケつまづく事象だと思うけど、
#その割りにはぐぐるにもあまりマトモな情報が引っかからん気が…。
0985デフォルトの名無しさんNGNG
>>984
http://www.google.co.jp/search?hl=ja&ie=UTF-8&oe=UTF-8&q=java+%E6%96%87%E5%AD%97%E5%88%97+%E3%83%95%E3%82%A9%E3%83%BC%E3%83%9E%E3%83%83%E3%83%88&lr=
0986デフォルトの名無しさんNGNG
>>985
984氏は右揃えと言っていますが。かくいう私も、sprintf(buff, "%08d%-08d", x, y);
相当の処理をTextFormatさんでどう実現すれば良いかわかりません。
0987デフォルトの名無しさんNGNG
4つ質問があります。
つまらないことで悩んでますが、おながいします。
1
response.encodeURL()でURLパラメータにセッションIDを埋め込んだ場合、セッションIDを次のページで取得することはできるのでしょうか?
取得の仕方ってありますか?セッションとセッションIDがちょっとごっちゃになってるんで、混乱してます。。

2
セッションIDはクッキーが有効になっていないときにだけ、URLパラメータに埋め込まれると何かの本で読んだのですが、
クッキーを有効にしても、セッションIDがURLパラメータに埋め込まれたと友達が主張してました。そんなことってありますか?

3
あと、携帯電話では、携帯電話でクッキーを無効にしているとき(そんな機能があるかどうかわかりませんが)、
セッションIDはURLパラメータに埋め込まれ、そのセッションIDが埋め込まれた
URLを携帯電話の表示画面から見ることができますか?
もし見ることができるんだったら、セッションIDを使っても、携帯電話でセッションID付きのURLを
打ち込んだら、直接、画面が表示されると思いましたので。
携帯電話はinputタグでgetメソッドしか使えないから、パラメータ付きのURLを直打ちされたら、画面が表示されますよね?
セッションIDもそうなのかなって思って質問しました。

4
携帯電話では、普通、JavaScriptは使えませんが、これまた、友達が一部のものは使えると言っておりました。
これは本当でしょうか?すみません。携帯電話持ってないので、確かめようがなくて。

以上、ちょっとでもわかることがありましたら、お願いします。
0988デフォルトの名無しさんNGNG
URL?
クッキー!?
携帯電話!!?
0989デフォルトの名無しさんNGNG
>>987
携帯電話にクッキーはないと思うよ。
WAPは知らんが。

あと、POSTメソッドも使えるよ。JPHONEの古い機種はダメだけど。
JavaScriptは無理でしょう。俺は使えるなんて聞いたことない。
0990デフォルトの名無しさんNGNG
>>984
1) ChoiceFormat と DecimalFormat の併用で回避する。
2) 右揃え用 NumberFormat を自作する。
3) DecimalFormat に空白右揃えのための仕様を追加しろと BugParade で RFE。追加されるまで待つ。
4) 986への回答みたいに 0 による右揃えで我慢する。
どれでも好きなようにしてくれ。

>>986
printf( "%08d", x );
みたいに桁が足りない時は '0' で補う場合は
DecimalFormat( "00000000" ).format(...);
みたいのでどーにでもなったり…
0991965NGNG
>>984
sprintf()は
Java houseのトピックスの
クラスライブラリ/フレームワーク
で議論されてます。
0992デフォルトの名無しさんNGNG
埋めとくか
0993デフォルトの名無しさんNGNG
>>991
そんなくだらないこと議論してるなんて
Javaはとことん糞ですね
0994デフォルトの名無しさんNGNG
価値の判らない糞にとっては糞ですよw
0995965NGNG
>>993
君はずいぶんと悲観的なものの見方をするね。
0996デフォルトの名無しさんNGNG
>>993
真実でも言ってはいけないことがある
0997デフォルトの名無しさんNGNG
 
0998デフォルトの名無しさんNGNG
 
0999デフォルトの名無しさんNGNG
 
1000デフォルトの名無しさんNGNG
  
10011001Over 1000Thread
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。