[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 2chのread.cgiへ]
Update time : 08/21 17:37 / Filesize : 238 KB / Number-of Response : 992
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

★★Java質問・相談スレッド134★★



1 名前:テンプレ(1/3) mailto:sage [2009/11/21(土) 17:58:46 ]
プログラミング言語Javaに関する質問スレです。
JavaScript, Ajaxの質問は、ここでは受け付けていません。
Web製作管理    ttp://pc11.2ch.net/hp/
Webプログラミング ttp://pc11.2ch.net/php/
をご利用下さい。

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

前スレッド
★★Java質問・相談スレッド133★★
pc12.2ch.net/test/read.cgi/tech/1253376151/
次スレは>>950あたりで。

過去ログ、関連スレッド、よくある質問とその回答など、
質問をする前に、貴方が見なければならないサイトについての情報は、
下のwikiのページにまとめてあります。
ttp://www.wikiroom.com/java/


423 名前:デフォルトの名無しさん mailto:sage [2009/12/12(土) 17:16:40 ]
>>420
JNIを使え

>>421
そのActionListenerを自分で呼ぶとか、setSelectedの場合にも同様の動作(disable/enable)を書けばいいと思うが・・・
doClickはどう

424 名前:421 mailto:sage [2009/12/12(土) 17:28:42 ]
>>423
ありがとうございます。
現在はsetSelectedの後ActionListenerを直接呼んでいたのですが、
不恰好だと考えていました。
doClickを試してみまたところ、同じように動作させることができました。

425 名前:デフォルトの名無しさん mailto:sage [2009/12/12(土) 17:34:20 ]
>>420
そのライブラリをロードするようなライブラリをJNI使って自前で作れ、ということなのでは。

426 名前:デフォルトの名無しさん mailto:sage [2009/12/12(土) 18:41:54 ]
>>420
JNI

427 名前:デフォルトの名無しさん mailto:sage [2009/12/12(土) 18:43:04 ]
>>420
JNIを使えば?

428 名前:デフォルトの名無しさん mailto:sage [2009/12/12(土) 18:54:58 ]
>>420
つJNI

429 名前:デフォルトの名無しさん mailto:sage [2009/12/12(土) 18:55:07 ]
ネイティブを使うって、かなり抵抗あるよね〜
swtくらいなら、妥協してもいいけどさ

430 名前:デフォルトの名無しさん mailto:sage [2009/12/12(土) 18:59:21 ]
>>420
JNI知ってる?

431 名前:デフォルトの名無しさん mailto:sage [2009/12/12(土) 19:22:31 ]
420が大漁すぎてワロタ



432 名前:デフォルトの名無しさん mailto:sage [2009/12/12(土) 19:24:05 ]
同じ答えなら何人も安価してまで答えることじゃなくね?

433 名前:デフォルトの名無しさん mailto:sage [2009/12/12(土) 20:00:42 ]
さすが自称中級者の巣窟だな

434 名前:デフォルトの名無しさん mailto:sage [2009/12/12(土) 20:18:50 ]
swingのアプリをVBのようにグラフィカルに簡単に
作成できるような開発環境ってありますか?
代表的なものをおしえてください。

435 名前:デフォルトの名無しさん mailto:sage [2009/12/12(土) 20:32:10 ]
>>434
NetBeansはどうでしょうか?

436 名前:デフォルトの名無しさん mailto:sage [2009/12/12(土) 20:42:04 ]
>>434
swingといえばNetBeansです!

437 名前:デフォルトの名無しさん [2009/12/12(土) 21:00:42 ]
>>433
そりゃJNIしかないでしょう

438 名前:デフォルトの名無しさん [2009/12/12(土) 21:56:40 ]
Swingで作る意味がわからん
Webで良いよ

439 名前:デフォルトの名無しさん [2009/12/12(土) 23:17:58 ]
↓と似たような処理がJava標準ライブラリかcommonsにありませんか?
public static String[] breakString(String str) {
  ArrayList<String> list = new ArrayList<String>();
  BufferedReader reader = new BufferedReader(new InputStreamReader(new ByteArrayInputStream(str.getBytes())));
  String line = null;
  try {
    while ((line = reader.readLine()) != null) {
      list.add(line);
    }
  } catch (IOException ignored) {}
  return list.toArray(new String[list.size()]);
}
\nと\r\nでStringを分割したいだけなんです。

440 名前:デフォルトの名無しさん mailto:sage [2009/12/12(土) 23:23:26 ]
public static String[] breakString(String str) {
return str.splilt("\n|\r\n");
}

441 名前:デフォルトの名無しさん mailto:sage [2009/12/12(土) 23:24:42 ]
ごめんスペルミスった
× splilt
○ split



442 名前:デフォルトの名無しさん mailto:sage [2009/12/12(土) 23:25:37 ]
JavaでHTTPのリクエストをうまく処理できる方法はないでしょうか。
(リクエストから指定のヘッダ値を取り出したりしたいと思っています)

java.net.URLみたいなラップ化クラスがあれば便利なんですが。

443 名前:デフォルトの名無しさん mailto:sage [2009/12/12(土) 23:27:46 ]
サーブレットにしてサーブレットコンテナ上で動かす

444 名前:デフォルトの名無しさん mailto:sage [2009/12/12(土) 23:28:08 ]
J2EE・APIにアクセスできなくなったんだけど、なくなったの?

445 名前:デフォルトの名無しさん mailto:sage [2009/12/12(土) 23:31:51 ]
>>443
どうもありがとう。
不勉強ゆえ、サーブレット方面はしっかりと探してなかったです。

446 名前:デフォルトの名無しさん mailto:sage [2009/12/12(土) 23:56:13 ]
>>>444
どうなんだろうね

447 名前:439 mailto:sage [2009/12/12(土) 23:58:23 ]
>>440
どうもありがとうございます。
splitは試したんですが、正規表現を間違えてました。

448 名前:デフォルトの名無しさん mailto:sage [2009/12/12(土) 23:59:20 ]
>>431
なのにJNA使え、が一つも無い件について。
https://jna.dev.java.net/
まぁ、>>420のスキルだとおすすめできないかもしれんが。

449 名前:デフォルトの名無しさん mailto:sage [2009/12/13(日) 03:26:00 ]
keyPress(KeyEvent.VK_SHIFT);
delay(KEY_WAIT);
keyPress(KeyEvent.VK_RIGHT);
delay(KEY_WAIT);
keyRelease(KeyEvent.VK_RIGHT);
delay(KEY_WAIT);
keyRelease(KeyEvent.VK_SHIFT);
delay(KEY_WAIT);

Shift+矢印キーを押す、という処理を上のように記述しているのですが、環境によって挙動が異なってしまい困っています
いくつかのPCで試してみた所、ノートPCでは正常に動作するのですが、デスクトップではShiftキーが押されていないのと同じ挙動となってしまうようです
Shift+EnterやShift+変換キーなどはどの環境でも正常に動作しているのですが・・・
テンキーの有無が関係しているような気がするのですが、分かる方はいますでしょうか?
また多くの環境で実行可能となる記述方法はあるのでしょうか?

450 名前:デフォルトの名無しさん mailto:sage [2009/12/13(日) 11:02:58 ]
>>400
> 過去に出たものを知ってなくてもいい方法が、きっとあると思ってます。

それ、「記憶してはいけません。ただし、記憶しなさい」が実現可能だと言ってるのに等しいってわかってる?

451 名前:デフォルトの名無しさん mailto:sage [2009/12/13(日) 12:24:58 ]
>>450
乱数でなければ、例えば1、2、3、と小さい順に送り出せば、既出の数の記憶無しに重複しない。
彼は、かなりでたらめに見える順序で、全部の数を送り出すアルゴリズムが欲しいのではないだろうか。
いつも同じ順に出てくると思われないくらいに出方のオプションの通り数が必要だし、
もはやこれは擬似としても乱数ではないけれど。





452 名前:デフォルトの名無しさん mailto:sage [2009/12/13(日) 12:42:25 ]
だからアトランダムとランダムは違うって指摘も出てるわけで
アルゴリズムの方向性も質問者は理解してる。
>>450より質問者のが若干レベルが上だから、滑稽な絵になってるな。

453 名前:デフォルトの名無しさん mailto:sage [2009/12/13(日) 13:05:08 ]
ってことは板違いになるかな。
数学板の範疇だな。

454 名前:デフォルトの名無しさん mailto:sage [2009/12/13(日) 13:30:02 ]
理解してりゃ求めてるのが無理だってわかるよ
理解してねーよ

455 名前:デフォルトの名無しさん [2009/12/13(日) 13:45:46 ]
アトランダム(笑)

456 名前:デフォルトの名無しさん mailto:sage [2009/12/13(日) 13:52:43 ]
ipodでシャッフルして聴いてるとしょっちゅう同じ曲になるよな
何千曲も入ってるのにどうにかならんのか

457 名前:デフォルトの名無しさん mailto:sage [2009/12/13(日) 14:00:13 ]
int u = 母数;
int r = 毎回違う数、ただしuと互いに素;

for(int n = 0; n < u; n++){
System.out.println( (r*n) % u );
}

とかこんな感じのが欲しいんじゃないの?
まあコレだと r%u ずつ動いていくだけだし
互いに素とか求めるのすごく面倒くさいから実用的じゃないけど

458 名前:デフォルトの名無しさん mailto:sage [2009/12/13(日) 14:07:51 ]
さすが自称中級者スレだな

459 名前:デフォルトの名無しさん [2009/12/13(日) 14:10:31 ]
普通はNetBeansですけどね。

460 名前:デフォルトの名無しさん mailto:sage [2009/12/13(日) 16:54:42 ]
レベルが上とみるのはさすがに買いかぶりすぎだろw
どんなエスパーだよ。

461 名前:デフォルトの名無しさん mailto:sage [2009/12/13(日) 17:04:36 ]
ランダムとアトランダムの違いってなに?



462 名前:デフォルトの名無しさん [2009/12/13(日) 17:18:13 ]
>>460
日本語でおけー

463 名前:デフォルトの名無しさん mailto:sage [2009/12/13(日) 17:21:14 ]
日本語だと思うぞ。
買い被る。

464 名前:デフォルトの名無しさん [2009/12/13(日) 17:29:11 ]
>>460-463
www.m-nomura.com/st/images/spock.jpg

465 名前:デフォルトの名無しさん mailto:sage [2009/12/13(日) 17:49:18 ]
ランダムな数字(乱数)
アトランダムに生成された数字(乱数)
どっちも同じです。

形容詞と形容動詞(副詞)の違いであって、文法的な使われ方の違いしかない。

466 名前:デフォルトの名無しさん mailto:sage [2009/12/13(日) 18:06:40 ]
>>434
NetBeansのMatisse。
有償EclipseにもMatisseついてるやつあるけど。


467 名前:デフォルトの名無しさん mailto:sage [2009/12/13(日) 18:09:25 ]
>>461
俺も気になった。

468 名前:デフォルトの名無しさん mailto:sage [2009/12/13(日) 18:44:25 ]
アホの俺様用語なんてどうでもいいんだよ
ひっぱりたいなら本題についてひっぱれ

469 名前:デフォルトの名無しさん mailto:sage [2009/12/13(日) 19:06:33 ]
Javaは何故死んだのか

470 名前:デフォルトの名無しさん mailto:sage [2009/12/13(日) 19:14:26 ]
安物メモリか電源不良だろ。

471 名前:デフォルトの名無しさん mailto:sage [2009/12/13(日) 19:18:04 ]
Javaの人気は何故地に堕ちたのか



472 名前:デフォルトの名無しさん mailto:sage [2009/12/13(日) 19:24:20 ]
アプレットはフレッシュちゃんのせいだね

473 名前:デフォルトの名無しさん mailto:sage [2009/12/13(日) 19:25:02 ]
フラッシュだ
フレッシュって誰だよww

474 名前:451 mailto:sage [2009/12/13(日) 19:43:11 ]
ビットを交換するだけで、結構入れ替わるから、それと >>457 さんの方法を
組み合わせれば、なかなか規則性は見つけづらくなるのでは。
例えば ビット0〜2の3ビットから成る数の列 0, 1, 2, 3, 4, 5, 6, 7 の
ビット0と2を入れ替えると、0, 4, 2, 6, 1, 5, 3, 7 となるが、これに
対してさらに、8と互いに素な5を使って >>457 さんの方法を使うと、
0, 5, 2, 7, 1, 4, 3, 6 になる。2000万なら、それ以下の素数は山ほどあるし、
交換するビットも 24〜25ビットもあるので、出し方のパターンの数はたっぷりだ。


475 名前:デフォルトの名無しさん [2009/12/13(日) 19:56:55 ]
>>473
当然NetBeansですよね?

476 名前:デフォルトの名無しさん mailto:sage [2009/12/13(日) 20:30:04 ]
プログラムが苦手なのでここで質問させてください。
黒い円周上を回転する赤い円の周りを、青い円を回転させたいというプログラミングです。
下記のプログラムを訂正すれば出来るようですがどうすれば良いかわかりません。
どなたが教えてください。改行が多いと投稿エラーが出てしまうので、改行を省いてあるので見にくいかもしれまんせんがよろしくお願いします。
/*<APPLET CODE="cir1.class"WIDTH=200 HEIGHT=200>
</APPLET>*/
import java.applet.Applet;
import java.awt.*;
public class cir1 extends Applet implements Runnable{
int d=20; double dt=0.01; double t=0.0; double a=90.0,T=2.0,x,y,o,p; double omega=2.0*Math.PI/T; double z=3.0*Math.PI/T;
Thread th; public void start(){ th = new Thread(this); th.start();}
public void run()} while(th !=null){
x=a*Math.cos(omega*t); y=a*Math.sin(omega*t); o=a*Math.cos(z*t); p=a*Math.sin(z*t);
repaint(); t=t+dt; try{
Thread.sleep((int)(dt*2000.0));}
catch(InterruptedException e)}}} public void paint(Graphics g){
g.setColor(Color.RED);
g.fillOval((int)(100+(x-d*0.5)),(int)(100+(y-d*0.5)),d,d);
g.setColor(Color.BLUE);
g.fillOval((int)(120+(x-d*0.5)),(int)(120+(y-d*0.5)),d,d);
g.setColor(Color.BLACK);
g.drawOval(10,10,2*(int)a,2*(int)a);}}

477 名前:デフォルトの名無しさん mailto:sage [2009/12/13(日) 21:16:47 ]
宿題スレは別にあるだろ。そっちで聞け。

478 名前:デフォルトの名無しさん mailto:sage [2009/12/13(日) 21:18:56 ]
自称中級者スレはすぐに迷走するな
ドカタ仕事ばっかりやってるからそうなる

479 名前:デフォルトの名無しさん [2009/12/13(日) 21:19:43 ]
いやOSSに参加してるからだろう

480 名前:デフォルトの名無しさん [2009/12/13(日) 21:21:59 ]
>>464

481 名前:デフォルトの名無しさん mailto:sage [2009/12/13(日) 22:08:41 ]
Javaは何故こんなに落ちぶれたのか



482 名前:デフォルトの名無しさん mailto:sage [2009/12/13(日) 22:14:12 ]
先が見えないから

483 名前:デフォルトの名無しさん mailto:sage [2009/12/13(日) 23:01:39 ]
別スレッドでバックグラウンドでデータの読み込み処理を行いながら、メインスレッドで
アニメーションを表示するローディング画面を作ろうとしたのですが、

ロード処理開始→描画処理が止まり、画面がしばらく固まる→ロード終了

という風になって、描画処理のほうが完全に止まってしまいます。
そうではなく、描画処理とロード処理が並行して実行されるようにしたいのですが、
どう直せばいいでしょうか?ただ単にスレッドを使うだけではだめなようですが。

484 名前:デフォルトの名無しさん mailto:sage [2009/12/13(日) 23:08:39 ]
>474
初めが必ず0になる欠点があるから、やるなら適当に数足したほうがいいね

485 名前:デフォルトの名無しさん mailto:sage [2009/12/13(日) 23:12:36 ]
>>483
・描画処理はちゃんとEDT上でやってる?
・EDT上でループしてないよな?



486 名前:483 mailto:sage [2009/12/13(日) 23:36:47 ]
あ、Thread.startを呼び出すべきなのに
Thread.run()を呼び出していただけでした・・。失礼しました。

487 名前:デフォルトの名無しさん [2009/12/14(月) 01:00:10 ]
Javaにもネイティブコンパイラがあるみたいだけど、あまり使われていないの?
使われていないとしたら、何かデメリットがあるのかな。

488 名前:デフォルトの名無しさん mailto:sage [2009/12/14(月) 01:32:37 ]
べつにネイティブ化しても大してメリットないからでしょ。
ごく一部の用途では使われてると思うけど。

489 名前:デフォルトの名無しさん mailto:sage [2009/12/14(月) 02:34:23 ]
Javaってどうしてこんなに糞言語になっちゃったの

490 名前:デフォルトの名無しさん mailto:sage [2009/12/14(月) 02:56:11 ]
あなたが腐っただけですよ

