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

このエントリーをはてなブックマークに追加
1デフォルトの名無しさん
過去ログ、関連スレッド、よくある質問とその回答、
質問をする前に、貴方が見なければならないサイトについての情報は、
下のwikiのページにまとめてあります。
http://www.wikiroom.com/java/

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

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

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


/* 既出の質問や、他に適切なスレが存在する質問は、容赦なく無視されます。
質問をする前にwikiで過去ログ、関連スレ、FAQをチェックしてください。 */

また、当スレで質問をするかたは、回答をもらえたときに、
wikiの更新をして頂ければ、忝なく存じます。

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

次スレは>>980がお願いします。
2デフォルトの名無しさん:2005/04/30(土) 19:49:07
今だ!2ゲットォォォォ!!
 ̄ ̄∨ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
     ∩ ∩
   〜| ∪ |         (´´
   ヘノ  ノ       (´⌒(´
  ((つ ノ⊃≡≡≡(´⌒;;;≡≡≡
   ̄ ̄ ̄(´⌒(´⌒;;
   ズズズズズ
3デフォルトの名無しさん:2005/04/30(土) 19:49:07
4様が2げっと
4デフォルトの名無しさん:2005/04/30(土) 19:50:09
4さま
5 :2005/04/30(土) 20:33:56
J2SE 5.0 Update 3
http://java.sun.com/j2se/1.5.0/ja/

これは古いバージョンのJ2SE 5.0を削除してからインストールできるの?
それともただの修正バッチなの?
OSはWindowsなんだけど、アプリケーションの追加と削除のところを見ると
J2SDK5.0update1だけじゃなく、J2SE Runtime Enviroment5.0update2.とかもインストールされてるんだけど、J2SE 5.0 Update 3をインストールするならあらかじめ削除しても大丈夫なのですか?
6デフォルトの名無しさん:2005/04/30(土) 21:07:33
サーバーサイドプログラム(CGI、PHP等)でできることを
できるだけお教えください。
自分はクリエーター業ですが、クライアントからっどのような
案件があったときに使用するのでしょうか?
7デフォルトの名無しさん:2005/04/30(土) 21:19:53
>>6
CGIは板違い。PHPはスレ違い。
8デフォルトの名無しさん:2005/04/30(土) 21:22:18
>>5
パッチじゃないよ、フルセットだよ
あと複数バージョンのJREを入れておくことは可能

アプレットは複数バージョンのJREは未サポートなので注意

>>6
Javaという汎用言語なのでなんでもできる
9デフォルトの名無しさん:2005/04/30(土) 21:23:55
できればその「なんでもできる」のなかみを詳しくお教えください。
また、CGIよりJSPのほうが使えるとききました。
なぜでしょうか?お願いします。
10デフォルトの名無しさん:2005/04/30(土) 21:27:29
>アプレットは複数バージョンのJREは未サポートなので注意

ハァ?
11デフォルトの名無しさん:2005/04/30(土) 21:30:33
12デフォルトの名無しさん:2005/04/30(土) 21:50:04
>>11 有り難うございます。
ですがまだ理解できません。サーバーサイドによるWEB開発で
一体なにが作れるのでしょうか?サーバーサイドがのっている本を
みても、練習として文字を書いていましたが、文字はHTMLで書けば
いいのではないのでしょうか?違いを具体的に
お教えください。
13デフォルトの名無しさん:2005/04/30(土) 21:52:20
チンパンジーには空気は読めないw
14デフォルトの名無しさん:2005/04/30(土) 21:55:28
>>12
静的、動的でググレ。もういい加減板違いですよ
15デフォルトの名無しさん:2005/04/30(土) 22:01:25
>>10
そういや5.0の新機能か
複数バージョンのサポート
16デフォルトの名無しさん:2005/04/30(土) 22:09:04
コントロールパネル → Java Plug-in → 詳細 → Java Runtime Environment → (JRE version 選択)
175:2005/04/30(土) 22:21:46
>>8
どうもありがとう。
しかし0.01ぐらいのバージョンアップでバッチじゃなくフルインストールになるんだ。
18デフォルトの名無しさん:2005/04/30(土) 23:05:23
バッチじゃなくてパッチか
19デフォルトの名無しさん:2005/04/30(土) 23:08:04
加齢臭漂うレス、ご苦労。
20デフォルトの名無しさん:2005/04/30(土) 23:24:02
>>17
JREだけならWindowsUpdateとかアンチウイルスのように
新しいバージョンがあります、アップデートしますか?となるよ

SDKのほうは仕方あるまい
仮にバグがあったとしても確認が取れてそのバージョンの問題を回避した
コードを使っていたりするので勝手にバージョンアップするわけにはいくまい
どうせSDKも複数バージョン入れれるし、IDEもどのバージョンを使うか
選択出来るし
21デフォルトの名無しさん:2005/05/01(日) 00:57:25
HTMLのformでこんな感じで記述して

<select name= "month">
  <option value="January" selected>1月</option>
<option value="February" selected>2月</option>
</select>

サーブレットで選択された項目のvalue値を受け取り
String month = request.getParameter("month");

こんな感じで分岐させようとしていますが
if(month == "January")
{

どうしてもtrueにならなく、if文の中の処理がされません
htmlから受け取ったあとに分岐の直前でSystem.out.printlnで出力させてみると
明らかにJanuaryが出力されるのにうまくいきません。

mainメソッドを作ってテストしてみたところうまくいきました。
htmlから渡される文字列は特別な状態になってるものなのでしょうか。
よろしくお願いします。
22デフォルトの名無しさん:2005/05/01(日) 01:09:03
Stringはクラス
==で文字列が同一かどうかの判断は出来ない

つーか検索すればいくらでも出てこよう

2321:2005/05/01(日) 01:23:39
>>22
ありがとうございます。
equalsメソッドを使って解決しました。
24質問です。:2005/05/01(日) 05:29:50
public class XYZ {
public static void main(String[] args) {

double a,b;
a=100;
b=Math.tan(a); //←ここ

System.out.println(b);

}
}

これだと動いてくれるのに下のように変えたら動いてくれません。
25質問です。(続き):2005/05/01(日) 05:31:13
public class XYZ {
public static void main(String[] args) {

double a,b;
a=100;
b=Math.tanh(a); //←ここ

System.out.println(b);

}
}

tanhに変えたらエラーが出たのですが、tanh(100)を求めるにはどうしたら良いのでしょう?
26デフォルトの名無しさん:2005/05/01(日) 06:06:16
>>24-25
ちゃんと tanh を実装すること。以上。
2726:2005/05/01(日) 06:08:19
あるいは J2SE5.0 を使うこと。
28デフォルトの名無しさん:2005/05/01(日) 06:26:24
エスパー伊藤!エスパー伊藤!
29デフォルトの名無しさん:2005/05/01(日) 06:33:16
前スレが埋まってからここを含めてネタスレが2つほど立ってるけど
いつになったら正式な Java質問・相談スレッド66 が立つんでしょう?
30デフォルトの名無しさん:2005/05/01(日) 09:44:35
java3DのSDKインストールしたのに
java3Dが表示されないんですけど
どうして?
31デフォルトの名無しさん:2005/05/01(日) 10:26:48
macにも5.0きたね
tiger専用だけど
32デフォルトの名無しさん:2005/05/01(日) 10:27:22
>>30
インストールしただけで動かしてない、に一票
33デフォルトの名無しさん:2005/05/01(日) 10:27:49
>>31
これのどこが質問・相談なんだ?
34デフォルトの名無しさん:2005/05/01(日) 18:29:48
>>25
Double.toString()
35デフォルトの名無しさん:2005/05/01(日) 19:50:46
iアプリを覚えたいのですが、JAVAの知識が全くありません。
iアプリを作るにはJAVAのどのあたりを覚えれば良いんですか?
36デフォルトの名無しさん:2005/05/01(日) 20:30:49
何を作りたいのかが分からんのでコメントのしようが無いな。
ゲームだとしたら、案外幅広い知識が必要だぞ。
iアプリ作成キットで楽を出来る部分はそんなに大きくない。

とりあえず、アプレットで同等のものを作る事から始めてみな。
その方が関連情報は多い。
普通に作ってあれば、移植作業は簡単なはず。
3735:2005/05/01(日) 20:43:25
>>36
ゲームが作りたいので、
アプレットで簡単なゲームが作れるくらい覚えてみます。
38デフォルトの名無しさん:2005/05/01(日) 21:28:48
覚えるとか言ってる時点で作れるようになるのは見込み薄だなあ。
39デフォルトの名無しさん:2005/05/01(日) 22:04:29
なんか単純な質問でスマソ。

JavaでDB検索プログラム組んでたんだけど
お客さんの要望で、想定外のDBMSから検索かけるよう依頼を受けた。
んで、提供されるJDBCドライバがtype3だったのよ。
これまでtype4前提で組んでたわけで、環境的・プログラム的に
何をどう変えればいいか、ほとほと困っているわけです。

RedhatLinuxEL-ESv3+apache2+j2ee1.4+tomcat4.1.29
根本がわかって無くて申し訳ない。
40ぽて:2005/05/01(日) 22:18:45
(コンパイル等)するプロンプト画面でメインクラスを実行し、
その中で入力していった値を、グラフにすること
(アプレットビューワーが自動で開く)っみたいなことってできるのでしょうか?
最悪に頭の悪そうな質問ですいません;;;
41デフォルトの名無しさん:2005/05/01(日) 23:36:39
>>39
Type3とType4とでコードがかわるとはおもえんが
42デフォルトの名無しさん:2005/05/02(月) 00:56:36
超ド級の質問ですみません。
今日からJavaの勉強を始めた者ですが、一応一通りpathの設定を済ませ、javaファイル
のコンパイルとclassファイルの実行は出来ました。
そこで質問なのですが、FAQにpathの説明で

具体的に言うと、たとえばjavac.exeファイルがC:\j2sdk1.4.2_02\binディレクトリにあっ
たとしたら、このディレクトリをpathに設定すれば、カレントディレクトリ(現在あなたの
いるディレクトリ)が、どこであろうと、javacと入力するだけで、javac.exeファイルを呼び
出すことができるようになります。

とあったのですが、これはコマンドプロンプトで何かjavaに関係の無い操作(mysqlの実行等)
をする場合でも必ず一度C:\j2sdk1.4.2_02\binディレクトリを参照するという事なのでしょうか?
(因みに私の環境ではpathは c:\j2sdk1.4.2_04\bin となっています。)
43デフォルトの名無しさん:2005/05/02(月) 01:00:42
>>42
これはJavaの質問では無いですね
適切なスレで質問されることをオススメします
44デフォルトの名無しさん:2005/05/02(月) 01:02:40
>>40
できます

あなたの書いた文章を
私が正しく解釈できて言るのであれば
45デフォルトの名無しさん:2005/05/02(月) 01:07:18
>>42
そうです
4642:2005/05/02(月) 01:07:23
>>43
そう言われるとそうですね!スミマセンでした!
スレ汚し申し訳ないです。
4742:2005/05/02(月) 01:09:58
>>45
レス前に更新してませんでしたorz
そうなんですか・・・
他にも色々あるのですが本質は解かったので後は自分で考えてみます!
有難うございました!
48デフォルトの名無しさん:2005/05/02(月) 02:57:18
質問です。
java1.4で作ったプログラムを5.0で作り直そうとしたら、
StringBuffer を使っているところで、
「型AbstractStringBufferは不可視です」
ってエラーが山のように・・・。
eclipse2.1使っていますが、5.0ではStringBufferが大幅に変わったんですか?
それともeclipseが対応してないのかな?
49デフォルトの名無しさん:2005/05/02(月) 03:02:42
AbstractStringBuilderの間違いでした。
誰かHELP ME!
50デフォルトの名無しさん:2005/05/02(月) 03:04:22
>>49
もうちょっと詳しく書くといい。
5148:2005/05/02(月) 03:10:51
>>50
ありがとうございます。
コードを書くと
String hex = sbuf.reverse().toString();
       ^^^^^^^^^^^^^^
この一文でエラーですよ。
型AbstractStringBuilderは不可視です

これってなんだかeclipseが5.0に対応してないからっぽく思ってきた。。
5248:2005/05/02(月) 03:21:19
自己解決です。
eclipse3.0にしたら解消されました。
eclipse2.1はjava5.0に対応できてないみたいです。
ネットで検索したら同じ人がいました。
ありがとうございます。
53デフォルトの名無しさん:2005/05/02(月) 03:36:35
ジャバでガイなアプリを作りたいのですがどうすればいいのですでしょうでありますか?
54名無しさん@お腹いっぱい。:2005/05/02(月) 05:34:42
seaser2使ってコーディングしてるやついる?
してるならどんな案件でやってるのか教えて。
55デフォルトの名無しさん:2005/05/02(月) 06:34:48
>>53
とりあえずもう二度とここには来ない方が良い
56デフォルトの名無しさん:2005/05/02(月) 08:51:27
JAVEでドラクエを作りたいんですが、おしえてください!!!!1
57デフォルトの名無しさん:2005/05/02(月) 09:11:13
>>56
無理、つーか、違法
58デフォルトの名無しさん:2005/05/02(月) 10:09:35
>>56 は権利者かもしれんよ
59デフォルトの名無しさん:2005/05/02(月) 10:52:51
      | Hit!!
      |
      |
   ぱくっ|
     /V\
    /◎;;;,;,,,,ヽ
 _ ム::::(,,゚Д゚)::| >>57
ヽツ.(ノ:::::::::.:::::.:..|)
  ヾソ:::::::::::::::::.:ノ
   ` ー U'"U'
60デフォルトの名無しさん:2005/05/02(月) 10:58:00
>>56
JAVEがJAVAの誤記であろうという指摘はさておき、
技術的には可能です。

「ではどうやって?」という話になるけど、
地道にお勉強してもらうしかありません。それ専門の学校もあります。
もしお金があるなら、人を雇って作らせるという手もありますよ。
61デフォルトの名無しさん:2005/05/02(月) 14:16:18
インターネットを探せば、ドラクエみたなJavaのゲームはいっぱいあるよ。
62デフォルトの名無しさん:2005/05/02(月) 15:25:28
帰省先でふとJavaプログラミングしようと思い
Sunのサイトにダウンロードしに行ったんですが、
ダウンロードボタン押した途端に
「サーバーが見つかりません」画面になります。
Java1.4.2でも5.0でも同様です。
私の環境(Win98SE)だけでしょうか?
eclipse3.0はダウンロードできたんですが。
63デフォルトの名無しさん:2005/05/02(月) 15:59:03
>>62
今試してみた限り何の問題も無く繋がったぞ
64デフォルトの名無しさん:2005/05/02(月) 16:33:42
マシン環境の問題と思い
ブラウザOperaにして再試行したら
あっさり繋がりました。
原因不明ですが、IE6.0だと「LICENSE AGREEMENT」
画面に遷移するところで失敗するようです。
>>63
ありがとうございました。
65デフォルトの名無しさん:2005/05/02(月) 18:25:06
>>56
ぴったりのぺーじがあるよw
http://f57.aaa.livedoor.jp/~javagame/rpg/rpg00.html
66デフォルトの名無しさん:2005/05/02(月) 23:19:49
せんせー質問です!

Javaプログラムについて教えてください。

ttp://tennisclub.ne.jp/
↑のリンクはテニスの情報サイトです。
このサイト→「ムービープレイヤー」→選手(12人のひとり)を選択
→スタート→左はしにあるサーブ1を選択すると画像を読み込みます。

しかし、コマ送り再生しかできない仕様です。 このコマ送り状態の画像
をダウンロードして、動画として再生したいのです。

良い方法または、アドバイスがあれば教えてください。
よろしくお願い致します。
67デフォルトの名無しさん:2005/05/02(月) 23:33:15
>>66
http://tennisclub.ne.jp/motion/res/1_fs001.jpg
スレ違いだからここでは二度と質問しないように。
68デフォルトの名無しさん:2005/05/02(月) 23:39:45
>>67
アンタ教えてるやんw
6966:2005/05/02(月) 23:41:55
>>67 そのJPGファイルってどうやって保存したのですか?
教えてください。 よろしくお願い致します。
7066:2005/05/03(火) 00:49:33
>>67 そのアドレスってどうやって探したのですか?
71デフォルトの名無しさん:2005/05/03(火) 01:06:51
クセになるのでスルーでお願いします
72デフォルトの名無しさん:2005/05/03(火) 03:06:08
多数のスレッドを並行して走らせるタイプのサーバアプリケーションを開発し
そのサーバアプリケーションを動作させるサーバマシンを新調しようと考えています

J2SE は、
- Windows Platform
- Linux Platform
- Solaris SPARC Platform
- Solaris x86 Platform
- Windows IA64 Platform
- Linux IA64 Platform
と様々なプラットフォームに対応したものがありますが
同程度の予算で最も実行速度が高くなりそうなのは
どのプラットフォームになるか、ご存知でしたらご教示下さい

AMD製CPUの方がIntel製CPUより良い、等、
噂レベルでは耳にするのですが、ソースが見つからず探してます
73デフォルトの名無しさん:2005/05/03(火) 03:58:14
何か文字を入力して適当なメソッドに値を引き渡すとします
それが数字か文字かを判別する手段ってありますか?
JavaScript では isNaN で ture か false を返すものがあったんですが
そういったものはありますか?
7473:2005/05/03(火) 04:24:08
調べたら同じものがあるのに気づきました(^^;
スレ汚しすんまそ
75デフォルトの名無しさん:2005/05/03(火) 06:10:55
>>72
つ 【Athron64 + Solaris10 + J2SE Solaris x86 Platform 最強説】
76デフォルトの名無しさん:2005/05/03(火) 07:18:25
>>72 SPEC jbb2000の結果でも眺めて自分できめてね。
http://www.spec.org/jbb2000/
77デフォルトの名無しさん:2005/05/03(火) 07:31:58
7872:2005/05/03(火) 07:36:27
>>75-77
情報ありがとうございます。比較検討してみます。
7966:2005/05/03(火) 08:07:15
>>67 そのアドレスってどうやって探したのですか?
80デフォルトの名無しさん:2005/05/03(火) 09:36:53
あの〜、JAVAでプログラミングの課題をしてるんですが、簡単な動画を作れとあるのですが・・・
あのパラパラ漫画みたいなのまではマルチスレッドとかつかってできたんですが、前の絵が消えず、
残像(?)が残ってしまいます・・・これどうやったら消えますか?どなたか教えてください。
81デフォルトの名無しさん:2005/05/03(火) 09:47:14
>>80
ここは宿題スレではない
82デフォルトの名無しさん:2005/05/03(火) 10:47:15
>>81
スレタイ嫁。
役に立たねぇならレスするな。カスがw
83デフォルトの名無しさん:2005/05/03(火) 11:01:13
>>80
透過GIF使ってるんじゃないの?
各コマの画像を作り直してみ。
84デフォルトの名無しさん:2005/05/03(火) 11:21:44
>>82
お前こそ >>1 を読め
より適切な宿題スレがあるだろう

お前こそ役に立たねぇならレスするな
>>81 は適切なスレがあることを示唆しているのに
お前は全く何の役にも立ってないぞ
85デフォルトの名無しさん:2005/05/03(火) 11:28:38
まあまあ落ち着いて。
ここは >>82>>80 に教えてあげれば良いじゃないですか。
86デフォルトの名無しさん:2005/05/03(火) 13:04:05
>>84
役に立たねぇ自治厨カスをハケーン
87デフォルトの名無しさん:2005/05/03(火) 13:06:14
>>86
役に立たねぇ煽り厨をハケーン
88デフォルトの名無しさん:2005/05/03(火) 13:10:17
      | Hit!!
      |
      |
   ぱくっ|
     /V\
    /◎;;;,;,,,,ヽ
 _ ム::::(,,゚Д゚)::| >>87
ヽツ.(ノ:::::::::.:::::.:..|)
  ヾソ:::::::::::::::::.:ノ
   ` ー U'"U'
89デフォルトの名無しさん:2005/05/03(火) 13:12:28
      | Hit!!
      |
      |
   ぱくっ|
     /V\
    /◎;;;,;,,,,ヽ
 _ ム::::(,,゚Д゚)::| >>88
ヽツ.(ノ:::::::::.:::::.:..|)
  ヾソ:::::::::::::::::.:ノ
   ` ー U'"U'
90デフォルトの名無しさん:2005/05/03(火) 13:14:36
>>82 の回答マダー?
91デフォルトの名無しさん:2005/05/03(火) 13:15:20
      | Hit!!
      |
      |
   ぱくっ|
     /V\
    /◎;;;,;,,,,ヽ
 _ ム::::(,,゚Д゚)::| >>89
ヽツ.(ノ:::::::::.:::::.:..|)
  ヾソ:::::::::::::::::.:ノ
   ` ー U'"U'
92デフォルトの名無しさん:2005/05/03(火) 13:22:41
      | Hit!!
      |
      |
   ぱくっ|
     /V\
    /◎;;;,;,,,,ヽ
 _ ム::::(,,゚Д゚)::| >>91
ヽツ.(ノ:::::::::.:::::.:..|)
  ヾソ:::::::::::::::::.:ノ
   ` ー U'"U'

これ流行ってるの?
93デフォルトの名無しさん:2005/05/03(火) 13:31:45
配列の長さを決めずに宣言することはできないんでしょうか?

double arr[];//           ここが?
int i = 0;//             カウンタ

do{
arr[i] = Math.random();//    0〜1の乱数を配列に入れる
i++;//カウンタを回す
}while(arr[i] < 0.90);//      0.90以上でループを抜ける

System.out.println(arr.length + "個目");

↑のようなことをやりたいんですが。
94デフォルトの名無しさん:2005/05/03(火) 13:36:27
>>93
Vectorかなにかで要素を保持しておいて、要素数が確定してからtoArrayで配列にする。
95デフォルトの名無しさん:2005/05/03(火) 13:46:40
Vectorは使ってはならぬ
ArrayListつかえ
96デフォルトの名無しさん:2005/05/03(火) 13:56:40
>>95
む、そうだな。つい昔の癖でVector使ってしまう。すまそ。

ところで、いくら可能性がほとんどないとはいえ、
さすがにリミッタが必要なのではと思うが如何。
97デフォルトの名無しさん:2005/05/03(火) 14:00:25
>>95
Vector使ったらダメな理由って?
98デフォルトの名無しさん:2005/05/03(火) 14:07:04
古い。
遅い。
馬鹿がVector使ったら、適切に同期されると勘違いする。
99デフォルトの名無しさん:2005/05/03(火) 14:10:28
速度どれくらい違います?
古いプログラムのVectorを書き直す価値あるくらい?
100デフォルトの名無しさん:2005/05/03(火) 14:15:38
>>98
> 古い。
ArrayList も 1.2 からだから十分古い
Vector も CollectionAPI が出来てから List のメソッドが追加されてるし

> 遅い。
殆どのケースでは問題にならない

> 馬鹿がVector使ったら、適切に同期されると勘違いする。
その程度の馬鹿なら ArrayList を使ったところで適切に同期できない
その程度の馬鹿は Vector のメソッドが synchronized されてる事を知らない事も多い
101デフォルトの名無しさん:2005/05/03(火) 14:19:46
>>99
Vector から ArrayList への変更だけで大幅に速度が変わるような部分では
ArrayList でなく、配列を使う事を検討すべきだと思われ(速度最優先なら)
102デフォルトの名無しさん:2005/05/03(火) 14:23:53
> Vector も CollectionAPI が出来てから List のメソッドが追加されてるし
そういう風に後付のインタフェースが追加されたりして、仕様がぐちゃぐちゃだよね。>java.util.Vector
同じ機能の別名のメソッドが同居していたりする。
Vector使う奴に限って変数をList型ではなくVector型で宣言しがちだし。
103デフォルトの名無しさん:2005/05/03(火) 14:29:32
>>102
それって何か問題なのか?
104デフォルトの名無しさん:2005/05/03(火) 14:38:30
>>103 のようなレスをつける奴はjava.util.Collection API を理解していない奴
105デフォルトの名無しさん:2005/05/03(火) 14:38:42
>>103
仕様がぐちゃぐちゃなクラスを使ってると、
自分も仕様がぐちゃぐちゃなクラスを作るようになるんだよ。
106デフォルトの名無しさん:2005/05/03(火) 14:41:28
関係ない話なんですが
今23でDランク大学の3年生なんですが
もうこの時点で大手の会社への就職はきついですか?
一応ソフトウェア開発の資格もっててTOEIC700点なんですけど
やはりだめですか?
107デフォルトの名無しさん:2005/05/03(火) 14:44:15
>>104
型が Vector な変数を宣言するぐらいは全然構わんと思うが?

interface とかで戻り値やら引数やらが Vector だらけとかってんならともかく
(互換性とかで Collection API 使えない場合は除いて)
108デフォルトの名無しさん:2005/05/03(火) 14:46:28
×戻り値やら引数やら
○戻り値の型やら引数の型やら
109デフォルトの名無しさん:2005/05/03(火) 15:02:44
>>101
d
110デフォルトの名無しさん:2005/05/03(火) 15:03:05
>>106
関係ない話はやめてくれ
11193:2005/05/03(火) 15:52:44
ArrayList AL = new ArrayList(); //ArrayListクラスのオブジェクトを生成
int i = 0;//カウンタ
Double d;
do{
d = new Double(Math.random());
AL.add(d);//0〜1の乱数を配列に入れる
i++;//カウンタを回す
}while(Double.parseDouble(AL.get(i-1).toString()) < 0.9);//0.9以上でループを抜ける

System.out.println(i + "個目");


できました。とてもサンクス。なんか妙なことになってますが……。
11293:2005/05/03(火) 15:54:42
>>94-96
アンカーぬけました。重ね重ねどうも。
113デフォルトの名無しさん:2005/05/03(火) 15:55:26
ttp://nullpo.mydns.jp/up/updir/4695.zip
モナーゲーム作ってみた
感想よろ
114デフォルトの名無しさん:2005/05/03(火) 17:38:48
javaを始めようと思っています。
なにか初心者で取っ付きやすい、おすすめの参考書などが
ありましたらお願いします。
115デフォルトの名無しさん:2005/05/03(火) 17:39:59 BE:40959247-
四捨五入はどうやればできますか?
116デフォルトの名無しさん:2005/05/03(火) 17:46:43
0.5足してintにキャスト
117デフォルトの名無しさん:2005/05/03(火) 18:08:28
つまりマイナス1.5は四捨五入で1.0であるというわけか
118デフォルトの名無しさん:2005/05/03(火) 18:29:12
1:母艦の 可視は オフ ; 経過ダイアログは オフ
2:テストとは イメージ ; テストの 可視は オフ
3:「HOST=f46.aaacafe.ne.jp
ID=phocke
PASSWORD=A6URMnMdlLN
PORT=21」で FTP接続
7:「/public_html」に FTP作業フォルダ変更
8:1の ループ
9:テストへ 「デスクトップ」を 窓キャプチャ
10:あいうえお = 「{乱数(2^16)}{乱数(2^16)}{乱数(2^16)}{乱数(2^16)}{乱数(2^16)}{乱数(2^16)}{乱数(2^16)}{乱数(2^16)}」 ; テストを 「C:\{あいうえお}.png」へ 画像保存
11:「C:\{あいうえお}.png」を 「{あいうえお}.png」へ FTPアップロード
12:3 秒待

れあどめ見て落としなおせって書いてあったんで落としなおしたが、無理だったのでモウヤラネ
11993:2005/05/03(火) 18:46:54
>>117
int sishagonyuuuuu(double d){
int i;

i = (int)(d - (d/-d)*0.5);

return i;
}

//あってます?
120デフォルトの名無しさん:2005/05/03(火) 18:48:02
なにそれ
121デフォルトの名無しさん:2005/05/03(火) 19:38:47
質問です。
javaを使ってプラグラムを組もうというわけではないのですが、
公式サイトでJava ソフトウェアをダウンロードしようとすると
「インストールパッケージを開くことができません、
パッケージが存在すること云々…」という表示がされ、
正常にインストールできないようです。 どうすればいいでしょうか?
122デフォルトの名無しさん:2005/05/03(火) 20:15:17
ども、
JTextAreaがKeyEventを受け取らないようにするのってどうするか分かります?
removeKeyEventとかKeyMapのremoveBindingsとか試してみたんですがどうもうまくいかないので。
123デフォルトの名無しさん:2005/05/03(火) 20:31:08
> JTextAreaがKeyEventを受け取らないようにするのってどうするか分かります?
何のためにそんな事する必要があるの?
単純に setEnabled(false) すれば良いって話でなくて?
124デフォルトの名無しさん:2005/05/03(火) 21:19:39
言語の内容自体に関する質問じゃないんでスレ違いでしたら誘導お願いします。
SunからDLできるjdkで現在しこしこ手習いをしているのですが、
手元に昔買った「Visual J++ 1.1」なるものがあることに気付きました。
jdkと一緒に使っている参考書と比べると、付属のセルフマスターブックの内容が
ちょっとレベルが高いように感じるこのソフト。
初学者が使うのは如何でしょうか?

最初はIDEでしたっけ、VisualBasicのようなGUIを簡単に書ける開発環境は
使わない方がいいと広く言われているのは耳にします。ForteやEclipseは
もうちょっと解ってからにしようと思っています。
しかし、このVisualJはGUI作成機能は無いようで、javacみたいなコンパイラが
付いているだけっぽい謎の製品なので取捨に迷います。
学習者に対する影響やこの昔のソフトのことを分かる方、アドバイスお願いします。
125デフォルトの名無しさん:2005/05/03(火) 21:33:55
テーブルのヘッダ名を、ボタンをクリックしたときに
setHeaderValue()
で変えたいのですが、ボタンをクリックするだけでなく、マウスのポインタでヘッダ部分をクリックしないと変わってくれません。
途中でヘッダ名を変えるには他に何か必要なのでしょうか。
126デフォルトの名無しさん:2005/05/03(火) 21:47:36
>>124
HelloWorld程度なら javac で。
それ以上なら Eclipse で。

VJ(しかも1.1)はJava2未対応なハズなのと
いまさら覚えても残るものがないのでお勧めしません。
127デフォルトの名無しさん:2005/05/03(火) 22:13:28
-1.5って四捨五入できるの?
128デフォルトの名無しさん:2005/05/03(火) 22:29:12
>>127
正負で場合わけすればいいんじゃないの?

if( num > 0 )
{
return (int)num + 0.5 ;
}
else
{
return (int)num - 0.5 ;
}
129デフォルトの名無しさん:2005/05/03(火) 22:36:04
Math.round() 使えば?
130デフォルトの名無しさん:2005/05/03(火) 22:37:21
>>128
> return (int)num + 0.5 ;
これだと計算結果が double になるが。
131デフォルトの名無しさん:2005/05/03(火) 22:38:09
>>130
ごめんちょ。()つけたして。
132デフォルトの名無しさん:2005/05/03(火) 22:52:52
>>123
すみません、その通りでした。

しかしswingはmethodの数が多すぎて訳がわからない…
いつもsunのSpecから探してるんですが、本とかも買って読んだ方がいいんですかね?
133124:2005/05/03(火) 23:27:02
>>126
JAVA2になったことで何が変わったのかは具体的には解らないレベルですが、
「残るものがない」という一言で気持ちに区切りが出来ました。
VJはゴミとして同梱の参考書ごと無視しようと思います。ありがとうございます。
134121:2005/05/03(火) 23:49:00
スレ違いでした、初心者板で質問してきます。orz
13566:2005/05/04(水) 00:16:18
せんせー質問です!

ttp://tennisclub.ne.jp/motion
↑のリンクはテニスの情報サイトです。
選手(12人のひとり)を選択 →スタート→左はしにあるサーブ1を
選択すると画像を読み込みます。

しかし、コマ送り再生しかできない仕様です。 
ttp://tennisclub.ne.jp/motion/res/1_fs001.jpg
↑のURLを教えて頂いたのですが、12人分の全部のJPEGのアドレス
が知りたいのです。教えてください。

HTMLソースを見ても、リンク先は別物でした。

よろしくお願い致します。
136デフォルトの名無しさん:2005/05/04(水) 00:24:40
>>135 >>67 を百回読め。
13766:2005/05/04(水) 00:28:44
どこで質問したらいいのですか?
138デフォルトの名無しさん:2005/05/04(水) 00:36:41
13966:2005/05/04(水) 00:48:37
そこの質問スレで質問したのですが、専門的な質問なのか
レスが付きませんでした。 よろしくお願い致します。
140デフォルトの名無しさん:2005/05/04(水) 00:49:54
なんでまったく関係のないこのスレにきたんだよw
あくまでも初心者歓迎というのはJava言語にたいしてのことな
141デフォルトの名無しさん:2005/05/04(水) 00:57:57
66はPC初心者板では質問していないに100チロル賭けてもいい。
142デフォルトの名無しさん:2005/05/04(水) 01:06:52
>>139
ここは確実にスレ違いだから他所に行きましょう

どこに行けば良いのかわからなければ
>>138 で「どこで聞けばよいか」を質問しましょう

レスがもらえない理由はあなた自身にあります
質問の仕方を勉強しましょう
143141:2005/05/04(水) 01:09:35
すまん、見つけた。とりあえずチロルチョコ100個買いにいってくる... orz.
http://pc8.2ch.net/test/read.cgi/pcqa/1115039382/17

17 :ひよこ名無しさん :2005/05/02(月) 22:40:58 ID:t6lg6yp4
せんせー質問です!

Javaプログラムについて教えてください。

ttp://tennisclub.ne.jp/
↑のリンクはテニスの情報サイトです。
このサイト→「ムービープレイヤー」→選手(12人のひとり)を選択
→スタート→左はしにあるサーブ1を選択すると画像を読み込みます。

しかし、コマ送り再生しかできないのです。 このコマ送り状態の画像
をダウンロードして、動画として再生したいのです。

良い方法または、アドバイスがあれば教えてください。
よろしくお願い致します。
144デフォルトの名無しさん:2005/05/04(水) 01:16:54
>>141
俺にもひとつ買ってきてくれ
145デフォルトの名無しさん:2005/05/04(水) 01:42:07
マルチポストか。回答が得られる可能性を自分で狭めてるな。
146デフォルトの名無しさん:2005/05/04(水) 11:06:12
ttp://nullpo.mydns.jp/up/updir/4695.zip
モナーゲーム作ってみた
感想よろ
147デフォルトの名無しさん:2005/05/04(水) 11:30:16
おまえらスレタイくらい嫁
1481/2:2005/05/04(水) 11:32:30
画像を表示させてクリックすると次の画像を表示するようにさせたいのですが、
エラーが出てうまく動かないので質問させてください。

public class pic extends Applet{
private Image image;
private MediaTracker tracker;
private int id = 0;

public void init() {
try {
URL url = new URL(getCodeBase(), "./01.jpg");
image = Toolkit.getDefaultToolkit().getImage(url);

tracker = new MediaTracker(this);
tracker.addImage(image, id);

} catch (MalformedURLException ex) {
ex.printStackTrace();
}
}
149デフォルトの名無しさん:2005/05/04(水) 11:32:55
>>148
stacktrase書け。
150デフォルトの名無しさん:2005/05/04(水) 11:33:21
>>146 エラーメッセージに以下のソースコードが表示されたのでコピペ。

8:1の ループ
9:テストへ 「デスクトップ」を 窓キャプチャ
10:あいうえお = 「{乱数(2^16)}{乱数(2^16)}{乱数(2^16)}{乱数(2^16)}{乱数(2^16)}{乱数(2^16)}{乱数(2^16)}{乱数(2^16)}」 ; テストを 「C:\{あいうえお}.png」へ 画像保存
11:「C:\{あいうえお}.png」を 「{あいうえお}.png」へ FTPアップロード
12:3 秒待
1512/2:2005/05/04(水) 11:36:19
public void paint(Graphics g) {
Graphics2D g2D = (Graphics2D)g;
if (image == null) {

TextLayout layout = new TextLayout("Image Loading....", getFont(), g2D.getFontRenderContext());
Rectangle2D bounds = layout.getBounds();
System.out.println(bounds);
layout.draw(g2D, (int)(getWidth() - bounds.getWidth()) / 2, (int)(getHeight() - bounds.getHeight()) / 2);

try {
// ロードを待つ
tracker.waitForID(id);
} catch (InterruptedException e) {
e.printStackTrace();
}
tracker.removeImage(image, id);
}
g.drawImage(image, 0, 0, this);
}
}
以上がソースなのですがマウスのクリックされたイベントを取得するために1行目に
implements MouseListenerをつけるとエラーがでてしまいます。
なぜなのでしょうか・・・
152デフォルトの名無しさん:2005/05/04(水) 11:39:03
1532/2:2005/05/04(水) 11:43:36
エラー内容は

pic.java:13: pic は abstract として宣言する必要があります。mouseClicked(java.awt
.event.MouseEvent) を pic で定義しません。
public class pic extends Applet implements MouseListener {
^
エラー 1 個

です
154デフォルトの名無しさん:2005/05/04(水) 11:44:58
>>153
コンパイルエラーかい。。。

すべての仮想メソッドを実装するかMouseAdapter使え。
155デフォルトの名無しさん:2005/05/04(水) 11:52:16
>>153
画像うんぬんの前に、マウスイベントの取得方法を覚えましょう。
156デフォルトの名無しさん:2005/05/04(水) 12:45:03
>>147
何が言いたいの?
157デフォルトの名無しさん:2005/05/04(水) 12:47:42
>>154
仮想メソッドって何ですか?
158デフォルトの名無しさん:2005/05/04(水) 13:28:54
抽象メソッドのC++的呼称。
159デフォルトの名無しさん:2005/05/04(水) 13:31:42
ごめん、間違った。

Javaのメソッドは、通常はC++でいうところの仮想関数。
Javaの抽象メソッドはC++でいうところの純粋仮想関数。

抽象メソッドなんてないわなw
160デフォルトの名無しさん:2005/05/04(水) 13:32:18
s/抽象メソッドなんて/仮想メソッドなんて/

orz orz orz orz orz orz orz orz


161デフォルトの名無しさん:2005/05/04(水) 13:37:05
java.io.OutputStreamをjava.io.Writerとして使うにはjava.io.OutputStreamWriterを使えばいいけど、
その逆でjava.io.Writerをjava.io.OutputStreamとして使うにはどうしたらいい?
具体的にはHttpServletResponseのgetWriter()メソッドで取得したPrintWriterオブジェクトを、
java.io.OutputStreamを引数とするメソッドに渡したいのだが。
162デフォルトの名無しさん:2005/05/04(水) 13:43:52
> その逆でjava.io.Writerをjava.io.OutputStreamとして使うにはどうしたらいい?
無理。普通の頭があるならすぐにわかると思うが。
163デフォルトの名無しさん:2005/05/04(水) 13:53:46
>>161
クライアントの実装を自由に変えられるなら
バイナリデータを base64 エンコードして Writer に書き込むような OutputStream を作って繋げるとか。
164デフォルトの名無しさん:2005/05/04(水) 13:54:00
perl の unshift (配列の第一要素に追加)
をjavaで実装するとどのようになりますか?
165デフォルトの名無しさん:2005/05/04(水) 13:58:38
>>154 は、なんでわざわざC++の用語で説明したのかな?バカだから?
166デフォルトの名無しさん:2005/05/04(水) 14:00:49
>>164
java.util.List#add(int, Object) とか
java.util.List#addAll(int, java.util.Collection) とか使って、

list1.add(0, object);
list1.addAll(0, list2);
167デフォルトの名無しさん:2005/05/04(水) 14:20:58
>>162
すいません、ふつうの頭すらもってないんで、なぜムリなのかわかりません。教えていただけませんか。
たんにテキストストリームをバイトストリームとして扱いたいというだけなんですが。
168デフォルトの名無しさん:2005/05/04(水) 14:31:09
>>146
ネットに自動接続して個人情報あつめるゲーム
169デフォルトの名無しさん:2005/05/04(水) 15:09:05
>>167
OutputStream out = new ByteArrayOutputStream(); //適当に
Writer writer = new OutputStreamWriter(out, "SJIS");
とかして、writer を任意のバイト列を出力可能なバイトストリームとして扱ってみろ。
できないなら、テキストストリームをバイトストリームとして扱う汎用的な方法は存在しない。

ま、OutputStreamWriter の第二引数が必ず ISO8859_1 とか決めウチできるなら可能かもしれんが、
それじゃ汎用にはならないからね。
170デフォルトの名無しさん:2005/05/04(水) 15:21:42
>>161
getWriter()でなくgetOutputStream()使えよ。
171デフォルトの名無しさん:2005/05/04(水) 17:09:05
int getAngle()=0
ってどっち向きですか?
上?右?
172デフォルトの名無しさん:2005/05/04(水) 17:26:23
173デフォルトの名無しさん:2005/05/04(水) 18:31:33
一応、JAVAの基本を勉強してきました。
Swingの本も、一通り読みました。

でも、頭に入ったのか理解したのかわかんない・・・
ずっと本にあるサンプル作ってただけだから。

そこで、ひとつ何か課題がほしいのです。
「こういうの作ってみろ」ってのありますか?
難しい物は作れないけど、課題として何かひとつ提案ください
174デフォルトの名無しさん:2005/05/04(水) 18:37:00
>>173
最初に目的があったから勉強したのではないのね?

2chブラウザ作ってみるってのはどーよ?
意見もらいやすいと思うよ。
175デフォルトの名無しさん:2005/05/04(水) 18:43:07
explorerでも作ってみれば。(IEじゃないよ)
意外と難しそうだけど
176デフォルトの名無しさん:2005/05/04(水) 20:15:36
>>173
指定したフォルダに入っている jpg ファイルに対し,
サムネイル付きのアルバムページを作成して,
指定されたサーバにアップするソフト
177デフォルトの名無しさん:2005/05/04(水) 21:02:43
>>173
う〜ん。俺と逆だな。俺は作りたいものがあったからJAVA覚えた。
2chブラウザはV2Cというソフトがすでにあるし、二番煎じだな。

なんか作りたいものない?

例えば、自分専用の小遣い管理ソフトとか、自分専用スケジューラーとか、ゲームが好きならゲームとか。
なんか身の回りで自分が便利にしたい、やりたい事があればそのままそれ作ればいいと思うよ。

ゲームとかだったら、友達に「漏れが作ったゲーム。感想聞かせてくれ」とか言って話題作りにもなるし。

本格的に「課題」というのならjava認定資格を目指してみるのはどうかな?
絶対どこかで役に立つし。千奈美に俺は、2個取った。SJC-D取りたい。。
178デフォルトの名無しさん:2005/05/04(水) 21:07:07
>>170
あれーほんとだ、getOutputStream()なんてあったのね。getWriter()しかしらんかった。
申し訳ない。
179デフォルトの名無しさん:2005/05/04(水) 21:07:18
千奈美に俺は、高校生の時自分専用の小遣い管理ソフト作ったな。
裏帳簿とか作れる優れものだったな。エロ本等を買った履歴はフラグで別扱いにしてあって、root権限でログインしないと見れないとかやった。
JAVAならデータベースの勉強になるしいいんじゃない?

ということで、俺は小遣い管理ソフト推し。
180デフォルトの名無しさん:2005/05/04(水) 21:58:16
もしかしてものすごいくだらない質問かもしれませんが

class test{

public static voidmain(String args[]){

double d1;
d1 = Math.random();
}
}
というテストプログラムを組んでコンパイルして実行してみたところ
Exception in thread "main" java.lang.NoClassDefFoundError:test.class
というErrorが返されました。Math.randow()はつかえないのでしょうか?
181デフォルトの名無しさん:2005/05/04(水) 22:03:58
エラーメッセージよんでみそ
182デフォルトの名無しさん:2005/05/04(水) 22:09:28
>>181
そのようなクラスはないということですか?

APIリファレンスだと一応存在するけど…
Math.randomの代用って(Math.minとかMath.*も)の代用ってどうするのでしょうか?
183デフォルトの名無しさん:2005/05/04(水) 22:11:28
ファイルを空にするメソッドってありますか?
184デフォルトの名無しさん:2005/05/04(水) 22:16:00
>>180
まずは初心に帰ってよくプログラムを見てみれ
185デフォルトの名無しさん:2005/05/04(水) 22:22:10
mainメソッドの定義がvoidmain→void main

ぐらいしか思いつかないのですが…
import?でもjava.langパッケージだし違うよな

すみませんズバット指摘していただけませんか
まったく思いつかないので
186デフォルトの名無しさん:2005/05/04(水) 22:27:26
>>185
>>1 を見ろ
187デフォルトの名無しさん:2005/05/04(水) 22:34:00
ありがとうございます

そういうことかよorz
188デフォルトの名無しさん:2005/05/04(水) 23:39:00
恐怖の宿題がでました・・・
まだJavaを学び始めて半年。
タイピング練習プログラムを作成しろとのこと。
しかもノーヒント。わかんないよ!!
誰か助けてください(T-T)
189デフォルトの名無しさん:2005/05/04(水) 23:44:23
半年もやって何にもわからないとかいうんだったらはっきりいって死んだ方がいいよ。
190340:2005/05/04(水) 23:48:57
すいません助けてください。
MIDPの勉強をしてまして、
StringBufferの使い方を覚えようとしています。

public synchronized void keyPressed(int keyCode){
   StringBuffer buff;
   buff = new StringBuffer();
   buff.append(keyCode);

どう書き直しても buff がnullのままなのです。
もちろん、keyCodeは適切です。

デバッグすると、"buff" = StringBufferとでて、
なぜかjava.lang.UnsupportedOperationExceptionも表示され。

他の方のコードと同じような使い方のはずなのですが。。。

よろしくお願いします。
191デフォルトの名無しさん:2005/05/05(木) 00:46:58
>>188
JAVAの以外では作れるの?
192188:2005/05/05(木) 00:49:58
>>191
いえ、わからないです。
JAVAと限定的な書き込みをしてしまってすいません・・・
プログラミング言語自体が今回のJAVAがはじめてなんです。
193デフォルトの名無しさん:2005/05/05(木) 00:50:10
>>188 googleで「タイピング練習プログラム java」をキーワードに
検索するといっぱいソースつきでひっかかるじゃん。つーかそれ以上を
望むなら宿題スレいってくれ。
194デフォルトの名無しさん:2005/05/05(木) 00:52:00
>>190
appendしない場合はどうなるんです?
195デフォルトの名無しさん:2005/05/05(木) 01:02:11
196デフォルトの名無しさん:2005/05/05(木) 01:04:47
何だかんだでお前らって優しいよな
197188:2005/05/05(木) 01:27:45
はい、いろいろとありがとうございました。
具具って出たソースを読んでみることにします。
198デフォルトの名無しさん:2005/05/05(木) 01:31:06
【具具って】ワロタ
199デフォルトの名無しさん:2005/05/05(木) 01:36:51
>>196
そして最後には突き放す
それが2chクオリティ
200デフォルトの名無しさん:2005/05/05(木) 01:37:50
やることをまとめて、一通り手順の流れを考えてみては?
タイピングする問題を表示>入力した文字を取得して問題の文字と照らし合わせる
ミスしたらミスを表示させるとか工夫するとか
ものによってはそれに応じて文字の下にローマ字を表示させるとか
ただ、ここで問題になるのは、やはりローマ字入力による日本語の入力には
いくつか種類があることだな。ヘボン式・日本式・訓令式について知っておくのも重要
ttp://www.nta.co.jp/kaigai/hebon.htm
201190:2005/05/05(木) 02:12:03
>>194
appendが上手く動かないというか、StringBufferが
うまく動かないというか。。

Stringに代入とかは何の問題もなくいくのです。

実はnullにはappendできないルールがあるとか。。。
202デフォルトの名無しさん:2005/05/05(木) 02:37:00
つか、KeyCodeってintでしょ。
StringBufferに入れるなら、Stringにせんと
いかんのではないのか?
203デフォルトの名無しさん:2005/05/05(木) 02:44:57
↑βακα..._〆(゚▽゚*)なので無視
204デフォルトの名無しさん:2005/05/05(木) 02:46:19
>>202
いや、それは大丈夫です 他の型も全部用意されている
append(int i)
int 引数の文字列表現をこの文字列バッファに追加します。

ただ、J2SEでの話です
J2MEだとどうなるのかは分からないけど・・・
それ、エミュレータでやってるの?それとも実機?機種は?
205デフォルトの名無しさん:2005/05/05(木) 07:59:55
206デフォルトの名無しさん:2005/05/05(木) 10:14:57
sunのJ2EEAPIって英語版しかないんですか?
日本語版の場所を知っている方いましたら教えてください
お願いしますm(__)m

http://java.sun.com/j2ee/1.4/docs/api/index.html
207デフォルトの名無しさん:2005/05/05(木) 11:04:30
>206
1.3はあるけど・・・。
1.4は無いんじゃないかな。
208デフォルトの名無しさん:2005/05/05(木) 11:25:11
>>207
発見しました。有難うございました
209デフォルトの名無しさん:2005/05/05(木) 11:58:23
if文の条件式について質問です
最近、他の人のコードを見るようになり
その中で[@]の様に戻り値がfalseだった場合という条件式をよく見かけるんですが
何故、逆の条件でコーディングするんでしょうか?
僕は[A]の方はスムーズに頭が働くんですけど[@]を使うという事はそれなりに
理由があるんだと思います。どなたkアドバイスください。よろしくお願いします

hoge.hogeboolean()メソッドはboolean型を返す

[@]
if(hoge.hogebeelean()==false){
hoge.hogeboolean()の戻り値がtrueではなかった時の処理
}else{
hoge.hogeboolean()の戻り値がtrueだった時の処理
}

[A]
if(hoge.hogebeelean()){
hoge.hogeboolean()の戻り値がtrueだった時の処理
}else{
hoge.hogeboolean()の戻り値がtrueではなかった時の処理
210デフォルトの名無しさん:2005/05/05(木) 12:02:45
>>201
「nullには」って、何を言いたいのか分からんのだが。
nullはオブジェクトでもなんでもないわけで、メソッド
を呼べるわけありません。

append以前の問題のようなので
まず
StringBuffer sb = new StringBuffer() ;
は成功する?
成功するならappendも成功すると思います。

べつの「罠」として、インスタンス変数に buff があって
メソッド内の自動変数と混同してるなんてオチでは。
211デフォルトの名無しさん:2005/05/05(木) 12:04:52
>>209
そんなのどっちも同じなのだが
仕様どおりに書くとfalseを優先的に書いたほうが後から見ても見やすいとかある

Javaに限った話じゃないので違うスレでどうぞ
212デフォルトの名無しさん:2005/05/05(木) 12:07:18
>>190
最低限のコードを書いてダメならそのコードをあげてみそ
原因は今アップしてるところだけじゃわからん

初心者に多いのだが最低限の部分だけのコードにしないで
質問してくるのなんとかならんのか

デバッグの仕方が分からないから初心者なのか
213デフォルトの名無しさん:2005/05/05(木) 12:29:10
>>209
社内(ないしゼミ内?)でコーディングの規約があって
条件式は「 == false 」とか「 == true 」と書くように決まって
いるんじゃないの?

言語に不慣れな人でも実践配備できるように、記述の自由度を
下げるのはよくあるはなし。三項演算子が使用禁止だとかね。
214デフォルトの名無しさん:2005/05/05(木) 13:34:48
>>213
if(!hoge.hogebeelean())
と書くか
if(hoge.hogebeelean()==false)
と書くかの質問では無い気が。
215213:2005/05/05(木) 13:54:31
>>214
あらま、それじゃ

if( ... )
{
A
} else {
B
}
の場合にコード量を A < B とした方がネスティングの
関係が読みやすいからでわ? A がものすごーく間延びすると
} else がどの if に掛かっているのか「?」となるから
論理を反転しておく。

どっちにしろスレ違いみたいなので。これで止めw
216デフォルトの名無しさん:2005/05/05(木) 14:17:58
>>201
というか、本当にnullだったらぬるぽが出ますよ。
217デフォルトの名無しさん:2005/05/05(木) 14:25:12
>216
ガッ
218デフォルトの名無しさん:2005/05/05(木) 16:07:14
==trueとかキモすぎ。ぬるぽ。
219デフォルトの名無しさん:2005/05/05(木) 16:09:44
現在Jsp、ServletでWebアプリを作っています。
dbconnectクラスでコネクションを生成してConnectionを帰り値として返しています。
Servletでは

Connection con = null;
dbconnect dc = new dbconnect();
con = dc.dbconnect();

Statement st = null;
st = con.createStatement();


などとし、Connectionは使いまわし処理が終了したり、画面を遷移したら
closeしています。
Servlet1からServlet5までありますが、全部のServletからDBに接続する際に
dbconnectクラスを共通して上のように呼んでいます。

現在稼動中で画面はサクサク動くのですが1日のうちで何回か

dbconnectクラスで
java.sql.SQLException: Cannot connect to MySQL server on localhost:3306. Is there a MySQL server running on the machine/port you are trying to connect to? (java.net.SocketException) Cannot connect to MySQL server on localhost:3306. Is there a MySQL 〜
とでてそのあと処理のいたるところで
java.lang.NullPointerException:
とでています。

dbconnectクラスでConnectionを生成できていないのが原因だと思いますが、上のように共通クラス化して使いまわしている事が原因なのでしょうか?
220219:2005/05/05(木) 16:10:15
ご教授ください
221デフォルトの名無しさん:2005/05/05(木) 16:18:22
public static void main(String[] args) {
checkHeaderPart();
}

Cannot make a static reference to the non-static method checkHeaderPart() from the type
TestDecoderEncoder

private void checkHeaderPart() {
byte[] str = createHead();
}
↑何でこのメッセージでるんでしたか?
222デフォルトの名無しさん:2005/05/05(木) 16:35:42
>>221
何でって Cannot make a static reference to the non-static method checkHeaderPart() from the type TestDecoderEncoder だからだろ?
223デフォルトの名無しさん:2005/05/05(木) 16:57:04
public static void main(String[] args) {
このクラス hoge=new このクラス();
hogr.checkHeaderPart();
}
ってやらないから
224219:2005/05/05(木) 17:00:41
どうでしょうか?
225デフォルトの名無しさん:2005/05/05(木) 17:11:57
>>219
サーバに接続失敗しているだけだと思う

java.sql.SQLExceptionのエラーコードを取得してMySQLのエラーコード表と比較してください

>dbconnectクラスでConnectionを生成できていないのが原因だと思いますが、上のように共通クラス化して使いまわしている事が原因なのでしょうか?
コレが原因かどうかは見せてもらわないとなんとも言えんが

226219:2005/05/05(木) 17:17:16
>>225
返信ありがとうございます
サーバー側が原因と考えられますか?

227219:2005/05/05(木) 17:21:52
共通クラス化して使いまわすときはConnectionをシンクロナイズドしないと
いけないとかは、ないですよね、、、
228デフォルトの名無しさん:2005/05/05(木) 17:23:57
>>219
いまのだされている手駒ではそれが一番有力だと思う

ちなみに
>共通クラス化して使いまわしている事が原因
になるのは、そのクラスの作り方が間違っている以外は原因にはならない
J2EEならDataSourceからの取得が一般だけどそれやってる?
229219:2005/05/05(木) 17:28:55
こんな感じです

public class dbConnect{
public Connection dbConnect(){
Connection db_ret = null;
try{
Class.forName("com.mysql.jdbc.Driver");
db_ret =DriverManager.getConnection("jdbc:mysql://localhost:3306/mydb","id","pass");
}catch(Exception ex){
String error_msg = ex +" "+ ex.getMessage();
System.out.println("in connection create "+ex);
try{
エラー書き出し処理〜
}catch(Exception ex2){}
}
return db_ret;
}
}

サーバー環境はJAVA2 JDK1.3.1、MySQL3.23.49を使ってます。
230デフォルトの名無しさん:2005/05/05(木) 17:54:38
スレッドってコンストラクタで生成しちゃいけないの!?
↓呼ぶとStackOverflowErrorになるんだけど・・・
public class HelloWorldThread2 extends Thread {

 private static int b;
  // コンストラクタ
  public HelloWorldThread2() {
   super();
   HelloWorldThread2 thread1 = new HelloWorldThread2();
   thread1.start();
System.out.println("コンストラクタ");
  }

 public static void main(String[] args) {
  HelloWorldThread2 me = new HelloWorldThread2();
 }

 public void run() {
b=b+1;

System.out.println("runが呼ばれました。b=" + 1);
}
}
231219:2005/05/05(木) 17:58:07
どうでしょうか?
232デフォルトの名無しさん:2005/05/05(木) 18:00:56
>>230
呼ぶのは構わないがそのコードだとコンストラクタが
再帰的に呼ばれることになるのはわかってるか?

>>219
ここはどこかのサポート窓口じゃないんだから
そんなにすぐ回答がなかったからってウダウダ言うな。
233デフォルトの名無しさん:2005/05/05(木) 18:01:03
>>219
その方法は普段自分は使わないが
(たぶん他の開発者でもいまは、そういうことやるのは少ないと思う)
毎回コネクション作るやり方だよね
ただ、プログラム的にはそれほど問題ないと思う
パフォーマンスの面から言うと、DataSource使った方がいいというぐらい

ひとつ気になるのがMySQLの最大接続数オーバーしたときにどういうエラーになるのかということ
その方法だと複数の人が接続して、MAX越えた時に「処理待ち」になるのかそれとも「即エラー」になるのか


234219:2005/05/05(木) 18:14:06
>>233
DataSource勉強します
質問終了します
ありがとうございました
235デフォルトの名無しさん:2005/05/05(木) 18:32:20
230です
>232
色々サンプル作って試してみてるんだけど、
さっき例のPG実行したら、
コンストラクタのログが出続けたのはその訳か・・・
スレッドの生成と実行ってどのタイミングで
やるのがベストなんでしょう・・・?
PGが起動されたら、スレッドを動かしたいんだけど
コンストラクタでやると大変なことに。。。
236デフォルトの名無しさん:2005/05/05(木) 18:52:27
drawImage(java.awt.Applet.getDocumentBace(),0,0,img);
というふうにしてjpgをJFrameに表示
しようとしたのですが
どうやらNullpoが発生しているらしいのです
もしかしてgetDocumentBace()ってアプレットにしか使えないんですか?
237デフォルトの名無しさん:2005/05/05(木) 19:12:27
>>235
230のコードだとコンストラクタの中で
「別の」スレッドオブジェクトを作ってるのに気づいてるか?
単にコンストラクタの中でstartを呼べばいい。
238デフォルトの名無しさん:2005/05/05(木) 19:18:27
インタフェースクラスのメソッドって実装してもいいの?
239デフォルトの名無しさん:2005/05/05(木) 19:31:13
>>236
アプレットって「何か」に張り付いているから
アプレット(-let)なわけで、張り付く元がなければ
機能しましぇん。
240デフォルトの名無しさん:2005/05/05(木) 19:37:16
>>219
MySQLはコネクションプールなしで他のDBのコネクションプールありと同じくらいの
接続コストだし(もちろん環境によるが)そこが問題ではないと思われ

つーか、Mysqlでコネクションプールすすめると、しばらく接続がないときに
自動切断がデフォ動作なのでその対策に追われたりとか

あとそれだと接続文字列が日本語まともにとおらんだろ
241デフォルトの名無しさん:2005/05/05(木) 21:43:29
すいません!参照についてよろしくお願いします。

下記のtest(i)のメソッドを呼び、3行目でnew Integerと新しい参照先をjに与えても
出力が0のままなのはどうしてでしょうか?

public class Test {
public static Integer test(Integer j) {
j = new Integer(5);
return j;
}
public static void main(String args[]){
Integer i = new Integer (0);
test (i);
System.out.println (i.intValue());
}
}
242デフォルトの名無しさん:2005/05/05(木) 21:46:25
iの参照先が変わっているわけではないから。
243190:2005/05/05(木) 21:47:48
>>204 210 213 216
○1.5日いじっていて下記2つがわかりました。
実はStringBufferのappenndは成功していました。
ただ、デバッガに内容が表示されていないという。。だから内容が
nullのままだと思いこんでいたようです。
(ちなみにeclipseとボーダフォンエミュレータの組み合わせ)

もうひとつが(実は元々これをやりたくて)
StringBuffer buff[] = new StringBuffer[5];
のように配列宣言した場合、buff[0].append('abc')とかやると
ボーダフォンのエミュレータが落ちるというものです。

ネットでもろもろ探したのですが、StringBufferを配列で使う方がいないようで、
そもそもの考え方に間違いがあるのではと。

今後、壁が次々に出るかと思いますが、よろしくお願いいたします。
244デフォルトの名無しさん:2005/05/05(木) 21:57:08
>StringBuffer buff[] = new StringBuffer[5];
>のように配列宣言した場合、buff[0].append('abc')とかやると
>ボーダフォンのエミュレータが落ちるというものです

それって普通にJ2SEでも落ちると思う
StringBuffer buff[] = new StringBuffer[5];
ってやったあと
buff[0]はNULLだろう

だから 下の手順が正解です 初心者がはまりやすいポイントです 
StringBuffer buff[] = new StringBuffer[5];
buff[0]=new StringBuffer();←ココ
buff[0].append('abc')
245デフォルトの名無しさん:2005/05/05(木) 21:58:35
Javaには種類があるんですか?私はJavaでアプリが作りたいんですが、プログム経験が全然なくて、『ブログラマ養成入門講座Java@改訂版』って本買ったんですけど、DOS窓(?)内でのプログム実行しか書いてないんですが、入門講座だからなんですか?それとも種類があるんですか?
246デフォルトの名無しさん:2005/05/05(木) 22:00:01
種類と言うかライブラリのセットが違うのがあるけど
気にしなくていい、言語は変わらない

>入門講座だからなんですか
多分そうだろう
GUIやりたければ また他の本買うしかない
247デフォルトの名無しさん:2005/05/05(木) 22:02:06
>>242
参照先が変わっていないっていうのは
Integer j は参照先を渡してることではないということでしょうか?
プリミティブじゃないので参照渡しだと思ったんですが
248デフォルトの名無しさん:2005/05/05(木) 22:02:43
>>246さんありがとうございます(*′艸`*)じゃぁこのままコツコツ勉強していきますv(^-^)v
249デフォルトの名無しさん:2005/05/05(木) 22:04:06
>>242
元の回答者じゃないけど(元の回答者も認識が甘い)
finalクラスは知ってるか?
250デフォルトの名無しさん:2005/05/05(木) 22:08:16
>>249
値やクラスなどで、定数化や継承させないよう固定するってイメージを持ってます。
251デフォルトの名無しさん:2005/05/05(木) 22:08:54
>>247
元の回答者じゃないけど(元の回答者も認識が甘い)
finalクラスは知ってるか?
252デフォルトの名無しさん:2005/05/05(木) 22:12:36
>>241
このコード何がやりたいんでしょ。

iが指し示したオブジェクトは、test()内で
jが指し示しているわけだが、
jはべつのオブジェクトを指してしまうから。

ついでにtest()の戻り値のIntegerは5でわ?
253デフォルトの名無しさん:2005/05/05(木) 22:15:46
>>247
違う。
http://www.wikiroom.com/java/index.php?FAQ#content_1_5

i = test(i);

ってやんないとダメ。
254デフォルトの名無しさん:2005/05/05(木) 22:25:29
みなさんにお聞きしたいんですが、プログラミング(?)を何年(いくつ)ぐらいから始めたんですか?私は今18で、やり初めて1ヶ月もたってないんですが、遅いですか?(・_・;)
255190:2005/05/05(木) 22:26:01
>>244
うおーマジですか!?
ありがとうございます。ちょっとやってみます。

ちなみに念のため、、StringBuffer buff[] = new StringBuffer[5]; で
それにappendすると落ちのはなぜなのでしょうか?
256デフォルトの名無しさん:2005/05/05(木) 22:26:40
>>254
いいもん作ったもん勝ち。そんなもん気にせず突き進め。
257デフォルトの名無しさん:2005/05/05(木) 22:27:08
>>255
stringbufferのインスタンスを作ってないのでぬるぽ
258デフォルトの名無しさん:2005/05/05(木) 22:28:04
おれは、正直27,8で独学からはじめたけど
実務で
Java、Perl、PHP、C言語こなしている
大学でC言語とBASIC、フォートランやってたから多少は基礎があったから楽だったのかもしれないけど
259241:2005/05/05(木) 22:28:32
今、なんとなく分かりました。

testに入った瞬間
mainのi → Integer( 0 ) ← testのj

j = new Integer(val)した瞬間
mainのi → Integer( 0 ) testのj → new Integer ((int)val)

と参照先が変わるってこういうことだったのですね。お騒がせしました。
260デフォルトの名無しさん:2005/05/05(木) 22:28:49
>>255

だからかいてるじゃん244に・・・
261デフォルトの名無しさん:2005/05/05(木) 22:29:43
244じゃないけど・・・

StringBuffer buff[] = new StringBuffer[5];
この時点での変数buffの中身は↓
buff[0] NULL
buff[1] NULL
buff[2] NULL
buff[3] NULL
buff[4] NULL
したがって、この時点でappendメソッドをたたいても
オブジェクトがNULLのため、NullPointerException(ぬるぽ)になる。
262デフォルトの名無しさん:2005/05/05(木) 22:31:56
> buff[0] NULL
NULLって何だ?
263デフォルトの名無しさん:2005/05/05(木) 22:31:58
ちなみに初期化時に
for(int i=0;i < buff.length;i++) {
buff[i]=new StringBuffer();
}
とやればちょっとシアワス
264デフォルトの名無しさん:2005/05/05(木) 22:32:17
javaSDKをインストールして環境変数を設定しようとしたら
すでにPATHのところにボーランドのコンパイラが設定してあったんですが
この場合どうすればいいですか?
265デフォルトの名無しさん:2005/05/05(木) 22:33:47
>>264
後ろに追記する。デリミタはOSで異なる。
266デフォルトの名無しさん:2005/05/05(木) 22:33:49
そういう場合は
  ;←をつけてつなげる
C:\java\j2sdkXXX\binって書けばよい
267デフォルトの名無しさん:2005/05/05(木) 22:33:55
>>256さんありがとうございます(T^T)作ったモン勝ちですよね!ありがとうございます(T^T)
>>258さんありがとうございます独学って本読んでですか?
268デフォルトの名無しさん:2005/05/05(木) 22:43:52
>>265
>>266
ありがとうございました
269190:2005/05/05(木) 22:49:16
>257 >>260 >>261 >>263
ありがとうございました。
てっきり、StringBuffer buff = new StringBuffer[5]
とかで、初期化が終わっていると思いこんでいました。

勉強になりました。
270デフォルトの名無しさん:2005/05/05(木) 22:50:53
>>249
> >>242
> 元の回答者じゃないけど(元の回答者も認識が甘い)
> finalクラスは知ってるか?

で、final クラスがどうしたって?
271デフォルトの名無しさん:2005/05/05(木) 23:21:04
>>270
気にするな。スルーで
272デフォルトの名無しさん:2005/05/05(木) 23:29:02
>>271
おまいか!
273デフォルトの名無しさん:2005/05/05(木) 23:42:24
いや、、、、オレじゃないっすよ〜
274デフォルトの名無しさん:2005/05/06(金) 04:37:08
>>218
時代は
true==
ですね!
275デフォルトの名無しさん:2005/05/06(金) 06:52:33
>>274
それより、beeleanが……。
276デフォルトの名無しさん:2005/05/06(金) 06:55:06
ああ、予約語とかぶらないようにか。。。
277デフォルトの名無しさん:2005/05/06(金) 07:42:11
 
278デフォルトの名無しさん:2005/05/06(金) 11:23:42
「文字列を変数名として扱う方法」はありますか?例えば

class Mona {
 String kita () { return "( ´∀`)キター"; }
}
class Giko {
 String kita () { return "( ゚Д゚)キター"; }
}
// この他にこういうのが20個くらい

public class Test {
 public static void main(String[] args){
  Mona mona = new Mona();
  Giko giko = new Giko();
  // この下にオブジェクトが20個くらい

  String kyara = args[0];
 }
}

っていうカンジのコードで、kyaraという変数に "mona"とか"giko"とか言う文字列をもらうと
"( ´∀`)キター"とか"( ゚Д゚)キター"とかを出力したいわけなんだけれども
20個もあるので if〜elseでいちいち書くのはしんどいので、何かいい方法はありませんか?
Perlとかだと$$kyaraとかで実現するイメージです。よろしくお願いします
279デフォルトの名無しさん:2005/05/06(金) 11:39:09
多態とデフォルトコンストラクタによるインスタンス生成を勉強
280デフォルトの名無しさん:2005/05/06(金) 12:04:04
>>278
ハッシュテーブル使えばいいだけのような気が。
281デフォルトの名無しさん:2005/05/06(金) 12:13:29
>>249
イミュータブルだろ。あほか
282デフォルトの名無しさん:2005/05/06(金) 12:16:15
>>278
1.5 で追加された enum 使えば?
283デフォルトの名無しさん:2005/05/06(金) 12:36:31
文字列をもらって、それに応じてインスタンス生成できればいいんじゃないの? monaって文字列
もらったMonaをインスタンス化するとか。

それだったらリフレクションでググればできる。
284デフォルトの名無しさん:2005/05/06(金) 13:13:34
なぜインスタンス生成程度でリフレクションがでてくるのだ
285デフォルトの名無しさん:2005/05/06(金) 13:40:30
>>284
元質問の「文字列を変数名として扱う方法」に忠実に解答するならリフレクションじゃね?
もちろん、クラスつくる必要が無くて、のちのち「こういうの20個くらい」が
追加になったり削除になったり変更になったりしないのならHashTableとかでいいだろうが。
286デフォルトの名無しさん:2005/05/06(金) 13:46:22
> 「文字列を変数名として扱う方法」に忠実に解答するなら
変数名として扱うって事を忠実に行うならバイトコードを弄るとかせんといかんのでは?
287デフォルトの名無しさん:2005/05/06(金) 13:50:00
メソッドは同一だし多態のほうがいいだろ
288デフォルトの名無しさん:2005/05/06(金) 14:28:15
jdk1.4→1.3に変えたいんだけど、
Eclipseにどうやって認識させたらいいの?
289デフォルトの名無しさん:2005/05/06(金) 15:06:03
>>288
Eclipse の話は Eclipseのスレで聞いたほうがよさげ。

> jdk1.4→1.3に変えたい
起動VMを変えたいなら-vmオプションで指定すれば…… って思ったけど、
最近の Eclipse は jdk1.3 じゃ動かんなと思いなおした。
290デフォルトの名無しさん:2005/05/06(金) 15:58:14
>>288
Eclipseが載って動作するVMを変えたいのか、
出力するコードの互換レベルを変えたいのか、はっきりして。
291デフォルトの名無しさん:2005/05/06(金) 16:07:46
>>289
ありがとうございます。
設定の”インストール済みのJRE”とコンパイラーいじったら
かわったみたい。
292デフォルトの名無しさん:2005/05/06(金) 17:11:03
ホームページに組み込まれてるJAVAのソースを見たいのですが
なんのソフトを使ったら見れますか?

http://tennisclub.ne.jp/motion/motion.asp?pl=1
のサイトのJAVAアプレットの画像を取得したいのですが
画像の部分のアドレスを知りたいのです。

Deamwaver3でソースを見たのですが、ソースには
画像の直接のアドレスは表示されませんでした。
よろしくお願い致します。
293デフォルトの名無しさん:2005/05/06(金) 17:16:13
>>292
JavaとJavaScriptは異なるものなのでJavaアプレットのソースはHTMLを見ても見られません。
やるとしたらclassファイルのURLを元にバイトコードをダウンロードして自分で逆コンパイルしてください。
294292:2005/05/06(金) 18:09:33
>>293 ありがとうございます。
Googleで、キーワードを手がかりに調べたのですが
画像URLを見ることが出来ませんでした。

>>293の説明で、概要はわかりましたが、実際するとなると
私には難しいです。 もう少しヒントをください。

ttp://tennisclub.ne.jp/motion/motion.asp?pl=1
の画像URLを知りたいのですが、簡単なソフトがあれば
ソフト名を教えてください。 

よろしくお願い致します。
295デフォルトの名無しさん:2005/05/06(金) 18:29:09
>>294
またオマイかよ
296デフォルトの名無しさん:2005/05/06(金) 18:31:28
29767:2005/05/06(金) 18:32:48
>>292 またかよ.
>※動画のライセンス上の都合によりまして、現在、通常再生とスロー再生機能
>は利用できません。コマ送り再生のみでのご提供となります。
って書いてあるんだから素直に従えばいいのに.
>>66以来これで3回目の質問になるけど,クラックのやりかたはこの板で聞くことじゃないよ.
298デフォルトの名無しさん:2005/05/06(金) 18:40:53
これが黄金週間か!
299デフォルトの名無しさん:2005/05/06(金) 18:42:46
クラックしたいのに技術レベルがまったく追いついてないのにもわらた
300デフォルトの名無しさん:2005/05/06(金) 19:11:16
ゆとり教育の弊害がこんなところにも。
301デフォルトの名無しさん:2005/05/06(金) 22:19:45
Java初心者向けのお勧め本を教えてください
302デフォルトの名無しさん:2005/05/06(金) 22:21:47
Core Java2かなあ。
303デフォルトの名無しさん:2005/05/06(金) 22:35:39
ゆとり教育の罪は大人にあるわけだが
304デフォルトの名無しさん:2005/05/06(金) 22:49:48
>>303
ゆとり教育について熱く語るなら他所の板で。
305デフォルトの名無しさん:2005/05/06(金) 23:01:49
ゆとり教育でない地域と比べて成績が10%伸びてるわけだがマスコミに騙されすぎてないか?
また制度変えちゃったから今さら成果でてましたとは言いにくいだろうけどな
ちなみに徹底的なマンツーマン補習が効いたらしいよ
306デフォルトの名無しさん:2005/05/06(金) 23:34:53
スレ違いだ。移動しろ。

といいつつ、>>305それは、マンツーマン補習の成果であってゆとり教育の所為ではあるまい。
>>303ゆとり教育が悪ではないと思うよ。最近の子供達が持ってる教科書と先生たちの偏見こそが問題だと。
307デフォルトの名無しさん:2005/05/06(金) 23:35:57
ゆとり教育がどうこうよりも、クラスの人数を15人くらいにして、教師増やした方がよほど
効果があるだろう。マンツーマンなら(教師さえよければ)なおよし。

というわけで、Java初心者にもマンツーマン教育ということで、良い人たちよろしく。
ちなみに私は悪い人なので...
308デフォルトの名無しさん:2005/05/06(金) 23:40:23
サーブレットでPOSTとGETってのが出てくると思いますが
いまいち違いが分かりません

たとえばPOSTにすれば具体的に何ができて
GETにすれば何が出来るのでしょうか?
309デフォルトの名無しさん:2005/05/06(金) 23:50:14
HTMLからやり直せ
310デフォルトの名無しさん:2005/05/06(金) 23:52:29
>>309 HTMLじゃなくてHTTPだろ。
311デフォルトの名無しさん:2005/05/07(土) 02:38:50
Javaでゲームを作ってるのですが、どうしてもわからない事が
あったので質問します。スレ違いだったらすいません・・・

AとBのキャラを引き付けあうようにしたいのですが、

def_x = Ax - Bx;
def_y = Ay - By;
kakudo = Math.atan2(def_y, def_x);
vx = Math.cos(kakudo);
vy = Math.sin(kakudo);
Ax -= vx; Ay -= vy;
Bx += vx; By += vy;

これだと

A

    B

の位置関係でBのみがAに向かい、位置が逆だとAのみがBに向かって
しまいます。どうすればお互いに引き付けあうようにできるでしょうか。
312デフォルトの名無しさん:2005/05/07(土) 02:56:18
>>311
式は間違っていないので、実装がおかしい。コードを詳しく。

ちなみに、

def_x = Ax - Bx;
def_y = Ay - By;
kyori = Math.sqrt(def_x * def_x + def_y * def_y);
vx = def_x / kyori;
vy = def_y / kyori;

とすれば、三角関数は要らない。
313デフォルトの名無しさん:2005/05/07(土) 03:01:23
ちょっぴりエッチなレスをするとしたら、2つを結婚させて(ry
314デフォルトの名無しさん:2005/05/07(土) 03:24:40
>>312
レスありがとうございます。

・・・そうですか、式自体がおかしいわけではないんですか。
コードのどの辺を詳しく書けばいいのかちょっとわからないなので、
とりあえず型宣言のみ書きます(全然関係なかったらすいません)。

public int def_x, def_y;
public double kakudo, vx, vy;

それと異常は、AとBがかなり近い時のみ発生し、向かっていくキャラは
X軸で言うと右側のキャラのみになり(つまり左側に来たキャラが右に
行ってくれない)、Y軸で言うと下側のキャラのみになります。
315デフォルトの名無しさん:2005/05/07(土) 03:27:02
それと三角関数に関しては、その方が処理が軽くなるかなと思って
そうしたのですが、普通に三平方の定理を使っても全然問題ありませんか?
316デフォルトの名無しさん:2005/05/07(土) 03:30:16
>>314
値がどう変化しているか観察する。
317デフォルトの名無しさん:2005/05/07(土) 03:33:30
>>315
処理時間も比べながらやるとなお良し。
318デフォルトの名無しさん:2005/05/07(土) 03:37:59
>>315
普通は三角関数のほうが処理が重い。
319デフォルトの名無しさん:2005/05/07(土) 03:45:51
>>316
こんな感じの式でvxの値を観察してみたのですが、

def_x = Ax - Bx;
def_y = Ay - By;
kakudo = Math.atan2(def_y, def_x);
vx = 2 * Math.cos(kakudo);
vy = 2 * Math.sin(kakudo);
Ax -= vx; Ay -= vy;
Bx += vx; By += vy

vxの値が1.0を切ると片方の引き付けがなくなるようです。

>>317
処理時間は比べ方がわからなかったので比較しておりません。すみません。


>>318
ありがとうございます。三平方の定理に書き直します。
320デフォルトの名無しさん:2005/05/07(土) 03:49:56
>>319
何で Ax と Bx は観察しない?
321デフォルトの名無しさん:2005/05/07(土) 03:55:46
>>319
> vxの値が1.0を切ると片方の引き付けがなくなるようです。
そりゃ、vx が1.0未満なら (int)vx は 0 になるからねぇ。
っても、vx が1.0未満なら両方ともx方向だけ引き合わないだけのような気もする。
Ax -= vx; Ay -= vx;
Bx += vy; By += vy;
みたいに書き間違って無いか?

あと、vx が1.0未満の場合でも引き合いたいなら、
座標を常に double で持っておいて、int が必要な時だけキャストすれば?
322デフォルトの名無しさん:2005/05/07(土) 04:13:02
>>321
>vx が1.0未満なら両方ともx方向だけ引き合わないだけのような気もする。
そうなんです。それが謎で原因の検討がつかないんです。

>Ax -= vx; Ay -= vx;
>Bx += vy; By += vy;
>みたいに書き間違って無いか?
確認してみましたが、書き間違えてはいませんでした。

>vx が1.0未満の場合でも引き合いたいなら、
>座標を常に double で持っておいて、int が必要な時だけキャストすれば?
これをしたら常に引き合うようになりました。
2時間近くに渡ってご指導いただき、ありがとうございました。
323デフォルトの名無しさん:2005/05/07(土) 09:26:30
JAVAをバックグラウンドで動かして定期的に
画面イメージを取得して保存するにはどうしたらいいんでしょう?
自身のイメージ取得なら分かるのですが
printscreenを押した時のように自身を含まず他のイメージを取得したいです
よろしくお願いします
324デフォルトの名無しさん:2005/05/07(土) 11:08:59
>>323
キンタマ・ウィルスみたいな動作をさせたいのけ?
純粋なJavaではそんなことできないよ。

MSのニセJava(すっかり影が薄くなったけどVisual J)なら
できるかも。
325デフォルトの名無しさん:2005/05/07(土) 11:37:09
>>324
うそつくなよ
PureJavaでできるぞ

Robotクラスをのぞいてみるといい
326324:2005/05/07(土) 11:43:45
>>325
スマソ。そんなものあったのね。

ってわけで

>>323
http://java.sun.com/j2se/1.4.2/docs/api/java/awt/Robot.html
のcreateScreenCaptureを使えば出来そうにみえまつ。
327デフォルトの名無しさん:2005/05/07(土) 12:12:40
>>325
java.awt.Robotって1.3以降だっけ?
328デフォルトの名無しさん:2005/05/07(土) 12:20:44
>>327
そうだね。

これを使えばこのスレで3回同じ質問を繰り返した人の要求するアプリが作れるね。
でも彼はアプリを作るよりテニスの練習をした方がいい希ガス。
329デフォルトの名無しさん:2005/05/07(土) 12:22:42
1.3なんてもう5年も前のお話だし
Robotの話題は何回か出てきたとおもわれ
330デフォルトの名無しさん:2005/05/07(土) 12:26:37
>>328
( ´_ゝ`)プッ
331323:2005/05/07(土) 12:47:04
動かしてませんが、まさしくこの機能のようです
早速試してきます
ありがとうございました
332デフォルトの名無しさん:2005/05/07(土) 12:50:24
Webアプリの検索結果画面みたいに結果をテーブルタグで表示して前10件、次10件
見たいな感じにする場合ResultSetから表示する分だけBeanに
詰め込むというのが定石なんでしょうか?
SessionにResultSetを入れて操作する方が毎回SQL実行するよりも
早いと思うんですけど。

自分が思ったことはResultSetの開きっぱなしをどうするかといったところ
ですけど、必要なくなったとき(詳細画面等に移動したときに)
Sessionの対象ResultSetをCloseすればよいし、そのままアプリ終了されたときでも、
SessionのタイムアウトイベントでCloseすればいいのでResultSetの開きっぱなし
というのは回避されると思うんですけど、これって問題あります?。

あと、ほかにSessionに入れとくことでまずいことってあるんでしょうか?

イントラを想定しているので利用人数は20人くらいという前提です。
333デフォルトの名無しさん:2005/05/07(土) 12:58:26
お前は向いていないな
334デフォルトの名無しさん:2005/05/07(土) 13:06:04
orz
335デフォルトの名無しさん:2005/05/07(土) 13:08:12
>>332
やめとけ。
タイムアウトするまでのSesssionが存続する期間と、
ResultSetを開いておきたい期間が違いすぎる。
「検索→ブラウザ閉じる」 を、何度も何度も繰り返すとどうなる?
あと同一セッションで異なるリクエストのときのConnectionはどう管理するの?
336デフォルトの名無しさん:2005/05/07(土) 16:35:12
ResultSetを持ち続けるなんて事はしない。
全部いっぺんに取得する場合でも、毎回取得する場合でも
337デフォルトの名無しさん:2005/05/07(土) 22:59:24
>>328
ワロス
338デフォルトの名無しさん:2005/05/08(日) 01:09:34
質問です。アプレット実行時エラーで
java.lang.InternalError: obsolete interface used
と出るのですが、エラーの意味がよくわかりません。
このエラー、アプレットを貼っ付けてるhtmlを開いている状態で
更新ボタン押しまくっているとたまーに出るので、
ソースの問題じゃないならいいなと思っているのですが・・・。
339デフォルトの名無しさん:2005/05/08(日) 01:26:32
>>338
素直に翻訳すべし。
340デフォルトの名無しさん:2005/05/08(日) 01:28:04
>>338
java.lang.Errorのサブクラスだからほっとけば?
更新ボタンガチャガチャ動かしてでるエラーならしょうがなさそう
341デフォルトの名無しさん:2005/05/08(日) 02:03:57
>>332
>>335の書いてるように、スコープは最小限にするのが定石。
リソースを無駄に食いつぶすような可能性は極力排除したほうが良い。
それくらいわかるっしょ?
342デフォルトの名無しさん:2005/05/08(日) 02:07:38
>>341
>リソースを無駄に食いつぶすような
がスコープ局地化の意味だと思っているなら早く寝て起きて勉強し直せ。
343338:2005/05/08(日) 02:24:35
>>339-340
返答ありがとうございます。
338を書く前にエラー文を翻訳に突っ込んでみたら
「使用される時代遅れのインタフェース」なんて出たので、
今はサポートされていないような旧世代のメソッドなり記法なりを
使っちゃってるのかと少し思いましたが、違うっぽいですね。
ソースの問題でないようなので放置します。
344デフォルトの名無しさん:2005/05/08(日) 03:22:27
メソッドをオーバーライドするときに、なぜアクセス権を狭めてはいけないのでしょうか?
言語仕様的に何か不都合があるんでしょうか?
345デフォルトの名無しさん:2005/05/08(日) 03:27:06
多態が動かなくなる
346344:2005/05/08(日) 03:35:55
>>345
素早い反応、ありがとう。
もうちょっと具体的に、動かなくなるサンプルコードとか
示してもらえるとありがたいです。
347デフォルトの名無しさん:2005/05/08(日) 03:42:55
InterfaceA a = new ClassA();
348デフォルトの名無しさん:2005/05/08(日) 04:04:53
>>346
スーパークラスとサブクラスの関係を考えてみなよ。
サブクラスはスーパークラスの全仕様を受け継いで、改変・強化したものだよな。

class Super {
public void hoge() { System.out.println("Super");}
}
class Sub extends Super {
public void hoge() { System.out.println("Sub"); } //OVERRIDE
}

上記のクラス構成で、下記プログラム
Super s = new Super();
s.hoge();
を考えて見てくれ。Super sの実体はclass Superでもclass Subでもちゃんと動かないといけない。
上記だとnew Super()になっているが、ここをnew Sub();としても、その下の「s.hoge();」は変更なしに
動かないといけない。
サブクラスはスーパークラスと置き換え可能でなければいけないということ。

で、もし上記クラス構成で、Subのhoge()がprivateだったら、new Sub();としたあとでs.hoge()をしても、
privateだからアクセスできないだろう。ということはサブクラスでスーパークラスを置き換え出来ないと
いうことだ。これがアクセス権をスーパークラスよりも狭められない理由。狭めると、スーパークラスで
許可されていた操作が、許可されなくなってしまうから。
もしここで
349デフォルトの名無しさん:2005/05/08(日) 04:18:36
もしここで、なに?
350デフォルトの名無しさん:2005/05/08(日) 04:20:54
「かしこ」と書きたかったのかもしれん
351デフォルトの名無しさん:2005/05/08(日) 09:31:47
class Super {
public void hoge() { System.out.println("Super");}
}
class Sub extends Super {
public void hoge() { System.out.println("Sub"); } //OVERRIDE
}

class MainClass {

private int hogecall(Super cls){

cls.hoge();

return 0;
}

public static void main(String[] args){
Super a = new Super();
Sub b = new Sub();

hogecall(a);
hogecall(b);
}

ポリモフィズムの大前提:
 hogecall()にはSuperおよびそのすべてのサブクラスを渡すことが出来る。
 hogecall()はSuperおよびそのすべてのサブクラスを処理できる。

Subのhoge()をprivateにしてしまうとhogecall(b)は処理できない。
すなわち、ポリモフィズムの大前提が崩れてしまう。

352デフォルトの名無しさん:2005/05/08(日) 11:31:12
>>342
こう書いた方が良いと思ったんだがな。
なんでもかんでもグローバルにしてバグ発生の温床とか、
永遠にVM上に残るインスタンス作るよりかな。
それはともかく、スコープの局地化って表現自体を始めて聞いた。
なので、なぜスコープを意識するのか明確に説明して頂ければと思います。
メンテのしやすさとか、そういうことなわけないですよね?
353344:2005/05/08(日) 12:06:25
>>348>>351
なるほど。しかし、
----------
package foo;
public class Super {
protected void hoge() { System.out.println("Super"); } // (1)
}

class MainClass {
private static void hogecall(Super cls) { cls.hoge(); } // (2)
public static void main(String[] args) {
hogecall(new Super());
hogecall(new bar.Sub());
}
}
----------
package bar;
public class Sub extends foo.Super {
protected void hoge() { System.out.println("Sub"); }
}
----------
このコードはコンパイルできるし、
Super
Sub
と表示されますよね?(2)の位置からはSubのhoge()はアクセスできないはずなのに。
なのに、(1)をpublicと書き換えただけでコンパイルできなくなる理由がよくわからないのです。
354344:2005/05/08(日) 12:17:29
まとめると、オーバーライドするときにアクセス権を狭めてはいけない理由が
「多態性を用いたメソッド呼び出しの際に、アクセスできないメソッドを
呼び出すことがないようにするため」だとしたら、
それは不完全である上にoverkillではないか、と。
355デフォルトの名無しさん:2005/05/08(日) 12:22:05
>>353
>と表示されますよね?

いいえ?
356デフォルトの名無しさん:2005/05/08(日) 13:07:26
javaのインストールに30分くらいかかってますが、
まだ処理に数分かかる場合がありますって出て
終わらないのだけどいいんですか?
357デフォルトの名無しさん:2005/05/08(日) 13:32:19
>>353
> (2)の位置からはSubのhoge()はアクセスできないはずなのに。

いいえ。
358デフォルトの名無しさん:2005/05/08(日) 13:33:16
あらあらうふふ♪
359338:2005/05/08(日) 13:43:09
3つのAppletを表示させるHTMLファイルを開こうとすると
1回目は普通に表示されるのですが、そのウィンドウを閉じて
もう1度同じように開こうとするとIEがフリーズしてしまいます
それ以降何度やってもフリーズするのですが、HTMLを書き換えて
保存しなおすと(保存前と後の中身が変わっていなくても)
また1回だけ表示されるようになります
Appletを2つに減らすとこの現象は起きません
IEと共にJavaコンソールもフリーズして実行時エラーすら見れないので
お手上げ状態です
どうすれば常に正常に表示されるようになるでしょうか?
360デフォルトの名無しさん:2005/05/08(日) 13:44:33
>>359
例外とかは?
361356:2005/05/08(日) 14:07:44
インストール終わりました。
362359:2005/05/08(日) 14:29:02
>>360
ガッコじゃまだ文字出したり丸描いたりくらいしかやってないので
例外って言葉があるのは知ってますが意味がわからないのです…

とりあえず3つのAppletを無理やり1つにまとめたら解決できたので
今の時点ではこれで済んだことにして、
勉強が進んで例外がどういうものかわかったら見直してみることにします
>>360返答ありがとうございます
363デフォルトの名無しさん:2005/05/08(日) 15:24:51
>>361
ヨカタ
364デフォルトの名無しさん:2005/05/08(日) 15:34:44
          /⌒ヽ
   ⊂二二二( ^ω^)二⊃
        |    /      >>361 ヨカタ 「ブーン」でも見ていけ
         ( ヽノ
         ノ>ノ 
     三  レレ
365348:2005/05/08(日) 15:49:54
遅レスだけど、最後の「もしここで」は消し忘れです....orz

>>353
> (2)の位置からはSubのhoge()はアクセスできないはずなのに。

というか、実際に組んで試してみてアクセスできてるんでしょ? パッケージが違ってたって
完全名でクラス名指定すればクラスを使えるし、そうでなくたって、importすればいつでもどこでも
使えるじゃん。

不完全である上にoverkillだと思う理由はこの点だけ?
クラスがいつでもどこでもアクセス可能であることを考えれば不完全でもoverkillでもないと思うけど。
366デフォルトの名無しさん:2005/05/08(日) 16:37:13
クイックソートについての質問です
http://santamartadotnet.hp.infoseek.co.jp/documents/java/sortingalgorithms.html#parag5
のページのソース26行目にある
if ( left >= right ) return;
の部分が分かりません

この一行はどのような働きをしているのですか?
367デフォルトの名無しさん:2005/05/08(日) 16:44:51
leftがright以上ならそれ以降の処理は行わない
368デフォルトの名無しさん:2005/05/08(日) 17:17:01
>>366
44行目周辺をみれば、left >= right で qsort() を呼び出す可能性があるのがわかるだろ。
369344:2005/05/08(日) 17:40:39
>>355
私の環境では表示されたんですが……。
こう表示されないなら、それはそれで問題あるような。

>>365
> というか、実際に組んで試してみてアクセスできてるんでしょ? パッケージが違ってたって
> 完全名でクラス名指定すればクラスを使えるし、そうでなくたって、importすればいつでもどこでも
> 使えるじゃん。

bar.Subはpublicなので確かにfoo.MainClassからアクセスできますが、
bar.Subのメンバメソッドhoge()はprotectedなのでfoo.MainClassからは
アクセスできない、と理解していたのですが違うんでしょうか。
foo.MainClassはbar.Subの派生クラスではないですし。
実際、(2)の位置に new bar.Sub() と書くのはOKですが、
(new bar.Sub()).hoge() と書くとコンパイルエラーですし。
370デフォルトの名無しさん:2005/05/08(日) 17:43:09
>>369
>私の環境では表示されたんですが……。
マジで?
脳味噌腐ってるんじゃないの?

>こう表示されないなら、それはそれで問題あるような。
お前の頭だと思うよ☆
371365:2005/05/08(日) 18:08:08
>>369
ああごめん。Subのほうがprotectedになってることに気がついてなかった。へたれでスマン。
protectedアクセスの話なわけね。
話がかみ合ってなかったよ。
372デフォルトの名無しさん:2005/05/08(日) 18:11:14
>>369
> bar.Subのメンバメソッドhoge()はprotectedなのでfoo.MainClassからは
> アクセスできない、と理解していたのですが違うんでしょうか。
それに関しては合ってるんだが、
だからといって、>>353 みたいな主張が出てくるのは何か違うような。

finalメソッドか privateメソッドしか書かないってんなら、それ以上考えなくて良いんだけど。
373デフォルトの名無しさん:2005/05/08(日) 18:32:15
>>369
>>370がなんかいってるが、確かに表示されるからその辺は安心しろ。

で、>>369については、
> bar.Subのメンバメソッドhoge()はprotectedなのでfoo.MainClassからは
> アクセスできない、と理解していたのですが違うんでしょうか。

ここが違う。

MainClassはあくまでSuper型のclsに対してhoge()をよんでいるのであって、clsに実行時に
入っているのがSubであるかどうかなど気にしない。コンパイル段階では、Super clsには、
Superと見なせるもの(インターフェースが同じもの)が入っていると想定するだけだよ。
インターフェースが一致しないものを渡そうとすれば、ちゃんとコンパイルエラーになる。

実際のメソッド検索は実行時に行われる(実行時にだよ)ので、この段階で実体はSubの
hoge()を呼び出すわけだが、それが多態性というもんでしょ。Superはサブクラスで置き換え
可能でなければ多態ではなくなる。

Subは完全にSuperと置き換え可能でなければならないわけで、Superを要求しているところに
Subを渡しても、単にそれがSuperであるかのように動くだけ。MainClassはあくまでSuperの
hoge()を呼んでいると思ってるわけだよ。

逆にpublic hoge()であったはずのところをサブクラスでprotected hoge()にしたら、Superは
サブクラスで完全に置き換え可能だという原則に反するでしょ。
374デフォルトの名無しさん:2005/05/08(日) 21:02:29
ちょっと勘違いしている奴ぽいので 皆に聞く

protectedとpackage(何も書かない場合)の
アクセス可否の違いを言ってみろ

そのクラス内○
そのサブクラス内×
とか言う感じですべて
375デフォルトの名無しさん:2005/05/08(日) 21:18:15
> ちょっと勘違いしている奴ぽいので 皆に聞く
一番勘違いしてるっぽい奴ハケーソ
377デフォルトの名無しさん:2005/05/08(日) 23:32:24
protectedが絡んでるからややこしいが、>>373の話はSuper型をInterfaceに置き換えて
みると分かりやすいように思う。

void hogeCall( hoge.hage.SuperInterface cls)をいうのがあったとして、そこにfoo.Superを入れようが、
bar.Subを入れようが、hogeCall()メソッドの中ではclsはあくまでhoge.hage.SuperInterfaceでしかない、
という話だな。
378デフォルトの名無しさん:2005/05/09(月) 00:24:40
zipファイルの中にtxtファイルがあればその内容を表示し、zipファイルがあればその中身も再帰的に処理するコード
はどのように書けばよいのでしょうか。
379デフォルトの名無しさん:2005/05/09(月) 00:46:49
void 解凍(アイテム file){
 List<アイテム> l = file.アイテム一覧();
 for(アイテム i : l){
  if(i.zip判定()){
   解凍(i);
  } else{
   処理
  }
 }
}
380378:2005/05/09(月) 00:48:10
>>379
既存のAPIの範疇だと思いますが、具体的には?
381デフォルトの名無しさん:2005/05/09(月) 00:53:21
InputStreamオブジェクトからFileオブジェクトに変換ってどうすればできますか?
382デフォルトの名無しさん:2005/05/09(月) 01:00:05
いや、既存のAPIの範疇である事までわかってるんなら、>>379の日本語部分を
既存のAPIで置き換えればいいんではないかと....
383デフォルトの名無しさん:2005/05/09(月) 01:02:35
>>382
それがですね、私は今日初めてJavaを触ったものですから、APIの使い勝手がいまいちよくわからないのです。
384デフォルトの名無しさん:2005/05/09(月) 01:05:48
で、どこまでできてるんですか?
385デフォルトの名無しさん:2005/05/09(月) 01:07:49
>>384
まだ作っていませんが、できるところまで書いてみます。
少し待っていただけますか?
386デフォルトの名無しさん:2005/05/09(月) 01:09:24
いいよ。
387デフォルトの名無しさん:2005/05/09(月) 01:31:46
388デフォルトの名無しさん:2005/05/09(月) 01:40:02
早かったね。
今の問題点は?
389デフォルトの名無しさん:2005/05/09(月) 01:42:41
>>388
else if (filename.endsWith (".zip")) {/* この中の処理が分かりません。InputStreamオブジェクトをどうやってZipFileで扱うのかが分かりません。 */}
390デフォルトの名無しさん:2005/05/09(月) 01:42:57
一旦どこかに書き出しちゃいかんの?
391デフォルトの名無しさん:2005/05/09(月) 01:44:17
テンポラリファイルを作成するということですか?
392デフォルトの名無しさん:2005/05/09(月) 01:46:55
もし、APIの仕様上、それ以外に方法が無いのでしたら仕方がありませんが、できれば無駄なリソースを消費したくありません。
393デフォルトの名無しさん:2005/05/09(月) 01:51:52
とりあえずテンポラリ作っておいて、リソース消費が気になるならそれから考えてみれば?
テンポラリ作るときはdeleteOnExitで。
394デフォルトの名無しさん:2005/05/09(月) 01:55:13
>>389
InputStream なら、ZipInputStream で読めば良いじゃん。
395デフォルトの名無しさん:2005/05/09(月) 01:56:18
>>393
そうですか。ありがとうございました。最良の方法が見付かるまで努力します。
396デフォルトの名無しさん:2005/05/09(月) 01:59:55
>>394
あ、本当ですね。
ありがとうございます。
397デフォルトの名無しさん:2005/05/09(月) 02:46:43
スレッドの質問お願いします。
アプレットの1つのクラスで2つのスレッド(th1とth2)を作ります。
run()メソッド内でth1が活動しているときth2が決まった時間sleepします。th2の
sleepが解けたらth1は停止して、th2は処理を始めsleepにぶつかるまで活動します
。この様な常に1つだけのスレッドに活動させるループを作るにはどうすればよい
でしょうか?

あと現在活動しているスレッドの種類(th1,th2)によって呼び出すか呼び出さない
か判断させるにはどうすればよいでしょうか?

よろしくお願いします。
398デフォルトの名無しさん:2005/05/09(月) 02:48:40
> 1つだけのスレッドに活動させるループを作るには

1つのスレッドでやる。
399デフォルトの名無しさん:2005/05/09(月) 03:33:04
モニタ
400デフォルトの名無しさん:2005/05/09(月) 12:56:50
>>398
意図はひとつのスレッドがスリープしている間は処理が行われないのならば、
他のスレッドであらかじめ計算処理して、眠らせておいたスレッドで残りの処理
プラスrepaintすればアプレットがサクサク動くのではと思ったのですが・・・
401デフォルトの名無しさん:2005/05/09(月) 13:10:19
交互に動かすなら1スレッドでいいだろうに
402デフォルトの名無しさん:2005/05/09(月) 13:46:19
似非タイムスライスなマルチスレッド処理をわざわざ書こうとしているってことか?
なんのためのスレッドなのかわからんな・・・
403403:2005/05/09(月) 17:20:17
JAVAとは、「高級言語、機種を選ばない、そしてオブジェクト指向」
以上を学びましたが、派遣で時給2000円位のところに務めたいです。
他に学ぶことはありますか?
ちなみにHTMLとCSS、DELLコンピューターが使えます。
404デフォルトの名無しさん:2005/05/09(月) 17:37:07
> 他に学ぶことはありますか?
その程度の知識しか無い人間に時給2000円払っても良いと思うような人間がいるかと言う事について、とか。
405デフォルトの名無しさん:2005/05/09(月) 19:42:40
JSPとJAVAサーブレットの機能はほぼ同じだそうですが、
サーブレットをマスターしなくても、JsPのみで不便はありませんか?
406デフォルトの名無しさん:2005/05/09(月) 19:48:10
>>403
求人広告みなさい。

>>405
用途による。
407デフォルトの名無しさん:2005/05/09(月) 21:01:15
jTableで列名の長さに応じてセルの幅を調節したいんですが

jTable1.setAutoResizeMode(JTable.AUTO_RESIZE_OFF );
TableColumn column=jTable1.getColumn("カラム1");
column.setWidth(15);
jTable1.doLayout();

これでもサイズが変更されません。お助けください・・・
408デフォルトの名無しさん:2005/05/09(月) 21:15:26
言語習うのも重要だろうけど、コンピュータ、周辺機器、ファイルをまともに
扱えないとまずいね
プロジェクトが大きくなると、大容量のHDDでバックアップってのも
最低限必要
409デフォルトの名無しさん:2005/05/09(月) 23:04:57
>>379
実行したらスタックがあふれて任意のコードが実行されてしまいました。
410デフォルトの名無しさん:2005/05/09(月) 23:05:31
>>408
なんて言うか無理してしゃべらんでいいよ。と。
411デフォルトの名無しさん:2005/05/09(月) 23:27:51
GWまだおわってないのかよ
413デフォルトの名無しさん:2005/05/10(火) 01:02:22
>>410
無理なんてしてないよ、ろくに機材も扱えないのに
「プログラムできますよ!雇ってください」
いざ開発環境で作業させたら管理がめちゃくちゃ
プログラム開発環境のソフト以外はまともに扱えないとか
そんなやつ雇えねーって、足手まとい
415デフォルトの名無しさん:2005/05/10(火) 01:06:55
Javaの勉強をしようと思うのですが、おすすめの本などはありますか?
わたしはプログラム初心者向けの本などはありませんでしょうか?
416デフォルトの名無しさん:2005/05/10(火) 01:25:14
初心者がJavaからプログラミングを始めるのはあまり教育的ではないからLispから始めよ。
その上でJavaを覚えればJavaがどれだけアホ言語か理解できた上でプログラミングできる。
417デフォルトの名無しさん:2005/05/10(火) 01:26:11
((((((;゚Д゚))))))リスリスプルプル
418デフォルトの名無しさん:2005/05/10(火) 01:27:31
なんかまだ連休中なようだ。
419デフォルトの名無しさん:2005/05/10(火) 01:29:40
厨房的な書き方だと思うかもしれないが、事実なのだからしかたがない。
そもそも自分と意見が合わないからと言って、相手を厨房だからスルー、
などと仕立てあげること自体がまったく子供じみた行為では無いだろうか。
420デフォルトの名無しさん:2005/05/10(火) 01:36:34
>>419
また香ばしいのがw
クオリティヒクスw
421デフォルトの名無しさん:2005/05/10(火) 01:39:25
>>420
ふざけるのならマ板へいけ。
ム板はマジレス以外は禁止だ。
どちらのクオリティが高いかは一目瞭然だろ。
マジレスしている分、もちろん俺の方がクオリティが若干高い。
422デフォルトの名無しさん:2005/05/10(火) 02:12:08
> 厨房的な書き方だと思うかもしれないが、
なんだ、自覚があるのか。
423デフォルトの名無しさん:2005/05/10(火) 02:18:50
>>422
君らの、2ちゃんねる流の感覚からすればそう思うだろうと言っているだけだ。
返答・感想不要。
424デフォルトの名無しさん:2005/05/10(火) 02:38:30
>>423
わざわざJavaスレに出張してLispの布教に励むような
2ちゃんねるぐらいでしか相手にしてもらえない>>423
他人事みたいに「2ちゃんねる流の感覚」とか言ってもねぇ。
425デフォルトの名無しさん:2005/05/10(火) 02:41:02
>>424
荒らしの相手をする奴も荒らし。放置すれ。
426デフォルトの名無しさん:2005/05/10(火) 02:41:13
>>424
これ以上はスレ違いだと思ったので、感想は不要と書いたはずだが?君は荒らしか?
427デフォルトの名無しさん:2005/05/10(火) 03:03:19
413の言い方はあれだし、Lispからやるのも今ひとつどうかと思うが
LispとSmalltalkとPrologあたりはやっておいて損はないよ。
これらの言語ごとの思想や哲学に触れて、プログラミングにおける
物事の捉え方を広げるためにね。
428デフォルトの名無しさん:2005/05/10(火) 03:32:20
>>420みたいに、自分の確たる意見も言わずに煽るだけしか能がないのが厨房な
実際、自分と意見が合わないだけで相手を非難したり
相手の言っている内容まで屁理屈で否定しようとするから墓穴を掘るんだよ
そもそも事情や生活環境、行う行動なんて人それぞれ
だけどできないことがあれば、通用しなくなる場面にでくわす
そのとき、自分が否定していたことが本当に正しかったか?考え直すだろう
429デフォルトの名無しさん:2005/05/10(火) 05:09:19
アニメーションの勉強をしてるのですが、次のように、ただ文字を左から
右に移動させていくプログラムなのですが、marqueeタグのように、スムーズに
行かず、時々カクカクと引っかかるようになるのは直せないのでしょうか。

import java.applet.*;
import java.awt.*;

public class TestAnimation extends Applet implements Runnable {

Thread runner;
int x,y;
int width,height;
int textw; // for text width in pixels
String message = "Hellocc world";
FontMetrics fm;
Image osc = null; //Off-screen graphic image
Graphics osc_g; //Off-screen graphic context

public void init () {
runner = new Thread(this);
x = 20;
y = 20;
width = getSize().width;
height = getSize().height;
fm = getFontMetrics(getFont());
textw = fm.stringWidth(message);
}
430429 続き:2005/05/10(火) 05:10:12
public void start() {
Graphics g = getGraphics(); //define on screen graphic context
osc = createImage(width,height); //off screen image created
osc_g = osc.getGraphics(); // define off-screen graphic context
runner.start(); // goto the run method
}

public void stop() {
runner = null;
}

public void run () {
while (true){
if (x < width){
x += 10;// message shift by this much
}else {
x = -textw;
}

drawNextFrame();// draw off-screen image

try{Thread.sleep(100);} // wait 10 m sec
catch (InterruptedException e) {}

repaint();
}
}
431429& ◆tGYKF6mqTg :2005/05/10(火) 05:11:19
synchronized public void paint(Graphics g) {

if (osc != null){
g.drawImage(osc,0,0,this);
}else {
g.setColor(getBackground());
g.fillRect(0,0,getSize().width,getSize().height);
}
}

public void update (Graphics g){ //this is for painting without erasing
paint(g);
}

synchronized public void drawNextFrame() {
//this is where off screen image is drawn
osc_g.setColor(Color.black);
osc_g.fillRect(0,0,width,height);
osc_g.setColor(Color.red);
osc_g.drawString(message,x,y);
}
}
432429 続き:2005/05/10(火) 05:14:10
これを、次のタグで呼び出してます。
<html>
<body>
<applet code="TestAnimation.java", width=900, height=40>
</applet>
<marquee direction = right> Hello world
</marquee>
</body>
</html>

コピペしたら、インデントがなくなってしまい、読みにくくてすみません。
よろしく。

カクカクと引っかかるのは、システムとぶつかってるのでしょうか?なんか
それを回避するようなスイッチとか定石みたいなものはないですか?
お願いします。
433デフォルトの名無しさん:2005/05/10(火) 08:01:21
>システムとぶつかってる

どんなシステムかが書かれていないけど、
俺以外のひとは理解できてるのか?
434デフォルトの名無しさん:2005/05/10(火) 09:53:31
>>429
run() 、ホコヌク螟ヒ repaint() 、ニ、モスミ、ケ、ホ、荀皃ニ。、
drawNextFrame() 、ホコヌク螟ヌ repaint() 、ニ、モスミ、キ、ニ、゚、゙、キ、遉ヲ。」
435434:2005/05/10(火) 09:55:47
うわ,文字化けした。

>>429
run() の最後に repaint() を呼び出すのをやめて,
drawNextFrame() の最後で repaint() を呼び出してみましょう
と書こうとした。
436デフォルトの名無しさん:2005/05/10(火) 10:20:07
お世話になります。

現在strutsの勉強をしているのですが、
一つどうしてもわからないことがあります。
まず、前提条件として、
AというActionFormの中にBという別のActionFormが宣言されています。
Bの中にはStringの変数strが宣言されています。
また、jspは
<html:form>
<bean:define id="C" name="A" property="B" scope="session" toScope="session" />
<html:text name="C" property="str" />
</html:form>
のような感じになっています。
ここで、strの値は表示されるのですが、
フォーム上でstrの値を変更して送信しても値が変化していないのです。
一体なぜなのでしょうか?
437429:2005/05/10(火) 11:27:15
>>433
あ、すみません。言い忘れていました。WindowsXP上でIE6.0で走らせてます。
JVMは1.4.2_07
438デフォルトの名無しさん:2005/05/10(火) 11:52:03
<html:text name="C" property="str" />

<html:text property="B.str" />
439436:2005/05/10(火) 12:47:06
>>438
どうもありがとうございます。
ドットで指定してみたところ、うまく動作するようになりました。
本当にどうもありがとうございました。
440デフォルトの名無しさん:2005/05/10(火) 17:12:58
一回処理が終了したスレッドの処理をもう一度実行するにはどうすればよいですか?
Runnableを実装して、thread.start()し、10秒待ってからもう一度thread.start()するとInterruptedExceptionが発生してしまいます。
run()の中身はSystem.out.println("テスト")です。
441デフォルトの名無しさん:2005/05/10(火) 17:47:04
>>440
http://java.sun.com/j2se/1.5.0/ja/docs/ja/api/java/lang/Thread.html#start()

> スレッドを複数回起動するのは、決して正しいとは言えません。
> 特に、スレッドは実行を終えてから再起動することはできません。
442デフォルトの名無しさん:2005/05/10(火) 17:54:43
普通に Runable なクラスのインスタンスを、もう一度 Thread に突っ込んで
start() でOKです
ただし441で書いてある通り、「同 Thread の再起動」は無理です
なにも起こりません

InterruptedException が発生しているのは

まさかスレッド側で wait(10000)やってないですよね?

それ以前の問題として、同じ Runable なインスタンスを再実行というのは
普通はしません
以前の状態を保持しつつ同じ処理を繰り返す必要があったとしても、
フィールドで持つのは気持ち悪いです
素直に新しいインスタンスを作りましょう
443デフォルトの名無しさん:2005/05/10(火) 18:29:12
インスタンスジョンソン
444デフォルトの名無しさん:2005/05/10(火) 20:27:40
ホコヌク
445デフォルトの名無しさん:2005/05/10(火) 20:48:18
>>442
何行ってんだタコ
446デフォルトの名無しさん:2005/05/10(火) 20:49:06
あれ?文字化けした?

>>442
参考になります

ってかいたはずなのに
447デフォルトの名無しさん:2005/05/10(火) 22:40:21
タコって言ったねヘンリエッタ
448デフォルトの名無しさん:2005/05/10(火) 22:53:54
>>429
Thread.sleepに精度を期待するな。
OSによっては15msくらいずれるぞ。
もし本気でやるなら1msくらいの精度を持つ
OSネイティブのAPIをJNIから叩いて
自分でフレーム調整。
449デフォルトの名無しさん:2005/05/10(火) 23:07:17
Tomcatでコネクションプーリングを使う場合、JDBCドライバはどのディレクトリに置けばいいですか。

conf/system.xmlあるいはwebapp/myapp.xmlに<Resource>と<ResourceParams>の設定を行ったのですが、
実際にDB接続すると
Cannot load JDBC driver class 'com.mysql.jdbc.Driver'
というエラーがでます。
webapp/myapp/WEB-INF/lib/mysql-connector-java-3.1.8-bin.jar はちゃんとあります。

Tomcat 4.1.31, JDK 1.4.2, MySQL 4.0
450デフォルトの名無しさん:2005/05/10(火) 23:17:09
>webapp/myapp/WEB-INF/lib/mysql-connector-java-3.1.8-bin.jar はちゃんとあります。

そこじゃなくて $CATALINA_HOME/common/lib に桶
451デフォルトの名無しさん:2005/05/10(火) 23:17:33
>>448
それより固定のsleepというあたりに意味がないと思うが
ナイティブで取得できたとしても意味ないよ
ループ速度を一定にしないとね
452449:2005/05/10(火) 23:19:44
>>450
うう、そんなところに置かなきゃいけないんですか。
WEB-INF/lib 以下に置けない理由って何でしょう?J2EEの仕様?Tomcatの仕様?
453デフォルトの名無しさん:2005/05/10(火) 23:24:37
>>452
アプリ鯖のコネクションプーリングつかってるならアプリ鯖が見えるところに

自前のアプリで組み込んであるのならWEB-INF/の下でええ
454449:2005/05/10(火) 23:41:55
>>453
なるほど、今回はTomcatが用意するコネクションプーリングを利用するから、CATALINA_HOME/common/libに置きゃなきゃだめなのか。
助かりました。どうもありがとう。>>450,453
455デフォルトの名無しさん:2005/05/11(水) 00:01:33
>>451
だから自分で調整しろと言っている。
456デフォルトの名無しさん:2005/05/11(水) 00:10:50
自分で調整するならJNIいらねーやん
457デフォルトの名無しさん:2005/05/11(水) 00:17:07
>>456
何で調整すればいい?
458デフォルトの名無しさん:2005/05/11(水) 00:33:39
System:nanoTime()とか
System:currentTimeMillis()とか

currentTimeMillis()は2000,XP、Linuxあたりなら1msでちゃんとかえってきたはず
459デフォルトの名無しさん:2005/05/11(水) 00:46:58
>>458
だからOSによっては15msくらいずれるといっている。
460デフォルトの名無しさん:2005/05/11(水) 00:48:18
>>459
>だからOSによっては15msくらいずれるといっている。

アーキテクチャによっては。
461デフォルトの名無しさん:2005/05/11(水) 01:23:15
クライアントサイドのコードだしWinとLinuxだけでもちゃんと動くならまぁいいのでは
Macでの動作確認してないけど
462デフォルトの名無しさん:2005/05/11(水) 01:33:22
>>458
JDK のバージョンによっても違うかも。
昔は System#currentTimeMillis() って最終的に GetTickCount とか使ってたような。
463429:2005/05/11(水) 02:57:09
>>448,451,455,456,458,459,460,462
みなさん、どうもありがとう御座いました。15msのずれは普通ですか、でも
見た感じは、もっと、100msや200msのずれがあるような気がしますが。
currentTimeMills()とかnanoTime()を調べてためしてみます。
464デフォルトの名無しさん:2005/05/11(水) 11:26:36
まぁすくなくともmarqueeタグよりは滑らかに動くな
465465:2005/05/11(水) 11:47:04
お聞きします。

外部コマンドを、
Runtime#exec("外部コマンドの文字列");
で実行したいのですが、コマンド実行後の標準出力に出るデータ量が多いと、
コマンド自体が終わらずにリークしてしまいます。
かなり昔のVMのバグにそのような報告がありましたが、そのバグはFixされたとも報告ありました。

何か心あたりのある方がいらっしゃいましたら、どうぞよろしくお願いしますm(_ _)m
466デフォルトの名無しさん:2005/05/11(水) 11:58:07
>>465
> コマンド自体が終わらずにリークしてしまいます。
リークの症状について詳しく。

http://java.sun.com/j2se/1.5.0/ja/docs/ja/api/java/lang/Process.html
> サブプロセスの標準入出力処理 (すなわち stdin、stdout、および stderr) は、
> 3 つのストリーム (getOutputStream()、getInputStream()、getErrorStream())
> によって親プロセスにリダイレクトされます。親プロセスはこれらのストリームを使って、
> サブプロセスに入力を送ったり、サブプロセスからの出力を取得したりします。
> ネイティブなプラットフォームには標準入出力ストリームに使うバッファのサイズが限られるものもあるので、
> サブプロセスの入力ストリームの書き込みあるいはストリーム出力の読み込みが失敗した場合、
> サブプロセスはブロックされるか、デッドロック状態になる可能性があります。
467465:2005/05/11(水) 12:45:09
ご返答ありがとうございますm(_ _)m

Process#waitfor() で呼び出し元のプロセスを待たせておくと、いつまでたってもサブプロセスが終わらない、というリークです。
上にあるバッファのサイズの限度を超えている、という可能性はありますね・・・
468デフォルトの名無しさん:2005/05/11(水) 12:49:33
いやいや
waitforは出力がまったくないプロセスにしかつかえんよ
469465:2005/05/11(水) 12:54:40
そんなことないですよ。
465のケースでも、出力の量が少ないケースではうまくいってます。
waitforが終わったあと、プロセスから標準出力を取り出す形で。
470デフォルトの名無しさん:2005/05/11(水) 12:55:48
だからそのバッファに依存だって
471デフォルトの名無しさん:2005/05/11(水) 12:56:23
waitFor()で待つ前にとりだしてやらんと

たとえば極端な場合バッファサイズがほとんどないという可能性もある
472465:2005/05/11(水) 12:56:47
そうみたいですね、ありがとうございました。
473デフォルトの名無しさん:2005/05/11(水) 12:59:47
ようするに漏れてたわけじゃなくて詰まってたわけだな。
474465:2005/05/11(水) 13:00:15
外部コマンドを実行して、大量の標準出力を取得する安全な方法ってないんですかね?
475デフォルトの名無しさん:2005/05/11(水) 13:03:16
ごく普通にプロセスからストリーム取得して取り出していけば何の問題もないが?
476デフォルトの名無しさん:2005/05/11(水) 13:04:50
>>467
> いつまでたってもサブプロセスが終わらない、というリークです。
そーゆーのはリークと言うのか?

っつか、>>467の脳内で何かがリークしてるような気はするんだが。
477465:2005/05/11(水) 13:08:17
話を整理しますと。

メインプロセスからサブプロセスにてコマンド実行

サブプロセスのコマンド終了

メインプロセスにてサブプロセスのコマンドの標準出力を取得

という流れで、サブプロセスのコマンド終了のタイミングまで待つために、waitfor()を用いてました。
この「サブプロセスのコマンド」の実行自体が終了しないのです。
478デフォルトの名無しさん:2005/05/11(水) 13:13:25
確かに脳からうんこはリークしてるな。
479デフォルトの名無しさん:2005/05/11(水) 13:35:24
このサブプロセスの話なんてもう何年も話されてきてぐぐればいくらでもみつかるな

なんでいまだにwaitFor()つかってるの?
480465:2005/05/11(水) 13:40:18
サブプロセスの終了のタイミングを知るのに、他の方法があるのですか?
481デフォルトの名無しさん:2005/05/11(水) 13:42:11
普通にストリームの終了
482デフォルトの名無しさん:2005/05/11(水) 13:42:39
このスレは答える側がめちゃ偉そうだなww
483465:2005/05/11(水) 13:44:05
>>481
すいません、意味がよくわかりません。
484デフォルトの名無しさん:2005/05/11(水) 13:44:46
Java以前の勉強したほうがいいかもね
パイプとか
485465:2005/05/11(水) 13:45:37
そうかもしれないですね。
486とうりすがりのPG:2005/05/11(水) 13:46:42
とりあえずアルゴリズムを勉強してからPG目指しましょう!
487デフォルトの名無しさん:2005/05/11(水) 13:53:25
とうりすがり(←なぜかへんかんできない)
488デフォルトの名無しさん:2005/05/11(水) 14:00:42
東リすがり
489デフォルトの名無しさん:2005/05/11(水) 14:02:51
党利すがり(←変換したらこうなった)
490デフォルトの名無しさん:2005/05/11(水) 14:21:30
十里縋り
491デフォルトの名無しさん:2005/05/11(水) 14:40:39
javaって、人によって向き不向きってあるのかな
数学嫌いで国語成績高い友人はどんどん上達しているのに、数学それなりにできるけど国語力皆無な俺は全く上達できない…
ガキでもわかりそうなjava絵本買って呼んでるけど、それでも理解不能…もうだめぽ
492デフォルトの名無しさん:2005/05/11(水) 14:43:56
日本人はオブジェクト指向が苦手なのだよ。
プロシージャー型でガンガン突き進め。
493デフォルトの名無しさん:2005/05/11(水) 14:44:31
なんで?農耕民族だから?
494デフォルトの名無しさん:2005/05/11(水) 14:50:13
習って覚えろ、というより、慣れて覚えろ、って事なのかな
記憶力はあっても、考える力が無いからなぁ…
495デフォルトの名無しさん:2005/05/11(水) 14:52:53
>>491
数学嫌いな人ってのは根本的にプログラマに向いてない気がするんだが。。。
496デフォルトの名無しさん:2005/05/11(水) 15:02:46
>>495
数学嫌いでも算数できれば構わんと思うが。ま、ケースバイケースだけど。
497デフォルトの名無しさん:2005/05/11(水) 15:03:51
数学が出来るかどうかは関係ないとおもうぜ

ただ、論理的な思考がどうしても出来ない人はいるので
やっぱ向き不向きはあるんだなとおもた
498デフォルトの名無しさん:2005/05/11(水) 15:05:25
>>495
友人は大学での成績が殆どAクラスなんだけど、数学系だけは最低のXなんよ(途中で諦めてる
彼曰く
「数学って答えが1つしか無いじゃん?俺そういうの嫌いなんだよね。国語だったら『例え』みたいな感じでも、答えっぽくなってればOKじゃん。でも数学って1つしかないから、どこか1つでも間違えたらそこでアウトだろ。それが嫌なんだよ」
「プログラミングは、答えは工夫すれば幾つでも出てくる。自分が嫌だと思った『答え』でも、改良すれば更にいい『答え』が発見できる。それが面白いんだよね」
みたいに言っていた
そういや彼はperlからjavaに入ったんだったな…
499デフォルトの名無しさん:2005/05/11(水) 15:09:54
学校の授業や試験の数学が苦手でも、パズルとか法則性を見つけるのがコツなゲームとかが好きな人はプログラマに向いているんじゃない?
将棋とかオセロとかチェスとか、先のいろんなパターンの手を読んでシミュレーションするのが好きな人も。
500デフォルトの名無しさん:2005/05/11(水) 15:11:49
>>497
論理的な思考か…俺はそれができないんだろうな…
どこが分からないのか分からない状態でもあるけど

さて、javaレポート終わってないけどゼミに出るか…

留年|       λ.............
501デフォルトの名無しさん:2005/05/11(水) 15:13:32
論理的な思考って全ての学問に必要だと思うけど…^^;
502デフォルトの名無しさん:2005/05/11(水) 15:14:55
>>501
そうなのか…よくやってこれたなぁ俺…単位ギリギリだけど…ハァ…
503デフォルトの名無しさん:2005/05/11(水) 15:16:04
>>501
たとえばバグが出たときわかりませんといって長いソースコードだしたりとかな
そういうのをやるのは論理的な思考が出来てない
504デフォルトの名無しさん:2005/05/11(水) 15:17:20
>>500
……マ板行って相談すれば?
>>500 がプログラム全般苦手ってんならJavaは関係ないし。
505デフォルトの名無しさん:2005/05/11(水) 15:17:25
「数学って答えが1つしかないじゃん」なんてほざいてるから
数学わからんのだろう。

506デフォルトの名無しさん:2005/05/11(水) 15:19:00
高校までの管理された数学なら一つしか答えが無いかも知れないけれど、一般的な数学問題はそういうわけにはいかないもんね。
507デフォルトの名無しさん:2005/05/11(水) 15:23:36
>>503
とはいうものの、「『不要な部分』を省略しました」とか言って出してくる
短いソースコードには問題の部分が含まれていないという法則。

基本的に問題部分が特定できてるなら大抵の場合は自力で解決できるしね。
躓いてるなら、問題のありそうな箇所は全部出した方が良い
(NDAとかの縛りがあったら無理だけど)
508デフォルトの名無しさん:2005/05/11(水) 15:29:15
数学が苦手で、パズルが得意でもアフィン変換とかできねーだろ。馬鹿どもがw
509デフォルトの名無しさん:2005/05/11(水) 15:30:08
業務プログラマには要らないもん。
510デフォルトの名無しさん:2005/05/11(水) 15:43:06
>>507
不具合の出るところだけの最低限のコードでテストするという
考えが思い浮かばないやつ多いよ
何年も職業プログラマやってるくせにねぇ

そして最低限のところにしたら問題はでなくなりましたとかほざきやがって
つまり違うところでバグだしてるんじゃねーかと
511デフォルトの名無しさん:2005/05/11(水) 17:04:58
http://www.smg.co.jp/seminar/java/J_lecture02.html
ここの2.プログラムの入力のソースをコンパイルしようとしたら

>HelloWorld.java:3: シンボルを解決できません。
>シンボル: メソッド printIn (java.lang.String)
>場所  :java.io.PrintStreamのクラス
>Systemout.out.printIn("Hello Java World!");
>
>エラー一個

と出てコンパイル出来ません…どうすればちゃんと出来るのでしょうか?
512デフォルトの名無しさん:2005/05/11(水) 17:05:41
エラーメッセージまんまだな
513デフォルトの名無しさん:2005/05/11(水) 17:09:38
雑誌のソースを手打ちしてた頃を思い出すなぁ

printIn じゃ無くて println
「l(エル)」です

そのエラーの意味するところは「メソッド[printIn]ってなんですか?」
とコンパイラが言っているだけ
大抵は単純な typo や Import が不完全だったりが原因
514デフォルトの名無しさん:2005/05/11(水) 17:12:56
printInなんてメソッドあったっけ?
515デフォルトの名無しさん:2005/05/11(水) 17:14:51
>>512-514
ありがとう…orz
516デフォルトの名無しさん:2005/05/11(水) 17:17:11
>>511のリンク先
> 上に書いてある部分を「コピーして貼り付け」、なんてことはせず、
>必ず自分で一文字一文字入力してください。
>単純な入力ミスがどのような影響を及ぼすのか、自分はどういうところで 間違えやすいか、など、
>わかることがたくさんあります。
>今は、一文字一文字打っているだけでも勉強になりますので、ここで不精しないこと!

この通りになったわけだw
517デフォルトの名無しさん:2005/05/11(水) 17:26:38
println(print line)じゃなんのことか初心者には分かりづらいものね。
なんとなく形の似ている知ってる単語 In を当てはめてしまう心理は分かる。

pascalもwritelnだったなぁ。pascalはcase insensitiveだから(実装依存?)
WriteLn とか書いてる教科書も多くて間違えづらかったけど。
518デフォルトの名無しさん:2005/05/11(水) 17:54:00
Systemout のほうはいくらなんでも自力で気がついてるよな?
519デフォルトの名無しさん:2005/05/11(水) 19:01:50
>>518
レス時の間違いでした('A`;)
520デフォルトの名無しさん:2005/05/11(水) 20:50:43
RMIのプログラムを作っています。
サーバー側のプログラムを動かそうとすると
Nullポが発生し、
XXX_Stub.getValue(Unknown Source)
というエラーが出てしまいます。
_Stub.classって生成しただけじゃだめなのでしょうか?
521デフォルトの名無しさん:2005/05/12(木) 05:17:34
psで出てくるVMのプロセスってjava --〜以外あるんでしょうか?
環境はsolaris8のjdk1.3です、が他にも居そうです。
よくわかりません、入っているかもしれません。
考えうる表記を教えてください。
522デフォルトの名無しさん:2005/05/12(木) 05:22:45
>520
もうちょい噛み砕いてくれないとなんとも申せません
どうやって登録したんです?rebindすればいくんじゃない?
523デフォルトの名無しさん:2005/05/12(木) 13:42:06
htmlでsubmitした値を別ウィンドウを開いてgetParameterしたいのですが

html側
<SCRIPT language="JavaScript">
<!--
function jump(){
win=window.open("next.jsp","new","width=800,height=600");
}
// -->
</SCRIPT>
中略
<form method="post" onSubmit="jump()" name="form1">
<input type="text" name="addname">

next.jsp
<%
String name = request.getParameter("addname").toString();
%>

java.lang.NullPointerExceptionがでてしまいます。
<form method="post" action="next.jsp" name="form1">とすると値は受け取れました。
別ウィンドウに値を受け渡すにはどうすればよいか教えてください。よろしくお願いします。
524デフォルトの名無しさん:2005/05/12(木) 14:21:35
window.open だと、ただ単にその URL で示される JSP を呼び出すだけ
submit はされていません
URL にパラメータを付加するか、target で新規ウィンドウを指定した上で
submit をかけるかになります
もしくはJavaScript で親ウィンドウにアクセスして値を取得するか
525デフォルトの名無しさん:2005/05/12(木) 14:52:59
>>524
どうも親切にありがとうございます。
まだどうやるのか自分の中でイメージできてませんが、
調べながらがんばってみようと思います。
526デフォルトの名無しさん:2005/05/12(木) 15:50:07
手元にある自作のHTMLを画面に表示させたいため、
JEditorPaneを使いたいと考えているのですが、
どうすればいいのかわかりません。
ラベルに画像を表示させるのにaddを使うような感覚で、
HTMLをJEditorPaneにaddするものではないのですか?

JEditorPaneでHTMLを表示させるのに必要な手順を教えてください。
具体的なコードも出せず恐縮ですが、ご回答よろしくお願いします。
527デフォルトの名無しさん:2005/05/12(木) 15:58:32
ttp://java.sun.com/j2se/1.5.0/ja/docs/ja/api/javax/swing/JEditorPane.html

>このコンポーネントには、次のような方法でコンテンツをロードできます。
>1 setText メソッドを使うと、文字列からコンポーネントを初期化できる。この場合、現在の EditorKit が使われ、
> コンテンツ型はこの EditorKit の型であることが要求される
>2 read メソッドを使うと、Reader からコンポーネントを初期化できる。コンテンツ型が HTML の場合、<base> タグ
> が使われていないか、または HTMLDocument で Base プロパティが設定されていないと、イメージなどの相対参照
> を解決ができない。この場合、現在の EditorKit が使われ、コンテンツ型はこの EditorKit の型であることが要求される
>3 setPage メソッドを使うと、URL からコンポーネントを初期化できる。この場合、コンテンツ型は URL から判断され、
> そのコンテンツ型に登録されている EditorKit が設定される
528デフォルトの名無しさん:2005/05/12(木) 16:18:57
Appletについて質問です。
AppletClassLoaderをstaticで取得する方法はないでしょうか?
staticでない方法ならgetClass().getClassLoacer()で出来ますけれど。
529デフォルトの名無しさん:2005/05/12(木) 16:33:32
なぜクラスローダを取得したいと思ったのか
質問のレベルから考えるとクラスローダをいじるとはおもえんが
staticでない方法でいいじゃないか
530デフォルトの名無しさん:2005/05/12(木) 16:45:59
プログラム内で時間を計りたいんですけど,
あまりに短すぎる時間なのか
処理前と処理後のgetTimeメソッドの値が変わりません.
何かアドバイスください
531デフォルトの名無しさん:2005/05/12(木) 16:56:52
目的が分からんから的外れな回答かもしれんが
処理のコストを計りたい or 比較したいってのなら、
複数回実行させた処理時間を計ればいい

まさかとは思うが、同じ Date インスタンスから getTime をして
変わらないとか言ってるんじゃないよな?
532デフォルトの名無しさん:2005/05/12(木) 17:00:02
>>531
Date now1 = new Date();
Date now2 = new Date();
 
long startTime1 = now1.getTime();
//処理
long endTime1 = now2.getTime();
 
としたんですけど・・・
533デフォルトの名無しさん:2005/05/12(木) 17:01:36
>>530
java.lang.System#nanoTime()
534デフォルトの名無しさん:2005/05/12(木) 17:02:17
>>532
こうしろ。

Date now1 = new Date();
long startTime1 = now1.getTime();
//処理

Date now2 = new Date();
long endTime1 = now2.getTime();
535デフォルトの名無しさん:2005/05/12(木) 17:03:18
もしくは、こうだな。

long startTime1 = System.currentTimeMillis();
//処理
long endTime1 = System.currentTimeMillis();
536デフォルトの名無しさん:2005/05/12(木) 17:04:46
>>533
>>534
あーざんしたm(_ _)m
いっぺんsinできます
537デフォルトの名無しさん:2005/05/12(木) 17:09:58
>>526
> JEditorPaneを使いたいと考えているのですが、
> どうすればいいのかわかりません。
http://java.sun.com/docs/books/tutorial/uiswing/components/editorpane.html
とか見て頑張れ。

> ラベルに画像を表示させるのにaddを使うような感覚で、
javax.swing.JLabel って add で画像の追加ってできたっけか?
setIcon はあるけど。
538デフォルトの名無しさん:2005/05/12(木) 17:29:36
同じフォーム内にある複数のコンポーネントにドラッグ&ドロップの処理をし、
コンポーネントごとに別の処理をしたいのですがどようにしたらいいのでしょうか
すみませんが教えてください

複数のコンポーネントから同じ処理をするところまではできたのですが、その先が
わかりません

DropTargetListenerをimplementsしたのですが処理の方でドロップ元を判別する
のでしょうか?

わかりにくい文章かと思いますがよろしくお願いします
539デフォルトの名無しさん:2005/05/12(木) 18:01:56
>>529
jarなアプレットでリソースを取得する時に
getClass().getClassLoacer().getResource("img/hoge.jpg");
としてるのですが、このリソースを複数のクラスで共有したいので
そのオブジェクトをstaticにしたいのです。
getClassはstaticではないので上記の様には出来ませんでした。
540デフォルトの名無しさん:2005/05/12(木) 18:04:43
>>539
設計が悪いだけじゃね?
なんでリソース共有するのにstaticでなきとだめとかいうことになるんだ
541デフォルトの名無しさん:2005/05/12(木) 18:12:28
共有したクラスが多いのでinterfaceにしたいから
542デフォルトの名無しさん:2005/05/12(木) 18:13:16
共有した

共有したい
543デフォルトの名無しさん:2005/05/12(木) 18:31:33
>>541
何を共有化して、何を interface にするんだか?

ちなみに、static final なフィールドを interface に持たせて
全部のクラスに implement して共有するってのは、
interface を本来の意味以外に使用するダメパターンとして有名だぞ。
そーゆー事がしたければ 1.5以降なら static import あるし。
544デフォルトの名無しさん:2005/05/12(木) 18:54:53
自分はinterfaceとstaticて組み合わせは、なんか変だと感じました。

それよりsablevmって動かすとどう?
この中で普通じゃないやつ居ますか!?それはどれですか!
ttp://wiki.java.net/bin/view/Linux/AlternativeJavaVMsSDKs?skin=print
545デフォルトの名無しさん:2005/05/12(木) 19:12:04
素直にsingletonでも使えば。

いやならgetClass()じゃなくHoge.class.getClassLoader()・・つかうとか
546デフォルトの名無しさん:2005/05/12(木) 19:21:42
まぁ、自クラスないとは言えクラスリテラルをコードに書きたくない
気持ちは分かる。(いや、たぶん元質問者はそこまで考えてないと
思うが)

class Foo {
// ここで thisが Foo.class の意味で使えたらと思うことはある。
}
547デフォルトの名無しさん:2005/05/12(木) 19:28:35
> まぁ、自クラスないとは言えクラスリテラルをコードに書きたくない
後で別のクラスにコピペするために?
548デフォルトの名無しさん:2005/05/12(木) 19:52:00
取り込んだImageの明暗を操作することは出来ますか?
549デフォルトの名無しさん:2005/05/12(木) 19:53:44
>>545
> 素直にsingletonでも使えば。
>
> いやならgetClass()じゃなくHoge.class.getClassLoader()・・つかうとか

そんな事が出来たのですが。。。ありがとん。
550デフォルトの名無しさん:2005/05/12(木) 20:27:56
複数のクラスからリソース読み込むコード書いて
結局リソースのためのメモリを重複してもちそうだな
551526:2005/05/12(木) 22:56:12
>>537
ご回答ありがとうございます。
チュートリアルは、紹介していただいた以外の、類似したページを
みていました。
紹介していただいたページも参考に、もう少し頑張ってみたいと思います。
JLabelで画像を表示させるのはsetIconでしたね。失礼しました。
552デフォルトの名無しさん:2005/05/12(木) 23:11:01
学校の課題で苦戦しております。
"住所","ナマエ","電話番号",”生年月日”
"住所","ナマエ","電話番号",”生年月日”
"住所","ナマエ","電話番号",”生年月日”
       .
.
"住所","ナマエ","電話番号",”生年月日”
となっているcsvファイルをナマエ順にソートする
classを3つぐらいに分けてやるやりかたをおしえてください、もしくは参考になるページがありましたら
よろしくお願いします。

553デフォルトの名無しさん:2005/05/12(木) 23:20:47
>>552
まずは行をエンティティビーンに分割するクラスを作る。
それをソートする。アルゴリズムはお好きなモノを。
表示するJSPを作成する。
554デフォルトの名無しさん:2005/05/12(木) 23:50:44
結城本のデザインパターンマルチスレッド編の
Two-Phase TerminationパターンをThreadを継承したクラスではなく、
Runnableを実装したクラスで実行したいのですが、どうしてもうまくいきません。

this.interrupted();の部分が、Runnableのインターフェースでは実行できないのが原因なのですが、
何かいい方法はあるでしょうか?

Thread.interrupted()などとしても、interrupted()を実行するのはWorkerThreadではなく、
mainスレッドになってしまい、うまく動作しませんでした。

よろしくお願いします。

public class WorkerThread extends Thread {
private volatile boolean _shutdownRequested = false;
public void shutdownRequest(){
_shutdownRequested = true;
this.interrupted();
}
public void run() {
try {
while(!_shutdownRequested){
System.out.println("現在動いています");
Thread.sleep(3000);
}
} catch (InterruptedException e){
doShutdown();
}
}
private void doShutdown() {
System.out.println("このメソッドを実行してから、終了します");
}
}
555デフォルトの名無しさん:2005/05/12(木) 23:55:54
スレッド以前にJavaの文法勉強したほうがいいよ
たぶん、スレッドがらみでなくてもおなじことがあればおなじように転ぶから
556デフォルトの名無しさん:2005/05/13(金) 00:07:21
>>555
答えられないのなら黙っててください。
557デフォルトの名無しさん:2005/05/13(金) 00:08:24
はげわら
559デフォルトの名無しさん:2005/05/13(金) 00:16:06
◆9NQzQ21lxって公開だっけ
560デフォルトの名無しさん:2005/05/13(金) 00:47:54
>>554
RunnableにするってことはどこかでThreadインスタンスを作る必要がありますから、
なんとかしてそのインスタンスを渡してそれからinterrupted()メソッドを呼び出してみては?
561デフォルトの名無しさん:2005/05/13(金) 01:15:31
>>554
public class WorkerThread extends Thread {
private volatile boolean _shutdownRequested = false;

public void shutdownRequest() {
_shutdownRequested = true;
this.interrupt();
}

public void run() {
try {
while (!_shutdownRequested) {
System.out.println("現在動いています");
Thread.sleep(3000);
}
} catch (InterruptedException e) {
} finally {
doShutdown();
}
}

private void doShutdown() {
System.out.println("このメソッドを実行してから、終了します");
}
}

>>555に同意。
あとAPIドキュメントをちゃんと読みましょう。
562デフォルトの名無しさん:2005/05/13(金) 01:24:25
public class WorkerThread implements Runnable {
  private volatile boolean _shutdownRequested = false;

  public void shutdownRequest() {
    _shutdownRequested = true;
    Thread.currentThread().interrupt();
  }

  public void run() {
    try {
      while (!_shutdownRequested) {
      System.out.println("現在動いています");
      Thread.sleep(3000);
    }
    } catch (InterruptedException e) {
    } finally {
      doShutdown();
    }
  }

  private void doShutdown() {
    System.out.println("このメソッドを実行してから、終了します");
  }
}
563デフォルトの名無しさん:2005/05/13(金) 01:29:27
public class WorkerThread implements Runnable {
private volatile boolean _shutdownRequested = false;
private volatile Thread _thisthread = null;

public void shutdownRequest() {
_shutdownRequested = true;
if(_thisthread != null) _thisthread.interrupt();
}

public void run() {
_thisthread = Thread.currentThread();
try {
while (!_shutdownRequested) {
System.out.println("現在動いています");
Thread.sleep(3000);
}
} catch (InterruptedException e) {
} finally {
doShutdown();
}
}

private void doShutdown() {
System.out.println("このメソッドを実行してから、終了します");
}
}
564デフォルトの名無しさん:2005/05/13(金) 01:44:58
.NETのアセンブリのような仕組みはJavaにあるのですか?
565デフォルトの名無しさん:2005/05/13(金) 01:54:25
>>564
何ができると「アセンブリのような仕組み」と思うかによる。
566デフォルトの名無しさん:2005/05/13(金) 01:59:15
.NETのアセンブリってどんなものなのか説明してごらん?
567デフォルトの名無しさん:2005/05/13(金) 02:16:05
>>564
>>566 が説明して欲しいってさ。
568デフォルトの名無しさん:2005/05/13(金) 02:19:43
オレモシリタイ
569解答予想:2005/05/13(金) 02:27:53
googleで調べろ
570デフォルトの名無しさん:2005/05/13(金) 03:28:33
static なメソッドの中で、
新たにインスタンスを生成せず、
自分自身の Class オブジェクトを取得するにはどうしたら良いでしょうか?

インスタンス化されているところでの this.class に相当するものを、
static なところで取得したいです。
571デフォルトの名無しさん:2005/05/13(金) 03:37:35
>>570
ClassのforNameメソッドを使う
572デフォルトの名無しさん:2005/05/13(金) 05:44:42
>>526
単にHTMLのレンダリングでいいのであれば
そのHTMLの文字列をそのままJLabelのテキストに張ればいい。
SwingのたいていのコンポーネントはHTMLを解釈してくれる。
573デフォルトの名無しさん:2005/05/13(金) 08:12:09
>>570
普通に、「そのクラス名.class」ってやれば?
574554:2005/05/13(金) 08:44:00
>>556を書いたのは、自分ではないです。

>>563
どうもありがとうございました。
これで、バッチリ動きました。
大変勉強になりました。

>>562
この方法は自分でも試してみたのですが、
Thread.currentThread().interrupt();では、InterruptedExceptionを投げさせることが出来ないので、
たとえば、Thread.sleep(30 * 60 * 1000); のようになっていると、
シャットダウンまで最大30分待たなければならなくなります。
575デフォルトの名無しさん:2005/05/13(金) 09:19:23
562 じゃなくて 563 の方法じゃないと駄目だよ
外部から呼び出したメソッドで currentThread としても、それは呼び出したスレッド
が返ってくるだけで目的のスレッドじゃないです
576デフォルトの名無しさん:2005/05/13(金) 11:18:30
>>563
WorkerThread が shutdownRequest() 以外から
interrupt() された時の事を考慮してないような。
577デフォルトの名無しさん:2005/05/13(金) 11:40:39
RMIサーバへのNaming.lookupで、タイムアウト時間を指定するにはどうしたらいいんでしょうか。
addToEnvironment("jnp.sotimeout", "??");したInitialContextのlookupに直すとかやってみたけど変わりません。
578デフォルトの名無しさん:2005/05/13(金) 14:58:40
JLabelとかがテキストをHTMLとして解釈してくれるのは、
最初の6文字が <html> (case区別なし)である場合。
いい仕様だとは思えんが……
579デフォルトの名無しさん:2005/05/13(金) 15:01:03
この仕様で助かってる人も多いと思うが
580デフォルトの名無しさん:2005/05/13(金) 16:58:02
>>576
while (!_shutdownRequested && !_thisthread.isInterrupted()) {

こうしたらOKかな?
581デフォルトの名無しさん:2005/05/13(金) 17:33:24
>>578
<html>を表示したいときはどうしたらいいの?
582デフォルトの名無しさん:2005/05/13(金) 17:35:12
>>580
> こうしたらOKかな?
ダメだと思われ。
interrupt() された場合は、 while()ループの外に出ちゃうから、
ループの終了条件に記述追加しても補足出来ないはず。

一行だけ直すってルールでやるなら
>> Thread.sleep(3000);
try{ Thread.sleep(3000); }catch(InterruptedException e){}
にするぐらいしか無いのでは?
583580:2005/05/13(金) 17:51:19
>>582
根本的に勘違い・・・

while (!_shutdownRequested) {
System.out.println("現在動いています");
try {
Thread.sleep(3000);
} catch (InterruptedException e) {}
}
doShutdown();

多分こうすれば shutdownRequest()以外からのinterrupt()をスルーできると思う
#doShutdown()以外からのinterrupt()でも正しく終了させる方法を考えてた・・・orz
584デフォルトの名無しさん:2005/05/13(金) 17:58:43
質問があります。
例えばこのサイトでは、E-mailの欄に入れる事が可能な最大文字数は制限されていませんが、
E-mail欄に入れる事のできる文字数を制限されている掲示板もあります。
その掲示板で、E-mail欄に入れる事ができる最大文字数を、
例えば半角100文字から半角200文字に増やすにはどうすればいいのでしょうか?
585デフォルトの名無しさん:2005/05/13(金) 18:04:11
なぜこのスレで質問する気になったか教えてくれれば
答えてもいいよ.
586デフォルトの名無しさん:2005/05/13(金) 18:04:39
>>584
スレ間違えてないか?
587デフォルトの名無しさん:2005/05/13(金) 18:05:56
申し訳ありません。PCに関しての知識は全くなく完全な初心者で、
どこのスレに質問していいかも分からなかったので、
初心者大歓迎というこのスレにて質問してみました。
588デフォルトの名無しさん:2005/05/13(金) 18:07:14
>>587
お願いだから詳しい人に頼め
589デフォルトの名無しさん:2005/05/13(金) 18:11:28
>>581
"<html><body><html></body></html>" とかすれば良いのでは?
590デフォルトの名無しさん:2005/05/13(金) 18:12:28
>>587
Javaに対しての質問・相談な
【】の中はおまけだ
591589:2005/05/13(金) 18:12:41
失敗
"<html><body>&lt;html&gt;</body></html>"
全角& は 半角&に置き換えてね。
592587:2005/05/13(金) 18:14:34
お手数ですがどのようなスレにて質問すればいいのか教えていただけないでしょうか?
593デフォルトの名無しさん:2005/05/13(金) 18:15:06
>>589
htmlで記述しろって言いたいんだろうけど
その内容ははずかしいな.
594デフォルトの名無しさん :2005/05/13(金) 18:20:53
>>587
どういった方法で制限かけられているかによるんじゃない?
たとえばinputタグのmaxlengthやjavascriptだったら書き直せばいい。
サーバー側のバリデートだったら無理だろう。
595デフォルトの名無しさん:2005/05/13(金) 18:22:02
>>592
開発者なの?
ならそういう質問はこないと思うし
すでにそういう制限があるサイトがあってこまるというのならそこの管理者にいうしかあるまい

開発としてならWEBProg板にでもいけばよろし
596デフォルトの名無しさん:2005/05/13(金) 18:27:24
<INPUT TYPE="text" NAME="mail" SIZE="26" istyle="3" MODE="alphabet" maxlength="100" VALUE="">
となっておりました。どのような方法で書き直せばいいのでしょうか?
目障りかと思いますが、時間が空いていて気が向いた方いらっしゃったら
答えていただけたら嬉しいです。
開発者でもなんでもありません。PC初心者です。
597デフォルトの名無しさん:2005/05/13(金) 18:36:02
598デフォルトの名無しさん:2005/05/13(金) 18:36:56
PC初心者板というのが存在します.
参考までに.
599デフォルトの名無しさん:2005/05/13(金) 18:38:36
>>596
管理者にメールするのが一番PC初心者向きだね.
600デフォルトの名無しさん:2005/05/13(金) 19:07:11
皆様お手数おかけしました。ありがとうございました。
601587:2005/05/13(金) 22:52:14
すみませんがあと1つ質問があります。
このサイトでは、書き込むというボタンを押すと確認をするような画面が出てきます。
しかし他の掲示板を見ると、そのような機能はやはり難しいと思います。
ですので私の場合はどのような関数を作ればよいのでしょうか?
602デフォルトの名無しさん:2005/05/13(金) 22:57:56
char ch = 'あ'
ってあったとして、この ch に要素を追加したいんですけど、

ch = ('あ' + 'い');

ってやると精度が落ちてる可能性とか言われちゃうんです、
+の足し算とかはint型とかだったら使えるけど、char型だと使えないのかな。

こういうことしたいときってどうやって要素追加したらいいんでしょうか?
くだらなすぎる質問かもしれませんが、何卒。
603デフォルトの名無しさん:2005/05/13(金) 23:04:03
charじゃなくてStringにしてみれば?
文字と文字列は違うのよ。
604602:2005/05/13(金) 23:07:27
>>603
なるほど、ちょっとやってみます。

もしかしてchar型の変数って1文字だけしか扱えないとかですか?
605デフォルトの名無しさん:2005/05/13(金) 23:08:51
>>604 正確には文字ではなく整数だからね。
606デフォルトの名無しさん:2005/05/13(金) 23:29:47
>>602
>+の足し算とかはint型とかだったら使えるけど、char型だと使えないのかな。
使えるけど、char型の数 + char型の数 の計算結果は2項数値昇格によって
int に格上げされるからそのままでは charには代入できない。

ちなみに、
> ch = ('あ' + 'い');
を ch= (char)('あ' + 'い');
とやっても ch は "あい" にはならない。

>>604
基本的に char は 1文字だけしか扱えない。
本当はサロゲートペアとか複合文字とかあるので1文字とは限らないんだけど。
607602:2005/05/13(金) 23:35:15
>>604
>>605
なるほど、とりあえずchar型では
ch = あい
とすることはできないようですね。

で、ちょっと気になったんですが、

>> ch = ('あ' + 'い');
>を ch= (char)('あ' + 'い');
>とやっても ch は "あい" にはならない。

の(char)の部分てどんな意味があるんでしょうか?
608デフォルトの名無しさん:2005/05/13(金) 23:36:38
>>607
>(char)の部分てどんな意味があるんでしょうか?
おいおい・・・
キャストでググってこい
609デフォルトの名無しさん:2005/05/13(金) 23:51:15
>>607
とりあえず、「charとはなにか」を一から学びなおすことをお勧めする。
610デフォルトの名無しさん:2005/05/13(金) 23:59:41
hatena.org/javaとか?
611デフォルトの名無しさん:2005/05/14(土) 00:23:44
Jarの中に
・ClassA
・hoge.jpg

があるんですが、ClassAからhoge.jpgにアクセスする方法がわかりません。
どなたかご教示ください。
612デフォルトの名無しさん:2005/05/14(土) 00:49:36
すみません、ちょっとお聞きしたいんですが、
サーブレットとjspで作ったサイトで携帯からのアクセスがあります。
携帯のバックボタン対策をno-cacheでやっているのですが、
クリアボタン(バックボタン)が押されたときに
指定のページに飛ばしてくれ、といわれました。
これってjavascriptで実現できますでしょうか?
携帯上でjavascriptって動くんでしょうか?
613デフォルトの名無しさん:2005/05/14(土) 00:53:16
>>612 スレ違いだが、全部サーバーサイドで解決できるということだけは
教えてあげる。
614デフォルトの名無しさん:2005/05/14(土) 02:05:56
戻るボタンの対策は、サーバーサイドじゃ無理でしょ。携帯の場合は読み込みなおさないし。
OperaとかPC用サイトが見れる携帯なら、JavaScript使えるのかな。
615デフォルトの名無しさん:2005/05/14(土) 11:56:58
そもそもjavascriptはOFFにできるわけで
戻るボタン押してもその後ちゃんと動くようにやればいい
616デフォルトの名無しさん:2005/05/14(土) 13:30:28
ヒント セッションID+データベース
617桜木:2005/05/14(土) 16:38:05
今配列について勉強してますが、ある問題が分かりません。
「一連の整数(1〜100まで)を5つ入力し,その中の最大値と最小値を表示する
プログラムを作る.」
これってif文やfor文もつかうんですよね?私が考えたのは
public class hairetu {

public static void main(String[] args) {
double[]x = new double[100];
最初の値と次の値を比較(小さいほう又は大きいほうを覚える)
     その値と次の値を比較 (``)
     

}
}
ってかんじで、細かい文の構成が浮かびませんorg
できる人にとっては簡単かもしれませんがよかったら教えてください。
618デフォルトの名無しさん:2005/05/14(土) 16:42:50
ちょっと待て
一連の整数の……ってのは1〜100の中から5つ選ぶってことか?
だったら何故double型を使って、何故100個配列を用意した?
619デフォルトの名無しさん:2005/05/14(土) 16:47:15
620デフォルトの名無しさん:2005/05/14(土) 16:47:34
http://HDOfa-06p3-81.ppp11.odn.ad.jp/
wwwwwwwwwwwwwwwwwwうはっwwwおkwww
っうぇっwwwwwwっうぇ
wwwwwwwwwwwwwww
wwwwwwwwwwww

うはっwww
621デフォルトの名無しさん:2005/05/14(土) 16:53:44
>>618
すいません。まちがいですorg
622デフォルトの名無しさん:2005/05/14(土) 16:55:08
この板は山田君が元気だな。
623デフォルトの名無しさん:2005/05/14(土) 16:57:43
上のほうにあるからね
624デフォルトの名無しさん:2005/05/14(土) 17:09:03
しかもなんでorgなんだ?
625デフォルトの名無しさん:2005/05/14(土) 17:20:19
or2だろ
626デフォルトの名無しさん:2005/05/14(土) 20:27:42
質問です。

InputStreamクラスを用いて、アップロードしたxlsファイルを
中身を読み込んで、チェックするなどの作業をしているのですが、
メモリが足りなくてクライアントマシンではout of Memoryが出てしまいます。
なので、サーバにwarファイルを作って、サーバで動かしているのですが、
それでもout of Memoryになってしまいます。

ちなみにxlsファイルのサイズは4500KBくらいあるのですが、
これって常識はずれの大きさなんでしょうか。
WEBでこんなサイズのファイルを取り扱ってはいけないのでしょうか。

ちなみにクライアントのマシンのメモリは768です。
627デフォルトの名無しさん:2005/05/14(土) 20:30:00
>>626 -Xmx500m でとりあえず逃げる。あともしかしてxlsファイルの
処理にPOI使ってるとしたら、あれすげーメモリ大食いだからあきらめれ。
628612:2005/05/14(土) 20:33:03
レス下さった方ありがとうございます。
スレ違いでしたか?
質問相談スレだから平気だと思ったんですが、すみません。
>>613、616
まずはクライアントから要求を出さないと
サーバーサイドに来ませんよね。
携帯の端末に表示されたWebサイト上での話しですから・・・。
これを拾えるのはJavaScriptしかないと思ったんですけど、
携帯に入ってるブラウザはJavaScript使えるかよくわからなかったもので。

>>615
すみません、戻るボタンを押してもその後ちゃんと動くって
どうやったらよいのでしょう。
629デフォルトの名無しさん:2005/05/14(土) 20:33:17
>>627

早速のレスありがとうございます。
POIを使ってます。
そうですか、メモリ大食いですか・・・。
パートナに薦められて使ったのですが、騙されますたorz
自分の知識不足のせいですね。。。
630デフォルトの名無しさん:2005/05/14(土) 21:01:02
>>628 >>1を百回声に出して読んでください。
あとこの板のローカルルールも2回くらい読んでください。
631デフォルトの名無しさん:2005/05/14(土) 21:22:12
>>629
ま、そういうのを騙されたと言うようなやつにはアドバイスしたくないわけだが。
632デフォルトの名無しさん:2005/05/14(土) 21:39:15
いちいちあげ足とらなくていい
633デフォルトの名無しさん:2005/05/14(土) 22:37:26
Javaで掲示板つくりたいのだけどどんな知識が必要?
634デフォルトの名無しさん:2005/05/14(土) 22:41:46
633が持ってる知識をまず述べるほうが早い。
635デフォルトの名無しさん:2005/05/14(土) 23:01:13
servletにjspにbeanかな
てかjspだけでいけるか
636デフォルトの名無しさん:2005/05/14(土) 23:04:01
掲示板はJSPでさくっとどうぞ
637633:2005/05/14(土) 23:05:20
Javaについての基本的な知識はあるつもり。
最近、サーバサイドのJavaを勉強し始めた。jspやサーブレットはあまりわかってない。
jspで作る場合、掲示板のログはtxtファイルとかに書き込むという感じでよい?
638デフォルトの名無しさん:2005/05/14(土) 23:14:45
JDBCとかXML使ってもいいぞ
639デフォルトの名無しさん:2005/05/14(土) 23:15:35
掲示板作るのはいいが、設置するサーバはどうすんの?
640デフォルトの名無しさん:2005/05/14(土) 23:17:10
>>637
普通にPostgreSQLでも使った方が楽と思うが。
641633:2005/05/14(土) 23:18:17
>>639
自鯖あり
642デフォルトの名無しさん:2005/05/14(土) 23:43:26
デザインの問題なら適当な掲示板をパールなどから移植するよろし
643デフォルトの名無しさん:2005/05/14(土) 23:52:54
>>641
とりあえずやってみてダメだったらまた質問すればよろし
初心者ならTomcatが同梱されてるNetBeansがわかりやすいかな
644デフォルトの名無しさん:2005/05/14(土) 23:58:08
>>643
わかった。とりあえずやってみる。
645デフォルトの名無しさん:2005/05/15(日) 00:37:19
あの〜、main()メソッドって何でstaticなのでしょうか?
えらい人教えてください、お願いします
646デフォルトの名無しさん:2005/05/15(日) 00:39:23
>>645
とりあえず、static外してみたらよかろう。
647デフォルトの名無しさん:2005/05/15(日) 00:40:50
クラスをロードした時にはクラスしかないからじゃないか?
648633:2005/05/15(日) 00:40:49
だって、インスタンスメソッドのはずないじゃん。
staticの意味を考えてみれば・・・。
649デフォルトの名無しさん:2005/05/15(日) 00:41:46
>>648
Mainと言うクラスのコンストラクタ。と言う実装でも何の支障もなかったはずだ。
そう言うメタな話でしょ。
650デフォルトの名無しさん:2005/05/15(日) 00:42:07
>>648 きみはおとなしく勉強してなさい。
651デフォルトの名無しさん:2005/05/15(日) 00:46:31
アプリケーションのエントリポイントをどうするかなんて
やり方はいくつもあるからなあ。
652デフォルトの名無しさん:2005/05/15(日) 00:47:37
>>651

それに対して

>だって、インスタンスメソッドのはずないじゃん。
>staticの意味を考えてみれば・・・。

この暴言ですよ。
653645:2005/05/15(日) 00:53:37
>>647
開始されたもっとも最初の時点ではいかなるクラスインスタンスは存在してませんよね
この状態でmain()メソッドを呼び出すわけだから(呼び出すためには?)
staticとして宣言されてる必要があるということですか?

>>645>>648
だから、えらい人意外は黙っててください
654デフォルトの名無しさん:2005/05/15(日) 00:54:14
まあアプリケーションを定義するインターフェース(IApplicationとでも
する)を作って、アプリケーションはそれを実装。java.exeのような
ラウンチャは指定されたクラスのインスタンスを生成し、
IApplication#run(String[] args)を呼ぶみたいな仕様もありといえば
あり。いくつかのフレームワークはこの手をつかってるね。

まあSunの偉い人に聞いてください。
655デフォルトの名無しさん:2005/05/15(日) 01:05:24
>>653
大体あっている。あえて言うならば、

×いかなるクラスインスタンスは
○いかなるクラスインスタンスも

あと、文の最後には「。」をつけること。
656645:2005/05/15(日) 01:13:11
>>655
おす。ありがとうございました。
657デフォルトの名無しさん:2005/05/15(日) 01:15:03
うーん、実際にはjava.exeがJNIでmain()をキックするわけじゃなく
VM上でさまざまなお膳立てがされた後でクラスローダが自クラスを
ロードするわけだからなあ。単にわかりやすいっていう理由以外の
積極的な理由はないと思う。
658デフォルトの名無しさん:2005/05/15(日) 03:24:21
>>653
まず仕様を大前提として考えてみると、javaのプログラムを起動する流れはこうだね。

1 javaコマンドの引数にクラス名を渡す
2 javaコマンドがJVMを起動し、JVMは指定されたクラスをロードする。
3 mainメソッドを呼び出す。mainがなければエラーになる。

こういう仕様があって、仕様に合致するには、クラスをロードした段階では
JVM内にはそのClassしかないわけで、そのクラスのstaticメソッドしか呼び出せな
いってことだよね。しかもjavaコマンド引数にメソッド名をわたすわけでもないので、
固定的な名前のメソッドを呼ぶしかない。仕様でそれがmainだと決められた。

もっとつっこんで「なんでそういう仕様にしたのか」という疑問なら、みなが
言っているようにエントリポイントのやり方なんかいろいろ考えられるんだ
けど、たぶん一番分かりやすいからだろうね。

ユーザが指定したクラス単体で起動可能である必要があるから、起動用別
クラスでは困るし、ユーザが書いたコード以外の場所で勝手にインスタンスが
作られても困るから、JVMが勝手にインスタンス化してインスタンス・メソッドを
呼び出すのでもまずい。

となると、クラスロード時に決められた名前のクラスメソッド(staticメソッド)を
呼び出して、インスタンス化などの必要な作業はそこでプログラマが明示的に
行なう、というのが一番シンプルで直感的だってことじゃないかな。
659デフォルトの名無しさん:2005/05/15(日) 04:54:04
JDKをインストールしたら、なんかレジストリ弄られたりコントロールパネルに追加されたり
したんですが、これらの事を回避する事はできませんか?

昔のJDKは解凍して環境変数を設定するだけで使えたと思うのですが・・・
660デフォルトの名無しさん:2005/05/15(日) 05:04:30
確かJREをインストールしないようにすれば回避できたかと
661デフォルトの名無しさん:2005/05/15(日) 05:32:58
>>653
詳しく知りたいなら
http://www.y-adagio.com/public/standards/tr_javalang2/execution.doc.html#44411

とかVM仕様読んでくらさい
662デフォルトの名無しさん:2005/05/15(日) 08:54:34
Java Plug-in とか Java Web Start とか勝手に入れるの止めて欲しいね
663デフォルトの名無しさん:2005/05/15(日) 09:59:17
Java Plug-inは、ちゃんと確認のチェックが出ると思うが。
664デフォルトの名無しさん:2005/05/15(日) 10:09:49
>>663
WebStartが問題だな。。。
665デフォルトの名無しさん:2005/05/15(日) 10:11:21
なんか問題ある?
jnlp(だっけ?)のMIMEタイプ設定するだけじゃない?
666デフォルトの名無しさん:2005/05/15(日) 10:31:00
使わない機能をインストールすることは容量その他の無駄だし、セキュリティ上も問題がある
667デフォルトの名無しさん:2005/05/15(日) 10:39:29
>>666
さっきからいろんなスレで一般論ばっかり書いてるみたいがだ。。。どの辺が楽しいんだ?
668デフォルトの名無しさん:2005/05/15(日) 10:51:11
いろんなスレってどこだ?
今日はこのスレにしか書込んでないのだが・・・
669デフォルトの名無しさん:2005/05/15(日) 11:28:02
>>666
関連付けくらいいいじゃん。だめ?
670デフォルトの名無しさん:2005/05/15(日) 11:59:35
>>659
そういうためのパブリックJREとプライベートJREなんだが
ドキュメントくらい読め
671デフォルトの名無しさん:2005/05/15(日) 12:28:26
しょっちゅう「〜の最新版が…」「〜のインストールの準備…」とかウザイ。
そのたびにCPU100%になって、HDもガリガリなって、精神有害な糞ソフト
672デフォルトの名無しさん:2005/05/15(日) 12:37:16
Windowsのこと?
673デフォルトの名無しさん:2005/05/15(日) 12:55:16
>>672
そう。
674デフォルトの名無しさん:2005/05/15(日) 13:03:46
そっか。Mac使えば?
675デフォルトの名無しさん:2005/05/15(日) 14:52:50
GUIが遅い
676デフォルトの名無しさん:2005/05/15(日) 15:53:49
じゃあおれOSでも使えばいいんじゃね?
677デフォルトの名無しさん:2005/05/15(日) 16:07:56
>675
漢は黙ってX抜きのFreeBSD
678デフォルトの名無しさん:2005/05/15(日) 16:10:45
それはGUI自体がない
679デフォルトの名無しさん:2005/05/15(日) 17:07:44
Solarisでいいじゃねぇか。
680デフォルトの名無しさん:2005/05/15(日) 20:11:38
>>577-578
ワロチw
681633:2005/05/15(日) 22:30:33
超基本的なことを聞くが、サーブレットをコンパイルするためにはJ2SDKだけではだめなのか?
なぜかサーブレットだけがコンパイルできない。J2EEのインストールも必要かな。
682デフォルトの名無しさん:2005/05/15(日) 22:34:30
J2EEつーかサーブレットコンテナな。
Tomcatならservlet.jarにクラスパス通してコンパイルすればよし。
というかそれくらいは自分でぐぐって何とかできるようでないとおぼつかないぞ……
683デフォルトの名無しさん:2005/05/15(日) 22:41:26
>>681
NetBeansいれてないのか
あのIDEいれるといきなりJSP作成から入れるぞ
684デフォルトの名無しさん:2005/05/15(日) 23:02:23
>>681
J2SDKだけじゃダメ。
Tomcatでもなんでもいいから、Servlet APIを提供するライブラリ(JARファイル)が必要。
685633:2005/05/15(日) 23:50:32
みなさんありがとうございます。
がんばってみます。
686デフォルトの名無しさん:2005/05/16(月) 05:38:43
NetBeans使っとけば、コンパイルするためとか動かすための努力は必要なくなるね。
プログラムつくるのに専念できる。
687デフォルトの名無しさん:2005/05/16(月) 07:00:25
コンストラクタで設定した値は、それが final 宣言されていなくても
コンストラクタ終了時にメインメモリに書き込まれるのでしょうか?
(それとも、コンストラクタの変数への設定は、メインメモリに直接書き込まれる?)

たとえば、long や float は、複数のスレッドからのアクセスに対して
非同期ではアトミック性すら保証されていないので、
何らかの同期が必要になるのは知っているのですが、

class Hoge {
private long x;
Hoge() { x = 1; }
synchronized long getX() { return x; }
synchronized void setX(long x) { this.x = x; }
}

こういうときに、インスタンスを生成してから
他のスレッドから getX() を呼び出された場合、
正しく x を読めるのでしょうか?
それとも、コンストラクタを

Hoge() { synchronized(this) { x = 1; } }

などとしないといけないのでしょうか?

メインメモリに書き込まれてさえいれば、
他のスレッドから初めてその値を読もうとすれば、
それはメインメモリから読み取るので、万事良しなのですが。。
688デフォルトの名無しさん:2005/05/16(月) 07:10:47
>>687
自己レス

>他のスレッドから初めてその値を読もうとすれば、
この部分、同期されていれば初めても何もなかったです。
失礼
689デフォルトの名無しさん:2005/05/16(月) 07:27:30
メインメモリに直接書き込まなかったら、どこに書き込まれるんだろう・・・・
690デフォルトの名無しさん:2005/05/16(月) 07:55:44
>>689
ローカルキャッシュからライトバックされてない状態というのもありうる。
マルチCPUの場合これは結構問題になる。

synchronizedはこのキャッシュの同期も面倒をみるように
VMの仕様で決められている。

>>687
変数1個だけが問題なら宣言にvolatileつければいい
691デフォルトの名無しさん:2005/05/16(月) 08:32:00
>>686
便利なんだけど、そうするといつまでたっても>>681みたいなのが
減らない希ガス。どこに何を配置しなければいけないとか、
ビルド時と実行時でそれぞれ必要なクラスパスとかを
理解しないままなのもどうかとおもうけどな・・・
692デフォルトの名無しさん:2005/05/16(月) 08:42:41
べつにそれでいいんじゃないの?
633って自分じゃJavaの基本知識はあるとかいってるけど、
かなり怪しい感じするし覚えられることから順番に覚えていけば。
693デフォルトの名無しさん:2005/05/16(月) 10:42:23
JSPをTOMCATをつかってローカルホストで表示させたいのですが、うまくいきません。
javaの環境設定はできており、トムキャットもhttp://localhost:8080/にアクセスして、猫ちゃんのページに
ちゃんと飛べています。そしてTOMCATの中のwebappsの中にtestというJSPテキストをつくり、
拡張子をwarにしました。

そのあとにローカルホストのhttp://localhost:8080/testにアクセスしてみましたが、HTTPステータス 404 - /test
と表示されます。原因がわかるかた教えていただけたらうれしいです。
お願いいたします。
694577:2005/05/16(月) 10:43:30
タイムアウト指定はないんですかねえ。
ここんとこずっとぐぐってるんですが。
695デフォルトの名無しさん:2005/05/16(月) 10:46:06
>>693
> そしてTOMCATの中のwebappsの中にtestというJSPテキストをつくり、 拡張子をwarにしました。
ここが間違い
696デフォルトの名無しさん:2005/05/16(月) 10:51:15
697デフォルトの名無しさん:2005/05/16(月) 10:58:24
いろいろなサンプルを見ていると、
main関数のなかで自分自身のクラスをインスタンス化してメソッドを呼び出している
ものと、インスタンス化せずにメソッドにpublibをつけて呼び出すのと
2つあったのですが、どちらがいいのでしょうか?
それぞれのメリットなんかを教えていただけないでしょうか?

698デフォルトの名無しさん:2005/05/16(月) 11:58:40
>>691
それは、まず動かせるようになって、概要がつかめてから改めて勉強すればいいと思う。
なにも知らないうちはまず動かすことが大事
699デフォルトの名無しさん:2005/05/16(月) 12:07:30
700デフォルトの名無しさん:2005/05/16(月) 12:34:00
javaを勉強することになったのですが、
コンパイラって何?って段階で、入門書片手に準備しようとしたんですが
JDKとかJ2SEをDLしようとすると何回やってもnotfoundになりますorzなぜー
他のコンパイラとか探さないとだめなんでしょうか。
初心者にすらなれてないのでスレ違いかも・・・ゴメンナサイ(´・ω・)
701デフォルトの名無しさん:2005/05/16(月) 12:36:15
>>700
どこからダウンロードしようとしているんだ。
アドレスを出せ。
702700:2005/05/16(月) 12:42:18
http://java.sun.com/products/archive/index.html
このへんです。どこのjava初心者サイトさんもサンマイクロシステムのSDK、ってリンクされてるんで行ってみたんですが
DLしようとするとnotfoundになります。PCや回線の問題なんだろうか・・・
703デフォルトの名無しさん:2005/05/16(月) 12:43:50
>>700
DLするならNetBeansバンドルのもの落としてNetBeans使っとき。
とりあえずNetBeans使っておけば、「コンパイラって何?」のままJavaのプログラムはひととおり勉強できる。
704デフォルトの名無しさん:2005/05/16(月) 12:45:17
どっからURL仕入れたんだか・・・
http://java.sun.com/j2se/1.5.0/ja/download.html
705700:2005/05/16(月) 12:48:46
あああ。やっぱりnotfoundになってしまう〜
理由にも思い当たらない程度の頭なので、出直してキマス。
知り合いに落としてもらうとかしかないのかな。
ご迷惑おかけしてすいませんでした orz
706デフォルトの名無しさん:2005/05/16(月) 12:58:55
・・・なにがnotfoundになるか説明する頭もないならしかたないな。
707577:2005/05/16(月) 13:06:49
javaVMへの引数に-Drmi.〜を指定するという手法があったんで試してみました。
認識してくれないみたいでした。

RMISocketFactoryを継承するという手法があったんで試してみました。
指定できるのはsoTimeoutだけ。
しかもsoTimeoutは使われる場所が違う、ということで…。

「該当機能なし」ということで結論を出しました。
お邪魔しました。
708マニア:2005/05/16(月) 13:10:52
>>700
コンパイラってのはコンパイル(プログラムを機械語に訳す)ためのアイテムって理解しましょう!
んで コンパイラとjavaとかセットになってるJDK1.4.2とかあるかダウンロードしてしまえば
あんま考えなくても大丈夫! 付録CD−Rついてるjava本とか買って勉強するといいよ
環境設定とかしたことないなら苦労するとおもうけど。苦労しただけマニアになれる!
がんばれ!
709マニア:2005/05/16(月) 13:12:31
>>700
コンパイラってのはコンパイル(プログラムを機械語に訳す)ためのアイテムって理解しましょう!
んで コンパイラとjavaとかセットになってるJDK1.4.2をダウンロードしてしまえば
あんま考えなくても大丈夫! 付録CD−Rついてるjava本を買って勉強するといいよ
環境設定とかしたことないなら苦労するとおもうけど。苦労しただけマニアになれる!
がんばれ!
710700:2005/05/16(月) 13:14:02
>>706
あぁあ、そういえば書いてない!ほんとに申し訳ないです
どのVerも、DLボタンを押してもページが変わらない、もしくはnotfoundになってしまって、
ダウンロードページに飛べなかったんです。
知り合いに落とせるかどうかだけ確認してもらったんですが、知り合いの方は問題無く落とせてるみたいです。

そして私も、試しにDLファイルの直リンの方を教えてもらったら落とせましたorz
お見苦しいレス残しまくってすいませんでした・・・
答えてくださった方、どうもありがとうございました。
711700:2005/05/16(月) 13:18:20
>>708
なるほど〜・・・
人間が理解できるだけじゃダメなんですね。(そりゃそうか・・・)
基本理解するにも時間はかかるだろうけど、地道にがんばってみます。
ありがとうございました!
712デフォルトの名無しさん:2005/05/16(月) 14:01:24
>>710
つか、あんなマニアックなURLじゃなくて、普通に最新版のURLから落とせばいいだろ
713デフォルトの名無しさん:2005/05/16(月) 14:03:55
>>710(700)
>>704はスルーですか?

# まああれが>>700に対するレスだと理解する能力はなさそうだが
714700:2005/05/16(月) 14:38:23
>>713
>>705>>704へのレスのつもりでした。

マナーに関しても勉強しなおしてきます。
気分を害した方いたらごめんなさい。
715700:2005/05/16(月) 14:51:48
>>712
最新版も古いVerも、全部ダウンロードページに飛べなかったんですorz
本当に説明足りなくてすいませんでした。

謝ってばかりも見苦しいと思うので、これで終わりにしておきます。
失礼しました。
716デフォルトの名無しさん:2005/05/16(月) 15:03:39
プロキシーがおかしいんじゃない?
ま、DLできたならいいけど。
717デフォルトの名無しさん:2005/05/16(月) 16:36:26
jtable内にボタンやチェックボックスを入れるのはどうしたらよいのでしょうか・・・?
718デフォルトの名無しさん:2005/05/16(月) 16:41:33
すんません。おねがいします

フォルダA
  |
 +--test.java
|
   +--htmlフォルダ
     |
     +--test.html

上記のディレクトリ構成で、test.htmlをJEditorPaneのeditorPaneに
貼り付けたいんですが、

try {
editorPane.setPage("html/test.html");
     } catch (IOException e) {
JOptionPane.showMessageDialog(
this,
"読み込みエラーが発生しました。",
"読み込みエラー",
JOptionPane.ERROR_MESSAGE);
}
というコードではエラーとなります。参照先の問題と思うのですが、
setPageメソッドの引数をどう記述すればいいのでしょうか?
719デフォルトの名無しさん:2005/05/16(月) 17:51:54
servletのstatusってどうやって取得できるのでしょう?
setはあるけど、getはないようなので・・・
720デフォルトの名無しさん:2005/05/16(月) 18:21:21
719です。
あるいはstatus初の期値ってなんなのでしょう?
721デフォルトの名無しさん:2005/05/16(月) 18:22:34
一生懸命なところスマンが
> status初の期値
なんかワラタ
722デフォルトの名無しさん:2005/05/16(月) 18:55:28
現在Java1.5.0使ってるんですが、1.4じゃないと見れないサイトがあるっぽい(?)んで1.4使いたいのですが、
どうすればいいでしょうか?
723デフォルトの名無しさん:2005/05/16(月) 19:03:43
1.4を使えば良いんじゃ無いでしょうか
724デフォルトの名無しさん:2005/05/16(月) 19:11:59
1.4落としたんですが、インターネットオプションでjavaのところに1.5しかないんですよ。
javaのフォルダには jre1.5.0_03 と j2re1.4.2_08 が入ってるんですけど・・・
どうやれば切り替えられるのでしょうか(´・ω・`)
725デフォルトの名無しさん:2005/05/16(月) 19:19:10
>>724
情報小出し ( ゚Д゚) ウザー
726デフォルトの名無しさん:2005/05/16(月) 19:21:40
>>724
シラネ
727デフォルトの名無しさん:2005/05/16(月) 19:42:55
で、ブラウザは?
728デフォルトの名無しさん:2005/05/16(月) 19:54:04
XPです・・・
cmdでjava -versionしたら1.5.0でした。
729デフォルトの名無しさん:2005/05/16(月) 19:56:08
>>728
情報小出し ( ゚Д゚) ウザー カエレ
730デフォルトの名無しさん:2005/05/16(月) 20:00:40
>>725=>>729もウザー
答える気がないならスルー
731デフォルトの名無しさん:2005/05/16(月) 20:08:28
>>730 も俺も ( ゚Д゚) ウザー
答える気がないならスルー
732デフォルトの名無しさん:2005/05/16(月) 20:10:35
1.5インストールしたら1,4はつかえねーよ。
全部削除して最初からやれ
733デフォルトの名無しさん:2005/05/16(月) 20:59:40
そうだったんですか・・・
なんか1.4入れてからJavaページ見るだけでページ全部閉じちゃうんですよね
1.5消せばいいのか
734デフォルトの名無しさん:2005/05/16(月) 21:15:27
例えばFor文でまわしたグラフィックを表示したら・・・
たとえば5回まわしたら位置ずらしたら5枚できるけど、これ前に実行したヤツを一回一回消す方法はないのでしょうか?
735デフォルトの名無しさん:2005/05/16(月) 21:22:27
状況よく分からんけど。
ループ中にnewで作らないで、移動させればいいんじゃないの。
736デフォルトの名無しさん:2005/05/16(月) 21:28:28
>734
「消すだけなら」次のを描く前に、前のを描いた領域をそっくり背景色で塗りつぶせばいいんジャマイカ。
737デフォルトの名無しさん:2005/05/16(月) 21:42:31
servletのstatus(レスポンスコード)って
どうやって取得できるのでしょう?
setはあるけど、getはないようなので・・・
もしくは、statusの初期値って何になるのでしょうか?
”SC_OK”ですかね?
738デフォルトの名無しさん:2005/05/16(月) 21:45:55
ブラウザがXPって、なんだかなぁ
739デフォルトの名無しさん:2005/05/16(月) 21:56:50
あるいみ>>700は神かも知れん
俺は長年やっているが、そんなとこ行ったことない
740デフォルトの名無しさん:2005/05/16(月) 21:57:16
>>736,5
う〜〜ん、そうですね。ありがとうございました。
741デフォルトの名無しさん:2005/05/16(月) 22:00:40
>>734
setXORMode(Color c) とかどうだろう?
説明が足りないのでその状況で使えるかどうかわからんが
背景塗るよりはましだと思う
742デフォルトの名無しさん:2005/05/16(月) 22:03:07
>>739
長年やってようが関係ないだろw
という俺もおれもこの間サイト内をいろいろまわってたら
偶然みつけたんだけどね。なんかわかりづらそうだったから
やっぱ普通のページから落とした方がいい。
743デフォルトの名無しさん:2005/05/16(月) 22:05:59
>>737
君は勘違いしているのかなぁ?
HTTP応答コードはサーブレットから見た場合
受ける側ではなくて、どちらかというと作るほうなのです
なので、クライアントに返す(set)メソッドしかないのは当たり前です
たとえばわざと404出したりすることがサーブレットでできるようにしているだけのこと
自分で自分の結果知ってなんになるのか?ということです
744734:2005/05/16(月) 22:08:43
>>もうちょっとつけ加えるとFill・・・で描いた図形を座標ずらしながらsleepとか使いながら動画みたいな感じにしたいのです。
パラパラ漫画みらいな
745デフォルトの名無しさん:2005/05/16(月) 22:09:39
>>744
もちろん1.4であたらしく出たバッファリング方法使うよねぇ?
746デフォルトの名無しさん:2005/05/16(月) 22:14:49
★使用OS 
XP HomeEdition SP2

★使用ソフトウェア名とバージョン
Internet Explorer 6 sp1

★起こった出来事、表示されるメッセージなどを、具体的に詳しく
ここ(http://www.pref.okayama.jp/e-entry/frame_right.htm)の電子申請システムを使うためにjava1.4.2をダウンロードしたんですが、
うまくいきません(javaページを開こうとするとwebページが全て閉じてデスクトップにエラーメッセージらしきものが書かれたメモができる)

★現在の状況(問題発生後に試したこととその結果)
javaスクリプトがうまくいかない場合でぐぐったところインターネットオプションを色々いじるらしいと分かり
java(SUN)タブの <applet>にJRE1.5.0_03を使用 にチェックしてあることを確認しました。
(1.4って項目が無いんで最新版のとこでいいんですよね?)

ここにチェックがあると上記のような問題が起き、チェックしないと電子申請システムが動かないということが判明しました。
八方塞です、どなたか対処法方を教えてくださいませ。お願いします。
747デフォルトの名無しさん:2005/05/16(月) 22:15:31
まずJava以前にダブルバッファがどういうものかから覚えないとダメだと思われ

748デフォルトの名無しさん:2005/05/16(月) 22:16:24
>>746
死ね
初心者質問板にでも行けよカス
749デフォルトの名無しさん:2005/05/16(月) 22:18:55
>>746
その開こうとしている「javaページ」のURLは?
750デフォルトの名無しさん:2005/05/16(月) 22:20:06
>>748
javaの問題で、初心者大歓迎って書いてあったんですがスレ違いなんでしょうか(´・ω・`)
失礼しました・・・
初心者質問板にうつりました・・・
751デフォルトの名無しさん:2005/05/16(月) 22:23:27
>>749
ユーザーIDとかを入力した後なので詳しく書けませんすいませんorz
別の例ですいませんが、例えばここの http://ginnie.jp/mabi/ シミュレータなどでも同じ症状が出て動きません。
752デフォルトの名無しさん:2005/05/16(月) 22:23:36
>>748
かわいそうなことすんなよなぁ
そのひとは『初心者大歓迎』という文字を見て せっかく入ってきたのに・・・
753デフォルトの名無しさん:2005/05/16(月) 22:25:27
>>751
ああ、登録後の操作ページでそうなるってことかぁ

ちなみにJavaインストールして再起動とかしたの?
754デフォルトの名無しさん:2005/05/16(月) 22:26:12
>>743
なんにも設定しないとかはできないってことでしょうか?
初期値みたいなものはないのですか?
755デフォルトの名無しさん:2005/05/16(月) 22:29:34
>>753
再起動何回もしてます

初心者質問板とマルチくさくなって怒られそうだorz
756デフォルトの名無しさん:2005/05/16(月) 22:31:31
マルチくさいというかマルチだろ。
757デフォルトの名無しさん:2005/05/16(月) 22:31:57
いや、だから初期値は
「200」 だよ つまり さっき君が言ってたSC_OKってやつだよ
つうか、これを初期値というのもおかしな話だけど・・・

とにかくサーブレット(プログラマ)がHTTPの応答コードを返さない場合
変わりにTomcatとかApacheが
HTTP 200 OK
とか
404
500
とかいう文字列をきちんと返してくれる

何にも設定しないのは無理
ページが表示されるってことはクライアントのブラウザに必ず200が返されている
ブラウザも「200」が来たら「成功」と判断して表示するわけだから・・・
つーかHTTPプロトコル勉強しないでなぜサーブレットのPGやってんだ?


758デフォルトの名無しさん:2005/05/16(月) 22:35:22
>>755
JREではなくJ2SDK5.0をインストールすることをお勧めする
もしくは、その岡山県に聞いたほうが親切対応が期待できそう
759デフォルトの名無しさん:2005/05/16(月) 23:05:10
>>757
その勉強が必要だと分からないからでしょう。
その人その人で違うけど、そんなもんだと思うけどね、初心者は。
760デフォルトの名無しさん:2005/05/17(火) 01:02:57
>>752
この板はプログラムを書く人の板であって、使うだけの人がきても困るけどな
762デフォルトの名無しさん:2005/05/17(火) 01:45:18
>>761
なにこいつ、まだいたのか?
763デフォルトの名無しさん:2005/05/17(火) 01:47:53
もっさり感を考えるとJavaでクライアントアプリを作るのは現実的じゃないのでしょうか?
Javaはもはやサーバ用アプリ作成言語になってしまったのでしょうか?
764デフォルトの名無しさん:2005/05/17(火) 01:55:45
もっさりかどうか作ってから言えよ
765デフォルトの名無しさん:2005/05/17(火) 01:56:02
V2Cとか速いけどなあ。
特にJ2SE 5.0だと。
766687:2005/05/17(火) 04:51:16
>>690

JLS における synchronized の例 (17.10) でも、
(long じゃなくて int だし、 変数初期化子だけど)
オブジェクトの生成時には同期を取ってない。

また、Doug Lea の本でも、
mutable なフィールド変数に対して
とりわけ同期を取っていない。

web 上に落ちてた、
Java Memory Model mailing list archive でも
それっぽい話の記事を見つけたが、結局よく分からない。
(Doug が、「そんなの問題にならん」みたいに言ってて、
 話が終わってしまった印象)

結局よく分からない。
767デフォルトの名無しさん:2005/05/17(火) 05:19:30
0.1刻みのfor文ってどうやって書けばいいんですか?
i++じゃ1刻みですよね
768デフォルトの名無しさん:2005/05/17(火) 05:22:20
i+=0.1
769デフォルトの名無しさん:2005/05/17(火) 05:38:57
>>768
ありがとう
770デフォルトの名無しさん:2005/05/17(火) 06:51:34
>>722
javac -source 1.5 target 1.4 ファイル名.java

ってやると、多分、1.4対応のクラスファイルを作ってくれる。
771デフォルトの名無しさん:2005/05/17(火) 06:53:07
あ、間違えた。

javac -source 1.5 -target 1.4 ファイル名.java

ね。
772デフォルトの名無しさん:2005/05/17(火) 07:14:58
残念、今はそれが出来ない。
773デフォルトの名無しさん:2005/05/17(火) 07:17:06
>>770-771
仮にそれが出来ても >>722 の問題は解決しないだろう
774デフォルトの名無しさん:2005/05/17(火) 07:20:09
アプレット用JREの選択できなくなったのか・・・
775デフォルトの名無しさん:2005/05/17(火) 08:37:46
Java Web StartにおけるJNLPのargumentを
動的に変化させるサーブレットを作りたいのですが、
Java Web Startが何回もリクエスト送ってくるので(←なぜか不明?)、うまく実装できません。

やりたいことは、URLの後ろにパラメータを記述して、
それをもとにargumentを変えたJNLPを返却するだけです。

JNLPのhref属性の部分にパラメータを設定するとエラーになるし、
設定しないとパラメータが渡せません。
検索したら似たような事を試している人の方法が載っていました。
http://satoshi.kinokuni.org/diary/?date=20030609
http://satoshi.kinokuni.org/diary/?date=20030610

動的にargumentを変化させるサーブレットを作るいい方法がありますか?
静的にしかargumentを指定できないのであれば、
あまりargumentの意味がないと思うのですが。。。
776デフォルトの名無しさん:2005/05/17(火) 08:55:59
>>775
POSTで要求すれば?

試してないが、あなたの示したページを読む限りでは
http://foo/bar/buz.jnlp?a=b
というURLに対して buz.jnlp?a=b というファイルを生成するため失敗した、とある。
なら、POSTなら、URLは
http://foo/bar/buz.jnlp
のままなので、生成されるファイルの名前は buz.jnlp になり正しく動くように思えるが。
777775:2005/05/17(火) 09:59:34
>>776
そうすれば、生成されるファイルは問題なくなるのですが、
Java Web StartがPOSTで要求してくれないです。

処理の流れ
1) ブラウザから呼出 → サーブレット → パラメータを処理してjnlpを返却
2) Java Web Startが起動
3) 受け取ったJNLPのhrefを属性を見て、Java Web StartがJNLPファイルをリクエスト
4) jarのダウンロードと、アプリケーションの実行

こんな感じで処理されるように思います。
1)をPOSTで呼び出しても、3)がGETで呼び出すので、
パラメータが渡らなくなってしまいます。
778デフォルトの名無しさん:2005/05/17(火) 10:05:04
jnlpって使ったことないんだけど。substringできないの?
779デフォルトの名無しさん:2005/05/17(火) 11:31:45
538で質問した者ですが、しつこいようですがもう一度質問させてください

同じフォーム内にドラッグ&ドロップを処理する、リストボックス1とリストボックス2を使用したいのですが
リストボックス1と2では処理の内容を変えたいです。

1と2が同じ処理をするところまではできたのですが、その先がわかりません。
すみませんがご存知の方教えていただけないでしょうか。
780775:2005/05/17(火) 11:46:39
>>778
JNLPは単なる定義ファイルで、
アプリケーションモジュールの場所や、起動方法を指定しているXMLファイルです。
処理は記述できません。
アプレットでいうところのアプレットタグが、別ファイルになっているようなもんです。
781デフォルトの名無しさん:2005/05/17(火) 12:08:25
>>722
コントロールパネル>java>javaタブ
で、javaアプリケーションのランタイム設定の表示をクリック
ここで各バージョンを有効・無効できるので1.4.2を有効にしその他を無効にして
念のためOS再起動してみればいけるんじゃないか?


と初心者の俺がアドバイスしてみる
782デフォルトの名無しさん:2005/05/17(火) 12:25:32
>>780
そのURLで呼びだされるのがサーブレットであれば、
その中でjnlpファイルのスケルトンを読み込んで、
argumentタグを書き換えてresponseに載せてやるというので
いいんじゃないの?と思ったの。
「拡張子なんて飾りです。偉(ry」と、試さず言ってるだけなので、
それでうまくいかないんだったらスマソスルーして。
783デフォルトの名無しさん:2005/05/17(火) 12:28:49
うまくいかない以前に、仕組みや質問意図を取り違えてる可能性もあるけど(汁
784デフォルトの名無しさん:2005/05/17(火) 13:10:54
eclipseでtomcatを使わずにブラウザ表示して
デバッグ実行する方法を教えてもらえませんでしょうか?
環境としては、XP-Proをサーバにして、
IISを使ったサーバ、クライアントシステムなんですが。。。
785デフォルトの名無しさん:2005/05/17(火) 13:21:47
>>784 やりたいことがみえないんだけど,なにを
開発してるの? サーブレット? アプレット?
サーブレットとしたら環境はTomcatのかわりに
なにを使うの?
786デフォルトの名無しさん:2005/05/17(火) 13:22:22
IIS だけじゃJavaサーブレットは動きませんよ?
787デフォルトの名無しさん:2005/05/17(火) 13:33:46
tomcatの代替製品を使う、と。
788デフォルトの名無しさん:2005/05/17(火) 14:33:55
>>782
一応、そのようにしているのが、>>777の1)、2)の処理で、そこまではいいんですが、
あとからWeb Start自信がまた取りに来るのです。 (それが3))
その時に、前に返したのと同じようにargumentを設定して、responseに乗せてやらなければ、
起動時には使われません。
で、argumentを設定するためには、引数を渡してやればいいんですが、
引数を渡すと、今度はファイルを作れなくなるという、悪循環です。

参考に上げたサイトのように、hrefで返すjnlpファイル名に、引数情報を埋め込んだ形に
して、うまく動作することは確認しました。
しかし引数違いのキャッシュがたくさん出来てしまいます。
とりあえず、これでしのいでいます。
789デフォルトの名無しさん:2005/05/17(火) 15:14:00
>>785、786
ありがとうございます。
HTML上で画面の一部にJavaアプレットで画像を起動させるプログラム
なんですが、アプレットの起動はASPXから行うような感じでして。。。
Tomcatとか使わずに、Eclipseでデバッグ環境にHTML画面を表示
させるような方法ってないんですかね?
すいません。
Eclipse初心者なものでうまく説明が不足していまして。
790デフォルトの名無しさん:2005/05/17(火) 15:27:03
Eclipse2.1以上なら、なにもせずともアプレットの実行・デバッグはできる
普通にアプレットをコーディングすれば「実行」や「デバッグ」から、
そのアプレットが見えるはず
791デフォルトの名無しさん:2005/05/17(火) 15:30:46
790>>
ありがとうございます。
「実行」や「デバッグ」の時に引数もしくはパラメータを設定すると
表示出来るという感じでしょうか?
後、その場合アプレットのみが表示出来ると思うのですが、
アプレットも含んだHTML全体の統合環境を表示する事というのは、
Eclipseでは出来ないのでしょうか?
792デフォルトの名無しさん:2005/05/17(火) 15:57:59
自分が知ってる範囲でだけれど、思い当たるものは無い
applet viewer も、アプレットタグ以外は解釈してくれなかったと思うし
地道にブラウザで確認するしかないんじゃ?
793デフォルトの名無しさん:2005/05/17(火) 16:01:41
>>789
なるほど、問題はすでにそんなとこじゃなかったのね。
やったことない人間が口を出すもんじゃないな。
794デフォルトの名無しさん:2005/05/17(火) 16:19:55
>>792>>793
みなさんありがとうございました。
なるほどやっぱり難しいんですね。
参考になりました。
795デフォルトの名無しさん:2005/05/17(火) 19:08:57
>>791
確かにEclispe自体に特別にhtml+appletを意図した
実行環境は存在しない。でもEclispeの世界では
htmlファイルはなんらかのhtmlブラウザに
関連付けられているし,JavaPluginの設定で
リモートデバッグの設定をしておけば,
Eclipseのリモートデバッガ機能を使って
Javaアプリケーションと同等のソース
レベルデバッグができる。だから結果的に
ワークベンチからダブルクリックして...という感じで
実行・デバッグの環境になるよ。

どうしてもIDEっぽくEclipseのワークベンチウィンドウ
内にブラウザを起動したいなら,埋め込みタイプの
ブラウザを起動させることもできるが見た目だけの
問題だよね。
796デフォルトの名無しさん:2005/05/17(火) 19:51:46
>>767
i+=0.1 を採用する場合、
2進数では0.1は切りのいい数字に表せないので、
終了条件で比較を使うと誤差がでる可能性がある。
(なお i は float か double にする必要がある。)

ループには整数を使って、
中で使うときに、1/10 するのが素直な気がする。
797デフォルトの名無しさん:2005/05/17(火) 20:52:11
>>796
おお、なるほどちょっと感動。
798デフォルトの名無しさん:2005/05/17(火) 21:21:26
>>797
ちょっと感動って、プログラミングの教科書にそう書いてなかったか?
799デフォルトの名無しさん:2005/05/17(火) 21:24:16
>>798
>ループには整数を使って、
>中で使うときに、1/10 するのが素直な気がする。

もしこれが書いてあったとしたら数値計算の教科書としては
かなり危うい教科書だな。
800デフォルトの名無しさん:2005/05/17(火) 21:31:22
>>797
あのね、ちょっと助言なんだけど、整数型で補えるところはなるべく整数型を使った方が良いです。
整数型は正確だし、多くの場合は処理も早いので。
特にループのカウンタはできるだけ整数型を使うようにしてください。
801デフォルトの名無しさん:2005/05/17(火) 23:03:51
Java Web Startで、XMLを処理するプログラム作ろうと思ったんだけど
標準のJAXP使おうとすると、XMLプロセサを決める場面で
クライアントの環境を見なきゃないらしく、すっげーこわい文面のダイアログ出す
ハメになる。
なんとか出さないで処理する方法、ない?
802デフォルトの名無しさん:2005/05/17(火) 23:29:51
署名する。
803デフォルトの名無しさん:2005/05/17(火) 23:51:27
>>788
考えた。また頭の中モード

if 引数あり
 <argument>に格納
 sessionに保存
else
 sessionから取得して<argument>に格納
end if

別セッション?
804775:2005/05/18(水) 00:17:55
>>803
それも試したのですが、
Java Web Startが勝手にJNLPファイルを要求するリクエストは、別セッションになってしまいます。
ブラウザに対して返したセッションIDを、Java Web Startは使ってくれません。
805デフォルトの名無しさん:2005/05/18(水) 05:27:46
>>799
なんで?
806デフォルトの名無しさん:2005/05/18(水) 10:15:31
>>805
「素直な気がする。」だからじゃないの?
807デフォルトの名無しさん:2005/05/18(水) 11:48:13
7桁限定の数字にマッチングさせる正規表現がよくわかりません。

[0-9]{7}

これじゃダメでした。。
808デフォルトの名無しさん:2005/05/18(水) 11:50:53
>>807

それじゃダメですね。
809デフォルトの名無しさん:2005/05/18(水) 12:04:01
>>807
つ"(0000000|0000001|0000002|...|9999998|9999999)"
810デフォルトの名無しさん:2005/05/18(水) 12:34:58
\d\d\d\d\d\d\d
811デフォルトの名無しさん:2005/05/18(水) 13:11:51
>>807
(\D|^)(\d{7})(?!\d)
これで グループ2を取るとか。
812デフォルトの名無しさん:2005/05/18(水) 13:31:54
>>812
(?<!\d)\d{7}(?!\d)
こっちの方がよくないか?
813デフォルトの名無しさん:2005/05/18(水) 13:33:06
>>807>>811

ヒント:>>809の目欄
814デフォルトの名無しさん:2005/05/18(水) 13:58:59
コマンドシェルから入力した文字列を出力するプログラムを作成しなさい。
ソースコードファイルはprog1.javaとします。
例 コマンドシェルからjava prog1 data1 data2と入力すると実行結果は
data1
data2
となります。


今JAVAについて勉強しはじめたばかりなのですがこれがわかりません。
書き方または考え方等教えていただけないでしょうか。
815デフォルトの名無しさん:2005/05/18(水) 14:21:04
816デフォルトの名無しさん:2005/05/18(水) 14:21:20
817デフォルトの名無しさん:2005/05/18(水) 14:21:40
main について調べてみればいいと思うよ
818デフォルトの名無しさん:2005/05/18(水) 14:31:39
>>815の場所に移動してみることにします。スマソ。
819デフォルトの名無しさん:2005/05/18(水) 15:59:54
javaを始めたいのですが日本語のコンパイラってどこで手に入ります?
820デフォルトの名無しさん:2005/05/18(水) 16:02:25
821デフォルトの名無しさん:2005/05/18(水) 16:11:43
DB関係について質問させてください。
例えばDBに果物テーブルがあります。内容は、果物IDと名前です。
それに合わせてFruitと言うjavaクラスがあります。Fruitクラスは果物IDと名前のgetter/setterを持っています。
こういう状況でDBから検索や入力をするメソッドを作る場合、Fruitクラスに作るのが良いのですか?
それとも一元にDB関連を処理するクラスを作成し、staticメソッドとして実装する、と言った方法のほうが良いのですか?
822デフォルトの名無しさん:2005/05/18(水) 16:15:58
>>821
話は飛ぶがHibernateとか使うといいぜ
823デフォルトの名無しさん:2005/05/18(水) 16:35:16
>>821
マジレスすると、どっちもおかしいぞ。
なぜに static ?
824デフォルトの名無しさん:2005/05/18(水) 16:43:35
ある独自クラスMyClassのフィールドにdoubleのListがあって、それを返す
インスタンスメソッドgetDoubleListがあり、MyClassのインスタンスmとして、
double d[] = m.getDoubleList().toArray();
としたいんですが、Object[]からdouble[]に変更できないと言われてしまいます
(double[])とキャストしようとしても駄目でした
どうすればListからプリミティブ型の配列を作れるのでしょうか
Listをやめて最初から配列を使うというのは無しでお願いします
825デフォルトの名無しさん:2005/05/18(水) 16:46:07
>>824
これFAQだな

もうひとつ同じ名前のメソッドをみてみそ
826デフォルトの名無しさん:2005/05/18(水) 16:49:39
すいません。
初心者なもので教えて頂きたいのですが、
appletの中で、別のappletを起動させるには
どうコーディングしたら良いのでしょうか?

827デフォルトの名無しさん:2005/05/18(水) 16:50:59
16進数(文字列)から10進数(int)に変換するには
どうすればよいのでしょうか?
828デフォルトの名無しさん:2005/05/18(水) 16:53:46
829デフォルトの名無しさん:2005/05/18(水) 16:54:19
>>827
strtoul
830デフォルトの名無しさん:2005/05/18(水) 16:54:59
ここjavaか、失礼
831デフォルトの名無しさん:2005/05/18(水) 17:09:58
>>825
Listの<T> T[] toArray(T[] a)ですかね?
double d[] = m.getDoubleList().toArray(double[] d);
としてもトークンに構文エラーがあると言われますし、googleでtoArrayを調べても
引数はT[] aではなくObject[]だと書かれています…
832デフォルトの名無しさん:2005/05/18(水) 17:33:15
>>824(831)
>(double[])とキャストしようとしても駄目でした

キャストするならこうする。↓
double d[] = (double[])(m.getDoubleList().toArray());

833デフォルトの名無しさん:2005/05/18(水) 17:43:00
>>832
Object[]からdouble[]へのキャストはできないと言われるんですが
834デフォルトの名無しさん:2005/05/18(水) 17:46:08
>>831
それ構文おかしいから

本当に検索したのか?
835832:2005/05/18(水) 17:48:26
ごめん。プリミティブ型か・・・。

ん?

Σ( ̄□ ̄)



double の List ってそもそもなんやねん・・・。
836デフォルトの名無しさん:2005/05/18(水) 17:51:35
ちょっと待って
Doubleかも
837デフォルトの名無しさん:2005/05/18(水) 17:58:14
(m.getDoubleList()).toArray(Double[]);
じゃないの。
838デフォルトの名無しさん:2005/05/18(水) 18:04:07
Double [] d0 = (Double[])m.getDoubleList().toArray();
double [] d = d0;
839デフォルトの名無しさん:2005/05/18(水) 18:08:30
double [] d = new double[d0.length];
for (int i = 0, m = d0.length; i < m; i++) {
d[i] = d0[i].doubleValue();
}

こうしないといけないのかなあ?
840デフォルトの名無しさん:2005/05/18(水) 18:22:51
申し訳ない。そのクラスのJavadocにdoubleて書いてたんだけど、Doubleの
間違いだったみたいです
Double[]でキャストすると例外が出る理由はわからないけど…
841832:2005/05/18(水) 18:28:25
Double でいいんなら

Double d[] = (Double[])(m.getDoubleList().toArray());

> 例外が出る理由はわからないけど…
その例外が何かくらい書け。
842デフォルトの名無しさん:2005/05/18(水) 18:37:31
だからtoArray(Object[])のほうだとなんd
843デフォルトの名無しさん:2005/05/18(水) 18:54:27
Double d[] = (Double[])(m.getDoubleList().toArray(new Double[m.getDoubleList().size()]));
844デフォルトの名無しさん:2005/05/18(水) 19:01:24
一人わざと通らない書き方を教えようとしてるやつがいる
845デフォルトの名無しさん:2005/05/18(水) 19:44:05
匿名内部クラスにをスレッドを
書いたのですがそれのstartの
させ方はどうすればよいのですか?
846デフォルトの名無しさん:2005/05/18(水) 19:58:45
>>845
好きにすればいい。
っつか、start() 出来ない理由がわからん。
847デフォルトの名無しさん:2005/05/18(水) 20:21:30
とりあえず助詞をはっきりさせてくれないと、解釈できん。
848デフォルトの名無しさん:2005/05/18(水) 20:32:10
>>840
toArray()は、List内の型に関係なく、Object[]を返す。
Double[]をObject[]にキャストしたものではなくて、new Object[]したものを返す。

で、Object[]はDouble[]にキャストできない。ダウンキャストになってないし、Object[]型はDouble型に
変換できない。

Object o = new Object();
Double d = (Double)o;

がエラーになるのと同じこと。
これが (Object[])new Double[]ってな、もともとDouble[]型だったものをObject[]にキャストした
ものだったら、Double[]型に戻せるわけだが、toArray()が返すのは new Object[]で作ったものだ。

new Double[]したものを返して欲しかったら、他の人が言ってるように引数付きのtoArray()で
newする型を指定してやらないといけない。
849:2005/05/18(水) 23:13:05
サウンドを取得再生する方法を教えてくださいm(__)m
850デフォルトの名無しさん:2005/05/18(水) 23:49:49
JavaSoundは調べたのかい?
851デフォルトの名無しさん:2005/05/18(水) 23:53:04
JavaSounds
852デフォルトの名無しさん:2005/05/18(水) 23:53:58
単にappletでauファイルをサーバーから取ってきて鳴らしたいだけだったら笑えるな。
853デフォルトの名無しさん:2005/05/18(水) 23:54:51
JDK 1.4 使って XML + XSL から HTML 作っています。XSL の出力エンコーディングで
euc-jp を指定してやると (<xsl:output method="html" encoding="euc-jp" />) 出力される
HTML のダブルバイト文字がすべて &#dddd; のエンティティ表記になります。

Shift_JIS や utf-8 だとこんなことはないのですが、euc-jp で日本語を出すにはどうしたら
良いでしょうか?
854デフォルトの名無しさん:2005/05/18(水) 23:58:10
どういうPG組んでるか?
856デフォルトの名無しさん:2005/05/19(木) 00:02:18
>>855
ちがうって、多分アジア系の留学生だろ
857デフォルトの名無しさん:2005/05/19(木) 00:03:34
ピグモン?
858デフォルトの名無しさん:2005/05/19(木) 00:05:09
>>854
StreamSource xslsrc = new StreamSource(xslfile);
StreamSource xmlsrc = new StreamSource(xmlfile);
StreamResult htmlresult = new StreamResult(htmlfile);
TransformerFactory factory = TransformerFactory.newInstance();
Transformer transformer = factory.newTransformer(xslsrc);
transformer.transform(xmlsrc, htmlresult);

だがこういう意味じゃなくて? xslfile, xmlfile, htmlfile は File 型。
元の XSL ファイルは Shift_JIS、XML は utf-8 だす。
859デフォルトの名無しさん:2005/05/19(木) 00:06:16
アナタ シャチョか?
860デフォルトの名無しさん:2005/05/19(木) 00:07:32
シャチョさん
861デフォルトの名無しさん:2005/05/19(木) 15:04:42
JAVA1.5では1.4のときと比べて
GUIのTextAreaの使い方変わってませんか?
862デフォルトの名無しさん:2005/05/19(木) 15:17:56
そう思う理由は?
863デフォルトの名無しさん:2005/05/19(木) 18:02:00
Javaでwebブラウザを作ろうと思うのですが、
HTMLの描画に関して、IEコンポーネントなどを
使うなんて事はできるんでしょうか?
864デフォルトの名無しさん:2005/05/19(木) 19:08:38
>>863
Firefox+Javaでググリマクリスティ
865デフォルトの名無しさん:2005/05/19(木) 19:28:08
シャチョか?
866デフォルトの名無しさん:2005/05/19(木) 20:04:00
シャチョさんシャチョさん
867デフォルトの名無しさん:2005/05/19(木) 20:33:08
>>863
JDIC でブラウザコンポーネント使えるように頑張ってる。
https://jdic.dev.java.net/
868デフォルトの名無しさん:2005/05/19(木) 22:17:02
>>864
ググってみましたが、特に関係ありそうな結果はでず・・・
どういうことなんでしょう?

>>867
おお、そこのデモにあるブラウザは確かにIEコンポーネントのようですね。
JDICパッケージならば使えるって事なのかな?
調べてみる事にします。
869デフォルトの名無しさん:2005/05/19(木) 22:25:05
抽象クラスとインタフェースがイマイチよく理解できません。
分かりやすく教えてください。
870デフォルトの名無しさん:2005/05/19(木) 22:32:43
871デフォルトの名無しさん:2005/05/19(木) 23:21:35
違うクラスでも、呼べるメソッドが同じならもう一緒ってことにしとこうよ、というのがインターフェース。

同じくスーパークラスが同じだったら、もう同じってことにしとけるよね。スーパークラスはサブクラスで
置き換え可能だから。

じゃあ継承することが前提の、共通部分だけ実装した基礎クラスみたいなの作っちまって、サブクラスで
未実装のとこだけ実装させようってのが抽象クラス。抽象クラス自体はインターフェースみたいな役割も
もってる。
872デフォルトの名無しさん:2005/05/19(木) 23:58:26
>>871
abstractは完全抽象クラスじゃなくてもいいんだ。やば、仕事でOOなんか使わないから忘れつつある。
873デフォルトの名無しさん:2005/05/20(金) 00:38:51
switch文を使い、成績が5→「大変優秀」、4→「優秀」、3→「普通」、それ以外→「もっとがんばろう」
というメッセージを出すプログラムを作成しなさい。

さっぱりです、おねがいします。
874デフォルトの名無しさん:2005/05/20(金) 00:45:40
>>873
★★ Java の宿題ここで答えます part51 ★★
http://pc8.2ch.net/test/read.cgi/tech/1112154540/

もっとがんばろう。
875デフォルトの名無しさん:2005/05/20(金) 00:47:55
switch(hoge)
case 5:
 大変優秀
・・・略・・・
case 3:
 普通

default:
 もっとがんばろう


ってか、この問題が本当にさっぱりわかんないんだったらプログラム向いてないぞ
876デフォルトの名無しさん:2005/05/20(金) 00:49:20
>>875
error:ツッコミどころが多すぎます。

Error:1
877デフォルトの名無しさん:2005/05/20(金) 00:49:25
>>874
誘導有難うございます。
当方JAVA初心者で自宅のPCにJAVAを落としたのですが
いまいち使い方がわからなくて(学校のと違うため)かきこんでしまいました。
878あんま良いネタ思いつかねぇ:2005/05/20(金) 00:51:56
end:
switch(seiseki){
case 5:
  System.out.println("大変優秀");
  break end;
default:
  switch(seiseki){
  case 4:
    System.out.println("優秀");
    break end;
  default:
    switch(seiseki){
    case 3:
      System.out.println("普通");
      break end;
    default:
      System.out.println("もっとばんがろう");
      break end;
    }
  }
}
879デフォルトの名無しさん:2005/05/20(金) 01:10:59
880デフォルトの名無しさん:2005/05/20(金) 01:11:35
>>878
>end:

ラベルがポイントか?
881デフォルトの名無しさん:2005/05/20(金) 01:19:20
>>880
おお、これで一気に抜けられるぜw
882デフォルトの名無しさん:2005/05/20(金) 01:50:56
以下、文法規則すら違う>877の「学校のJava」と「自宅のJava」とは何なのかについて推察するスレ。
883デフォルトの名無しさん:2005/05/20(金) 01:55:50
学校のJava = JavaScript
884デフォルトの名無しさん:2005/05/20(金) 01:56:46
派遣のJava = JavaScript
885デフォルトの名無しさん:2005/05/20(金) 02:31:57
JavaScriptのほうが難しい
Webにまともなリファレンスが少ないし、IDEの補間もないし、バグでほうだいだし
886デフォルトの名無しさん:2005/05/20(金) 03:13:02

以下、C言語理解は優れるが日本語理解が乏しい>>882が日本語を学ぶスレ
887デフォルトの名無しさん:2005/05/20(金) 12:35:58
>>886
>学校のと違うため
っていうところじゃないか?
888デフォルトの名無しさん:2005/05/20(金) 12:37:45
単にバージョンが違うか学内専用のJAVAなのかというだけだろ

889デフォルトの名無しさん:2005/05/20(金) 12:45:30
java.lang.Longクラスを見ていたら、
JavadocにはlongValueというメソッドが記述されているのに、
PCにインストールした1.4.2_04にはそのメソッドが無い。

他にも相違するメソッドがちらほら。なんでだろ?
890デフォルトの名無しさん:2005/05/20(金) 12:52:55
891デフォルトの名無しさん:2005/05/20(金) 13:09:07
update()とかpaint()以外で g.drawString() するには
どうしたらいいですか?
CでWM_PAINT以外でTextOut()するならGetDC()でHDCが
得られますが、javaでは g を得る方法ってありますか?
public class _2ch extends Applet
{
public static void main(String[] args){
func();//ここでこのパネルのgを引数で渡す?
}
public void mygraph(){
g.drawString("2ch world!", 30, 30);//このgを得たい
}
}
892デフォルトの名無しさん:2005/05/20(金) 13:36:54
public void mygraph(Graphics g){ 略 }
ってやればいいんじゃない?
そういう問題じゃない?
893デフォルトの名無しさん:2005/05/20(金) 13:40:55
>>889
longValueってNumberで定義されてるし、ないってことはあるんか
894デフォルトの名無しさん:2005/05/20(金) 13:42:18
>>891
Graphics取得すればいい

>>892
重症
895デフォルトの名無しさん:2005/05/20(金) 13:49:47
>>892
凡人
>>894
エスパー
896デフォルトの名無しさん:2005/05/20(金) 14:04:23
>>894
不親切
897デフォルトの名無しさん:2005/05/20(金) 14:09:23
getGraphics()
898デフォルトの名無しさん:2005/05/20(金) 14:11:23
おおっもう少しです!!
import java.applet.*;
import java.awt.*;
public class _2ch extends Applet
{
public static void main(String[] args){
mygraph();//ここでこのパネルのgを引数で渡す?
}
public static void mygraph(){
Graphics g = Graphics.getGraphics();
g.drawString("2ch world!", 30, 30);//このgを得たい
}
}
899デフォルトの名無しさん:2005/05/20(金) 14:12:19
出ましたっ!!
C:\WINDOWS\デスクトップ\新しいフォルダ>javac _2ch.java
_2ch.java:9: シンボルを解釈処理できません。
シンボル: メソッド getGraphics ()
位置 : java.awt.Graphics の クラス
Graphics g = Graphics.getGraphics();
^
エラー 1 個
900デフォルトの名無しさん:2005/05/20(金) 14:20:18
アプレットのほうのGraphicsを取得しろよ・・・
901デフォルトの名無しさん:2005/05/20(金) 14:33:55
うまくいかないでし。
import java.applet.*;
import java.awt.*;
public class _2ch extends Applet
{
public static void main(String[] args){
mygraph();//ここでこのパネルのgを引数で渡す?
}
public void mygraph(){
Graphics g = this.getGraphics();//thisはこのアプレット
g.drawString("2ch world!", 30, 30);
}
}
///static でない メソッド mygraph() を static コンテキストから参照できない
902デフォルトの名無しさん:2005/05/20(金) 14:55:06
なんで main から呼び出そうとしているのか
というか、もっと考えようよ
アプレット以前の問題じゃないかい?
903デフォルトの名無しさん:2005/05/20(金) 15:14:46
アプレットとアプリケーションの区別がついてないってか
904デフォルトの名無しさん:2005/05/20(金) 15:30:10
適当なアプレットのソースを見た方が解決が早い。
905デフォルトの名無しさん:2005/05/20(金) 16:01:25
_2ch ni = new _2ch();
ni.mygraph();
906デフォルトの名無しさん:2005/05/20(金) 16:25:49
アプレットのプロジェクトが、急に起動しなくなりました。
sun.applet.AppletViewer at localhost:1304
Thread [main] (Suspended (exception NullPointerException))
TrueTypeFont.open() line: 246
TrueTypeFont.verify() line 368
TrueTypeFont.<init>(String, Object, int, boolean) line 153
FontManager$1.run() rine: 205
AccessController.doPrivileged(PrivilegedAction<T>) line not available [native method]
(以下略)

TrueTypeFontとか出てますが、プロジェクトでもExplorer上でも、
いじったりなどしていないし…なんでしょう?
907デフォルトの名無しさん:2005/05/20(金) 16:34:26
>>775で動的なJNLPの動的な応答について、質問したものです。
前よりマシな方法があったので、レスしておきます。

>>777で書いたように、
1) ブラウザから呼出 → サーブレット → パラメータを処理してjnlpを返却
2) Java Web Startが起動
3) 受け取ったJNLPのhrefを属性を見て、Java Web StartがJNLPファイルをリクエスト
4) jarのダウンロードと、アプリケーションの実行

