5ちゃんねる ★スマホ版★ ■掲示板に戻る■ 全部 1- 最新50  

■ このスレッドは過去ログ倉庫に格納されています

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

1 :デフォルトの名無しさん:03/03/26 23:30
☆★☆こんなメッセージが出たら >>2 へ☆★☆
『'javac' は、内部コマンドまたは外部コマンド、
 操作可能なプログラムまたはバッチ ファイルとして認識されていません。』
『Exception in thread "main" java.lang.NoClassDefFoundError: Hello』

>>2-3 初心者によくある質問と回答・他のFAQサイトへのリンク
>>4  JDKの配布元とAPIドキュメントへのリンク
>>5-8 過去スレの一覧
>>9-12 関連スレ
>>13 民間のJavaサイト・無料の開発環境の配布場所
(諸般の事情でずれた場合は >>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/

これからJavaのプログラムを始めたいかたは >>2-4
必要な情報やコンパイラのダウンロード先へのリンクがあります。

基本的に sage 進行でおねがいします。また煽り厨は放置でお願いします。

419 :デフォルトの名無しさん:03/03/31 00:29
>>417
何のキーワードで探せばよいのかわからないのです。
ヒントをお願いします。

420 :デフォルトの名無しさん:03/03/31 00:31
>>418
助かりました。ありがとうございます。

421 :デフォルトの名無しさん:03/03/31 00:31
>>419
>>418


422 :デフォルトの名無しさん:03/03/31 00:34
javaで、2つのファイル内容のdiff取る方法ってありますか?


423 :デフォルトの名無しさん:03/03/31 00:39
>>415 u

424 :デフォルトの名無しさん:03/03/31 00:41
デバッグ用コードとリリース用コードとを使い分けたいのですが、
C言語の#ifdef #endifのようなものは無いんですか?
コード或いはコンパイルスイッチを一箇所変えるだけでその他のコードを
有効、無効に切り替えたいのです。
皆さんはどのようにデバッグコードを入れているのですか?


425 :デフォルトの名無しさん:03/03/31 00:47
アサーションのこといってるの?


426 :デフォルトの名無しさん:03/03/31 00:48
>>424
AspectJ使いなはれ。
その使い道にとっては、賢いプリコンパイラだと思えばヨロシ。
深い理屈があるらしいが、ソノヘンはよくわからん。

427 :デフォルトの名無しさん:03/03/31 00:49
>>424
Logging API使うんじゃだめなの?
開発用のログ出力モードと、リリース用のログ出力モードを
切り替えられるじゃん。
別にログ出力だけに限らず、デバッグ用のコードとリリース用のコードを
切り分けられる。

428 :デフォルトの名無しさん:03/03/31 00:50
>>423
自作すれば出来るが、自動でやってくれるような API はない。あるいは
Runtime#exec("diff [ファイル1] [ファイル2]") で済ますか。

>>424
Java だからといってプリプロセッサを使っちゃいけないというルールは
ない。Ant とかに無いのか? よく言われているのはブール定数と条件分岐
を使う方法だが。

public static final boolean DEBUG = true or false;

if(DEBUG){
  System.out.println("hoge");
}

DEBUG = false にしたときに if(DEBUG) のブロックが丸ごと抜けるのは
バイトコードレベルで確認済み。

429 :426:03/03/31 00:51
>>427
「リリースモードでは何も出力しない」に設定しても、ちょっとLoggingAPI
のメソッドコールを辿る作業をしてしまうからね。性能にちょっと影響がで
てしまう。それでもよいならソレガヨイ。

430 :デフォルトの名無しさん:03/03/31 00:54
>>428
それが便利で、現実それでやってる人が多いとおもうのだけど、問題は
「コンパイラの最適化実装なんぞにたよっていいのか?」ということ
だね。いいのならオケですの。

431 :デフォルトの名無しさん:03/03/31 00:56
>>424
assert使えという感じもするが、どっかのクラス(Hogeとする)で
public static final boolean DEBUGを定義しておいて

if(Hoge.DEBUG)
  debug_part;

というコードをかけば当然DEBUG==trueのときだけ有効
(falseにするとコンパイラの最適化でこの部分は消えるのでパフォーマンスも落ちない)。

432 :424:03/03/31 00:57
皆さんどうもありがとうございます。
取り敢えず428さんの方法が簡単そうなので
使ってみようと思います。

433 :デフォルトの名無しさん:03/03/31 01:07
Eclipseのコード補完、テンプレートを自分で設定できる。

 if(DEBUG){
   System.out.println("{$CURSOR}");
 }

つーテンプレートをdbgというコマンドに設定すると、

"dbg" + [CTRL]+[SPACE]で、上のコードが入力され、
{$CURSOR}の位置にカーソルが合わせられるんで便利。

434 :デフォルトの名無しさん:03/03/31 01:17
レスのつくスピードがすごいな。
チャット状態?

435 :デフォルトの名無しさん:03/03/31 01:21
Javaっていいの?

436 :デフォルトの名無しさん:03/03/31 01:24
> if(DEBUG){

これ激しく汚いんでLoggingAPI使ってくらはい。

437 :デフォルトの名無しさん:03/03/31 01:32
>>430 条件コンパイル用途に使うためにJava言語仕様ではコンパイル時の
最適化を期待して、わざわざifにおける到達不能文のコンパイル時の
チェックを甘くしているから、堂々と使っていいんじゃないかな。

438 :デフォルトの名無しさん:03/03/31 01:32
>>436
別にリリースフェーズで抑制したいことがログ出力だけとは限らんだろ。

439 :デフォルトの名無しさん:03/03/31 01:35
>>437
そうだね。それに「プリプロセッサが無いって #ifdef はどうする気だ」
って質問に JDK 1.0 の頃からずっと Sun 自身が回答してきたソリュー
ションだし。

440 :デフォルトの名無しさん:03/03/31 01:37
>>436
この場合にLoggingAPI使うくらいならAspectJの方がよさげ

441 :デフォルトの名無しさん:03/03/31 04:29
Java開発でのクライアント選定の基準ってなんでしょう?

1.ブラウザ
2.アプレット
3.アプリケーション

2と3はJavaWebStartとJavaのセキュリティ設定の向上で
ほとんど差が無いような気がします。
1をつかうか使わないかは、ユーザの要求がブラウザのGUIで満足できるかできないかだと思いますが、
認識あってますか?

意見を求みます!よろしくです!


442 :デフォルトの名無しさん:03/03/31 04:36
>>441
エンドユーザーの環境をコントロールできるかどうか。

443 :325:03/03/31 06:57
>>326
どこでスレッドを作っているのですか?
Frame Window Conponent を追いかけていっても、みつからないのですが。
peerでつくられるの?

444 :デフォルトの名無しさん:03/03/31 08:54
>>443
EventDispatchThreadは、AWTやらSwingのインスタンスをつくると、
自動的にイッコだけ内部で作られるのよ。デバッガで起動して、スレッド
状態ダンプしてみそ。AWTEventDisptachThreadってのができるから。

445 :デフォルトの名無しさん:03/03/31 11:22
>>342
「初心者無視!Java相談室」を復活させようか?

446 :デフォルトの名無しさん:03/03/31 11:38
javaでオミトロンみたいなのを作りたいのですが
ローカルプロキシサーバと
正規表現でフィルタリングするという方法でよろしいですか?


447 :デフォルトの名無しさん:03/03/31 11:48
>>446
オミトロンって何?

448 :デフォルトの名無しさん:03/03/31 12:21
Proxomitron
というフィルタリングしてくれるソフト
ブラクラやサイコクラッシャなページを
弾くなどなかなか良さそうなソフト

449 :デフォルトの名無しさん:03/03/31 12:46
“Next’ボタンがうまい事動きません。 ご指導よろしくおながいします。

if (e.getSource().equals(nextBtn))
{
if (m.isEmpty())
{
msg.setText("No Record is in the Collection");
}

Iterator pointer = m.keySet().iterator();
while (pointer.hasNext())
{
Object key = pointer.next();
Object value = m.get(key);
String name = (String)key;
Employee emp = (Employee)value;
msg.setText(name +"," +emp);
}
msg.setText("No More Record");
}


450 :デフォルトの名無しさん:03/03/31 12:53
どんな風に動かないのかがわからんちん
予想通りに動かないのか(もしそうならどんな予想か
このステートメント自体通ってないのか
ちなみに途中で標準出力しまくるとおもしろいよw

451 :デフォルトの名無しさん:03/03/31 13:01
>>449
横"ちなみに"レス
ここはこうで構わんぞ
if (e.getSource() == nextBtn)
まぁ equals をオーバーライドしてるなら別だが

452 :デフォルトの名無しさん:03/03/31 13:15
>>450
えっと、レコードはあるのに 'No More Record'のメッセージに逝ってしまうのです。whileをキャッチしてないもよう。

>>451
そうですよなあ。そちらの方がタイプするのも楽になるし。。。
次回から使用してみまぁす。


453 :デフォルトの名無しさん:03/03/31 13:30
>>445
「初心者歓迎Oak質問スレ」と題して
中身はJavaスレにすれば本当のJava初心者は寄ってこなさそうだけど
どう?初心者&アンチ厨は入らずに意味のある議論が出来そうなんだが・・・
すぐバレるかな?

454 :デフォルトの名無しさん:03/03/31 13:32
sendmailサーバにメールを送信してその届いたメールの内容を取得して
指定したデータベースに登録するようなプログラムを作りたいんですが
できるのでしょうか?

455 :デフォルトの名無しさん:03/03/31 13:34
>>453
荒らしアンチ厨は、スレタイがそっくりなことに目をつけて
Javaという言葉入っただけで直ぐに荒らしそうな予感。


456 :デフォルトの名無しさん:03/03/31 13:36
>>453
さらに「Java」という言葉は禁句にすれば
かなり、フィルタかけれるな
あとは、JDBCやJ2EEなどの頭の「J」を「O」に変えれば完璧
JDBCがODBCになっちゃってわけわかんねーよ


457 :デフォルトの名無しさん:03/03/31 13:37
「初心者歓迎あの言語スレ」>コレ最強

458 :デフォルトの名無しさん:03/03/31 13:42
>>454
sendmail使わずにJames(メールサーバー)使えばあなたの要件満たせそうです
DB使うことも最初から考えて作られてる

459 :デフォルトの名無しさん:03/03/31 13:43
>>454
y

460 :デフォルトの名無しさん:03/03/31 13:44
>>457
ネタスレ必至

461 :デフォルトの名無しさん:03/03/31 13:50
「初心者歓迎『クライアントじゃ弱いけどサーバーサイドなら、
なかなかどうして&ケータイとかでもつかえて
ほら、一回書けばどこでも動くっ』て言う例の言語スレ」









「タイトルが長すぎます」って言われました

462 :デフォルトの名無しさん:03/03/31 14:44
URLを判定したい場合。
http://www.someaddress.org/file.html
http://www.someaddress.org/directory/
は問題ないとして、
http://www.someaddress.org/directory_or_file

というような、末尾のスラッシュが無くて、ディレクトリ名か
ファイル名かわからんときの判定方法って、ありますか?

463 :デフォルトの名無しさん:03/03/31 14:45
>>461
Javaは時間経過とともにマシンのスペックがあがるたびにクライアントサイドに
強くなっていきます。これぞJava進化論!!

464 :デフォルトの名無しさん:03/03/31 14:55
>>462
じゃあまず、そのときのディレクトリ名とファイル名の定義をしてもらおうか。
http://www.someaddress.org/file.html/
だと、それはディレクトリ名?ファイル名?

465 :462:03/03/31 15:07
>>464
/file.html
  →ファイル
/file.html/
  →ディレクトリ
/file
  →ファイルかディレクトリかわからん

このように、拡張子が無くて末尾にスラッシュが無い場合です。


466 :デフォルトの名無しさん:03/03/31 15:18
>>449
もー解決してると思うけど…

分岐後に return するとか、 if の後の else とかが全く無いので
絶対に msg.setText("No More Record"); に逝くんだが。

467 :デフォルトの名無しさん:03/03/31 16:02
>>465

> /file
>  →ファイルかディレクトリかわからん

それは最後にスラッシュが無いので、ファイル名です。

たとえば、下記のURLにアクセスした場合

http://www.someaddress.org/directory_or_file

サーバは、directory_or_file というファイルがあればそれを返します。
directory_or_file というファイルが無い場合は、

御親切なことに、

  「directory_or_file というディレクトリを指定しようとして、最後にスラッシュを
  付け忘れたのかもしれない」

  と仮定して、directory_or_file というディレクトリを探しに行って、
  もし、directory_or_file というディレクトリがあれば、
  キチンとスラッシュをつけたURIをステータスコード301で返してくれる

こともあります。



468 :465:03/03/31 16:09
>>467
おお、なるほど。
ステータスコードで判定するって方法が使えそうですね。
ありがとうございます。

ちなみに、こんなライブラリ使ってますが、便利です。
http://www.slayers.nu/~kumasaka/Gyoumu/HTTPClient/docj/index.html


469 :デフォルトの名無しさん:03/03/31 16:17
http://pc2.2ch.net/test/read.cgi/tech/1048689029
http://pc2.2ch.net/test/read.cgi/tech/1048689029/
http://pc2.2ch.net/test/read.cgi/tech/1048689029/l50
http://pc2.2ch.net/test/read.cgi/tech/1048689029/l50/
http://pc2.2ch.net/test/read.cgi/tech/1048689029/l50/dummy


470 :デフォルトの名無しさん:03/03/31 20:13
JTextField で、awt の TextListener の textValueChanged に対応するものを実装したくて、
getDocument() で得られた Document に DocumentListener を使ってみたのですが、
IME を使っているとき、変換前の文字も含めて getText() で得られてしまいます。
それが便利なときもあるとは思いますが、
そうでなくて変換後に Event が飛ぶように、
あるいは変換中か変換直後かを調べるようにするには、どうしたらいいでしょうか?

471 :デフォルトの名無しさん:03/03/31 21:39
キャストで
(int)aaaa
とやるのと
parseInt.aaaa
setInt.aaaa

とはどう違うのですか?
どちらもInt型に変換だと思うけど

472 :デフォルトの名無しさん:03/03/31 21:41
>parseInt.aaaa
>setInt.aaaa

コンパイルエラー。

473 :デフォルトの名無しさん:03/03/31 21:43
>>471
>parseInt.aaaa
>setInt.aaaa
両方とも少なくともキャストではありません。

474 :デフォルトの名無しさん:03/03/31 21:46
>>473
Int型に変換する手段として

475 :デフォルトの名無しさん:03/03/31 21:50
>>474
だからそんな訳の分からん文法はない。

476 :デフォルトの名無しさん:03/03/31 22:04
>>474
>Int型に変換する手段として
Int型ってのは何?
int型ならわかりますが…

477 :デフォルトの名無しさん:03/03/31 22:11
>>476
ごめんごめん、打ち間違いです

Integerクラスを使って
int aaa
aaa.parseInt(String s)
です


478 :デフォルトの名無しさん:03/03/31 22:18
>>477
intはプリミティブ型であるのでメソッドは持たない。

479 :デフォルトの名無しさん:03/03/31 22:20
>>477
まだ、間違ってるような気がしないでもないが、意味は通じた。

とりあえず、キャストの方。

キャストは、その値がキャスト後の型に変換(?)できない場合は、
キャストできないのですよ。

たとえば、IntegerのparseIntメソッドは、String型を引数に取れるけど、
そのString型は、キャストでint型にできませぬ。
String str = "hoge";
int n = (int)hoge; ←あぼーん。

480 :デフォルトの名無しさん:03/03/31 22:20
どう違うのか、と聞く前に、これは正しいJavaのプログラム(の一部)か?
と、あなたは聞くべき。

ちゃんと動くことを手元のVMで確認してから、どう違うのか、と聞いてくれ。

481 :デフォルトの名無しさん:03/03/31 22:22
>>480
同意。キャスト云々と語る以前の問題。

482 :デフォルトの名無しさん:03/03/31 22:24
>>479
ありがとう


483 :デフォルトの名無しさん:03/03/31 22:37
簡単にまとめると、キャストって言ってみたかっただけ、と。

484 :デフォルトの名無しさん:03/03/31 22:48
>>479
>キャストは、その値がキャスト後の型に変換(?)できない場合は、
>キャストできないのですよ。

>たとえば、IntegerのparseIntメソッドは、String型を引数に取れるけど、
>そのString型は、キャストでint型にできませぬ。
>String str = "hoge";
>int n = (int)hoge; ←あぼーん。

これを見ると
intはキャストでの強制変換ができないからメソッドを
使うという風にしか見えないがそうなのか?
違う気がする


485 :デフォルトの名無しさん:03/03/31 22:50
>>484
どんな内部構造かすら分からんクラスを変換しろという方がおかしいわけで。

486 :デフォルトの名無しさん:03/03/31 23:23
キャストってのはその名の通り役を割り当てる(が語源だよね?)
だから変換と考えないほうがいいのでは。
プリミティブ型の場合は値そのものを変えてしまうが。

「変換」しようとおもったらメソッドを呼ぶべきかな。

487 :デフォルトの名無しさん:03/03/31 23:25
>>486
まぁ、言葉尻だ。

どんな内部構造かすら分からんクラスの値をキャスト先の形式に変換しろという方がおかしいわけで。


488 :デフォルトの名無しさん:03/03/31 23:45
ここは初心者が質問するスレだ。
入門以前の者は消えれ。
あと、初心者のフリして質問するやつ。Javaある程度精通してるのなら
まじめに教えろ。俺にな。

489 :デフォルトの名無しさん:03/03/31 23:50
>>488
あっち行け
しっしっ!!

490 :デフォルトの名無しさん:03/03/31 23:57
>>488
2行目まで同意。消えろ>>488よ。

491 :デフォルトの名無しさん:03/04/01 00:10
>>487
それを「言葉尻(だから意味がない)」といってては、あまりいい仕事はできないよ。
言葉の重さを知らないの?

492 :デフォルトの名無しさん:03/04/01 00:16
>>488
3行目まで同意。消えろ>>491よ。
そろそろ、うぜえ。

493 :491:03/04/01 00:26
>>492
そろそろっていまきたんだが。



494 :デフォルトの名無しさん:03/04/01 00:36
キャストってかなり重い処理らしいね。
List list = new ArrayList(); // List<String>
list.add("abc");
のとき要素を取り出すには意味的には
String s = (String) list.get(0);
とするべきだけど
String s = list.get(0).toString();
の方が処理が速いと聞いたことがある。

495 :デフォルトの名無しさん:03/04/01 00:38
>>494
ソースどこらへんかわかる?

496 :デフォルトの名無しさん:03/04/01 00:43
今日Javaの研修で
オブジェクト指向とは
「必要なクラスを必要なときに持ってきてそれを使うやりかた」
と聞いたのですが本当ですが?

違う気がする

497 :495:03/04/01 00:45
>>494
ダウンキャストの場合、型チェック処理があるので重くなるという説をみつけた。
StringのtoStringは参照を返すだけだから軽いと。
説得力あり。

498 :デフォルトの名無しさん:03/04/01 00:46
>>496
それが正しいときがあるかもしれないが、少なくともそれが全てではない。
おそらく、それはオブジェクト指向のかなり少ない部分を占めている。

499 :デフォルトの名無しさん:03/04/01 01:13
Torqueの使い方を詳しく説明してるページどこかに無いですか?
Jakartaのページは読んだけど、情報少なくて良く分からない。
自分はこんなのだけしか見付けられなかった↓
http://www.mail-archive.com/turbine-torque-user@jakarta.apache.org/

あと、トランザクションを使いたい時はTransaction#beginでとってきた
コネクションをBasePeer#doXXXに渡せば良いのかな??
あ、でもJNDIから直接取ってきてもよいのだろうか。

500 :デフォルトの名無しさん:03/04/01 01:14
Vector型にオブジェクトを大量につっこむのと、
ArrayList型にオブジェクトを大量につっこむのとでは、
どっちがパフォーマンス的に速い(軽い)ですか?

501 :デフォルトの名無しさん:03/04/01 01:15
>>499
ちょうど、JavaとDBマッピング系の話題のスレが立ってる。

Java⇔RDBのMapping-Frameworkを語るスレ
http://pc2.2ch.net/test/read.cgi/tech/1049030272/

まだ情報量無し。。。

502 :デフォルトの名無しさん:03/04/01 01:15
>>500
いちおうVectorはスレッドセーフだから重いことになってる。

503 :デフォルトの名無しさん:03/04/01 01:17
>>501
こういうときって、スレ立てた香具師と、中の人が同じ可能性が高い。

504 :デフォルトの名無しさん:03/04/01 01:17
>>500
そんなにパフォーマンスが気になるなら Object[] につっこめば…


505 :デフォルトの名無しさん:03/04/01 01:22
>>501
おおそんなスレが。速レスサンクス。

>>503
別な人です^^;

でも、そこのリンク先はもう読んでました。

506 :ソース読んだ人:03/04/01 01:30
>>500
VectorやArrayListの挿入性能は、すでにたくさん突っ込んだ後、
"次をどこに突っ込むか"による。突っ込んだ後にそこより後ろを
Arraycopyで一つ後ろにずらすから。
で、そのオーバーヘッドに比べれば、VectorかArrayListかなん
てのは大して変わらん。synchronizedキーワードのオーバーヘッ
ドはたいして影響ないというのが、大抵の人の意見だな。

Listを何のために、どのように使うのかのほうが重要。
ランダム検索を頻繁に行うコレクションとして利用するなら、Mapや
Set使うほうが速度的にマシだったりする。ハッシュ検索や二分検索
は、線形検索よりはるかに有利(基本情処レベルのハナシだ…)。
FIFOキューならLinkedList。Stackとして利用するならLinkedList
やVectorで行ってもオケ(java.util.Stackがjava.util.Vectorを
"継承"してしまっているが、コレはコレで問題なんだよな。Implemented-
withを継承でやってしまうと、公開インターフェイスに穴があくこと
になるから。普通の人間ならコンポジションでやるよなあ…)。
但し出し入れは常に最後尾に行うべし。先頭に行うとあほなことが起き
ることは、↑から容易に予測できるっす。


・…なんてことが、java.utilパッケージのソースコード読むとわ
かるので、興味ある奴は読んでみるとよいと思われ。で、自分用
カスタマイズドコレクション実装なんてのも場合によっては作って
みてもよいのかモナー。

507 :デフォルトの名無しさん:03/04/01 01:41
VectorもArrayListも内部ではObject[]を使って要素を格納してる。
要素数が不明だったら素直にVectorかArrayListを使う方がいい。
マルチスレッドで共通のコンテナへアクセスするんだったらVectorを
使う。
synchronizedロックは実際にスレッド間でのコンテンションが発生しない限り(他のスレッドがアクセスしに来る前にロックを解除できるのであれば)重い処理にはならない。

508 :デフォルトの名無しさん:03/04/01 01:49
>>507
>マルチスレッドで共通のコンテナへアクセスするんだったらVectorを
>使う。

Collections#synchronizedListを使った方が良くない?
Vectorって1.1以下との互換性を保つ為の過去の遺産って感じで
あまり使用が推奨されてないし。

509 :デフォルトの名無しさん:03/04/01 01:52
ま え ら 調 べ た ら す ぐ 解 り そ う な こ と は 質 問 す る な よ な


コレクションオブジェクトで、同期が必要な場合とそうでない場合、
どれを実装するべきか云々はJavadoc嫁。または、src.zipでも嫁。

>>507
殆どの場合、ちゃんとラップする。

510 :デフォルトの名無しさん:03/04/01 02:00
ArrayList array = new ArrayList();
とかやるなよ。
少なくとも、
List array = new ArrayList();
とやれ。
そして、List要素の走査はイテレータで行え。
実装に依存しない。要素の追加削除が多くてLinkedListに変更するとき、
 List array = LinkedList();
LinkedListに変更するだけだ。他はなにも変えなくてよい。
いいな、インターフェースに対してプログラミングするのだ!



511 :ソース読んだ人:03/04/01 02:03
>>510
オイラの場合、clone()したいことがあるので、特に理由がなければ
ArrayListやHashMapの参照持っとくなあ…



512 :デフォルトの名無しさん:03/04/01 02:04
初心者は、このことを意識しないで使ってるやつが多い。
普段お前らがJDBC介して何気に取得しているResultSetも
インターフェースプログラミングの恩恵。
Javaの基本はインターフェースプログラミング。

513 :ソース読んだ人:03/04/01 02:05
>>509

>殆どの場合、ちゃんとラップする。
ホントに同期取らなきゃいけない、トランザクショナルに扱わなきゃ
ならん区間って、getやputの瞬間だけってことは、あんましないもんね。

514 :デフォルトの名無しさん:03/04/01 02:09
>>初心者
オブジェクトプーリングを行うクラスを造ってみ。

515 :初心者:03/04/01 02:10
>>514
なにゆえでつか?

516 :初心者:03/04/01 02:10
うーん、ほんものの初心者なら「オブジェクトプーリングってなんでつか?」にするべきだったな。

517 :ソース読んだ人:03/04/01 02:13
>>516
なんかあるべき論でご高説を述べたがってる人がいるみたいだから、
吊られてあげればよかったのに〜。燃料だったかも。

518 :デフォルトの名無しさん:03/04/01 02:14
Javaの初心者ならまずシングルスレッドでJavaらしく実装できるように
なってからマルチスレッドに踏み込もう。
ましてや、プログラム初心者の場合、並行処理云々言ってる身分じゃないだろ。
たまにいるんだよね、同期ヲタ。

252 KB
★スマホ版★ 掲示板に戻る 全部 前100 次100 最新50

read.cgi ver 05.04.00 2017/10/04 Walang Kapalit ★
FOX ★ DSO(Dynamic Shared Object)