491 名前:488 mailto:sage [2009/12/14(月) 03:21:55 ]
>>488
ありがとう。
Javaは起動が遅い(&動作速度も遅いと誤認されている)から、
ネイティブ化するメリットは多少あると思うんだけどなぁ。
ま、そうしたい人がすればいいっていう話かな。



492 名前:デフォルトの名無しさん mailto:sage [2009/12/14(月) 03:22:38 ]
>>491>>487でした。。

493 名前:デフォルトの名無しさん [2009/12/14(月) 06:53:34 ]

BufferedReader[] in=new BufferedReader[3];
PrintWriter[] out=new PrintWriter[3];
ServerSocket[] s=new ServerSocket[3];
Socket[] socket=new Socket[3];

try{
for(int i=0;i<3;i++){
s[i]=new ServerSocket(8080+i);
socket[i]=s[i].accept();
System.out.println("finish1");
in[i] = new BufferedReader(new InputStreamReader(socket[i].getInputStream()));
out[i] =new PrintWriter(new BufferedWriter(new OutputStreamWriter(socket[i].getOutputStream())), true);
System.out.println("finish2");
}
String[] str=new String[4];
int[] receive=new int[4];
for(int i=0;i<4;i++){
System.out.println("receiving");
str[i]=in[0].readLine();
receive[i]=Integer.parseInt(str[i]);
System.out.println(receive[i]);
out[0].println(receive[i]);
}

494 名前:デフォルトの名無しさん [2009/12/14(月) 06:59:35 ]
こんな感じでソケット、リーダー、ライターをいくつか配列で作って通信を
させようと思っているんですが、実行できても通信ができません。
デバグプリントしたところ"finish1"までは表示されました。
また、おんなじプログラムで、配列でなくただの変数で宣言するとちゃんと通信できました。
どこがおかしいのでしょうか。

495 名前:デフォルトの名無しさん mailto:sage [2009/12/14(月) 08:07:36 ]
>>493
str[i]=in[0].readLine();
out[0].println(receive[i]);
ここはなんで i[0] とか out[0] みたいに 0 を指定してるわけ?
あと具体的にどういう動作を望んでるんだ?

496 名前:デフォルトの名無しさん mailto:sage [2009/12/14(月) 08:43:45 ]
>>493
ttp://journal.mycom.co.jp/column/java/049/index.html

497 名前:デフォルトの名無しさん [2009/12/14(月) 11:10:21 ]
質問です。
SwingのJFrameの上に、別のJDialogを表示する仕様なのですが、
JDialogがフォーカスを失っても、ずっと最前面に維持しておくためにはどうすればよいのでしょうか。

498 名前:デフォルトの名無しさん mailto:sage [2009/12/14(月) 12:03:56 ]
JDialog#setAlwaysOnTop

聞く前にjavadoc見るんだ!

499 名前:497 mailto:sage [2009/12/14(月) 13:00:02 ]
>>498
ありがとうございます。
1.5から、文字通りのAPIが使えるようになってたんですね。勉強になりました。

500 名前:デフォルトの名無しさん [2009/12/14(月) 14:58:26 ]
J2EE の話題(ロードマップ、使い方など)は、現在あるスレでは、
どのスレでするのが、最も適切でしょうか?

501 名前:デフォルトの名無しさん [2009/12/14(月) 15:42:42 ]
まだプログラム途中なのですが以下のプログラムが
現段階でif文の中のresultをfountに出力できないのですがどこが悪いのかわかりません。
if文の中でresultを標準出力するとちゃんと出力されます。
public class asig2{
public static void main(String args[])throws IOException{
int i=0,j=0,length2=0,byteValue,a=0;
String result;

BufferedReader fin1 = new BufferedReader(new FileReader("BlackList"));
PrintWriter fount = new PrintWriter(new BufferedWriter(new FileWriter("BlackList2",true)));
HashMap<String, ArrayList>list = new HashMap<String, ArrayList>();
ArrayList p=new ArrayList();
ArrayList n =new ArrayList();
while(null!=(result=fin1.readLine())){
if(list.get(result)==null){
fount.println(result);
n.add(j);
list.put(result,n);
a++;
}

else

}
}
}





502 名前:デフォルトの名無しさん mailto:sage [2009/12/14(月) 15:47:56 ]
>>501
fountをちゃんとclose()してみたらどーでしょ。


503 名前:デフォルトの名無しさん [2009/12/14(月) 16:02:28 ]
いわゆる波ダッシュ問題なんですが、原因と対処法がいまいちわかっていません。

環境はWindowsXPです。
"?"("\u301c")を含むStringを引数にFileインスタンスを生成しstreamに書き込むと、
想定したとおりのファイルがエクスプローラで見えるのですが、
そのStringをそのままprintlnすると、波ダッシュが?になってしまいます。

やりたいことは、このファイル名を引数にしてRuntime#execを実行したいのですが、
文字化けしているせいで実行先のプログラムでファイルが認識できません。

1.なぜこのようなことが起こるのでしょうか?(ファイル名はOKなのに引数ではNG)
2.一般的に、波ダッシュや全角ハイフンなどはどう対応すればよいのでしょうか?

現在はたまたまファイル名を変更することができるので、取り敢えず"〜"などに
置換していますが、ファイル名がこちらで指定できない(修正できない)ような場合は
どうすれば良いのか...

504 名前:デフォルトの名無しさん mailto:sage [2009/12/14(月) 16:02:48 ]
>>502
サンクス
ぼんミススマソ

505 名前:デフォルトの名無しさん mailto:sage [2009/12/14(月) 17:32:40 ]
>>503
出力したエンコードはなんなのさ?

506 名前:デフォルトの名無しさん mailto:sage [2009/12/14(月) 17:43:51 ]
Debian lennyでsun-java6(non-free)+tomcat6.0.20(testing)を入れて
JSF2.0を使ったアプリを設置してtomcatを起動するとアプリの起動に
失敗してしまう。

JSP+strutsだと問題ないけど。
何がいけないんだろうか。

507 名前:デフォルトの名無しさん mailto:sage [2009/12/14(月) 18:10:18 ]
相変わらずだなあ、まったく

508 名前:506 mailto:sage [2009/12/14(月) 18:22:47 ]
JSF1.2でも駄目だった。

・WindowsXPのnetbeans6.8で新規プロジェクト
・サーバにtomcat6.0.20を選択
・Java EE バージョンにJava EE5.0を選択
・フレームワークにJavaServer Facesを選択
・登録されているライブラリJSF 1.22を選択

で新規作成したプロジェクトで作ったwarをそのままDebianの
CATALINA_HOME\webappsにコピーしてtomcat6を再起動か
けてるだけなのにな。

509 名前:デフォルトの名無しさん [2009/12/14(月) 18:31:53 ]
>アプリの起動に失敗してしまう。
だけではわからない。
ログを晒しなされ

510 名前:506 mailto:sage [2009/12/14(月) 18:53:38 ]
Testというアプリです。

2009/12/14 18:37:17 org.apache.coyote.http11.Http11Protocol init
情報: Coyote HTTP/1.1を http-8080 で初期化します
2009/12/14 18:37:17 org.apache.catalina.startup.Catalina load
情報: Initialization processed in 1454 ms
2009/12/14 18:37:17 org.apache.catalina.core.StandardService start
情報: サービス Catalina を起動します
2009/12/14 18:37:17 org.apache.catalina.core.StandardEngine start
情報: Starting Servlet Engine: Apache Tomcat/6.0.20
2009/12/14 18:37:17 org.apache.catalina.core.StandardContext resourcesStart
2009/12/14 18:37:19 com.sun.faces.config.ConfigureListener contextInitialized
情報: Initializing Sun's JavaServer Faces implementation (1.2_04-b20-p03) for context '/Test'
2009/12/14 18:37:20 org.apache.catalina.core.StandardContext start
致命的: Error listenerStart
2009/12/14 18:37:20 org.apache.catalina.core.StandardContext start
致命的: 以前のエラーのためにコンテキストの起動が失敗しました [/Test]
2009/12/14 18:37:20 org.apache.coyote.http11.Http11Protocol start
情報: Coyote HTTP/1.1を http-8080 で起動します
2009/12/14 18:37:20 org.apache.jk.common.ChannelSocket init
情報: JK: ajp13 listening on /0.0.0.0:8009
2009/12/14 18:37:20 org.apache.jk.server.JkMain start
情報: Jk running ID=0 time=0/93 config=null
2009/12/14 18:37:20 org.apache.catalina.startup.Catalina start
情報: Server startup in 3580 ms

511 名前:デフォルトの名無しさん [2009/12/14(月) 20:03:24 ]
自分でなんとかしなされ



512 名前:506 mailto:sage [2009/12/14(月) 20:07:43 ]
なんだそれw。

513 名前:503 [2009/12/14(月) 20:15:41 ]
>>505
WindowsXPなのでMS932だと思うのですが...
ファイル名に使うエンコードと、JPanelに表示するのに使うエンコードが
それぞれどうなっているのかもわからなくて。

514 名前:デフォルトの名無しさん mailto:sage [2009/12/14(月) 20:15:49 ]
>>509
最低だな

515 名前:デフォルトの名無しさん mailto:sage [2009/12/14(月) 20:25:22 ]
>>510
つうか、
>>511
は、私じゃない。

いちどコンテキストパスをクリアしてから tomcat を起動してみなされ。

516 名前:506 mailto:sage [2009/12/14(月) 21:13:07 ]
コンテキストパスをクリアするとはどういうことですか?

517 名前:デフォルトの名無しさん mailto:sage [2009/12/14(月) 21:53:32 ]
>516
server.xmlに残ってるか確認

518 名前:506 mailto:sage [2009/12/14(月) 21:58:37 ]
$CATALINA_HOME/conf/server.xmlには/Testというコンテキストパスは
見あたりません。

519 名前:デフォルトの名無しさん mailto:sage [2009/12/14(月) 23:07:32 ]
System.out.println((char) 126);

520 名前:デフォルトの名無しさん mailto:sage [2009/12/15(火) 01:47:29 ]
Java1.4のAPIリファレンスがほしいのですが、
ttp://sdc.sun.co.jp/java/docs/j2se/1.4/ja/docs/ja/api/
ここがどうも反応がないんです。

どこかほかにないでしょうか?

521 名前:デフォルトの名無しさん mailto:sage [2009/12/15(火) 03:18:04 ]
ttp://java.sun.com/products/archive/j2se/1.4.1_07/ja/index.html
ここからダウンロードするとか?



522 名前:デフォルトの名無しさん [2009/12/15(火) 11:56:34 ]
コンパイルは通るんですが、実行するとたまにエラーが出ます。
エラーの内容はnullPointとかなんですが、エラーの場所が「Unknown Source」になります。
この「Unknown Source」になるということを解決するにはどうすれば良いのでしょうか?

523 名前:デフォルトの名無しさん mailto:sage [2009/12/15(火) 12:56:18 ]
スタックトレースがずらーっと下の方まで出ないか?
それを順に辿っていくんだ
ずっと下の呼び出し元から渡された引数が正しくないために起きることもある

524 名前:520 mailto:sage [2009/12/15(火) 13:17:13 ]
>>521
ありがとうございます。API入手できました

>>522
行数とかだしたいなら、コンパイル時に-gオプションつければ良いと思われる。


525 名前:デフォルトの名無しさん mailto:sage [2009/12/15(火) 13:48:15 ]
2ちゃんねるブラウザは、お気に入り/スレッド一覧/スレビューの3つにwindowを別けています
現在はJSplitPaneを2つ使って↑を実現しています
どうにかして、JSplitPaneを1つにする方向はありませんか?

526 名前:デフォルトの名無しさん mailto:sage [2009/12/15(火) 13:54:26 ]
どれでも好きな答えを選びなさい
(1) JSplitPaneのような動作をする自前のコンポーネントを作る
(2) そもそも1つにまとめる必要があるのか考え直す
(3) 解決方法はない。現実は非情である

527 名前:522 [2009/12/15(火) 14:30:55 ]
>>524
ありがとうございます。行数はプログラム全部合わせて1000行ほどですが、
「Unknown Source」になってしまいます。OSはXPです。
「javac ファイル名.java -g」でおkですよね?

528 名前:デフォルトの名無しさん mailto:sage [2009/12/15(火) 16:09:50 ]
私は銀の斧を選びました

529 名前:デフォルトの名無しさん mailto:sage [2009/12/15(火) 17:03:17 ]
「Unknown Source」になるのは、
例外の発生元が標準ライブラリ内だからじゃないか?


530 名前:デフォルトの名無しさん mailto:sage [2009/12/15(火) 17:39:46 ]
>>522
例外トレースここに貼ってみて。

531 名前:デフォルトの名無しさん mailto:sage [2009/12/15(火) 17:55:14 ]
「新これならわかるJava」という本を読み終えて、その範囲は身についたと思っていますが、
このスレに書かれていることはあまり理解できません。
ステップアップするために適した本は何かないでしょうか。
オススメのものがあれば、どうぞ教えてください!



532 名前:デフォルトの名無しさん mailto:sage [2009/12/15(火) 19:08:54 ]
独習JAVA・・・は敷居が高いかもしれん

他はピアソンの本は俺はcでお世話になって以来好き

533 名前:522 [2009/12/15(火) 19:09:46 ]
>>530
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
at javax.swing.JComponent._paintImmediately(Unknown Source)
at javax.swing.JComponent.paintImmediately(Unknown Source)
at javax.swing.RepaintManager.paintDirtyRegions(Unknown Source)
at javax.swing.RepaintManager.paintDirtyRegions(Unknown Source)
at javax.swing.RepaintManager.seqPaintDirtyRegions(Unknown Source)
at javax.swing.SystemEventQueueUtilities$ComponentWorkRequest.run(Unknown Source)
at java.awt.event.InvocationEvent.dispatch(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)

これです。

534 名前:デフォルトの名無しさん mailto:sage [2009/12/15(火) 19:48:05 ]
>>533
ごめん。俺にはわからない。

535 名前:デフォルトの名無しさん mailto:sage [2009/12/15(火) 19:52:13 ]
>>532
ありがとうございます。
Amazonのレビューにあまり良いことが書かれていませんが
「基礎の基礎を一冊終えたあたりに」とも書いてあってちょうど良さそうなので
一度立ち読みしてみます!

536 名前:デフォルトの名無しさん mailto:sage [2009/12/15(火) 20:38:09 ]
>>533
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
でググったら一発で解答が得られた。

やっぱ、質問は小出しにしないと楽しめないね。

537 名前:デフォルトの名無しさん mailto:sage [2009/12/15(火) 20:44:06 ]
javaは基礎本1冊読んだら、あとは実践で何か作った方がいいよ。
文法をコツコツ暗記してる奴って何か作らせても全く作れない。
多少難しいと思っても挑戦するのが大事。
挫折したとしても、その経験を持ってもう一度基礎本を読み直すと理解が全然違う。
とにかく経験

538 名前:デフォルトの名無しさん mailto:sage [2009/12/15(火) 20:51:19 ]
>>533
コンポーネントの再描画でエラーが発生してるんじゃないか、
くらいしかわからんね

539 名前:522 [2009/12/15(火) 22:05:41 ]
>>536
ttp://q.hatena.ne.jp/1101906592
このページに書いてあることが近い気がするんですが、ここでしょうか?

>>538
コンポーネントの再描写って既存のクラスを拡張したりすることでしたっけ?
心当たりが出てきましたorz


540 名前:デフォルトの名無しさん mailto:sage [2009/12/15(火) 22:18:23 ]
>>539
多分別スレッドでSwingコンポーネント触ってるだろ。

541 名前:デフォルトの名無しさん mailto:sage [2009/12/15(火) 22:20:30 ]
調べて出てこなかったので質問します。

配列で
int [] atai = { 1, 1, 1, 1, 1, 1, 1, };
int [] x = { 5, 5, 5, 5, 5, 5, 5, };
と初期設定をするのですがこの連続する1と5を省略できる方法はありますか?

あと出力するときに↓のようにずれてしまうのですがどうすればいいでしょうか?
System.out.printfが使えなくてほかの方法を探しています
atai 1 50 2 13
x 82 11 12 5 5

偉い人教えてくださいお願いします



542 名前:デフォルトの名無しさん mailto:sage [2009/12/15(火) 22:25:55 ]
>>541
java.util.Arrays.fill()
java.lang.String.format()

543 名前:デフォルトの名無しさん mailto:sage [2009/12/15(火) 23:12:10 ]
>>537
そうですね。
ネット上のゲーム講座を見つけたので、それを読みながら実際に作ってみようと思います。
ありがとうございました。

544 名前:522 [2009/12/16(水) 00:06:01 ]
>>540
TimerTaskを使ってて、そこのせいかもしれないです。
TimerTaskと同じ動きのSwingのものを使ってみます

545 名前:デフォルトの名無しさん mailto:sage [2009/12/16(水) 00:26:15 ]
まあそれが原因だな。
描画に関係する処理をEventキュー以外から呼んだら駄目だ。

546 名前:デフォルトの名無しさん mailto:sage [2009/12/16(水) 02:27:43 ]
なんのためにSwing Timerがあるとおもってるんだー。
わざわざ汎用のTimerつかわんでも。

547 名前:デフォルトの名無しさん mailto:sage [2009/12/16(水) 02:51:53 ]
でもなー
タイマーが描画に引っ張られるのはなー
いや別に1秒間隔で0.5秒とか10秒遅れるのはまあいいですよ



548 名前:デフォルトの名無しさん mailto:sage [2009/12/16(水) 03:41:13 ]
>>547
色んな意味で何を言ってるのか分からない。

549 名前:デフォルトの名無しさん mailto:sage [2009/12/16(水) 04:15:24 ]
Java7はいつ?
クロージャは?

550 名前:522 [2009/12/16(水) 10:09:09 ]
>>546
import java.util.*;
今見たらこのインポートでTimerTask使ってるんですけど、これSwingのものじゃないですか?

551 名前:デフォルトの名無しさん mailto:sage [2009/12/16(水) 10:37:38 ]
Swing のタイマーといったら javax.swing.Timer



552 名前:デフォルトの名無しさん mailto:sage [2009/12/16(水) 11:03:59 ]
>>548
swingのタイマーってイベントディスパッチで呼ばれるじゃん?
遅延が大きいんでないか

553 名前:522 [2009/12/16(水) 11:22:04 ]
できました!>>550のがSwingではない方ですね。
Swingつかったらエラーなくなってスムーズにうごくようになりました。
ありがとうございます!

554 名前:デフォルトの名無しさん mailto:sage [2009/12/16(水) 11:57:38 ]
>>552
どのみちイベントディスパッチスレッドからしかSwingコンポーネント触れないんだから一緒じゃない?

555 名前:デフォルトの名無しさん mailto:sage [2009/12/16(水) 13:18:00 ]
>>552
java.util.Timerでも大きい遅延はするぞ。
問題はタスクで何を実行するか。

アニメ付けたいならSwingWorkerかtimingframeworkの方がいい。

556 名前:デフォルトの名無しさん [2009/12/16(水) 13:40:16 ]
BufferedReaderで開いたファイルにをread()で読み込んだ場合、12345が4950515253とASCII変換
されてしまうのですが、これをそのまま12345と読み込みたい場合どのようにすればいいですか?
ファイルの中身は数字だけとは限りません。

557 名前:デフォルトの名無しさん mailto:sage [2009/12/16(水) 13:42:23 ]
>>555
態度デカイぞ。
何様だ。

558 名前:デフォルトの名無しさん mailto:sage [2009/12/16(水) 13:45:49 ]
>>556
char型にキャストしなさい
(char)49 == '1'
(char)50 == '2'
(char)51 == '3'
(char)52 == '4'
(char)53 == '5'

559 名前:デフォルトの名無しさん [2009/12/16(水) 13:58:47 ]
>>558
なるほど。助かりました。ありがとです

560 名前:デフォルトの名無しさん [2009/12/16(水) 14:40:24 ]
bufferedReaderで
while(null !=(line2=fin2.readLine())){
while(null!=(line1=fin1.readLine())){
   -----------------------------------------
   } 
  }
上記のような2重ループをつくると、1回目の内側のループまでおわり、2回目のループに入る時に
fin1.readLine()のポインタがnullにきてしまってるので、2回目の内側のループに入らないのですが
readLine()のポインタをリセットするにはどうすればいいでしょうか?
今はBufferedReader fin1 = new BufferedReader(new FileReader("NVlist"));
  fin1.mark(10000);
で、内側のループの外でfin1.reset(100)してたんですが何回かループするとjava.io.IOException: Mark invalid
というエラーが返ってきます。。。

561 名前:デフォルトの名無しさん [2009/12/16(水) 14:42:39 ]

fin1.reset(100)→fin1.rest()の間違いです



562 名前:デフォルトの名無しさん mailto:sage [2009/12/16(水) 15:08:04 ]
もう一度開き直せばいいじゃん

563 名前:デフォルトの名無しさん mailto:sage [2009/12/16(水) 15:23:43 ]
俺も開きなおす方が簡単だと思うが
mark(10000)は、10000文字ぶんまで記憶するだけで、10001文字め読み込むと、もうmarkは失われてresetできなくなる

564 名前:デフォルトの名無しさん [2009/12/16(水) 15:55:36 ]
>>562.563
たしかに開き直せば楽ですね

あと>>556を質問したのも自分なんですが、(char)でキャストしたものを標準出力すると文字化け
(MZ? ? ? ¡­)していて正しい値になっていないようなのですが、なんでですかね?
ちなみに読み込むファイルはバイナリでかかれています。

565 名前:デフォルトの名無しさん mailto:sage [2009/12/16(水) 16:05:04 ]
暇つぶしに自分でアプリを作って居るのですが
26事中4個のクラスにsingletonパターンを使っています
多すぎですかね?

566 名前:デフォルトの名無しさん mailto:sage [2009/12/16(水) 16:54:47 ]
>>565
暇つぶしに全部に使ってみれば?

567 名前:デフォルトの名無しさん mailto:sage [2009/12/16(水) 16:56:43 ]
Singleton パターン - Wikipedia
ttp://ja.wikipedia.org/wiki/Singleton_パターン


568 名前:デフォルトの名無しさん mailto:sage [2009/12/16(水) 16:59:41 ]
jtreeでノードが展開されているのか、閉じられているか調べたのですが
教えてエロイ人!!

569 名前:デフォルトの名無しさん mailto:sage [2009/12/16(水) 17:18:33 ]
普通に質問しろよ

570 名前:デフォルトの名無しさん mailto:sage [2009/12/16(水) 17:41:50 ]
>>564
バイナリファイルをテキスト表示できるわけないでしょ
テキストファイルじゃないからバイナリファイルって言うのです

571 名前:デフォルトの名無しさん mailto:sage [2009/12/16(水) 17:46:01 ]
>>568
javadoc調べた? isExpandedって見つからなかった?



572 名前:568 mailto:sage [2009/12/16(水) 18:59:53 ]
>>571
javadocでgetXXXばかりを調べていました
ありがとうございます

573 名前:デフォルトの名無しさん mailto:sage [2009/12/16(水) 19:24:34 ]
>>560
マジレスするとwhileのネストしなくても済むように考え直すべき

574 名前:デフォルトの名無しさん mailto:sage [2009/12/16(水) 22:53:24 ]
>>569

575 名前:デフォルトの名無しさん mailto:sage [2009/12/16(水) 23:54:05 ]
Javaでジョイスティックを扱えるライブラリにはいろいろあるみたいだけど
どれ使ったらいいの?ffjoystickというのにしてみようかと思っているけど

576 名前:デフォルトの名無しさん mailto:sage [2009/12/17(木) 03:40:38 ]
>>575
じゃあそれで

577 名前:デフォルトの名無しさん mailto:sage [2009/12/17(木) 03:41:50 ]
>>575
各ライブラリごとの違いは分かる?

578 名前:デフォルトの名無しさん mailto:sage [2009/12/17(木) 03:50:06 ]
>>575
分かる?ん?

579 名前:デフォルトの名無しさん mailto:sage [2009/12/17(木) 15:11:57 ]
お世話になります。

class A {
 int a;
 A(int _a){
  a = _a;
 }
 int x = new Z(a); //<- 0ではなく_aを渡したい
}

上記のように書くと、xはnew Z(0)で初期化されてしまいます。
それより先にaを_aで初期化したいのですが、記述方法はあるのでしょうか?



580 名前:579 [2009/12/17(木) 15:14:52 ]
よろしくお願いしますage

581 名前:デフォルトの名無しさん mailto:sage [2009/12/17(木) 15:16:35 ]
class A { 
 int a; 
 int x;
 A(int _a){ 
  a = _a;
    x = new Z(a);
 } 





582 名前:579 mailto:sage [2009/12/17(木) 15:26:38 ]
まじでそれしかない?
パラメータ初期化子みたいなのないのでしょうか

583 名前:デフォルトの名無しさん mailto:sage [2009/12/17(木) 15:33:39 ]
動けばいいんだよ動けば

584 名前:デフォルトの名無しさん mailto:sage [2009/12/17(木) 15:33:48 ]
わけわかんね

585 名前:デフォルトの名無しさん mailto:sage [2009/12/17(木) 15:34:30 ]
int x = new Z(a);



586 名前:579 mailto:sage [2009/12/17(木) 15:42:01 ]
ごめんなさい
Z x = new Zだとでも思ってくださ

587 名前:デフォルトの名無しさん mailto:sage [2009/12/17(木) 15:45:10 ]
JTreeではnodeをダブルクリックしないと展開してくれません
この動作をダブルからシングルクリックにしたいと考えいます、何方か教えてください


588 名前:デフォルトの名無しさん mailto:sage [2009/12/17(木) 15:45:50 ]
コンストラクタの中に書けばいいだけじゃねーの?
意味ワカンネーよw

589 名前:デフォルトの名無しさん mailto:sage [2009/12/17(木) 15:48:39 ]
Javaはこの順番だからあきらめよう。
スーパークラスの初期化付きフィールド
スーパークラスのインスタンスイニシャライザ
スーパークラスのコンストラクタ
サブクラスの初期化付きフィールド
サブクラスのインスタンスイニシャライザ
サブクラスのコンストラクタ
この順番だからスーパークラスのコンストラクタで仮想関数を呼び出すとややこしくなるね。

590 名前:デフォルトの名無しさん mailto:sage [2009/12/17(木) 15:50:41 ]
仮想関数だったんかw


591 名前:579 mailto:sage [2009/12/17(木) 15:51:45 ]
まああきらめですね。
手動リファクタリング中で、記述の変更を抑えたかっただけなので。

皆さんどもでした



592 名前:579 mailto:sage [2009/12/17(木) 15:52:43 ]
>コンストラクタで仮想関数
いやそこまでややこしい問題じゃないっす

593 名前:デフォルトの名無しさん mailto:sage [2009/12/17(木) 15:54:21 ]
移植でもしてたんか

594 名前:デフォルトの名無しさん mailto:sage [2009/12/17(木) 15:55:08 ]
リファクタリング (refactoring) とはコンピュータプログラミングにおいて、プログラムの外部から見た動作を変えずにソースコードの内部構造を整理すること。
いくつかのリファクタリング手法の総称としても使われる。

Wikipediaより引用

595 名前:575 mailto:sage [2009/12/17(木) 16:52:12 ]
各ライブラリの違い・・?
「Java ジョイスティック」でググって一番最初に出てきたWikiを見たら
JSR-80はWindows用の実装が進んでいない、libusb32はVistaでは使えないとかは書いてあった。
jUSBはよく分からないけど、2003年からずっと更新されて名一歩意。
FFJoyStickにしたのは一番新しそうで、しかもフォースフィードバックをサポートしてたからってだけだけど
これで良かった?

596 名前:デフォルトの名無しさん mailto:sage [2009/12/17(木) 17:14:46 ]
ok

597 名前:デフォルトの名無しさん mailto:sage [2009/12/17(木) 18:46:50 ]
うん

598 名前:デフォルトの名無しさん mailto:sage [2009/12/17(木) 19:32:56 ]
web pg厨房の相手なんかするな。javaの品格が超下がるだろ。

599 名前:デフォルトの名無しさん mailto:sage [2009/12/17(木) 20:00:59 ]
web pg厨房って誰のこと?

600 名前:デフォルトの名無しさん mailto:sage [2009/12/17(木) 20:08:32 ]
うゆじゃね?

601 名前:デフォルトの名無しさん [2009/12/17(木) 21:31:36 ]
大容量ファイルの、先頭数バイトを削ったり、先頭に数バイト足したりしたいのですが、
数バイトデータを削った新しいファイルを作成すると、書き出しに時間がかかってしまいます。
元のファイルを利用して、もっと効率的にやる方法はないでしょうか?



602 名前:デフォルトの名無しさん mailto:sage [2009/12/17(木) 21:33:37 ]
ないかもしれません。

603 名前:デフォルトの名無しさん mailto:sage [2009/12/17(木) 21:35:53 ]
プラットフォームAPIの中にもそんな機能は見かけないからないんじゃね?

604 名前:601 mailto:sage [2009/12/17(木) 21:49:42 ]
絶望しました。

605 名前:デフォルトの名無しさん mailto:sage [2009/12/17(木) 21:58:04 ]
まあそれできないのはJavaのせいじゃないけどな。

606 名前:デフォルトの名無しさん mailto:sage [2009/12/17(木) 22:21:03 ]
仕事中に眠くてしょうがないんですが、みなさんはどうですか?

607 名前:デフォルトの名無しさん mailto:sage [2009/12/17(木) 22:24:38 ]
以下2点。について勉強したいのですが、勉強するに当たってお勧めのサイトや本をお教えください。

1.Tomcatによって?JSPから変換されたサーブレットの記述。initやその他のメソッドの意味

2.TomcatやEclipseの構造。起動ファイルの内容や各クラス間の係わり合い

よろしくお願いします。

608 名前:デフォルトの名無しさん mailto:sage [2009/12/17(木) 22:24:52 ]
a) コーヒーを飲む。
b) 今すぐ布団に潜る。