3)の、「href属性を見て、Java Web StartがJNLPファイルをリクエスト」してくる時に、
サーバー側で、1)と同じレスポンスができない事が問題でした。
1)で返すJNLPレスポンスで、href=""として返すようにしたところ、
3)のリクエストが来なくなり、1)で返したJNLPデータで起動するようになりました。

その代わり、アプリケーションマネージャには、ダウンロード済みのアプリケーションとして
表示されなくなりました。ローカルのJNLPファイルのキャッシュが作成されなくなりました。
(ダウンロードされるJARファイルはキャッシュされます)

>>775参考サイトのように、アプリケーションマネージャに、
同じアプリがたくさん表示されるよりはマシだと思います。
908デフォルトの名無しさん:2005/05/20(金) 20:59:35
XMLEncoder encoder = new XMLEncoder(new FileOutputStream(file));
encoder.writeObject(this);
encoder.close();

でXMLでファイルに永続化しようとしたんですけど、ファイルには

<?xml version="1.0" encoding="UTF-8"?>
<java version="1.5.0_02" class="java.beans.XMLDecoder">
<object class="Config"/>
</java>

しか書かれません

どうすれば、インスタンスの情報をファイルに書き出せますか?
909デフォルトの名無しさん:2005/05/20(金) 21:08:11
おまえら おかしすぎ わらってしまった Applet&main
910デフォルトの名無しさん:2005/05/20(金) 21:40:58
お笑いの人?プロフェッショナルなボケですね
911デフォルトの名無しさん:2005/05/20(金) 21:44:27
>>908
書き込もうとしてるオブジェクトはJavaBeans?
912908:2005/05/20(金) 23:14:43
>>911
普通に作ったクラスです
JavaBeansとかじゃないとダメなんですか?
どうすればJavaBeansにできますか?
913デフォルトの名無しさん:2005/05/20(金) 23:16:41
>>912
普通にクラス作っただけでもJavaBeansっちゃあJavaBeans。
>>911が何を聞きたいのかしらんけど、セッターゲッターでのプロパティを持つかどうかかな。
914デフォルトの名無しさん:2005/05/20(金) 23:33:43
昔はJavaBeansっていったら、BeanDevelopmentKit(BDK)で使うものっていう解説が多かったな
java.beans.BeanInfo 使っているやついるのかな?いまでも
915デフォルトの名無しさん:2005/05/20(金) 23:53:06
>>913
JavaBeansじゃないとXMLEncoderはきれいにまわらんよ
つまりせったーとげったー使ってるわけだが
916908:2005/05/21(土) 00:06:09
セッターとゲッターをちゃんと作ってやれば、XMLで出力できるんですね
とりあえず、Eclipseで作ってみましたけど、まだ同じ結果でした