609 名前:デフォルトの名無しさん mailto:sage [2009/12/17(木) 22:28:20 ]
>>606
仕事中にうちに帰った後の自分のためのタスクを作る(スイーツ)

610 名前:デフォルトの名無しさん mailto:sage [2009/12/17(木) 23:36:06 ]
例えば例えば!?

611 名前:デフォルトの名無しさん mailto:sage [2009/12/17(木) 23:52:57 ]
教えて下さい



612 名前:デフォルトの名無しさん mailto:sage [2009/12/17(木) 23:56:57 ]
>>606
覚醒剤もしくはリタリン。

613 名前:デフォルトの名無しさん mailto:sage [2009/12/17(木) 23:59:58 ]
夜見かけて読みたいと思った技術系の文書(日本語じゃない論文とか特に)を
会社で熟読してたりはする。業務している態を装いながら。ごめんなさい。

眠いときは社内を散歩するといいぞ。

614 名前:デフォルトの名無しさん mailto:sage [2009/12/18(金) 00:00:48 ]
お塩先生キター

615 名前:デフォルトの名無しさん mailto:sage [2009/12/18(金) 00:20:25 ]
一日中テストな時期があって超眠くて、
コーヒー、眠眠打破、顔洗う、眠気覚ましツボ、体操、手を針で刺すとか色々試したけど、
効いたのはリタリンだけだった。

やっぱ動物自力で眠気に勝つのは無理なんだよ。ヤバイ薬が嫌なら仮眠とるしかない。

616 名前:デフォルトの名無しさん mailto:sage [2009/12/18(金) 00:22:32 ]
ジャバコーヒーって美味いの?
やっぱりアメリカンだからスタバみたいなうすい味?

617 名前:デフォルトの名無しさん [2009/12/18(金) 00:36:11 ]
Javaコード上でMozillaJavaHTMLParserが上手く動かないんですが
質問して良いですか

618 名前:デフォルトの名無しさん mailto:sage [2009/12/18(金) 00:40:00 ]
まあ聞いてみようか。

619 名前:デフォルトの名無しさん mailto:sage [2009/12/18(金) 00:55:56 ]
良いよ!

620 名前:デフォルトの名無しさん mailto:sage [2009/12/18(金) 01:29:12 ]
構わん、続けたまえ。

621 名前:デフォルトの名無しさん mailto:sage [2009/12/18(金) 01:45:48 ]
そうだ!そうだ!



622 名前:デフォルトの名無しさん mailto:sage [2009/12/18(金) 01:52:33 ]
【ネット】ニコ生で性器を公開する女子中学生たち [画像付き]
2ch.freefronthost.com/newsplus/1328115421/

623 名前:デフォルトの名無しさん mailto:sage [2009/12/18(金) 02:00:47 ]
あやしいアドレスじゃ

624 名前:デフォルトの名無しさん mailto:sage [2009/12/18(金) 02:02:23 ]
リンク踏んじゃったお・・・・大丈夫かお?

625 名前:デフォルトの名無しさん mailto:sage [2009/12/18(金) 05:01:40 ]
Java Communication APIのSerialPortEventListenerについての質問なのですが
SerialPortEventListenerに記述したコードがすべて処理し終わる前にまた
データ通信が行われ、SerialPortEventListenerの最初から処理されてしまいます。
SerialPortEventListenerに記述したコードをすべて処理し終えてから再度データ通信を
行い、SerialPortEventListenerに記述したコードを処理する方法はあるのでしょうか?

626 名前:デフォルトの名無しさん mailto:sage [2009/12/18(金) 07:10:48 ]
synchronized

627 名前:デフォルトの名無しさん mailto:sage [2009/12/18(金) 07:17:34 ]
オープンソースで決定木を構築するためのパッケージとかありませんか?


628 名前:デフォルトの名無しさん mailto:sage [2009/12/18(金) 10:07:39 ]
あったら幸せですね

629 名前:デフォルトの名無しさん mailto:sage [2009/12/18(金) 14:21:00 ]
JFrameを最大化したいのですが、setsizeとsetlocationを使ってもできません
何方か教えてください

630 名前:デフォルトの名無しさん mailto:sage [2009/12/18(金) 14:40:44 ]
>629
JFrame#setExtendedState ではダメかな?

631 名前:629 mailto:sage [2009/12/18(金) 15:22:43 ]
>>630
最大化できました。ありがとうございます

実はソフトを起動した時にウィンドウのサイズを復元しようとしているのですが
f.setExtendedState(JFrame.MAXIMIZED_BOTH)をするとウィンドウが強制的に最大化するので
if(Toolkit#getScreenSize() = 前回のウィンドサイズ)として、最大化するか判断しています

しかし、ウィンドウを最大化して終了したのにToolkit#getScreenSize()とズレが発生してしまいます
ウィンドウのサイズはJFrame#getSize()で取得しています
すいませんが、教えてください



632 名前:デフォルトの名無しさん mailto:sage [2009/12/18(金) 15:44:36 ]
>>630
はやく教えてあげてください

633 名前:デフォルトの名無しさん mailto:sage [2009/12/18(金) 15:54:53 ]
>>631
最大化したかは (f.getExtendedState() & Frame.MAXIMIZED_BOTH) != 0 で判定する。

634 名前:629 mailto:sage [2009/12/18(金) 15:55:40 ]
f.getGraphisConfiguration().getBounds()
をしたら同じ値になりました
すいませんでした

635 名前:デフォルトの名無しさん mailto:sage [2009/12/18(金) 16:21:16 ]
>631 参考までに
ttp://imodegwin19.blog114.fc2.com/blog-entry-6.html

636 名前:デフォルトの名無しさん mailto:sage [2009/12/18(金) 18:50:45 ]
>>627
Weka とか

637 名前:デフォルトの名無しさん [2009/12/18(金) 18:53:04 ]
617ですが
外部ライブラリの加え忘れでした
自己解決しましたので質問もなしでお願いします
お騒がせしました

638 名前:デフォルトの名無しさん mailto:sage [2009/12/18(金) 23:45:18 ]
質問です。

キャンバス上に直線を引き
それに「やり直す/元に戻す」機能をつけようと思っています。
しかし、マウスをドラッグしたときの履歴の処理が上手くいきません。

以下が現在のプロジェクトとなっていますので
お気づきの点がありましたら
どうぞご指南のほどよろしくお願いします。

rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/862.zip

639 名前:デフォルトの名無しさん mailto:sage [2009/12/18(金) 23:59:28 ]
Vector#cloneってディープコピーだっけ?

640 名前:639 mailto:sage [2009/12/19(土) 00:01:41 ]
ごめんPointの配列か
関係ないねorz

641 名前:デフォルトの名無しさん mailto:sage [2009/12/19(土) 00:17:07 ]
>>640
レスの無駄使いになりますから少し考えてから行動するようにしましょう



642 名前:デフォルトの名無しさん mailto:sage [2009/12/19(土) 00:59:48 ]
javaクラスライブラリー#clone()した時に
clone()がディープコピーなのかシャドーコピーなのか
調べる方法を教えてください


643 名前:デフォルトの名無しさん mailto:sage [2009/12/19(土) 01:04:17 ]
>>601
java.io.SequnceInputStreamとかjava.io.FilterInputStreamは調べた?

644 名前:639 mailto:sage [2009/12/19(土) 01:06:30 ]
何度も本当に申し訳ない
>638
まず、startとstartPoint endとendPointがダブってるのでどっちかに統一

それから、CanvasLabelのfigureBoxに追加してる場所がない。
でも大前提としてVectorで持つのではなく、BufferedImage canvasを保持しておくべきなんじゃないのか?
figureBoxを使って一回一回描画してないんだから、canvasを保存しておけばいいとおもう。
もしそうならmouseDraggedのところを
((CanvasLabel) figureBox.lastElement()).setEnd(end); → setEnd(endPoint);
mouseReleasedを
this.canvas.createGraphics();

BufferedImage image = new BufferedImage(this.getWidth(), this.getHeight(), BufferedImage.TYPE_4BYTE_ABGR);
Graphics2D g2 = image.createGraphics();
g2.drawImage(canvas, 0, 0, null);
canvas = image;

history.add(figureBox.clone()); → history.add(canvas);
にして、historyとかundo、redoをVectorからBuffredImage仕様に書き換える

それから、paintComponentがおかしい。
switch文はwhileから出して、Iterator ・・・の行とwhile文は削除→canvasを使って描画すればいいから。

あとはCanvasLabelのコンストラクタなりでhistory.add(null)をしておかないと何もない初めの状態が記録されない。

これでたぶんうまくいくはず。疲れたおやすみ

645 名前:368 mailto:sage [2009/12/19(土) 02:16:13 ]
どうもありがとうございます
早速やってみます

646 名前:デフォルトの名無しさん mailto:sage [2009/12/19(土) 15:22:21 ]
winでの開発環境はどのようなものが一般的でしょうか

647 名前:デフォルトの名無しさん mailto:sage [2009/12/19(土) 15:25:34 ]
eclipse

648 名前:デフォルトの名無しさん mailto:sage [2009/12/19(土) 15:32:24 ]
エクリプスは便利すぎてぬるま湯に浸かってるみたいだ…

649 名前:デフォルトの名無しさん mailto:sage [2009/12/19(土) 15:34:41 ]
職業マならテキストエディタで書けよって定番レス↓

650 名前:デフォルトの名無しさん mailto:sage [2009/12/19(土) 15:36:17 ]
職業マなら開発環境くらい自作しろよ

651 名前:デフォルトの名無しさん mailto:sage [2009/12/19(土) 15:37:39 ]
>>646
NetBeansですね
今やこれ以外の選択肢は無いでしょう



652 名前:デフォルトの名無しさん mailto:sage [2009/12/19(土) 16:48:15 ]
>>651
NetBeans の検索結果 約 5,540,000 件中 1 - 100 件目 (0.66 秒)
Eclipse Java の検索結果 約 17,000,000 件中 1 - 100 件目 (0.63 秒)

検索件数が倍になったら教えてね。

653 名前:デフォルトの名無しさん mailto:sage [2009/12/19(土) 16:51:41 ]
NetBeans +開発 +Java -JavaScript -C -PHP -Ruby -SVN -CVS の検索結果 約 122,000 件中 1 - 10 件目 (0.28 秒) 
Eclipse +開発 +Java -JavaScript -C -PHP -Ruby -SVN -CVS の検索結果 約 903,000 件中 1 - 10 件目 (0.29 秒) 

ああ

654 名前:デフォルトの名無しさん mailto:sage [2009/12/19(土) 16:59:48 ]
NetBeansって名前がダメだよね
豆だもん、豆。

655 名前:デフォルトの名無しさん mailto:sage [2009/12/19(土) 17:04:53 ]
JavaBeansさんをdisってんの?

disられてもしょうがないと思うけど

656 名前:デフォルトの名無しさん mailto:sage [2009/12/19(土) 17:05:24 ]
>>654
Javaェ...

657 名前:デフォルトの名無しさん mailto:sage [2009/12/19(土) 17:08:39 ]
......

658 名前:デフォルトの名無しさん mailto:sage [2009/12/19(土) 20:38:23 ]
日曜プログラマーはふつうにC#やれよ。
なんでこのスレに来るんだ?

659 名前:デフォルトの名無しさん mailto:sage [2009/12/19(土) 21:21:55 ]
クラスローダを明示的に呼び出している操作の事を、リフレクションと読んでいるのですか?
リフレクションする時は、*.getClass();ってやっているじゃないですか

660 名前:デフォルトの名無しさん mailto:sage [2009/12/19(土) 21:46:45 ]
>>659
違います。getClasはクラスローダの呼び出しでもありません。


661 名前:デフォルトの名無しさん mailto:sage [2009/12/19(土) 22:47:40 ]
>>660
わかりました
ありがとうございます



662 名前:デフォルトの名無しさん mailto:sage [2009/12/19(土) 23:03:16 ]
SwingUtilities#paintComponent(Graphics g, Component c, Container p, int x, int y, int w, int h)
p - 中間 Container

javadocを見てもパラメータpの意味がわかりません
どなたか教えてください

663 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 05:24:26 ]
>>662
教える人を呼んできますね。

664 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 10:03:33 ]
pっていうのは、最終的なcの描画対象コンポーネントだと思っていいみたい。
pがCellRendererPaneならばそれがそのまま使われるし、そうじゃなかったら、CellRendererPaneを新たに作成して、それにpを乗せる感じ。

665 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 11:00:43 ]
>>664
thx

666 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 11:47:08 ]
JNIを多用し、システムに負荷をかけると性能があまり出なくなりました。
先輩にJNIでC言語のプログラムをよんだとき、C言語のプログラムが確保したメモリって
Full GCでしか開放されないからだといわれたのですが、Full GCはあまりはしっていません。
JNIを使用すると、Full GCを意図的に誘発するようにしなければならないのでしょうか?

667 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 11:53:58 ]
いや、単にJNIが遅いだけ
最近はJITコンパイルの性能も高いから、Javaだけで書ける処理ならJavaだけで書いた方が大抵の場合速い
JNIは、どうしてもCでしか出来ない場合 (OSのAPI呼び出し等) や、
JNIのオーバーヘッドを無視できるような場合 (1回の呼び出しで大量のデータを処理する等) でないと、無意味
あと、Cで確保したメモリはGCは面倒見てくれないから自分で解放しなければならない

668 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 12:24:54 ]
>>664
呼んでからどれだけ待たせるんだw

669 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 12:49:08 ]
「15歳からはじめるJavaオンラインゲームプログラミング教室」という本を書店で見つけて、
ステップアップのための本として読みやすそうだと思いましたが、その本について調べてみると
子ども向けということで一歩踏み込んだ説明が省かれてしまっているとのことでした。

ゲームプログラミングのようなとっつき易い内容で、もう少し詳しい説明が書かれた良書は
何かないでしょうか?ご存知の方、どうぞご教示ください。

670 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 12:53:58 ]
>>667
出番だよ
さっさと回答してやれ

671 名前:667 mailto:sage [2009/12/20(日) 12:57:53 ]
本の善し悪しはわからん
誰か回答してやってくれ



672 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 13:00:23 ]
本読まないで始めた奴の方が多いだろうしな

673 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 13:26:51 ]
スレチしてしまったのでここで改めて質問します。

Canvas3Dをフレームの領域指定して貼り付けたいのですがどうすればいいでしょうか?
例えばフレームサイズが(500,400)として,Rect(10, 10, 390, 390)くらいの領域だけで3D描画を行わせたり等がしたいです。

674 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 13:33:42 ]
オフスクリーンに描画して切り取ったのをコピーすればいいんじゃね?

675 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 13:39:29 ]
>669
細かい説明なんて2冊目で読めばいいから、
1冊目は立ち読みしてみてわかりやすい本でいいと思う

まさか1冊で終わるわけないし。

676 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 13:44:56 ]
Java3Dやらんから的外れかもしれないけど、普通にコンポーネント化して
フレームに貼り付けるんじゃね?

677 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 14:03:03 ]
Javaの入門書について質問です。

多言語で実務経験があるものがJavaを学習するのにオススメの入門書ってありますか?

今のところ独習Javaの購入を検討しています。

実務経験はC:4年、VB5.0:1.5年、VB2005:1年、VC6.0:0.5年といったところです。


678 名前:673 mailto:sage [2009/12/20(日) 14:07:10 ]
>>674
>>676
ありがとうございます。これから本・ネットで調べてその方法で出来るか試してみます。
ただ出来れば具体的な解決策を例示してくれるとありがたいです。

679 名前:669 mailto:sage [2009/12/20(日) 14:19:34 ]
>>672
本を読まずに覚えた人は代わりにどうやって勉強したんでしょうか・・・?

>>675
1冊目はもうすぐ読み終わりそうです。
実用的なスキルが身についていないので、ゲーム等を実際に作って覚えるための
2冊目の本を探してます。

680 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 14:23:05 ]
>>678
おいおい、ヒントだけじゃ出来ませんってか?
例えば www7.plala.or.jp/keny01/java3d/java3d_pg_introduction.html とか。
これにしたって、AppletはPanelなんだからFrameとかに貼り付けられる立派なコンポーネントだぜ。

681 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 14:32:08 ]
>>679
>本を読まずに覚えた人
JDKを読む。
sunのチュートリアルを読む。
samplesを読む。
src.zipを読む。
Jakartaなどオープンソースのコードを読む。



682 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 14:55:57 ]
>JDKを読む。

| % od -h java_xx_sdk-x_xx-jdk-xuxx-xxxl.bin
|
| フムフム、なるほど・・・・

   ̄ ̄ ̄|/ ̄ ̄ ̄ ̄
          /つ_∧!
    ∧_∧ 〈(゚д゚ )
   ( ・∀・) ヽ ⊂ニ)
   (つ/ ̄ ̄ ̄/  |
   ̄\/___/ ̄ ̄ ̄


683 名前:デフォルトの名無しさん [2009/12/20(日) 15:37:11 ]
Javaはサンプルソースがてんこ盛りだから本なんかいらない

684 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 15:50:49 ]
Java 本 に一致する日本語のページ 約 2,610,000 件中 1 - 10 件目 (0.20 秒)
C++ 本 に一致する日本語のページ 約 1,490,000 件中 1 - 10 件目 (0.26 秒)
JavaScript 本 に一致する日本語のページ 約 12,600,000 件中 1 - 10 件目 (0.09 秒)
PHP 本 に一致する日本語のページ 約 15,200,000 件中 1 - 10 件目 (0.37 秒)
C 本 に一致する日本語のページ 約 35,100,000 件中 1 - 10 件目 (0.15 秒)

685 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 15:57:58 ]
サンプルは基本がわかった上で参考にするものだろ

686 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 16:05:44 ]
>>684
本だけとか、Cだけとか、JavaよりC!、みたいな検索結果も混じってるんでない?

687 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 16:11:47 ]
>>683
てことは、このスレもいらないわけだね。

688 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 16:18:13 ]
>>685
sunのサイトにあるSwingのチュートリアル読んで来い。
それにしかかいてない大事なことがいくつかある。

689 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 16:20:20 ]
チュートリアル ≠ サンプル

690 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 16:31:12 ]
>>688
これ?
java.sun.com/docs/books/tutorial/uiswing/index.html

691 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 16:33:26 ]
まあ、プログラミングの基本がある程度しっかりできてれば、
ソースだけみてもかなりのことがわかるだろう。
プログラミングの基本を知らない人間は、本かなんかで勉強しないと、
いきなりソースコードだけみてもわからんかもしれない。



692 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 16:41:35 ]
Cヒープとは何をする領域なのでしょうか?
こちらは開発上、意識する領域なのですか?

693 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 16:46:20 ]
誤爆やスレ違いでなかったら、javaのヒープと同じものと言えば分かるかな?
newは無いからmallocなどで確保する。

694 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 17:05:56 ]
ん?

695 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 17:34:35 ]
Class.forNameでロードしたクラスはシステムクラスローダにロードされるのでしょうか?
それともVM次第なのでしょうか?

696 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 17:36:43 ]
javadocに書いてあるけど

> Class.forName("Foo")
> これは、次と同じです
> Class.forName("Foo", true, this.getClass().getClassLoader())

697 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 17:37:43 ]
>>695
java.sun.com/javase/ja/6/docs/ja/api/java/lang/Class.html#forName(java.lang.String)
> 指定された文字列名を持つクラスまたはインタフェースに関連付けられた、
> Class オブジェクトを返します。このメソッドを呼び出すことは、次の記述に相当します。
>
>   Class.forName(className, true, currentLoader)
>
> ここで、currentLoader は、現在のクラスを定義するクラスローダを示します。

698 名前:669 mailto:sage [2009/12/20(日) 17:50:03 ]
>>681
なるほど、他人のソースを読むということですね。

でも私はまだそのレベルに達してないと思いますし、
移動中に読みたいので、やはり本がいいと思っています。
どうぞよろしくお願いします。

699 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 18:08:13 ]
オブジェクトをインスタンス化すると確保されるメモリ領域には変数以外何があるんですか?
メソッドについては参照が保持されるのですか?

700 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 18:48:43 ]
>>698
www.amazon.co.jp/gp/product/4797344512
ぶっちゃけ、Java(やC#)でゲーム作ってるひとって、C/C++でのゲーム作成経験者が大半じゃない?


701 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 19:10:24 ]
ワタシイングリッシュヨメマセーン



702 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 19:47:45 ]
>>699
まずは人に聞く前に質問できるくらいの勉強はしてこようね

703 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 20:25:29 ]
現在自作のクラスのclone()を実装しようと思って色々やっているのですが、
フィールドにjava.awt.Shape型の変数があり、これのclone()を呼び出したいのですが、
if( shape instanceof RectangularShape ){
  ((RectangularShape)shape).clone();
}else
if( shape instanceof 〜 ){
  〜
}
て感じでif-elseをつなげていくしかないんでしょうか?リフレクション辺りで色々やってみたんですが
コンパイルすら通りません。ちょっとお手上げです・・・