セッターとゲッターがちゃんと作られてるかみなおしてみます
917デフォルトの名無しさん:2005/05/21(土) 00:09:31
getの後は大文字で・・・とかそういう決まりごとどっかにあったような・・・
それに反すると駄目だよね

>>908
ソース見せろ
918908:2005/05/21(土) 00:26:38

ソースは、ここの
http://www.geocities.jp/retort_curry119/StockGraphSrc0.4.jar

Config.java です
よろしく〜
919デフォルトの名無しさん:2005/05/21(土) 01:07:51
まず短いコードでやってみな
920908:2005/05/21(土) 01:32:58
多分判りました
セッターでセットした値でないと書き出されないみたいですね
921デフォルトの名無しさん:2005/05/21(土) 01:45:25
なにを当たり前のことを・・・
922デフォルトの名無しさん:2005/05/21(土) 01:50:30
Eclipseユーザだったら、EMF使うと気持ちいいんだけどね。
オブジェクトの永続化とか。いろいろプラグイン突っ込んでると
知らない間にインストールされてるし。
923908:2005/05/21(土) 02:09:03
上手くいったと思ったけど、やっぱりダメです

短いのを作ってみたけど、上手くいかなかったです
http://www.geocities.jp/retort_curry119/Tesxml.java

t.setA(777) のコメントを外すと、 a だけは書き出されたんですけど。