704 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 20:48:30 ]
HashMapや自作のBeanを簡単にディープコピーする方法はあるのでしょうか?
新たにnewして、値を入れないとダメなのですか?

705 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 20:49:32 ]
>>703
Cloneable だけテストすれば済むんじゃないの?

706 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 21:05:45 ]
shape = new GeneralPath(shape); とか

707 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 21:09:42 ]
>>703
いろいろあるけど直列化と逆直列化をしてコピーするとか?

708 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 21:17:29 ]
>>700
ゲームが作りたいのではなくて、Javaが使えるようになるために
とっつき易いゲームを選ぼうとしているだけです。

アマゾンでは
>javaの本ではなくゲームプログラミングの本なのでこの本でjavaを勉強したいという人にはオススメできません
とコメントされているようです・・・。
一度立ち読みでもしてみます。

ありがとうございました。

709 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 22:11:25 ]
Javaのシステムってスレッドを多重化することでパフォーマンスがあがるといいますが、
CPUは数個しかないと思うので、100スレッド多重としてもあまり意味がないと思います。
何多重にすればよいのかは、どういう計算で求めるとよいのですか?

710 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 22:11:31 ]
>>677
それは他言語で実務経験があるとはいわない。
VB.netに手が馴染まなかったのなら、java,c#ともやっても馴染まないだろう。
どの実務があるか知らないけど、最新PCを買ってlinux(virtualpcとかでも)のcでopenglやgtk+をやるといいと思うよ。
javaなら英語のチュートリアルだけど、もし読めないなら5年以上この業界にいるのに英語も読めないのだからもうあきらめた方がいい。

711 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 22:16:46 ]
ベンチマークして求めればいい



712 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 22:25:17 ]
>>709
何かの本にはCPUの数+1くらいと書いてあった

713 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 22:29:36 ]
javaでゲームとか言い出しても実際はjoglだしね。
c#だとdirectxでこれも使う言語に関係ないし。

714 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 22:48:00 ]
>>710は何で偉そうなの?

715 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 22:59:27 ]
>>703
JavaのCloneableは失敗作
コピーコンストラクタでおk
詳しくはEffective Javaを参照

716 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 23:04:06 ]
英語すら読めないならjavaなんぞ無理だな

717 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 23:07:57 ]
海外で暮らしてた俺ならJavaは余裕ってことか?

718 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 23:11:16 ]
アフリカ辺りですか?

719 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 23:12:40 ]
いや。韓国ですOrz

720 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 23:36:39 ]
・・・

721 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 23:59:27 ]
英語できるような賢い子がなんで底辺プログラマなんてやってんの?



722 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 00:02:59 ]
でも辞書引きながらでも英語よまないと情報全然足りないじゃん

723 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 00:04:10 ]
アメリカ行けば英語できるのに底辺の仕事やってる奴が掃いて捨てるほどいるぞ。

724 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 00:05:09 ]
今時、英語も読めないんなら底辺プログラマーすらやってられないのよ。

725 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 00:06:12 ]
その前に日本語勉強して下さい^^;

726 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 00:07:10 ]
>>718
イギリスです

727 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 00:14:26 ]
>>724
で、英語も出来て月給はいくらもらえるんですか?

728 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 00:25:53 ]
>>699
メソッドはクラスがロードされる時だろうね。


729 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 00:46:37 ]
>>708
ゲームって(もちろんものによるけど)結構特殊なので、Javaを学ぶ目的には
あまり適してないと思うんだけどね。

例えばゲームループって呼ばれる手法、WindowsSDKを生で使う場合には
普通にGUIのアプリを作るにも似たようなことするんだけど、
Javaで同じことする場合にはライブラリが隠蔽してくれてるので気にする必要なかったりとか。

で、入門書にはそういうゲームに特化したテクニックはあまり書いてないだろうし、
普通のJavaの使い方はそれとは別に覚える必要があると思うし。

730 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 00:54:40 ]
>>704
CommonsのLangにそういうのあるみたいね。使った事ないけど。
commons.apache.org/lang/api-release/org/apache/commons/lang/SerializationUtils.html#clone(java.io.Serializable)

731 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 00:56:49 ]
ゲームってのは、言語+英語+数学がある程度できないと無理。
javaとかc#とかライブラリ的なところはあまり重要でない。



732 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 00:58:29 ]
何故英語?

733 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 01:02:53 ]
英語英語言う奴とコミュ力コミュ力という奴の中身はだいたい同じ

734 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 01:02:56 ]
ゲームのテクはほとんど英語で書いてある。
実際は、業務アプリの数十倍の努力が必要。

735 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 01:10:22 ]
まあ、英語に比べれば Java なんて 1000倍易しいな。
で、Java に馴れるには、まずは List や Map をごちゃごちゃとこねくり回すような題材がいいな。


736 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 01:14:14 ]
で、数十倍の努力してお幾ら稼いでるんですかね。

737 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 01:15:09 ]
海外のサイトから情報が汲み取れないバカのためにここがある

738 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 01:15:15 ]
Javaはチュートリアル(英語)で挫折するかどうかだろ。
それで挫折するようなら見込みないし素直にC#(かVB)にしろ。

739 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 01:18:08 ]
英語英語言ってる奴が日本語読めない事はわかった

740 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 01:19:18 ]
オブジェクト指向の本はJAVAの方が揃っているから
JAVAのほうがいいと思う

741 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 01:20:58 ]
低学歴+底辺無能+日本人は、C#(マイクロソフト)を使ってIT土方として一生汗を流してればよろし。



742 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 01:22:36 ]
僻みっぽいスレだな

743 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 01:30:13 ]
>>741
在日乙

744 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 01:37:11 ]
>>741みたいな奴って、どの板にもいるね
ゴキブリみたいにいっぱい繁殖してるの?

745 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 02:08:16 ]
>>705
すみません。よくわかりません。
Object型にキャストしたところでObject#cloneはprotectedだし、なんらかのcloneを呼べる型にしないとダメなのでは
>>707
それも同等の問題でできあませんね
>>706
Shapeならそれで済みますね。new Area(Shape型)で
>>715
失敗作ですか・・・今回のディープコピーでの手こずりでJavaをちょっと嫌いになりました。好きだったのに・・・

皆さんありがとうございました。
結局今回は、インスタンスの型がある程度絞られていたのでめんどかったけど、>>703の方法で実装しました。


746 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 02:11:09 ]
>>744
ゴキブリにはコンバットがよく効く
コンバット置いてから俺の部屋でゴキブリを見たことがない

747 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 02:58:46 ]
>>715見てEffectiveJava読み直したんだけど、コンパイル時に型が決まってないと駄目だとか
protectedだからリフレクションで云々とか、正に>>703が直面してる問題がそのものだね。

ちなみにリフレクション使うんだったらやりたいことはこうかな?

Method method = Object.class.getDeclaredMethod("clone", new Class[] {});
method.setAccessible(true);
Shape cloned = (Shape) method.invoke(shape, new Object[]{});

748 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 03:45:21 ]
PHPでは
$className = "Foo";
$obj = new $className();

とするとFooインスタンスを作成することができるのですが
Javaで同じようなことをしたい場合どうしたらいいのでしょう?

String className = "Foo";
Foo obj = new className(); //これでは当然無理です

749 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 04:26:42 ]
String className = "Foo";
でString型の"Foo"という文字列を持ったインスタンスが生成される

んだけどPHP知らないからすごい別次元臭がする

750 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 05:38:41 ]
>>748
Class.forName("Foo").newInstance();

751 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 06:14:37 ]
www.klab.ai.kyutech.ac.jp/~yatti/sunspot/index.php?%E5%8A%A0%E9%80%9F%E5%BA%A6%E3%82%BB%E3%83%B3%E3%82%B5%E3%82%92%E4%BD%BF%E3%81%86
こっちのSunSpotの加速度センサのプログラムを少し変えたのですが、うまく動きません。
Stateクラス、
public class State {
int state = 5;

public void setState(int state){
this.state = state;
}

public void callState(){
//このstateが1と0になり続ける状態を作りたい…
System.out.println("come :"+state);
}
}

を作って、LEDが点灯している、していない状態を管理したいのです。

↑のWikiのLEDFlash.javaの
public void thresholdExceeded(IAccelerometer3D accel, int axis, double val, boolean relative) {
//閾値より高い値ならばLEDを青色に点滅させる
以降のif文の前者がLEDを点灯させる、else以降がLEDを消灯させるプログラムです。
これは閾値を超えた時だけ呼び出されます。

このifの点灯させる所にst.setState(1);消灯させる所にst.setState(0);を書いても、超えてる時はちゃんと1と0になってるんですが、
放置したら(閾値を超えてない状態)デフォルトの数値のままになってしまいます。(つまり5)
確認はAccelerometerTest.javaクラスの加速度の測定をしているスレッドでst.callState();をして確認をしています。
AccelerometerTest.java、LEDFlash.java、どちらのクラスでもState st = new State();
と書いてるのがマズいんでしょうか…だとしたらどうしたら良いんでしょうか?



752 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 07:04:47 ]
2000年頃から英語やれって云う人はいた。
ttp://piza.2ch.net/test/read.cgi/tech/971960169/132

今は入門書もあり出版や校正する人以外はどうでもいいかな。 >>751 のような制御は知らん。

753 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 07:24:46 ]
>>750
すげー

754 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 09:13:30 ]
基本の演算処理ですけど
int a =5; int b =12が宣言されているのですが
(a<=b),(a<b)&(a>b),(b%a),(a!=b),(++a)*bの実行結果を求めたいのです。

755 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 09:50:29 ]
勝手に求めてくださいよそのの程度

756 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 12:36:14 ]
>>751
> 放置したら(閾値を超えてない状態)デフォルトの数値のままになってしまいます。(つまり5)
つまり放置しなければいい
もしくは放置したことを感知できればいい
やりかたはしらない

757 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 12:45:10 ]
>>751
わかったかな?


758 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 13:21:14 ]
>>751
wikiじゃなくて発売元に聞いてサポート受けたら?

759 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 13:55:00 ]
>>751
コンストラクタで現在の状態(0か1)を初期値として与える必要があるんじゃないの?
言葉通りしきい値超えないとコールバックされないんでしょ

760 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 14:02:55 ]
>>751
もしも〜し

761 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 14:05:21 ]
> thresholdExceededメソッド
> 加速度センサが閾値を超えたときに呼ばれるメソッド.
ってあるからStateの初期値は閾値を超えてない状態を与える必要があるのでは。
てか5って何か意味あるの?



762 名前:デフォルトの名無しさん [2009/12/21(月) 18:43:44 ]
>>751
どうなの?

763 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 18:56:53 ]
ここってサーブレットの話題とかでもおkですか?

764 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 19:01:57 ]
ばっちこーい

765 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 19:03:59 ]
ぬふぅ

766 名前:デフォルトの名無しさん [2009/12/21(月) 19:06:44 ]
>>679
ほとんど英語のドキュメントとチュートリアルで覚えましたね

767 名前:デフォルトの名無しさん [2009/12/21(月) 19:07:46 ]
>>763
OK
専門分野にしてる人多いです

768 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 19:09:29 ]
EE6のCDIについて草案ではなく、リリース状態の仕様でチュートリアルを書いてるサイトはないですか?

769 名前:デフォルトの名無しさん mailto:sage [2009/12/22(火) 00:15:43 ]
引数に「Hoge.class」とClassを渡す事がありますが
何に使っているんですかね?
型の比較?

770 名前:デフォルトの名無しさん mailto:sage [2009/12/22(火) 00:32:00 ]
>>769
・インスタンス化を遅延。(newInstance/getConstructor)
・リフレクションで動的にメソッドを呼び出し/フィールドアクセス。(getMethod/getField)
・クラスオブジェクトをキーにしてファクトリを選択。(Mapで対応付け)
・クラス名やパッケージ名を文字列でげっと。
とかかな。割と頻繁に使ってる。

771 名前:デフォルトの名無しさん [2009/12/22(火) 01:58:09 ]
>>746



772 名前:769 mailto:sage [2009/12/22(火) 09:59:47 ]
>>770
thx

773 名前:デフォルトの名無しさん mailto:sage [2009/12/22(火) 10:21:29 ]
javax.accessibilityって何をやるクラスなんですかね?
javadocを読んでもパッと来ないんですが

774 名前:デフォルトの名無しさん mailto:sage [2009/12/22(火) 11:17:19 ]
目が見えない人用のスクリーンリ−ダーとか点字ディスプレイとか音声入力とかなんかそういう類の
詳しくは知らん

775 名前:172 mailto:sage [2009/12/22(火) 11:35:57 ]

>>773
私も初めて見たのですが。
普通アクセシビリティっていうと、障害者の操作補助とかそういうイメージ。
目の見えない人のための音声読み上げ機能とか。
普段画面で行う入出力(テキストを読む、リンクをクリックする、みたいな)を
別の手段で提供するための標準化インタフェースだったりヘルパクラスだったりする、のかな?


mediacast.sun.com/users/akihito/media/Java_Accessibility.pdf
に日本語の資料ありますね。

776 名前:773 mailto:sage [2009/12/22(火) 12:04:26 ]
AccessibleContextってクラスがあるんですが、このクラスが属しているパッケージなので気になりました
JLabel#setText()を読んでいたらAccessibleContextが出てきたのですが、さっぱりわかりませんでした
このインスタンスはJComponentのフィールドにprotectedで宣言されています

777 名前:デフォルトの名無しさん mailto:sage [2009/12/22(火) 14:18:10 ]
障害者用の補助装置をjavaから制御する場合の話だからそういう開発者以外関係ない。
AWTに口だけ公開しときますよって話だと思えばいい。

778 名前:デフォルトの名無しさん [2009/12/22(火) 15:37:36 ]
>>746

779 名前:デフォルトの名無しさん [2009/12/23(水) 00:46:54 ]
java.awt.DesktopでDesktop.getDesktop().browse(homePageUrl);を使いたいのですが、
java.netURIにおいて、String型のテキストをURL型もしくはURI型に
追加するには何を使えばいいのでしょうか?

homepage.jp/
というURI型のものに、
abcd
というString型の文字列を変換したものをくっつけて、
homepage.jp/abcd
という表示をbrowse(homePageUrl)で行いたいのです。

そのString型→URI型の変換でつまづいています…。
よろしくお願いします。

780 名前:デフォルトの名無しさん mailto:sage [2009/12/23(水) 00:58:26 ]
普通に new URL(filename+"abcd"); でムリ?

781 名前:デフォルトの名無しさん mailto:sage [2009/12/23(水) 02:39:06 ]
URI クラスの resolve(String) を使うのかな?多分



782 名前:デフォルトの名無しさん [2009/12/23(水) 09:36:34 ]
terai.xrea.jp/Swing/MidiSystem.html
同じPCでこれが鳴る場合と鳴らない場合があるんですが...

783 名前:デフォルトの名無しさん [2009/12/23(水) 10:05:50 ]
>>780
ムリみたいです…。

>>781


784 名前:デフォルトの名無しさん mailto:sage [2009/12/23(水) 10:56:57 ]
>>779
URI a = new URI("www.google.co.jp/");
URI b = new URI(a + "search?q=java");
Desktop.getDesktop().browse(b);

ふつうにいけないか?

785 名前:デフォルトの名無しさん mailto:sage [2009/12/23(水) 11:11:14 ]
>>779
URI uri = new URI("homepage.jp/");
URI newuri = new URI(uri.getScheme(),uri.getHost(),"/abcd",uri.getFragment());
System.out.println(newuri.toString());
という意味?

786 名前:デフォルトの名無しさん mailto:sage [2009/12/23(水) 12:12:14 ]
( ^ω^)大量

787 名前:デフォルトの名無しさん [2009/12/23(水) 16:38:55 ]
>>779ですが、
お答えくださってありがとうございました。
>>781さんのヒントから色々探してみました。
URL型でURL取得するのでURL取得→.toURI→.resolve(string)で解決できました!
resolveだけに…w
どうもありがとうございました^^

788 名前:デフォルトの名無しさん mailto:sage [2009/12/23(水) 23:20:55 ]
いくつかの重い処理をするにあたって、割り込みするコードについて質問です。
現在では、Threadのrunメソッドで、
try{
 重い処理1
  if(interrupted())throw new InterruptedException();
 重い処理2
  if(interrupted())throw new InterruptedException();
 重い処理3
} catch (InterruptedException e){ }
という感じにしているんですが、結局ジャンプ処理なので汚いコードだと感じています。
こういう場合にはどうするべきでしょうか? よろしくお願いします。

789 名前:デフォルトの名無しさん mailto:sage [2009/12/23(水) 23:59:05 ]
JComponent#setOpaque()のソース
public void setOpaque(boolean isOpaque) {
 boolean oldValue = getFlag(IS_OPAQUE);
 setFlag(IS_OPAQUE, isOpaque);
 setFlag(OPAQUE_SET, true);
 firePropertyChange("opaque", oldValue, isOpaque);
}

なんで、firePropertyChange("opaque", oldValue, isOpaque);と書く必要があるのですか?
firePropetyChange()でイベントを発生させなくても、普通にメソッドを呼び出した方が楽じゃないですか

790 名前:デフォルトの名無しさん mailto:sage [2009/12/24(木) 00:14:04 ]
うん?
addPropertyChangeListenerで登録されたリスナ全員にプロパティの変化を伝えなきゃいけないからでは?
普通にって、何のメソッドを呼ぶの?

791 名前:デフォルトの名無しさん mailto:sage [2009/12/24(木) 01:30:41 ]

>>782
ローカルにjar保存してコマンドプロンプトから実行してみれば?
例外とか出てるの見れば理由わかるのでは。


>>788
自分だったらコマンドパターン適用するかも。
重い処理Xをそれぞれ別クラスにして、それらの共通スーパクラスで重い処理メソッド呼んでその後中断判定する。



792 名前:デフォルトの名無しさん mailto:sage [2009/12/24(木) 02:27:31 ]
アクセス修飾詞なんですけど、どういう状況で使い分けたらいいかわかりません
教えてください

793 名前:デフォルトの名無しさん [2009/12/24(木) 02:43:40 ]
アプレットのプログラムについて質問です。
内容はボールを反射させて動かす(ピンボールのような)プログラムです。

g.setColor(Color.red);
g.fillOval((int)(this.x2-3),(int)(this.y2-3),6,6);

このようなプログラムが組まれており意味してるものは動かすボールの色と大きさを指定しているのは理解できるのですがこれでなぜ色と大きさが指定できているのか細かい部分がよくわかりません。
なぜこれで色と大きさを指定できるのでしょうか?

794 名前:デフォルトの名無しさん mailto:sage [2009/12/24(木) 02:57:21 ]

まさにそういう用途のメソッドだと思うのだけれど。
java.sun.com/javase/ja/6/docs/ja/api/java/awt/Graphics.html#setColor(java.awt.Color)
java.sun.com/javase/ja/6/docs/ja/api/java/awt/Graphics.html#fillOval(int, int, int, int)



795 名前:デフォルトの名無しさん [2009/12/24(木) 03:08:15 ]
このサイトに書いてあるアルゴリズムを教えていただけないでしょうか…?
お願いします

796 名前:デフォルトの名無しさん [2009/12/24(木) 03:31:33 ]
すいません、サイトを貼るの忘れてました
oraclesqlpuzzle.hp.infoseek.co.jp/java/java-3-6.html
お願いしますm(_ _)m

797 名前:デフォルトの名無しさん [2009/12/24(木) 03:48:41 ]
>>793
gの色をセットします(赤色に)
ってのは理解できるべ?
g.fillOval(〜,〜,〜,〜)
ってのは
www.tohwa-u.ac.jp/~kodama/java/3_oval.html
みてみよ。

というか、そういうものだ、ってここは思わないと進めないレベルだぞ。
とりあえず、.setColorで色決めて、.fillOvalで塗りつぶされた円を描くコマンドだと思いなさい。

798 名前:デフォルトの名無しさん mailto:sage [2009/12/24(木) 04:30:27 ]
>>795
ただの総当たりにみえますが。
2回目以降は前回の手数を
越えるものは総当たり条件から外してるみたいだけど
これで最適手順が見つかる保証は
無いでしょうね。

799 名前:デフォルトの名無しさん mailto:sage [2009/12/24(木) 04:35:20 ]
あ、最適解云々は勘違いしてたので忘れて

800 名前:デフォルトの名無しさん mailto:sage [2009/12/24(木) 06:09:34 ]
>>788
ジャンプするためだけに例外を投げるのが邪道ってこと?
try-catch の中身をメソッドとして独立させてみては

/**
* @return 中断されずに処理を終えたかどうか
*/
void process() {
  重い処理1
  if (interrupted()) return false;
  重い処理2
  if (interrupted()) return false;
  重い処理3
  return true;
}


801 名前:800 mailto:sage [2009/12/24(木) 06:13:33 ]
>>788 を読み返してみたら
質問の意図と違ってたかもしれん
すまん




802 名前:782 mailto:sage [2009/12/24(木) 08:47:31 ]
>>791
jarファイルをコマンドプロンプトから実行しても特に例外などは出ませんでした。
ちょっと>>782の説明が足りませんでしたので補足しますと
JREのインストールフォルダ内にある\lib\audioフォルダにsoundbank.gmがあると
音は鳴るんですが変な音質なんです。
逆にsoundbank.gmが無い場合は、正常な音質で鳴る場合と全く鳴らない場合がありますが、
確実に正常に鳴らす方法はありますでしょうか。

803 名前:デフォルトの名無しさん mailto:sage [2009/12/24(木) 10:11:02 ]
ありますとよいですね。

804 名前:デフォルトの名無しさん mailto:sage [2009/12/24(木) 10:37:46 ]
>>802
とりあえず MidiSystem#getMidiDeviceInfo() で取得できる
全 MidiDevice の名前を書いてくれ。

lib/sound.propertiesのコメントでない行も書いてくれ。

WindowsのJREなら少なくともシンセ2つが繋がっているはず。
(Java独自のシンセサイザとWindows内蔵のシンセサイザ)
どっちが使われてるかは把握してる?

何度読んでもMIDI関係のAPIは納得いかんとこが多いな…

805 名前:782 mailto:sage [2009/12/24(木) 10:51:48 ]
>>804
MidiDeviceの一覧は下記の通りです
Microsoft MIDI ?}?b
Windows MIDI_MAPPER
false
Microsoft GS Wavetable SW Synth
Internal software synthesizer
false
Real Time Sequencer
Software sequencer
false
Java Sound Synthesizer
Software wavetable synthesizer and receiver
true

それぞれの3行目のtrue/falseは
System.out.println(MidiSystem.getMidiDevice(i) instanceof Synthesizer)
の実行結果で、一番最後の「Java Sound Synthesizer」がデフォルトと思います

また、lib/sound.propertiesは全てコメント「#」で始まっています

806 名前:デフォルトの名無しさん mailto:sage [2009/12/24(木) 11:21:42 ]
>>792
可能な限り狭いものを使っていれば問題ない。
まずprivateで済ませること。どうしてもダメならprotectedに拡張、そ
れでも足りないなら無指定、publicはfinal以外では使わない。


807 名前:デフォルトの名無しさん mailto:sage [2009/12/24(木) 11:29:31 ]
>>792
隠したいなら private
公開したいなら public
設計ミスの継ぎはぎには protected
サンプルプログラム用に字数減らしたい場合は無指定で package private

808 名前:デフォルトの名無しさん mailto:sage [2009/12/24(木) 11:32:05 ]
>>806
デフォルトアクセスとprotectedだとデフォルトアクセスの方が制限きつい。

809 名前:804 mailto:sage [2009/12/24(木) 12:05:04 ]
>>805
あー…、MicrosoftGS音源のSynthesizerって出てこないんだ…
それどころか本物のMIDI音源実機(Roland)も出てこないよー。
Sequencer使わずに自前でReceiverにMIDI信号投げてたんで気づかなかった。すまん。

Sequencerの音色がSynthesizerに依存している以上、JavaSoundしか選べそうにないね。

soundbank.gmってのはJavaSoundのデフォルト音源だと思う。
消しちゃダメー。書き換えるのもたぶんダメー。
Synthesizer.loadAllInstruments()で別の音源と差し替えることは可能と思う。

810 名前:デフォルトの名無しさん mailto:sage [2009/12/24(木) 12:23:31 ]
javaで画像処理って定番は何になるのでしょうか?
CだとOpenCVやImageMagicがありますが

811 名前:デフォルトの名無しさん mailto:sage [2009/12/24(木) 12:48:52 ]
>>809
あまり関係ないとおもうけど、確か公式で高音質盤のサウンドバンクが提供されてたよ
デフォルトで含まれているの最低音質で、3段階くらいあったとおもう。



812 名前:デフォルトの名無しさん mailto:sage [2009/12/24(木) 13:19:22 ]
>>805
MidiSystem.getSequencer()で得られるシーケンサはデフォルトシーケンサだからデバイスの取得から自分でやってみれば?
プラットフォーム側で無効化されてるデバイスも叩き起こせる仕様だから自分でデバイス拾って開けばいい。

813 名前:デフォルトの名無しさん mailto:sage [2009/12/24(木) 14:19:45 ]
>>810
普通ならそれをjni,jna

814 名前:782 mailto:sage [2009/12/24(木) 14:58:33 ]
>>812
「Real Time Sequencer」にしましたが
soundbank.gmがあっても音が全く鳴らなくなりました。
「Microsoft MIDI ?}?b」は認識されず
「Microsoft GS Wavetable SW Synth」
はClassCastExceptionが発生しました。

815 名前:デフォルトの名無しさん mailto:sage [2009/12/24(木) 15:41:08 ]
>>806
>publicはfinal以外では使わない

そういうものなんですか?
これって割と常識として知られてること?


816 名前:デフォルトの名無しさん mailto:sage [2009/12/24(木) 15:42:22 ]
メソッドの話?

817 名前:782 mailto:sage [2009/12/24(木) 15:52:15 ]
別バージョンのJREを何回か再インストールしているうちに
いつの間にか正常に音が鳴るようになりました。
音が鳴らなかった真の原因は未だに分かりません...。

818 名前:デフォルトの名無しさん mailto:sage [2009/12/24(木) 15:54:51 ]
>>815
>>806 はでたらめなので心配御無用

819 名前:デフォルトの名無しさん mailto:sage [2009/12/24(木) 16:22:17 ]
java.util.prefs.Preferencesで、userNodeには問題なくキーとデータを登録できるのに、
systemNodeには登録できず警告が出る。OSはWin。

という症状が、特定マシン上だけで起きるのだけど、どんな原因が考えられますかね?
自分や知り合いのマシンでは問題無いのに、知らない人のマシンでは起きているのです。
それからJREを再インストールしてもこの問題は解決しない。

820 名前:デフォルトの名無しさん mailto:sage [2009/12/24(木) 16:25:11 ]
アクセス指定子はクラスの場合、メソッドの場合、フィールドの場合で
ずいぶん事情が違う。
>>806 はフィールドの場合に見える。