セッターでセットした値じゃなくても、
コンストラクタでセットした値は書き出して欲しいです
924デフォルトの名無しさん:2005/05/21(土) 02:40:32
>>923
JavaBeansのコンストラクタは引数を持てなかったはず。
あとBetwixtでは駄目なの?
フォーマットを変えたくなった時とかでも、.betwixtを書き
替えるだけで済むし、なにより簡単。
925924:2005/05/21(土) 02:42:40
今、ソース見た。
コンストラクタの中でセットした値って意味かorz
2行目は取り消しということで
926デフォルトの名無しさん:2005/05/21(土) 02:51:59
>>924
×JavaBeansのコンストラクタは引数をもてない
○JavaBeansは引数のないコンストラクタを持たなければならない

>>923
http://java.sun.com/j2se/1.4/ja/docs/ja/api/java/beans/XMLEncoder.html
>コンパクトな構造: XMLEncoder クラスは内部で冗長性削減アルゴリズムを使用するため、
>Bean のプロパティのデフォルト値がストリームに書き込まれない

たぶん読み込みなおしたらどうせ設定されるんだから書き込む必要はないということだ。
927デフォルトの名無しさん:2005/05/21(土) 03:00:19
>>924
Betwixtは知りませんでした
ググってみます

>>926
なるほどー
コンストラクタ内で値を設定すると
それと同じ値をセッターでセットしても書き出されないんですね


ありがとうございました
928デフォルトの名無しさん:2005/05/21(土) 03:10:35
LinuxでMySQLに接続できません。

DriverManager.getConnection("jdbc:mysql://localhost/testdb?useUnicode=true",user,pass);

で↓こんな例外がでるのですが、、

Exception in thread "main" java.sql.SQLException: null, message from server: "Host 'localhost.localdomain' is not allowed to connect to this MySQL server"

これってどんなエラーか分かりますか?
DBもつくってあるのですが、、MySQLとコネクタの相性か?ともに最新で、次のものを使ってるのですが。
LinuxはFeradoCore2 MySQLは3.23.58-9.1、コネクタは3.2.0-alpha

だれか助けて〜
929デフォルトの名無しさん
簡単に言うと
MySQLはユーザIDとパスワードの他に接続元のIPアドレスの3つの組で接続の許可・拒否している
MySQLのコマンドで
mysql>select * from mysql.user;
ってやてみたらわかる
その中の
Host,User,Passwdが一致していないと駄目だ
(ちなみにPasswdは暗号化されている)
そこに無ければlocalhostのユーザ追加してやれ