821 名前:デフォルトの名無しさん mailto:sage [2009/12/24(木) 16:54:40 ]
public fieldが許されるのは小学生までだよねー(AA略



822 名前:デフォルトの名無しさん mailto:sage [2009/12/24(木) 16:59:27 ]
>>810
JREにもれなく付いてくるJava2Dでは不足?

823 名前:デフォルトの名無しさん mailto:sage [2009/12/24(木) 17:06:04 ]
>>819
その方、レジストリの管理権限はあるのかしら。
HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Prefs
に読み書き可能なのか、レジストリエディタかなんかで確認した方が

824 名前:デフォルトの名無しさん mailto:sage [2009/12/24(木) 18:23:37 ]
>>823
嫌です

825 名前:デフォルトの名無しさん mailto:sage [2009/12/24(木) 18:36:28 ]
>>817
シーケンサに命令溜めた後ちゃんとシンセサイザに送ってる?

826 名前:デフォルトの名無しさん mailto:sage [2009/12/24(木) 19:30:07 ]
>>823
アカウントの権限を確認してもらったけど、Adminとのことでした。

827 名前:782 mailto:sage [2009/12/24(木) 19:40:09 ]
>>825
Javaのmidiに関しては殆ど詳しくないので
ソースを挙げて頂ければ有り難いです

828 名前:デフォルトの名無しさん mailto:sage [2009/12/24(木) 19:50:38 ]
>802
そもそも「変な音質」とか「正常な音質」ってどういう話なんだ。
たとえば拾い物のYAMAHA用MIDIファイルを別音源で聞いて、それが変か正常かは主観レベルの話なんだが。

829 名前:782 mailto:sage [2009/12/24(木) 20:50:05 ]
>>828
「変な音質」というのは誤解を招く書き方でしたね、訂正いたします
他のプレイヤーで聞いた場合と同じかどうかということです

830 名前:デフォルトの名無しさん mailto:sage [2009/12/24(木) 21:14:10 ]
情報小出しウザイ
そろそろ失せろ

831 名前:デフォルトの名無しさん [2009/12/24(木) 22:52:35 ]
>>830
イブで女の子と一緒に過ごせないからってカッカすんなよwww



832 名前:デフォルトの名無しさん [2009/12/25(金) 00:04:14 ]
イブで女の子と一緒?
外国の宗教とはいえ神様に失礼すぎw

833 名前:デフォルトの名無しさん mailto:sage [2009/12/25(金) 01:38:21 ]
今年のクリスマスは中止になったって聞いてたけど

MIDIってのは環境とかプレイヤーによって音が変わるものじゃないのか。


834 名前:デフォルトの名無しさん mailto:sage [2009/12/25(金) 01:39:53 ]
変わるよ

835 名前:デフォルトの名無しさん mailto:sage [2009/12/25(金) 01:50:19 ]
昔のwin95の音源はひどかった
なつかしい

836 名前:デフォルトの名無しさん mailto:sage [2009/12/25(金) 02:01:38 ]
むしろFM音源のほうが好きだった

837 名前:デフォルトの名無しさん mailto:sage [2009/12/25(金) 11:05:40 ]
だな

838 名前:デフォルトの名無しさん mailto:sage [2009/12/25(金) 13:34:19 ]
MIDIはWindows98あたりから
Windows標準でサポートされたが
Windowsのがあまりに低音質だったので
避けられるようになったのは有名
それ以前からあったWinGrooveとかのほうがマシだった

839 名前:デフォルトの名無しさん mailto:sage [2009/12/25(金) 14:03:48 ]
打楽器やベースは結構使える音だと思うけどなー

840 名前:デフォルトの名無しさん mailto:sage [2009/12/25(金) 14:28:42 ]
あの楽器?

841 名前:デフォルトの名無しさん mailto:sage [2009/12/25(金) 15:44:12 ]
FM音源が好きなんだが



842 名前:デフォルトの名無しさん mailto:sage [2009/12/25(金) 17:10:01 ]
YAMAHA万歳

843 名前:デフォルトの名無しさん mailto:sage [2009/12/25(金) 17:13:14 ]
FM音源とかファミコン音源とかが好きなんだが

844 名前:デフォルトの名無しさん mailto:sage [2009/12/25(金) 17:19:21 ]
スーパーファンファジーゾーンは神

845 名前:デフォルトの名無しさん mailto:sage [2009/12/25(金) 17:21:18 ]
FM音源の楽器音声の再現度はほぼ無いから、再現という使い方は出来ないんだろうけど
FM音源の音が俺は好きだ

846 名前:デフォルトの名無しさん mailto:sage [2009/12/25(金) 20:00:39 ]
FM音源は確かに好きだけど、FM音源を流用したおざなりなMIDI再生はいただけない。
PC9801-86とSoundBlaster16の両方ともドライバの出来は良くなかったな。
ドライバでどうこうなる話でもないのかも知れないが。

847 名前:デフォルトの名無しさん mailto:sage [2009/12/25(金) 20:05:01 ]
javadocの特殊な文字化けについての質問です。
マルチバイト文字を値に持つ定数のjavadocに{@value}を使用したところ、
作成したjavadocのvalue部分がutfのコード表記に化けてしまいます。
-encoding -charsetの指定は効果なしでした。
解決策を御存じの方がいらっしゃいましたらご教示ください。


[ソース]
/** 定数 {@value} */
public static final String HOGE = "ほげ";

[javadocの表示例]
定数 ("/uaafd/u7ca2/u42ce")

[期待する出力]
定数 ("ほげ")

848 名前:デフォルトの名無しさん mailto:sage [2009/12/26(土) 00:51:25 ]
OpenTypeFontを読みたいのですが、うまくいかないので教えていただければ幸いです。
OpenTypeはTrueTypeの一部ということで次のようにしましたが例外がでます。
Font.createFont(Font.TRUETYPE_FONT, new File("***.otf"));
当然といえば当然なんですが。どうやって読み込めばいいんでしょう。

849 名前:デフォルトの名無しさん [2009/12/26(土) 05:06:51 ]
JAR内の /a/b/SapmleClass.class から
同じJAR内の /resources/image.gif にアクセスしたいのですが、
SapmleClass.class.getResource("../../resources/image.gif") だとnullが返ってきます。

取り方が間違っているでしょうか?

850 名前:デフォルトの名無しさん mailto:sage [2009/12/26(土) 06:00:41 ]
java soundもあるしアクセスは用意されてるよね。
それならOSSでプロジェクト組んで新音源を開発してもいいんじゃない?
いくらソフト音源だとしても、実装はsse,gpuとか使うからJavaにはあまり関係ないけど。
コーディック開発とはまた違った意味で面白いんじゃないか。

851 名前:デフォルトの名無しさん [2009/12/26(土) 10:14:17 ]
JARのルートからのパスでアクセスできました。
SapmleClass.class.getResource("/resources/image.gif")



852 名前:デフォルトの名無しさん [2009/12/26(土) 12:32:11 ]
いくつかのWindowsアプリケーションに、「右クリックメニュー」というものが
実装されていますが、あれはSwingでは(JMenuなどと違い)サポートされていないのでしょうか。

853 名前:デフォルトの名無しさん mailto:sage [2009/12/26(土) 12:35:27 ]
JComponent#setComponentPopupMenu

854 名前:デフォルトの名無しさん mailto:sage [2009/12/26(土) 12:45:49 ]
Adobeの次はJava。GENOウイルスの第二波が来るぞー(^o^)ノ
tsushima.2ch.net/test/read.cgi/news/1261786925/

855 名前:デフォルトの名無しさん mailto:sage [2009/12/26(土) 13:03:38 ]
>>853
ありがとうございます。

856 名前:デフォルトの名無しさん mailto:sage [2009/12/26(土) 13:05:17 ]
>>855
俺へのお礼レスはいらない

857 名前:デフォルトの名無しさん [2009/12/26(土) 13:14:49 ]
>>842

858 名前:デフォルトの名無しさん mailto:sage [2009/12/26(土) 13:30:09 ]
>>851
よそ様のパッケージも使うつもりがあるなら/resourcesは使わない方がいいぞー。
/a/b/resourcesじゃだめ?

859 名前:デフォルトの名無しさん mailto:sage [2009/12/26(土) 14:49:22 ]
struts2のconventionプラグインって
import com.opensymphony.xwork2.ActionSupport;
ってやらなくても命名規約さえ○○Actionになって○○actionsっていうパッケージにはいってれば
見つけてくれるんだと認識してたけど実際はしてくれない
xwork2.ActionSupportをインポートしないと認識してくれない

conventionプラグインは結局これインポートしないといけないの?

860 名前:デフォルトの名無しさん mailto:sage [2009/12/26(土) 15:18:26 ]
>>859
△△もっとStruts2の良さを教えてくださいSsssion6
pc12.2ch.net/test/read.cgi/tech/1217536023/


861 名前:849 mailto:sage [2009/12/26(土) 20:55:35 ]
>>858
アドバイスありがとうございます。
使ってる他のJARにも/resourcesがあると、どっちか特定できないということでしょうか?
/a/resourcesに変えることにします。



862 名前:デフォルトの名無しさん mailto:sage [2009/12/27(日) 11:34:32 ]
同名のリソースが複数あると最初に見つかったURLが返ってくるので、かぶりらないような名称にした方がいいよ

863 名前:デフォルトの名無しさん mailto:sage [2009/12/27(日) 12:48:45 ]
>>856
ケッ

864 名前:デフォルトの名無しさん mailto:sage [2009/12/27(日) 14:39:01 ]
以上、暇人でしたっ

865 名前:デフォルトの名無しさん mailto:sage [2009/12/27(日) 15:17:50 ]
まじなんかすごい時代だよな

色々と

天才達の手によってここまできたが
すごい話だぜ

866 名前:デフォルトの名無しさん [2009/12/27(日) 16:14:17 ]
>>865
まあ僕たち天才が行うべき使命ですので凄いとかはあまり意識していないのですが

867 名前:デフォルトの名無しさん [2009/12/27(日) 16:15:46 ]
何が凄くて何が時代の?
で、何の天才で例えば誰のこと?

868 名前:デフォルトの名無しさん mailto:sage [2009/12/27(日) 16:30:28 ]
そういう疲れる話し方やめてくれる?

869 名前:デフォルトの名無しさん mailto:sage [2009/12/27(日) 16:33:07 ]
>>865-868
年末だしとりあえず金くれ

870 名前:デフォルトの名無しさん mailto:sage [2009/12/27(日) 16:34:43 ]
俺にもおくれ

871 名前:デフォルトの名無しさん mailto:sage [2009/12/27(日) 23:41:16 ]
質問させてください。

JavaSE6のjavax.xml.bind.SchemaOutputResolverクラスの
Javadoc(下記URL参照)を読んでいたら、こんな記述を見つけました。
「互換性を損なうことなく将来のバージョンを発展させることができるようにするため、
これはインタフェースではなくクラスになっています。」

java.sun.com/javase/ja/6/docs/ja/api/javax/xml/bind/SchemaOutputResolver.html

「互換性を(〜中略〜)にするため」とありますが、インターフェースを定義し、
将来のバージョンでも同インターフェースを必ず実装することにより
互換性が維持できると個人的に思い込んでいるため、納得できません。

クラスでなければならなかった理由をご教授ください。
よろしくお願いします。




872 名前:デフォルトの名無しさん mailto:sage [2009/12/27(日) 23:43:42 ]
将来的なバージョンでインターフェースにメソッドが増えた場合の事じゃない?
インターフェースだったら、自分で実装してるクラス全部書き換えるけど、
継承元がクラスだったら、自分で実装してるクラスは書き換えなくてもすむかもしれない。

873 名前:デフォルトの名無しさん mailto:sage [2009/12/27(日) 23:45:58 ]
最初のバージョンで次のようなインタフェースを定義しました
interface A {
void foo();
}
そこでとあるアプリケーションがこのインタフェースを実装して使うことにしました
class B implements A {
public void foo() { ほにゃらら }
}
新しいバージョンでインタフェースが拡張されメソッドが増えました
interface A {
void foo();
void bar();
}
先ほどのアプリケーションを新しいバージョンで実行すると bar() が定義されていないので NoSuchMethodError

874 名前:デフォルトの名無しさん mailto:sage [2009/12/28(月) 00:11:56 ]
wait と Thread.sleep ってどう違うの?

875 名前:871 mailto:sage [2009/12/28(月) 00:14:34 ]
>>872-873
回答ありがとうございます。

将来のバージョンで新しい(非抽象)メソッドが追加された場合は、
追加実装が不要なため、インターフェースよりクラスの方がたしかに有利ですね。


以下、チラ裏

ただ、多重実装ができなくなるなど、
クラスで設計したことによるデメリットと比較すると微妙な気がします。

となると、どちらを選択するかはケースバイケースになるのでしょうか?
そうなると、今回の「ケース」は何と表現(説明)すればいいのでしょうか?


876 名前:デフォルトの名無しさん mailto:sage [2009/12/28(月) 00:20:52 ]
まだ完成度が低いなと思ったらクラス
既存のクラスに付け加える可能性が高いなと思ったらインターフェース

どっちもと思ったら、天秤にかけるしかないんじゃないかなあ

877 名前:デフォルトの名無しさん mailto:sage [2009/12/28(月) 00:25:05 ]
いや、使うときに、

TypeABC hoge;

この左側を、Interfaceで使う場合がおおいか、
実装クラス名で使う場合がおおいか、

じゃねーか?

878 名前:デフォルトの名無しさん mailto:sage [2009/12/28(月) 00:25:42 ]
本当は実装したいことがあるのでinterfaceじゃないんだけど、
時間がなくて実装できてません。
今の姿を見ればinterfaceで良いように見えるんだけど、真の姿はこんなんじゃないんです。

ということが言いたいんじゃ。

879 名前:デフォルトの名無しさん mailto:sage [2009/12/28(月) 00:26:35 ]

interface A { }

class A001 implements A { }

class B { }

class B001 extends B { }


A MyA として使うなら、Interface
B001 MyB として使うなら、クラス

じゃん

880 名前:デフォルトの名無しさん mailto:sage [2009/12/28(月) 00:27:38 ]
>>878

おお、それだ!
だから、本質はクラスなんだよって事だね。

881 名前:デフォルトの名無しさん mailto:sage [2009/12/28(月) 00:28:11 ]
リファクタリングしていって interface になる、ってことは結構あるけど、
リファクタリングしていくと interface がなくなるなんてことはあるんかしらん。



882 名前:デフォルトの名無しさん mailto:sage [2009/12/28(月) 00:29:29 ]
>>874
waitはnotifyで起こせる
sleepはnotifyで起こせない
interruptを使えばどちらも起こせるが、起こしたい対象のwait/sleep以外でも
ところ構わず起こしてしまうので使い方が難しい
ところ構わず起こしたい場合には便利
あとwaitはspurious wakeup してしまうことがある

883 名前:デフォルトの名無しさん mailto:sage [2009/12/28(月) 00:44:15 ]
>>874
Thread.sleepは、目覚まし時計を用意して、自分で寝て、自分で起きる。
基本的に自スレッドが時刻と同期するために使用する。

waitは、モーニングコールを依頼して、自分が寝て、他人(別スレッド)に起こしてもらう
(誰にも起こしてもらえなかった場合に、タイマーで自力で起きることも可能)。
基本的に自スレッドが別スレッドと同期するために使用する。


884 名前:デフォルトの名無しさん mailto:sage [2009/12/28(月) 00:56:12 ]
>>883
モーニングコールって、普通は時刻を指定して依頼するから、
目覚ましをセットするのと変わらないんじゃ。
「そっちの仕事が終わったら起こしてね」と伝えてから寝る、
といったたとえのほうが正確かも。
重箱の隅みたいですまんね。


885 名前:デフォルトの名無しさん mailto:sage [2009/12/28(月) 01:32:28 ]
>882-884
なるほど。
notifyを使う場合はwait Timerみたいな場合はThread.sleepって感じなんだな
ありがとう

886 名前:デフォルトの名無しさん mailto:sage [2009/12/28(月) 01:58:58 ]
>>885
俺へのお礼レスはいらないって…

887 名前:デフォルトの名無しさん mailto:sage [2009/12/28(月) 02:05:38 ]


888 名前:デフォルトの名無しさん mailto:sage [2009/12/28(月) 03:38:25 ]
使われ方を想定せずにインタフェースの粒度なんて決められるわけない。
ライブラリのインタフェースはエスパーと妥協の産物

889 名前:デフォルトの名無しさん mailto:sage [2009/12/28(月) 07:55:07 ]
>>873
というよりも、abstract class とか使ったことないでしょ。

890 名前:デフォルトの名無しさん mailto:sage [2009/12/28(月) 08:01:30 ]
>>883
You should wake up from your deely sleeping.

891 名前:デフォルトの名無しさん mailto:sage [2009/12/28(月) 14:35:34 ]




892 名前:デフォルトの名無しさん mailto:sage [2009/12/28(月) 16:09:46 ]
You have to shave up you are sheep or theaf

893 名前:デフォルトの名無しさん mailto:sage [2009/12/28(月) 22:34:22 ]
何語だ?米語?deely? theaf?
deeplyかなぁ?

894 名前:デフォルトの名無しさん mailto:sage [2009/12/29(火) 07:39:51 ]
>>893
それ、指摘するまでまったく気にしてないで読んでたw

895 名前:デフォルトの名無しさん [2009/12/29(火) 08:33:31 ]
$ appletveiwereer HalloJava &

そんなコマンドはありませんorz

896 名前:デフォルトの名無しさん mailto:sage [2009/12/29(火) 08:55:35 ]
なにそのイェェェェァァァ系コマンドw

897 名前:デフォルトの名無しさん mailto:sage [2009/12/29(火) 09:00:00 ]
根っからの江戸人ならやりそうw

898 名前:デフォルトの名無しさん mailto:sage [2009/12/29(火) 10:11:23 ]
explorereとかkonquaroroとかbashだとコマンドしにくいよね。

899 名前:デフォルトの名無しさん mailto:sage [2009/12/29(火) 12:48:05 ]
しにくいですね。

900 名前:デフォルトの名無しさん mailto:sage [2009/12/29(火) 13:33:06 ]
最近Javaの
Domain Driven Designってどのフレームワークが流行りなの?

901 名前:デフォルトの名無しさん [2009/12/29(火) 15:02:45 ]
.................

どのフレームワークが流行りなの!?



902 名前:デフォルトの名無しさん mailto:sage [2009/12/29(火) 15:27:09 ]
俺はドメインモデル懐疑論者だからシラネ

903 名前:デフォルトの名無しさん mailto:sage [2009/12/29(火) 15:29:03 ]
ドメインモデル VS トランザクションスクリプト
pc11.2ch.net/test/read.cgi/php/1241341332/
こっちへどうぞ。

904 名前:デフォルトの名無しさん [2009/12/29(火) 16:30:21 ]
【言語比較】2chではCとC++>>JAVAって人が多い。しかし本当にそうか?ちなみに2chはperlが使われてる
tsushima.2ch.net/test/read.cgi/news/1262071701/

ニュース速報に立った

905 名前:デフォルトの名無しさん mailto:sage [2009/12/29(火) 17:09:45 ]
ん?昔はread.cだったと思ったが?

906 名前:デフォルトの名無しさん mailto:sage [2009/12/29(火) 17:38:16 ]
CとC++を別にしてデータとったらどうなんだろうな

907 名前:デフォルトの名無しさん [2009/12/29(火) 21:11:30 ]
>>746

908 名前:デフォルトの名無しさん [2009/12/30(水) 00:11:17 ]
【言語比較】2chではCとC++>>JAVAって人が多い。しかし本当にそうか?ちなみに2chはperlが使われてる
tsushima.2ch.net/test/read.cgi/news/1262071701/

ニュース速報板です

909 名前:デフォルトの名無しさん [2009/12/30(水) 01:00:00 ]
アイちゃんは大丈夫か!?

【生物】ニホンザル謎の死、京大霊長研で相次ぎ15頭
gimpo.2ch.net/test/read.cgi/scienceplus/1262001115/

910 名前:デフォルトの名無しさん mailto:sage [2009/12/30(水) 01:36:23 ]
      ┌─┐   ┌─┐
      │●│   │●│
      └─┤   └─┤
     ∧∧ ∩   ∧∧ ∩ Java!
    ( =゚-゚)彡  ( =゚-゚)彡  Java!
 ┌─┬⊂彡┌─┬⊂彡
 |●|    |●|
 └─┘    └─┘

911 名前:デフォルトの名無しさん mailto:sage [2009/12/30(水) 13:26:22 ]
整数値を読み込んで5で割れるか判定するコードなんですが
いろいろグダグダなんですが
bの代入のところでエラーになる理由がわからないです。
後半のifが変なのは無視してください。

// 整数値を読み込み5で割り切れるか判定する。正以外の数値にはコメントをだす。

import java.util.Scanner;

class En35 {

public static void main(String[] args) {

Scanner stdin = new Scanner(System.in);

System.out.print("正の整数値:");
int a = stdin.nextInt();

        int b = a % 5;

if (b == 0)
System.out.println("その値は5で割り切れます");

else if(b != 0)
System.out.println("その値は5で割り切れません");

else
System.out.println("正でない値が入力されました");

}
}
  



912 名前:デフォルトの名無しさん mailto:sage [2009/12/30(水) 13:32:18 ]
>>911
事故解決しました。
>>1にある全角スペース〜 でした。

913 名前:デフォルトの名無しさん mailto:sage [2009/12/30(水) 16:22:03 ]
結局、JDK7ではクロージャーが導入されるみたいですが
クロージャーとラムダ式って何が違うんですかね?

914 名前:デフォルトの名無しさん mailto:sage [2009/12/30(水) 18:01:55 ]
>>913
俺も理解が乏しいんで一応書いてみたが、間違ってたら訂正してください

クロージャもラムダも関数を変数の値にできることを前提とした機能だけど

クロージャーは関数内で定義、生成するもので、定義、生成された関数内のローカル変数を参照できるって機能が強調されるイメージ
この参照できるっていうのは関数から抜けた後にもローカル変数のメモリが開放されないまま残り、実行時に参照できるってこと

ラムダ式は関数を値のように扱えて、例えば
関数の引数に関数を渡す
関数の引数を決めたものを変数の値にする
関数を合成したものを変数の値にする(関数a.bを合成すると実行時b(a())と実行したことになる)
みたいな機能があることが強調される

915 名前:デフォルトの名無しさん mailto:sage [2009/12/30(水) 18:08:50 ]
きもい

916 名前:デフォルトの名無しさん mailto:sage [2009/12/30(水) 18:17:22 ]
わからないからですね^^;
わかります^^;

917 名前:デフォルトの名無しさん mailto:sage [2009/12/30(水) 18:22:51 ]
違いは知っていましたが、面白そうだから質問してみました。
それでは皆様、また逢いましょう

918 名前:デフォルトの名無しさん mailto:sage [2009/12/30(水) 20:21:11 ]
もう来なくていいよ^^

919 名前:デフォルトの名無しさん [2009/12/30(水) 20:22:14 ]
>>910

>>909

920 名前:デフォルトの名無しさん mailto:sage [2009/12/30(水) 22:38:51 ]
クロージャはエンクロージングな関数で
ラムダは変数置換と関数定義をそれぞれ一つのみ持つ関数。ただし自分を含む関数を定義できない。

つまり両方あればY(F) = F(Y(F))が表現できる。
が、不完全性定理があるのでequals(lamda, lamda)は表せない。

921 名前:デフォルトの名無しさん mailto:sage [2009/12/30(水) 22:40:21 ]
CでできることはJAVAでもできるのですか。
友人が言うには、「劣化Cだからやんないほうがいい。ジャバでできる特徴的なことは風呂釜掃除くらい」
というのですが。

ポインタが参照になってる
メモリの開放と確保は言語レベルでよろしゅうやってくれる
Cに比べて実行速度が遅い

というのは
ググッて分かりました


しかしメモリいじりをしなければならないので、最低でもCのようにメモリをいじる必要があります



922 名前:デフォルトの名無しさん [2009/12/30(水) 22:47:20 ]
すなおにdotnet(C#)やれ

923 名前:デフォルトの名無しさん mailto:sage [2009/12/30(水) 22:59:58 ]
>>921
> しかしメモリいじりをしなければならないので、最低でもCのようにメモリをいじる必要があります
それなら C をやるしかない。

924 名前:デフォルトの名無しさん mailto:sage [2009/12/30(水) 23:01:55 ]
前半部分が大昔にあった改変コピペだぞ

925 名前:デフォルトの名無しさん mailto:sage [2009/12/30(水) 23:04:22 ]
アセンブラコードを別に用意してJavaから呼び出すことできなかったっけ?

926 名前:デフォルトの名無しさん mailto:sage [2009/12/30(水) 23:07:28 ]
Javaは情報工学やってた人へのプレゼントだな
こんなに手っ取り早く完璧な実装のライブラリを呼び出せる言語はない

927 名前:デフォルトの名無しさん mailto:sage [2009/12/30(水) 23:17:07 ]
>>925
JNIですね。C言語とJava に精通していないと使いこなすのは難しいです。
Microsoft の JavaVM はその点は簡単ですけどね。

928 名前:デフォルトの名無しさん mailto:sage [2009/12/30(水) 23:18:33 ]
>>927
JNA使えばいいじゃんPosix遵守だから
大抵動くぞ


929 名前:デフォルトの名無しさん mailto:sage [2009/12/30(水) 23:19:18 ]
JNAもJNIもよくわからんが一緒だろ

930 名前:デフォルトの名無しさん mailto:sage [2009/12/30(水) 23:43:09 ]
JNAはJNI使ってるっていうだけで一緒じゃないよ。
JNAだととてつもなく簡単にネイティブライブラリにアクセスできる。
型の変換もある程度してくれるし、結構事足りるよ

931 名前:デフォルトの名無しさん mailto:sage [2009/12/30(水) 23:45:53 ]
安全なスレッディング
メモリ操作

これが好きな奴が使う



932 名前:デフォルトの名無しさん mailto:sage [2009/12/30(水) 23:50:08 ]
ほとんどは、OSのAPI呼びたいとき使うんじゃないの?

933 名前:デフォルトの名無しさん mailto:sage [2009/12/31(木) 00:36:04 ]
え?

934 名前:デフォルトの名無しさん mailto:sage [2009/12/31(木) 10:53:29 ]
システムコール?

935 名前:デフォルトの名無しさん mailto:sage [2009/12/31(木) 12:49:17 ]
Java本体から呼んでないやつはJavaのスレッド管理外、メモリ管理外なので
自分でケアしないと痛い目を見る

ので、そういうことが好きな奴でないと扱えないと

936 名前:デフォルトの名無しさん mailto:sage [2009/12/31(木) 13:00:31 ]
禁忌事項も多いもんなぁ。
www.ibm.com/developerworks/jp/java/library/j-jni/index.html

937 名前:デフォルトの名無しさん mailto:sage [2009/12/31(木) 13:08:54 ]
>>935
そうでもないんじゃね??

938 名前:デフォルトの名無しさん mailto:sage [2009/12/31(木) 13:20:11 ]
>>935
そうでもないそうですよ

939 名前:デフォルトの名無しさん mailto:sage [2009/12/31(木) 13:32:56 ]
>>937-938
嘘つきはよくないなぁ

940 名前:デフォルトの名無しさん mailto:sage [2009/12/31(木) 13:34:12 ]
俺は全然ケアなんて考えずに使ってるぜ
裏でどうなってるか知らんが

941 名前:デフォルトの名無しさん [2009/12/31(木) 14:00:35 ]
jni,jnaを使うならjavaじゃなくてdotnet(VB)にしろ。
そもそもそのアプリは、PCしか考えてないんだろうからdotnetで十分。



942 名前:デフォルトの名無しさん mailto:sage [2009/12/31(木) 14:29:34 ]
なんで、javaはC++を敵視してるんだろ?
しかも、速度的な面で

943 名前:デフォルトの名無しさん mailto:sage [2009/12/31(木) 14:36:02 ]
それはお前の脳内設定。

944 名前:デフォルトの名無しさん [2009/12/31(木) 15:11:26 ]
linux使ってると分かるけど、monoがある程度実用的になってきたからdotnetでもある程度はいける。
MSとノベルはそれで提携したし。
ただPCだけじゃなくて携帯(グーグル)もいれるならjavaやっとくのをお奨めするが。

945 名前:デフォルトの名無しさん mailto:sage [2009/12/31(木) 15:44:16 ]
MSのOS依存の形態じゃやっぱ使い物になりませんよね

946 名前:デフォルトの名無しさん mailto:sage [2009/12/31(木) 16:03:35 ]
GoogleはGoogle依存の形態で全てやろうとしているからなあ。
オープンで囲い込みですが何か?って感じ。

947 名前:デフォルトの名無しさん mailto:sage [2009/12/31(木) 17:29:34 ]
>>946
gglは共産主義者だし
今EUとアメリカでほぼ黒確定の
独禁法違反になるから無視しておけ

948 名前:デフォルトの名無しさん mailto:sage [2009/12/31(木) 17:58:30 ]
Google 依存が強いところは、気をつけておいたほうがいいだろうな。

949 名前:デフォルトの名無しさん [2009/12/31(木) 18:23:34 ]
ニュースサイトにロボット埋め込んで、街は許可なく勝手に撮影、本は勝手にスキャン、コードは盗み放題。
それもただの商業利用でしょ。
国民から徴収してアンテナ立てたりコンテンツ作ってるのに、それを2次販売して商業的な利益を上げてるNTTやNHKみたいなもんじゃないの?

950 名前:デフォルトの名無しさん mailto:sage [2009/12/31(木) 18:27:42 ]
googleは検索以外だとgmail(hotmail)ぐらいしか思い浮かばないし依存になることもないと思うんだが、googleは依存になりそうなサービスを提供してたか?

951 名前:デフォルトの名無しさん [2009/12/31(木) 18:32:18 ]
アンドロイドは思ったほどでもないですしね



952 名前:デフォルトの名無しさん mailto:sage [2009/12/31(木) 18:39:18 ]
グーグルの、サンタクロース追跡に便乗した商売にはかなり引いた。
日本、中国(アジア)としてはそういう宗教的(伝説的)なところは理解できない。

953 名前:デフォルトの名無しさん mailto:sage [2009/12/31(木) 20:37:46 ]
enumってなんでfinalないの?設計ミスじゃね?

954 名前:デフォルトの名無しさん mailto:sage [2009/12/31(木) 20:45:13 ]
ミスかもね

955 名前:デフォルトの名無しさん mailto:sage [2009/12/31(木) 20:45:53 ]
>>953
enum のどの部分の事言ってるのかわからんが暗黙で final 扱いになってね?

956 名前:デフォルトの名無しさん mailto:sage [2009/12/31(木) 20:57:04 ]
ほんとだ・・・extendsって書いたときのコンパイルエラーが変だから継承できるかと思ってたすまぬ

957 名前:デフォルトの名無しさん mailto:sage [2009/12/31(木) 21:25:41 ]
謝ったから許してやる

958 名前:デフォルトの名無しさん mailto:sage [2009/12/31(木) 21:27:10 ]
ああもう年末だ・・・
いいから金くれ

959 名前:デフォルトの名無しさん mailto:sage [2009/12/31(木) 23:26:41 ]
enum enum 人間って enum

960 名前:デフォルトの名無しさん mailto:sage [2010/01/01(金) 00:10:53 ]
おっイーナムってよんでんのかー

961 名前:デフォルトの名無しさん mailto:sage [2010/01/01(金) 00:12:20 ]
なぜJDKドキュメントにはEnum#values()が載っていないのだ?



962 名前:デフォルトの名無しさん [2010/01/01(金) 00:26:01 ]
おっ新年だ
お年玉くれ
てかおみくじどうやるんだっけ?

963 名前:デフォルトの名無しさん mailto:sage [2010/01/01(金) 00:28:16 ]
>>961
ソース読んでご覧。valuesってメソッドないから。
自動生成されるんかねぇ

964 名前: 【898円】 【大吉】 [2010/01/01(金) 00:34:32 ]
ナムナム
金くれ

965 名前:デフォルトの名無しさん mailto:sage [2010/01/02(土) 19:05:37 ]
高校の宿題で、サーバー役とクライアント役に分けて、プログラム作って、簡易チャットを作っているのですが、分からない点があります。

client1 とclient2が接続されてるとして、server側でclient1が発言したのを、client2側の画面に反映する方法がわからない。(client2の出力ストリームに流し込む方法が・・・分かりません)

よろしけれあ、ご教授願えないでしょうか?


966 名前:デフォルトの名無しさん mailto:sage [2010/01/02(土) 19:13:18 ]
何処の高校?

967 名前:デフォルトの名無しさん mailto:sage [2010/01/02(土) 19:47:03 ]
サーバプッシュでぐぐりなさい
最悪client2からのポーリングでもできるが

968 名前:デフォルトの名無しさん mailto:sage [2010/01/02(土) 20:20:52 ]
>>966
勘弁してくださいorz

>>967
軽く調べてみましたが、どちらも難しそうですね。。。
しかし、ポーリングのほうがそれでも簡単な気がするので、掘り進めてみます。

969 名前:デフォルトの名無しさん [2010/01/02(土) 20:38:45 ]
PHPの、PEAR::Net_UserAgent_Mobileに相当するライブラリなどはありますでしょうか?
まぁ、「大体振り分けられればOK」ならそれほど難しくもなくできるとは解っているのですが、もしメジャーなライブラリなどがあるのならそちらを使った方がいいかと思いまして・・・。
何かご存知の方がいらっしゃれば、情報をいただければ幸いです。よろしくお願いします。

970 名前:965 mailto:sage [2010/01/03(日) 10:24:24 ]
なにやら、宿題関係の質問はスレ違だったことに気付いたので、java宿題スレに移動します。申し訳ありません。

971 名前:デフォルトの名無しさん mailto:sage [2010/01/03(日) 15:27:15 ]
hello,worldの次に何作れば良いですか?
ステップアップ式にお題出してるサイトとか無い?



972 名前:デフォルトの名無しさん mailto:sage [2010/01/03(日) 15:37:45 ]
1.とりあえず一冊買う
2.とほほのjava
3.javaの道

973 名前:デフォルトの名無しさん mailto:sage [2010/01/03(日) 16:03:02 ]
画像について質問です。
巨大なBufferedImageに図形などを描画してそれをImageIOでファイルに書き出したいんですが
画像サイズがデスクトップサイズを超え始めたぐらいからOutOfMemoryが出て生成に失敗してしまいます。
大きい画像を使いたい場合何か方法はありますか?
jdkは1.6です。

//そういえばImageIOでjpgを保存すると色にセピアみたいになる変換掛かりますよね?どうすれば治るんでしょうか・・・

974 名前:デフォルトの名無しさん mailto:sage [2010/01/03(日) 16:14:43 ]
>>973
VM引数に -Xmx512m とかつけて最大ヒープサイズを大きく取るとか。

975 名前:デフォルトの名無しさん mailto:sage [2010/01/03(日) 16:36:56 ]
デスクトップサイズって巨大かなぁ?
1920x1200x3[byte]として6,912,000[byte]。7MB弱だし。
どっかメモリリークしてないか?

976 名前:デフォルトの名無しさん mailto:sage [2010/01/03(日) 17:01:27 ]
public static void main(String[] args) throws Exception {
BufferedImage im = new BufferedImage(1920*2,1200*2,
BufferedImage.TYPE_INT_RGB);
Graphics2D g = im.createGraphics();
for (int x=0; x<im.getWidth(); x+=10) {
for (int y=0; y<im.getHeight(); y+=10) {
Color c = new Color((int)(Math.random()*256)
,(int)(Math.random()*256)
,(int)(Math.random()*256));
g.setColor(c);
g.drawLine(0, 0, x, y);
}
}
g.dispose();
OutputStream out = new FileOutputStream("test.jpg");
ImageOutputStream ios =
ImageIO.createImageOutputStream(out);
ImageWriter iw = (ImageWriter)ImageIO
.getImageWritersByFormatName("jpeg").next();
iw.setOutput(ios);
iw.write(im);
out.close();
}

これとか問題出る?

977 名前:デフォルトの名無しさん mailto:sage [2010/01/03(日) 17:20:08 ]
>>976
大丈夫でした!
どうやら、画像以外にもいろいろやってるからそれらがメモリを圧迫しているようです。
ちなみに出力部分のところはImageIO.write(im,"jpeg","test.jpeg");と何か違うんでしょうか?

978 名前:デフォルトの名無しさん mailto:sage [2010/01/03(日) 20:17:28 ]
>>977
ImageIO.java見ると分かるけど、実はほぼ同じ。
ImageIO.getImageWritersByFormatName("jpeg") がサービスプロバイダの
イテレータなので複数の実装があったときに使い分けられる程度。

979 名前: ◆QZaw55cn4c mailto:sage [2010/01/03(日) 21:42:10 ]
java.text.SimpleDateFormat の質問です。
codepad.org/n24uZLFz
のようなエラーが発生するのですが、何が悪いのでしょうか?

980 名前:デフォルトの名無しさん mailto:sage [2010/01/03(日) 21:52:15 ]
そのエラーメッセージが理解できないという事は、
Javaの言語仕様をきちんと読んでいないだろ。

981 名前: ◆QZaw55cn4c mailto:sage [2010/01/03(日) 21:56:33 ]
>>980
なにぶん初学者で、テキストの範囲をちょっと逸脱するとこうなってしまいます。
もうちょっと我慢して教科書を読んでいきます。



982 名前:デフォルトの名無しさん mailto:sage [2010/01/03(日) 22:12:21 ]
「スローするにはキャッチまたは、スロー宣言をしなければなりません。」
と丁寧に教えてくれてるもんな。頑張ってこの意味を理解しようね。




俺は面倒がってExceptionでスロー宣言しまくりだけどなー。(小言は聞こえない)

983 名前:デフォルトの名無しさん mailto:sage [2010/01/03(日) 22:20:58 ]
>俺は面倒がってExceptionでスロー宣言しまくりだけどなー。(小言は聞こえない)

catch して捨てるよりはまし。

>>979
みたいな、サンプルプログラムでは、 throw Exception しちゃうのが
結局、一番合理的な解じゃないかな。
catch しても printStackTrac()ぐらいしかできることないっしょ。
コードが読みにくくなるだけで、実用上のメリットがさしてない、

ただ、初心者が、「どこでも throw Exception すればいい」 と思い込んだらちょっとまずいってだけで、


984 名前:デフォルトの名無しさん mailto:sage [2010/01/03(日) 22:30:44 ]
一番正しいのは契約プログラミング的な考え方で、前提条件は全て事前チェック
しておいて、それに引っかからないモノはそれこそ例外として扱うことじゃないかと
思ってるんだがどうかな?

985 名前:デフォルトの名無しさん mailto:sage [2010/01/03(日) 22:35:06 ]
最初は、throw Exceptionされているメソッドを呼び出すときは、呼び出し元もthrow Exception定義しましょうでもかまわないと思う
だんだん勉強して、例外についての理解も進めば、throwかcatchかどっちがいいか分かるようになるでしょ

ところでそろそろ次スレたてるね

986 名前:デフォルトの名無しさん mailto:sage [2010/01/03(日) 22:38:55 ]

★★Java質問・相談スレッド135★★
pc12.2ch.net/test/read.cgi/tech/1262525781/

987 名前:デフォルトの名無しさん mailto:sage [2010/01/03(日) 22:47:54 ]
でも例外に関するエラーメッセージは解りづらい気がする
例外って常用的な日本語だから、慣れないうちはスペルミスでもあるのかと思ってしまう。
さらにExceptionがソースをいくら検索してもみつからないって混乱したり

988 名前:デフォルトの名無しさん mailto:sage [2010/01/03(日) 23:03:13 ]
JAVAをはじめてまだ1週間程の初心者なんですが、
kitten.ace.nitech.ac.jp/ichilab/mech/software/gate/
ここで公開されているアプリと似たものを作りたいと思っています。
それでこのアプリのソースコードが見てみたいんですが、
ソースコードが公開されていないアプリのソースコードを見る方法ってありますか?

馬鹿な質問かもしれませんが教えていただきたいです。
よろしくお願いします。

989 名前:デフォルトの名無しさん mailto:sage [2010/01/03(日) 23:19:06 ]
>>988
>>91
これで一応見ることができる

990 名前:デフォルトの名無しさん mailto:sage [2010/01/03(日) 23:36:33 ]
>>989
ありがとうございます!
やってみます。

991 名前:デフォルトの名無しさん mailto:sage [2010/01/04(月) 10:31:42 ]
C/C++での「配列のある要素のポインタを関数に渡す」みたいな処理はどうやるのでしょうか?

void func(int n, int a[]);

int main(void){
  int a[] = {1,2,3,4,5};
  func(3, a+2); //これの「a+2」
}









[ 新着レスの取得/表示 (agate) ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<238KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef