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

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

レス数が1000を超えています。これ以上書き込みはできません。
0001デフォルトの名無しさん2005/04/30(土) 19:46:51
過去ログ、関連スレッド、よくある質問とその回答、
質問をする前に、貴方が見なければならないサイトについての情報は、
下の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がお願いします。
0002デフォルトの名無しさん2005/04/30(土) 19:49:07
今だ!2ゲットォォォォ!!
 ̄ ̄∨ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
     ∩ ∩
   〜| ∪ |         (´´
   ヘノ  ノ       (´⌒(´
  ((つ ノ⊃≡≡≡(´⌒;;;≡≡≡
   ̄ ̄ ̄(´⌒(´⌒;;
   ズズズズズ
0003デフォルトの名無しさん2005/04/30(土) 19:49:07
4様が2げっと
0004デフォルトの名無しさん2005/04/30(土) 19:50:09
4さま
0005 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をインストールするならあらかじめ削除しても大丈夫なのですか?
0006デフォルトの名無しさん2005/04/30(土) 21:07:33
サーバーサイドプログラム(CGI、PHP等)でできることを
できるだけお教えください。
自分はクリエーター業ですが、クライアントからっどのような
案件があったときに使用するのでしょうか?
0007デフォルトの名無しさん2005/04/30(土) 21:19:53
>>6
CGIは板違い。PHPはスレ違い。
0008デフォルトの名無しさん2005/04/30(土) 21:22:18
>>5
パッチじゃないよ、フルセットだよ
あと複数バージョンのJREを入れておくことは可能

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

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

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

SDKのほうは仕方あるまい
仮にバグがあったとしても確認が取れてそのバージョンの問題を回避した
コードを使っていたりするので勝手にバージョンアップするわけにはいくまい
どうせSDKも複数バージョン入れれるし、IDEもどのバージョンを使うか
選択出来るし
0021デフォルトの名無しさん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から渡される文字列は特別な状態になってるものなのでしょうか。
よろしくお願いします。
0022デフォルトの名無しさん2005/05/01(日) 01:09:03
Stringはクラス
==で文字列が同一かどうかの判断は出来ない

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

0023212005/05/01(日) 01:23:39
>>22
ありがとうございます。
equalsメソッドを使って解決しました。
0024質問です。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);

}
}

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

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

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

RedhatLinuxEL-ESv3+apache2+j2ee1.4+tomcat4.1.29
根本がわかって無くて申し訳ない。
0040ぽて2005/05/01(日) 22:18:45
(コンパイル等)するプロンプト画面でメインクラスを実行し、
その中で入力していった値を、グラフにすること
(アプレットビューワーが自動で開く)っみたいなことってできるのでしょうか?
最悪に頭の悪そうな質問ですいません;;;
0041デフォルトの名無しさん2005/05/01(日) 23:36:39
>>39
Type3とType4とでコードがかわるとはおもえんが
0042デフォルトの名無しさん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 となっています。)
0043デフォルトの名無しさん2005/05/02(月) 01:00:42
>>42
これはJavaの質問では無いですね
適切なスレで質問されることをオススメします
0044デフォルトの名無しさん2005/05/02(月) 01:02:40
>>40
できます

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

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

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

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

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

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

良い方法または、アドバイスがあれば教えてください。
よろしくお願い致します。
0067デフォルトの名無しさん2005/05/02(月) 23:33:15
>>66
http://tennisclub.ne.jp/motion/res/1_fs001.jpg
スレ違いだからここでは二度と質問しないように。
0068デフォルトの名無しさん2005/05/02(月) 23:39:45
>>67
アンタ教えてるやんw
0069662005/05/02(月) 23:41:55
>>67 そのJPGファイルってどうやって保存したのですか?
教えてください。 よろしくお願い致します。
0070662005/05/03(火) 00:49:33
>>67 そのアドレスってどうやって探したのですか?
0071デフォルトの名無しさん2005/05/03(火) 01:06:51
クセになるのでスルーでお願いします
0072デフォルトの名無しさん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より良い、等、
噂レベルでは耳にするのですが、ソースが見つからず探してます
0073デフォルトの名無しさん2005/05/03(火) 03:58:14
何か文字を入力して適当なメソッドに値を引き渡すとします
それが数字か文字かを判別する手段ってありますか?
JavaScript では isNaN で ture か false を返すものがあったんですが
そういったものはありますか?
0074732005/05/03(火) 04:24:08
調べたら同じものがあるのに気づきました(^^;
スレ汚しすんまそ
0075デフォルトの名無しさん2005/05/03(火) 06:10:55
>>72
つ 【Athron64 + Solaris10 + J2SE Solaris x86 Platform 最強説】
0076デフォルトの名無しさん2005/05/03(火) 07:18:25
>>72 SPEC jbb2000の結果でも眺めて自分できめてね。
http://www.spec.org/jbb2000/
0077デフォルトの名無しさん2005/05/03(火) 07:31:58
>>72 あとこれも。
http://pc.watch.impress.co.jp/docs/2005/0422/amd2_6.jpg
0078722005/05/03(火) 07:36:27
>>75-77
情報ありがとうございます。比較検討してみます。
0079662005/05/03(火) 08:07:15
>>67 そのアドレスってどうやって探したのですか?
0080デフォルトの名無しさん2005/05/03(火) 09:36:53
あの〜、JAVAでプログラミングの課題をしてるんですが、簡単な動画を作れとあるのですが・・・
あのパラパラ漫画みたいなのまではマルチスレッドとかつかってできたんですが、前の絵が消えず、
残像(?)が残ってしまいます・・・これどうやったら消えますか?どなたか教えてください。
0081デフォルトの名無しさん2005/05/03(火) 09:47:14
>>80
ここは宿題スレではない
0082デフォルトの名無しさん2005/05/03(火) 10:47:15
>>81
スレタイ嫁。
役に立たねぇならレスするな。カスがw
0083デフォルトの名無しさん2005/05/03(火) 11:01:13
>>80
透過GIF使ってるんじゃないの?
各コマの画像を作り直してみ。
0084デフォルトの名無しさん2005/05/03(火) 11:21:44
>>82
お前こそ >>1 を読め
より適切な宿題スレがあるだろう

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

これ流行ってるの?
0093デフォルトの名無しさん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 + "個目");

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

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

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

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

interface とかで戻り値やら引数やらが Vector だらけとかってんならともかく
(互換性とかで Collection API 使えない場合は除いて)
0108デフォルトの名無しさん2005/05/03(火) 14:46:28
×戻り値やら引数やら
○戻り値の型やら引数の型やら
0109デフォルトの名無しさん2005/05/03(火) 15:02:44
>>101
�d
0110デフォルトの名無しさん2005/05/03(火) 15:03:05
>>106
関係ない話はやめてくれ
0111932005/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 + "個目");


できました。とてもサンクス。なんか妙なことになってますが……。
0112932005/05/03(火) 15:54:42
>>94-96
アンカーぬけました。重ね重ねどうも。
0113デフォルトの名無しさん2005/05/03(火) 15:55:26
ttp://nullpo.mydns.jp/up/updir/4695.zip
モナーゲーム作ってみた
感想よろ
0114デフォルトの名無しさん2005/05/03(火) 17:38:48
javaを始めようと思っています。
なにか初心者で取っ付きやすい、おすすめの参考書などが
ありましたらお願いします。
0115デフォルトの名無しさんNGNG
四捨五入はどうやればできますか?
0116デフォルトの名無しさん2005/05/03(火) 17:46:43
0.5足してintにキャスト
0117デフォルトの名無しさん2005/05/03(火) 18:08:28
つまりマイナス1.5は四捨五入で1.0であるというわけか
0118デフォルトの名無しさん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 秒待

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

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

return i;
}

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

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

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

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

しかしswingはmethodの数が多すぎて訳がわからない…
いつもsunのSpecから探してるんですが、本とかも買って読んだ方がいいんですかね?
01331242005/05/03(火) 23:27:02
>>126
JAVA2になったことで何が変わったのかは具体的には解らないレベルですが、
「残るものがない」という一言で気持ちに区切りが出来ました。
VJはゴミとして同梱の参考書ごと無視しようと思います。ありがとうございます。
01341212005/05/03(火) 23:49:00
スレ違いでした、初心者板で質問してきます。orz
0135662005/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ソースを見ても、リンク先は別物でした。

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

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

レスがもらえない理由はあなた自身にあります
質問の仕方を勉強しましょう
01431412005/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を選択すると画像を読み込みます。

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

良い方法または、アドバイスがあれば教えてください。
よろしくお願い致します。
0144デフォルトの名無しさん2005/05/04(水) 01:16:54
>>141
俺にもひとつ買ってきてくれ
0145デフォルトの名無しさん2005/05/04(水) 01:42:07
マルチポストか。回答が得られる可能性を自分で狭めてるな。
0146デフォルトの名無しさん2005/05/04(水) 11:06:12
ttp://nullpo.mydns.jp/up/updir/4695.zip
モナーゲーム作ってみた
感想よろ
0147デフォルトの名無しさん2005/05/04(水) 11:30:16
おまえらスレタイくらい嫁
01481/22005/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();
}
}
0149デフォルトの名無しさん2005/05/04(水) 11:32:55
>>148
stacktrase書け。
0150デフォルトの名無しさん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 秒待
01512/22005/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をつけるとエラーがでてしまいます。
なぜなのでしょうか・・・
0152デフォルトの名無しさん2005/05/04(水) 11:39:03
>>151
>>149
01532/22005/05/04(水) 11:43:36
エラー内容は

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

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

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

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

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

orz orz orz orz orz orz orz orz


0161デフォルトの名無しさん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を引数とするメソッドに渡したいのだが。
0162デフォルトの名無しさん2005/05/04(水) 13:43:52
> その逆でjava.io.Writerをjava.io.OutputStreamとして使うにはどうしたらいい?
無理。普通の頭があるならすぐにわかると思うが。
0163デフォルトの名無しさん2005/05/04(水) 13:53:46
>>161
クライアントの実装を自由に変えられるなら
バイナリデータを base64 エンコードして Writer に書き込むような OutputStream を作って繋げるとか。
0164デフォルトの名無しさん2005/05/04(水) 13:54:00
perl の unshift (配列の第一要素に追加)
をjavaで実装するとどのようになりますか?
0165デフォルトの名無しさん2005/05/04(水) 13:58:38
>>154 は、なんでわざわざC++の用語で説明したのかな?バカだから?
0166デフォルトの名無しさん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);
0167デフォルトの名無しさん2005/05/04(水) 14:20:58
>>162
すいません、ふつうの頭すらもってないんで、なぜムリなのかわかりません。教えていただけませんか。
たんにテキストストリームをバイトストリームとして扱いたいというだけなんですが。
0168デフォルトの名無しさん2005/05/04(水) 14:31:09
>>146
ネットに自動接続して個人情報あつめるゲーム
0169デフォルトの名無しさん2005/05/04(水) 15:09:05
>>167
OutputStream out = new ByteArrayOutputStream(); //適当に
Writer writer = new OutputStreamWriter(out, "SJIS");
とかして、writer を任意のバイト列を出力可能なバイトストリームとして扱ってみろ。
できないなら、テキストストリームをバイトストリームとして扱う汎用的な方法は存在しない。

ま、OutputStreamWriter の第二引数が必ず ISO8859_1 とか決めウチできるなら可能かもしれんが、
それじゃ汎用にはならないからね。
0170デフォルトの名無しさん2005/05/04(水) 15:21:42
>>161
getWriter()でなくgetOutputStream()使えよ。
0171デフォルトの名無しさん2005/05/04(水) 17:09:05
int getAngle()=0
ってどっち向きですか?
上?右?
0172デフォルトの名無しさん2005/05/04(水) 17:26:23

芸能人の整形前後画像集
ttp://nbbs.naver.com/nmulti/read.php?board_id=minimansey_3&nid=267&page=3
0173デフォルトの名無しさん2005/05/04(水) 18:31:33
一応、JAVAの基本を勉強してきました。
Swingの本も、一通り読みました。

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

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

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

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

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

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

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

ということで、俺は小遣い管理ソフト推し。
0180デフォルトの名無しさん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()はつかえないのでしょうか?
0181デフォルトの名無しさん2005/05/04(水) 22:03:58
エラーメッセージよんでみそ
0182デフォルトの名無しさん2005/05/04(水) 22:09:28
>>181
そのようなクラスはないということですか?

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

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

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

そういうことかよorz
0188デフォルトの名無しさん2005/05/04(水) 23:39:00
恐怖の宿題がでました・・・
まだJavaを学び始めて半年。
タイピング練習プログラムを作成しろとのこと。
しかもノーヒント。わかんないよ!!
誰か助けてください(T-T)
0189デフォルトの名無しさん2005/05/04(水) 23:44:23
半年もやって何にもわからないとかいうんだったらはっきりいって死んだ方がいいよ。
01903402005/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も表示され。

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

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

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

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

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

http://java.sun.com/j2ee/1.4/docs/api/index.html
0207デフォルトの名無しさん2005/05/05(木) 11:04:30
>206
1.3はあるけど・・・。
1.4は無いんじゃないかな。
0208デフォルトの名無しさん2005/05/05(木) 11:25:11
>>207
発見しました。有難うございました
0209デフォルトの名無しさん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ではなかった時の処理
0210デフォルトの名無しさん2005/05/05(木) 12:02:45
>>201
「nullには」って、何を言いたいのか分からんのだが。
nullはオブジェクトでもなんでもないわけで、メソッド
を呼べるわけありません。

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

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

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

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

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

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

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

どっちにしろスレ違いみたいなので。これで止めw
0216デフォルトの名無しさん2005/05/05(木) 14:17:58
>>201
というか、本当にnullだったらぬるぽが出ますよ。
0217デフォルトの名無しさん2005/05/05(木) 14:25:12
>216
ガッ
0218デフォルトの名無しさん2005/05/05(木) 16:07:14
==trueとかキモすぎ。ぬるぽ。
0219デフォルトの名無しさん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を生成できていないのが原因だと思いますが、上のように共通クラス化して使いまわしている事が原因なのでしょうか?
02202192005/05/05(木) 16:10:15
ご教授ください
0221デフォルトの名無しさん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();
}
↑何でこのメッセージでるんでしたか?
0222デフォルトの名無しさん2005/05/05(木) 16:35:42
>>221
何でって Cannot make a static reference to the non-static method checkHeaderPart() from the type TestDecoderEncoder だからだろ?
0223デフォルトの名無しさん2005/05/05(木) 16:57:04
public static void main(String[] args) {
このクラス hoge=new このクラス();
hogr.checkHeaderPart();
}
ってやらないから
02242192005/05/05(木) 17:00:41
どうでしょうか?
0225デフォルトの名無しさん2005/05/05(木) 17:11:57
>>219
サーバに接続失敗しているだけだと思う

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

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

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

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

ちなみに
>共通クラス化して使いまわしている事が原因
になるのは、そのクラスの作り方が間違っている以外は原因にはならない
J2EEならDataSourceからの取得が一般だけどそれやってる?
02292192005/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を使ってます。
0230デフォルトの名無しさん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);
}
}
02312192005/05/05(木) 17:58:07
どうでしょうか?
0232デフォルトの名無しさん2005/05/05(木) 18:00:56
>>230
呼ぶのは構わないがそのコードだとコンストラクタが
再帰的に呼ばれることになるのはわかってるか?

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

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


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

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

あとそれだと接続文字列が日本語まともにとおらんだろ
0241デフォルトの名無しさん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());
}
}
0242デフォルトの名無しさん2005/05/05(木) 21:46:25
iの参照先が変わっているわけではないから。
02431902005/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を配列で使う方がいないようで、
そもそもの考え方に間違いがあるのではと。

今後、壁が次々に出るかと思いますが、よろしくお願いいたします。
0244デフォルトの名無しさん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')
0245デフォルトの名無しさん2005/05/05(木) 21:58:35
Javaには種類があるんですか?私はJavaでアプリが作りたいんですが、プログム経験が全然なくて、『ブログラマ養成入門講座Java�@改訂版』って本買ったんですけど、DOS窓(?)内でのプログム実行しか書いてないんですが、入門講座だからなんですか?それとも種類があるんですか?
0246デフォルトの名無しさん2005/05/05(木) 22:00:01
種類と言うかライブラリのセットが違うのがあるけど
気にしなくていい、言語は変わらない

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

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

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

i = test(i);

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

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

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

だからかいてるじゃん244に・・・
0261デフォルトの名無しさん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(ぬるぽ)になる。
0262デフォルトの名無しさん2005/05/05(木) 22:31:56
> buff[0] NULL
NULLって何だ?
0263デフォルトの名無しさん2005/05/05(木) 22:31:58
ちなみに初期化時に
for(int i=0;i < buff.length;i++) {
buff[i]=new StringBuffer();
}
とやればちょっとシアワス
0264デフォルトの名無しさん2005/05/05(木) 22:32:17
javaSDKをインストールして環境変数を設定しようとしたら
すでにPATHのところにボーランドのコンパイラが設定してあったんですが
この場合どうすればいいですか?
0265デフォルトの名無しさん2005/05/05(木) 22:33:47
>>264
後ろに追記する。デリミタはOSで異なる。
0266デフォルトの名無しさん2005/05/05(木) 22:33:49
そういう場合は
  ;←をつけてつなげる
C:\java\j2sdkXXX\binって書けばよい
0267デフォルトの名無しさん2005/05/05(木) 22:33:55
>>256さんありがとうございます(T^T)作ったモン勝ちですよね!ありがとうございます(T^T)
>>258さんありがとうございます独学って本読んでですか?
0268デフォルトの名無しさん2005/05/05(木) 22:43:52
>>265
>>266
ありがとうございました
02691902005/05/05(木) 22:49:16
>257 >>260 >>261 >>263
ありがとうございました。
てっきり、StringBuffer buff = new StringBuffer[5]
とかで、初期化が終わっていると思いこんでいました。

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

で、final クラスがどうしたって?
0271デフォルトの名無しさん2005/05/05(木) 23:21:04
>>270
気にするな。スルーで
0272デフォルトの名無しさん2005/05/05(木) 23:29:02
>>271
おまいか!
0273デフォルトの名無しさん2005/05/05(木) 23:42:24
いや、、、、オレじゃないっすよ〜
0274デフォルトの名無しさん2005/05/06(金) 04:37:08
>>218
時代は
true==
ですね!
0275デフォルトの名無しさん2005/05/06(金) 06:52:33
>>274
それより、beeleanが……。
0276デフォルトの名無しさん2005/05/06(金) 06:55:06
ああ、予約語とかぶらないようにか。。。
0277デフォルトの名無しさん2005/05/06(金) 07:42:11
 
0278デフォルトの名無しさん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とかで実現するイメージです。よろしくお願いします
0279デフォルトの名無しさん2005/05/06(金) 11:39:09
多態とデフォルトコンストラクタによるインスタンス生成を勉強
0280デフォルトの名無しさん2005/05/06(金) 12:04:04
>>278
ハッシュテーブル使えばいいだけのような気が。
0281デフォルトの名無しさん2005/05/06(金) 12:13:29
>>249
イミュータブルだろ。あほか
0282デフォルトの名無しさん2005/05/06(金) 12:16:15
>>278
1.5 で追加された enum 使えば?
0283デフォルトの名無しさん2005/05/06(金) 12:36:31
文字列をもらって、それに応じてインスタンス生成できればいいんじゃないの? monaって文字列
もらったMonaをインスタンス化するとか。

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

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

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

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

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

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

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

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

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

たとえばPOSTにすれば具体的に何ができて
GETにすれば何が出来るのでしょうか?
0309デフォルトの名無しさん2005/05/06(金) 23:50:14
HTMLからやり直せ
0310デフォルトの名無しさん2005/05/06(金) 23:52:29
>>309 HTMLじゃなくてHTTPだろ。
0311デフォルトの名無しさん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に向かって
しまいます。どうすればお互いに引き付けあうようにできるでしょうか。
0312デフォルトの名無しさん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;

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

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

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

それと異常は、AとBがかなり近い時のみ発生し、向かっていくキャラは
X軸で言うと右側のキャラのみになり(つまり左側に来たキャラが右に
行ってくれない)、Y軸で言うと下側のキャラのみになります。
0315デフォルトの名無しさん2005/05/07(土) 03:27:02
それと三角関数に関しては、その方が処理が軽くなるかなと思って
そうしたのですが、普通に三平方の定理を使っても全然問題ありませんか?
0316デフォルトの名無しさん2005/05/07(土) 03:30:16
>>314
値がどう変化しているか観察する。
0317デフォルトの名無しさん2005/05/07(土) 03:33:30
>>315
処理時間も比べながらやるとなお良し。
0318デフォルトの名無しさん2005/05/07(土) 03:37:59
>>315
普通は三角関数のほうが処理が重い。
0319デフォルトの名無しさん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
ありがとうございます。三平方の定理に書き直します。
0320デフォルトの名無しさん2005/05/07(土) 03:49:56
>>319
何で Ax と Bx は観察しない?
0321デフォルトの名無しさん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 が必要な時だけキャストすれば?
0322デフォルトの名無しさん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時間近くに渡ってご指導いただき、ありがとうございました。
0323デフォルトの名無しさん2005/05/07(土) 09:26:30
JAVAをバックグラウンドで動かして定期的に
画面イメージを取得して保存するにはどうしたらいいんでしょう?
自身のイメージ取得なら分かるのですが
printscreenを押した時のように自身を含まず他のイメージを取得したいです
よろしくお願いします
0324デフォルトの名無しさん2005/05/07(土) 11:08:59
>>323
キンタマ・ウィルスみたいな動作をさせたいのけ?
純粋なJavaではそんなことできないよ。

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

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

ってわけで

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

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

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

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

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

0352デフォルトの名無しさん2005/05/08(日) 11:31:12
>>342
こう書いた方が良いと思ったんだがな。
なんでもかんでもグローバルにしてバグ発生の温床とか、
永遠にVM上に残るインスタンス作るよりかな。
それはともかく、スコープの局地化って表現自体を始めて聞いた。
なので、なぜスコープを意識するのか明確に説明して頂ければと思います。
メンテのしやすさとか、そういうことなわけないですよね?
03533442005/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と書き換えただけでコンパイルできなくなる理由がよくわからないのです。
03543442005/05/08(日) 12:17:29
まとめると、オーバーライドするときにアクセス権を狭めてはいけない理由が
「多態性を用いたメソッド呼び出しの際に、アクセスできないメソッドを
呼び出すことがないようにするため」だとしたら、
それは不完全である上にoverkillではないか、と。
0355デフォルトの名無しさん2005/05/08(日) 12:22:05
>>353
>と表示されますよね?

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

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

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

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

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

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

この一行はどのような働きをしているのですか?
0367デフォルトの名無しさん2005/05/08(日) 16:44:51
leftがright以上ならそれ以降の処理は行わない
0368デフォルトの名無しさん2005/05/08(日) 17:17:01
>>366
44行目周辺をみれば、left >= right で qsort() を呼び出す可能性があるのがわかるだろ。
03693442005/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() と書くとコンパイルエラーですし。
0370デフォルトの名無しさん2005/05/08(日) 17:43:09
>>369
>私の環境では表示されたんですが……。
マジで?
脳味噌腐ってるんじゃないの?

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

finalメソッドか privateメソッドしか書かないってんなら、それ以上考えなくて良いんだけど。
0373デフォルトの名無しさん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は
サブクラスで完全に置き換え可能だという原則に反するでしょ。
0374デフォルトの名無しさん2005/05/08(日) 21:02:29
ちょっと勘違いしている奴ぽいので 皆に聞く

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

そのクラス内○
そのサブクラス内×
とか言う感じですべて
0375デフォルトの名無しさん2005/05/08(日) 21:18:15
> ちょっと勘違いしている奴ぽいので 皆に聞く
一番勘違いしてるっぽい奴ハケーソ
0376句読点書けないバカをサマージャンボする俺 ◆9NQzQ21lx. 2005/05/08(日) 21:25:32
>>374
0377デフォルトの名無しさん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でしかない、
という話だな。
0378デフォルトの名無しさん2005/05/09(月) 00:24:40
zipファイルの中にtxtファイルがあればその内容を表示し、zipファイルがあればその中身も再帰的に処理するコード
はどのように書けばよいのでしょうか。
0379デフォルトの名無しさん2005/05/09(月) 00:46:49
void 解凍(アイテム file){
 List<アイテム> l = file.アイテム一覧();
 for(アイテム i : l){
  if(i.zip判定()){
   解凍(i);
  } else{
   処理
  }
 }
}
03803782005/05/09(月) 00:48:10
>>379
既存のAPIの範疇だと思いますが、具体的には?
0381デフォルトの名無しさん2005/05/09(月) 00:53:21
InputStreamオブジェクトからFileオブジェクトに変換ってどうすればできますか?
0382デフォルトの名無しさん2005/05/09(月) 01:00:05
いや、既存のAPIの範疇である事までわかってるんなら、>>379の日本語部分を
既存のAPIで置き換えればいいんではないかと....
0383デフォルトの名無しさん2005/05/09(月) 01:02:35
>>382
それがですね、私は今日初めてJavaを触ったものですから、APIの使い勝手がいまいちよくわからないのです。
0384デフォルトの名無しさん2005/05/09(月) 01:05:48
で、どこまでできてるんですか?
0385デフォルトの名無しさん2005/05/09(月) 01:07:49
>>384
まだ作っていませんが、できるところまで書いてみます。
少し待っていただけますか?
0386デフォルトの名無しさん2005/05/09(月) 01:09:24
いいよ。
0387デフォルトの名無しさん2005/05/09(月) 01:31:46
>>386
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/joyful.cgi?mode=thr&no=371
0388デフォルトの名無しさん2005/05/09(月) 01:40:02
早かったね。
今の問題点は?
0389デフォルトの名無しさん2005/05/09(月) 01:42:41
>>388
else if (filename.endsWith (".zip")) {/* この中の処理が分かりません。InputStreamオブジェクトをどうやってZipFileで扱うのかが分かりません。 */}
0390デフォルトの名無しさん2005/05/09(月) 01:42:57
一旦どこかに書き出しちゃいかんの?
0391デフォルトの名無しさん2005/05/09(月) 01:44:17
テンポラリファイルを作成するということですか?
0392デフォルトの名無しさん2005/05/09(月) 01:46:55
もし、APIの仕様上、それ以外に方法が無いのでしたら仕方がありませんが、できれば無駄なリソースを消費したくありません。
0393デフォルトの名無しさん2005/05/09(月) 01:51:52
とりあえずテンポラリ作っておいて、リソース消費が気になるならそれから考えてみれば?
テンポラリ作るときはdeleteOnExitで。
0394デフォルトの名無しさん2005/05/09(月) 01:55:13
>>389
InputStream なら、ZipInputStream で読めば良いじゃん。
0395デフォルトの名無しさん2005/05/09(月) 01:56:18
>>393
そうですか。ありがとうございました。最良の方法が見付かるまで努力します。
0396デフォルトの名無しさん2005/05/09(月) 01:59:55
>>394
あ、本当ですね。
ありがとうございます。
0397デフォルトの名無しさん2005/05/09(月) 02:46:43
スレッドの質問お願いします。
アプレットの1つのクラスで2つのスレッド(th1とth2)を作ります。
run()メソッド内でth1が活動しているときth2が決まった時間sleepします。th2の
sleepが解けたらth1は停止して、th2は処理を始めsleepにぶつかるまで活動します
。この様な常に1つだけのスレッドに活動させるループを作るにはどうすればよい
でしょうか?

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

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

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

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

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

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

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

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

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

>>429
run() の最後に repaint() を呼び出すのをやめて,
drawNextFrame() の最後で repaint() を呼び出してみましょう
と書こうとした。
0436デフォルトの名無しさん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の値を変更して送信しても値が変化していないのです。
一体なぜなのでしょうか?
04374292005/05/10(火) 11:27:15
>>433
あ、すみません。言い忘れていました。WindowsXP上でIE6.0で走らせてます。
JVMは1.4.2_07
0438デフォルトの名無しさん2005/05/10(火) 11:52:03
<html:text name="C" property="str" />
→
<html:text property="B.str" />
04394362005/05/10(火) 12:47:06
>>438
どうもありがとうございます。
ドットで指定してみたところ、うまく動作するようになりました。
本当にどうもありがとうございました。
0440デフォルトの名無しさん2005/05/10(火) 17:12:58
一回処理が終了したスレッドの処理をもう一度実行するにはどうすればよいですか?
Runnableを実装して、thread.start()し、10秒待ってからもう一度thread.start()するとInterruptedExceptionが発生してしまいます。
run()の中身はSystem.out.println("テスト")です。
0441デフォルトの名無しさん2005/05/10(火) 17:47:04
>>440
http://java.sun.com/j2se/1.5.0/ja/docs/ja/api/java/lang/Thread.html#start()

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

InterruptedException が発生しているのは
謎
まさかスレッド側で wait(10000)やってないですよね?

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

>>442
参考になります

ってかいたはずなのに
0447デフォルトの名無しさん2005/05/10(火) 22:40:21
タコって言ったねヘンリエッタ
0448デフォルトの名無しさん2005/05/10(火) 22:53:54
>>429
Thread.sleepに精度を期待するな。
OSによっては15msくらいずれるぞ。
もし本気でやるなら1msくらいの精度を持つ
OSネイティブのAPIをJNIから叩いて
自分でフレーム調整。
0449デフォルトの名無しさん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
0450デフォルトの名無しさん2005/05/10(火) 23:17:09
>webapp/myapp/WEB-INF/lib/mysql-connector-java-3.1.8-bin.jar はちゃんとあります。

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

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

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

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

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

何か心あたりのある方がいらっしゃいましたら、どうぞよろしくお願いしますm(_ _)m
0466デフォルトの名無しさん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())
> によって親プロセスにリダイレクトされます。親プロセスはこれらのストリームを使って、
> サブプロセスに入力を送ったり、サブプロセスからの出力を取得したりします。
> ネイティブなプラットフォームには標準入出力ストリームに使うバッファのサイズが限られるものもあるので、
> サブプロセスの入力ストリームの書き込みあるいはストリーム出力の読み込みが失敗した場合、
> サブプロセスはブロックされるか、デッドロック状態になる可能性があります。
04674652005/05/11(水) 12:45:09
ご返答ありがとうございますm(_ _)m

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

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

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

メインプロセスからサブプロセスにてコマンド実行
↓
サブプロセスのコマンド終了
↓
メインプロセスにてサブプロセスのコマンドの標準出力を取得

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

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

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

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

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

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

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

そして最低限のところにしたら問題はでなくなりましたとかほざきやがって
つまり違うところでバグだしてるんじゃねーかと
0511デフォルトの名無しさん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!");
>
>エラー一個

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

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

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

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

pascalもwritelnだったなぁ。pascalはcase insensitiveだから(実装依存?)
WriteLn とか書いてる教科書も多くて間違えづらかったけど。
0518デフォルトの名無しさん2005/05/11(水) 17:54:00
Systemout のほうはいくらなんでも自力で気がついてるよな?
0519デフォルトの名無しさん2005/05/11(水) 19:01:50
>>518
レス時の間違いでした('A`;)
0520デフォルトの名無しさん2005/05/11(水) 20:50:43
RMIのプログラムを作っています。
サーバー側のプログラムを動かそうとすると
Nullポが発生し、
XXX_Stub.getValue(Unknown Source)
というエラーが出てしまいます。
_Stub.classって生成しただけじゃだめなのでしょうか?
0521デフォルトの名無しさん2005/05/12(木) 05:17:34
psで出てくるVMのプロセスってjava --〜以外あるんでしょうか?
環境はsolaris8のjdk1.3です、が他にも居そうです。
よくわかりません、入っているかもしれません。
考えうる表記を教えてください。
0522デフォルトの名無しさん2005/05/12(木) 05:22:45
>520
もうちょい噛み砕いてくれないとなんとも申せません
どうやって登録したんです?rebindすればいくんじゃない?
0523デフォルトの名無しさん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">とすると値は受け取れました。
別ウィンドウに値を受け渡すにはどうすればよいか教えてください。よろしくお願いします。
0524デフォルトの名無しさん2005/05/12(木) 14:21:35
window.open だと、ただ単にその URL で示される JSP を呼び出すだけ
submit はされていません
URL にパラメータを付加するか、target で新規ウィンドウを指定した上で
submit をかけるかになります
もしくはJavaScript で親ウィンドウにアクセスして値を取得するか
0525デフォルトの名無しさん2005/05/12(木) 14:52:59
>>524
どうも親切にありがとうございます。
まだどうやるのか自分の中でイメージできてませんが、
調べながらがんばってみようと思います。
0526デフォルトの名無しさん2005/05/12(木) 15:50:07
手元にある自作のHTMLを画面に表示させたいため、
JEditorPaneを使いたいと考えているのですが、
どうすればいいのかわかりません。
ラベルに画像を表示させるのにaddを使うような感覚で、
HTMLをJEditorPaneにaddするものではないのですか?

JEditorPaneでHTMLを表示させるのに必要な手順を教えてください。
具体的なコードも出せず恐縮ですが、ご回答よろしくお願いします。
0527デフォルトの名無しさん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 が設定される
0528デフォルトの名無しさん2005/05/12(木) 16:18:57
Appletについて質問です。
AppletClassLoaderをstaticで取得する方法はないでしょうか?
staticでない方法ならgetClass().getClassLoacer()で出来ますけれど。
0529デフォルトの名無しさん2005/05/12(木) 16:33:32
なぜクラスローダを取得したいと思ったのか
質問のレベルから考えるとクラスローダをいじるとはおもえんが
staticでない方法でいいじゃないか
0530デフォルトの名無しさん2005/05/12(木) 16:45:59
プログラム内で時間を計りたいんですけど,
あまりに短すぎる時間なのか
処理前と処理後のgetTimeメソッドの値が変わりません.
何かアドバイスください
0531デフォルトの名無しさん2005/05/12(木) 16:56:52
目的が分からんから的外れな回答かもしれんが
処理のコストを計りたい or 比較したいってのなら、
複数回実行させた処理時間を計ればいい

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

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

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

long startTime1 = System.currentTimeMillis();
//処理
long endTime1 = System.currentTimeMillis();
0536デフォルトの名無しさん2005/05/12(木) 17:04:46
>>533
>>534
あーざんしたm(_ _)m
いっぺんsinできます
0537デフォルトの名無しさん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 はあるけど。
0538デフォルトの名無しさん2005/05/12(木) 17:29:36
同じフォーム内にある複数のコンポーネントにドラッグ&ドロップの処理をし、
コンポーネントごとに別の処理をしたいのですがどようにしたらいいのでしょうか
すみませんが教えてください

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

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

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

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

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

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

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

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

0553デフォルトの名無しさん2005/05/12(木) 23:20:47
>>552
まずは行をエンティティビーンに分割するクラスを作る。
それをソートする。アルゴリズムはお好きなモノを。
表示するJSPを作成する。
0554デフォルトの名無しさん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("このメソッドを実行してから、終了します");
}
}
0555デフォルトの名無しさん2005/05/12(木) 23:55:54
スレッド以前にJavaの文法勉強したほうがいいよ
たぶん、スレッドがらみでなくてもおなじことがあればおなじように転ぶから
0556デフォルトの名無しさん2005/05/13(金) 00:07:21
>>555
答えられないのなら黙っててください。
0557デフォルトの名無しさん2005/05/13(金) 00:08:24
はげわら
0558句読点書けないバカをサマージャンボする俺 ◆9NQzQ21lx. 2005/05/13(金) 00:09:03
>>555
0559デフォルトの名無しさん2005/05/13(金) 00:16:06
◆9NQzQ21lxって公開だっけ
0560デフォルトの名無しさん2005/05/13(金) 00:47:54
>>554
RunnableにするってことはどこかでThreadインスタンスを作る必要がありますから、
なんとかしてそのインスタンスを渡してそれからinterrupted()メソッドを呼び出してみては?
0561デフォルトの名無しさん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ドキュメントをちゃんと読みましょう。
0562デフォルトの名無しさん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("このメソッドを実行してから、終了します");
  }
}
0563デフォルトの名無しさん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("このメソッドを実行してから、終了します");
}
}
0564デフォルトの名無しさん2005/05/13(金) 01:44:58
.NETのアセンブリのような仕組みはJavaにあるのですか?
0565デフォルトの名無しさん2005/05/13(金) 01:54:25
>>564
何ができると「アセンブリのような仕組み」と思うかによる。
0566デフォルトの名無しさん2005/05/13(金) 01:59:15
.NETのアセンブリってどんなものなのか説明してごらん?
0567デフォルトの名無しさん2005/05/13(金) 02:16:05
>>564
>>566 が説明して欲しいってさ。
0568デフォルトの名無しさん2005/05/13(金) 02:19:43
オレモシリタイ
0569解答予想2005/05/13(金) 02:27:53
googleで調べろ
0570デフォルトの名無しさん2005/05/13(金) 03:28:33
static なメソッドの中で、
新たにインスタンスを生成せず、
自分自身の Class オブジェクトを取得するにはどうしたら良いでしょうか?

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

があるんですが、ClassAからhoge.jpgにアクセスする方法がわかりません。
どなたかご教示ください。
0612デフォルトの名無しさん2005/05/14(土) 00:49:36
すみません、ちょっとお聞きしたいんですが、
サーブレットとjspで作ったサイトで携帯からのアクセスがあります。
携帯のバックボタン対策をno-cacheでやっているのですが、
クリアボタン(バックボタン)が押されたときに
指定のページに飛ばしてくれ、といわれました。
これってjavascriptで実現できますでしょうか?
携帯上でjavascriptって動くんでしょうか?
0613デフォルトの名無しさん2005/05/14(土) 00:53:16
>>612 スレ違いだが、全部サーバーサイドで解決できるということだけは
教えてあげる。
0614デフォルトの名無しさん2005/05/14(土) 02:05:56
戻るボタンの対策は、サーバーサイドじゃ無理でしょ。携帯の場合は読み込みなおさないし。
OperaとかPC用サイトが見れる携帯なら、JavaScript使えるのかな。
0615デフォルトの名無しさん2005/05/14(土) 11:56:58
そもそもjavascriptはOFFにできるわけで
戻るボタン押してもその後ちゃんと動くようにやればいい
0616デフォルトの名無しさん2005/05/14(土) 13:30:28
ヒント セッションID+データベース
0617桜木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
できる人にとっては簡単かもしれませんがよかったら教えてください。
0618デフォルトの名無しさん2005/05/14(土) 16:42:50
ちょっと待て
一連の整数の……ってのは1〜100の中から5つ選ぶってことか?
だったら何故double型を使って、何故100個配列を用意した?
0619デフォルトの名無しさん2005/05/14(土) 16:47:15
>>617
宿題は宿題スレに。
http://pc8.2ch.net/test/read.cgi/tech/1112154540/l50
0620デフォルトの名無しさん2005/05/14(土) 16:47:34
http://HDOfa-06p3-81.ppp11.odn.ad.jp/
wwwwwwwwwwwwwwwwwwうはっwwwおkwww
っうぇっwwwwwwっうぇ
wwwwwwwwwwwwwww
wwwwwwwwwwww

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

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

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

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

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

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

それに対して

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

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

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

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

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

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

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

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

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

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

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

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

とかVM仕様読んでくらさい
0662デフォルトの名無しさん2005/05/15(日) 08:54:34
Java Plug-in とか Java Web Start とか勝手に入れるの止めて欲しいね
0663デフォルトの名無しさん2005/05/15(日) 09:59:17
Java Plug-inは、ちゃんと確認のチェックが出ると思うが。
0664デフォルトの名無しさん2005/05/15(日) 10:09:49
>>663
WebStartが問題だな。。。
0665デフォルトの名無しさん2005/05/15(日) 10:11:21
なんか問題ある?
jnlp(だっけ?)のMIMEタイプ設定するだけじゃない?
0666デフォルトの名無しさん2005/05/15(日) 10:31:00
使わない機能をインストールすることは容量その他の無駄だし、セキュリティ上も問題がある
0667デフォルトの名無しさん2005/05/15(日) 10:39:29
>>666
さっきからいろんなスレで一般論ばっかり書いてるみたいがだ。。。どの辺が楽しいんだ?
0668デフォルトの名無しさん2005/05/15(日) 10:51:11
いろんなスレってどこだ?
今日はこのスレにしか書込んでないのだが・・・
0669デフォルトの名無しさん2005/05/15(日) 11:28:02
>>666
関連付けくらいいいじゃん。だめ?
0670デフォルトの名無しさん2005/05/15(日) 11:59:35
>>659
そういうためのパブリックJREとプライベートJREなんだが
ドキュメントくらい読め
0671デフォルトの名無しさん2005/05/15(日) 12:28:26
しょっちゅう「〜の最新版が…」「〜のインストールの準備…」とかウザイ。
そのたびにCPU100%になって、HDもガリガリなって、精神有害な糞ソフト
0672デフォルトの名無しさん2005/05/15(日) 12:37:16
Windowsのこと?
0673デフォルトの名無しさん2005/05/15(日) 12:55:16
>>672
そう。
0674デフォルトの名無しさん2005/05/15(日) 13:03:46
そっか。Mac使えば?
0675デフォルトの名無しさん2005/05/15(日) 14:52:50
GUIが遅い
0676デフォルトの名無しさん2005/05/15(日) 15:53:49
じゃあおれOSでも使えばいいんじゃね?
0677デフォルトの名無しさん2005/05/15(日) 16:07:56
>675
漢は黙ってX抜きのFreeBSD
0678デフォルトの名無しさん2005/05/15(日) 16:10:45
それはGUI自体がない
0679デフォルトの名無しさん2005/05/15(日) 17:07:44
Solarisでいいじゃねぇか。
0680デフォルトの名無しさん2005/05/15(日) 20:11:38
>>577-578
ワロチw
06816332005/05/15(日) 22:30:33
超基本的なことを聞くが、サーブレットをコンパイルするためにはJ2SDKだけではだめなのか?
なぜかサーブレットだけがコンパイルできない。J2EEのインストールも必要かな。
0682デフォルトの名無しさん2005/05/15(日) 22:34:30
J2EEつーかサーブレットコンテナな。
Tomcatならservlet.jarにクラスパス通してコンパイルすればよし。
というかそれくらいは自分でぐぐって何とかできるようでないとおぼつかないぞ……
0683デフォルトの名無しさん2005/05/15(日) 22:41:26
>>681
NetBeansいれてないのか
あのIDEいれるといきなりJSP作成から入れるぞ
0684デフォルトの名無しさん2005/05/15(日) 23:02:23
>>681
J2SDKだけじゃダメ。
Tomcatでもなんでもいいから、Servlet APIを提供するライブラリ(JARファイル)が必要。
06856332005/05/15(日) 23:50:32
みなさんありがとうございます。
がんばってみます。
0686デフォルトの名無しさん2005/05/16(月) 05:38:43
NetBeans使っとけば、コンパイルするためとか動かすための努力は必要なくなるね。
プログラムつくるのに専念できる。
0687デフォルトの名無しさん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; } }

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

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

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

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

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

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

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

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

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

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

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

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

謝ってばかりも見苦しいと思うので、これで終わりにしておきます。
失礼しました。
0716デフォルトの名無しさん2005/05/16(月) 15:03:39
プロキシーがおかしいんじゃない?
ま、DLできたならいいけど。
0717デフォルトの名無しさん2005/05/16(月) 16:36:26
jtable内にボタンやチェックボックスを入れるのはどうしたらよいのでしょうか・・・?
0718デフォルトの名無しさん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メソッドの引数をどう記述すればいいのでしょうか?
0719デフォルトの名無しさん2005/05/16(月) 17:51:54
servletのstatusってどうやって取得できるのでしょう?
setはあるけど、getはないようなので・・・
0720デフォルトの名無しさん2005/05/16(月) 18:21:21
719です。
あるいはstatus初の期値ってなんなのでしょう?
0721デフォルトの名無しさん2005/05/16(月) 18:22:34
一生懸命なところスマンが
> status初の期値
なんかワラタ
0722デフォルトの名無しさん2005/05/16(月) 18:55:28
現在Java1.5.0使ってるんですが、1.4じゃないと見れないサイトがあるっぽい(?)んで1.4使いたいのですが、
どうすればいいでしょうか?
0723デフォルトの名無しさん2005/05/16(月) 19:03:43
1.4を使えば良いんじゃ無いでしょうか
0724デフォルトの名無しさん2005/05/16(月) 19:11:59
1.4落としたんですが、インターネットオプションでjavaのところに1.5しかないんですよ。
javaのフォルダには jre1.5.0_03 と j2re1.4.2_08 が入ってるんですけど・・・
どうやれば切り替えられるのでしょうか(´・ω・`)
0725デフォルトの名無しさん2005/05/16(月) 19:19:10
>>724
情報小出し ( ゚Д゚) ウザー
0726デフォルトの名無しさん2005/05/16(月) 19:21:40
>>724
シラネ
0727デフォルトの名無しさん2005/05/16(月) 19:42:55
で、ブラウザは?
0728デフォルトの名無しさん2005/05/16(月) 19:54:04
XPです・・・
cmdでjava -versionしたら1.5.0でした。
0729デフォルトの名無しさん2005/05/16(月) 19:56:08
>>728
情報小出し ( ゚Д゚) ウザー カエレ
0730デフォルトの名無しさん2005/05/16(月) 20:00:40
>>725=>>729もウザー
答える気がないならスルー
0731デフォルトの名無しさん2005/05/16(月) 20:08:28
>>730 も俺も ( ゚Д゚) ウザー
答える気がないならスルー
0732デフォルトの名無しさん2005/05/16(月) 20:10:35
1.5インストールしたら1,4はつかえねーよ。
全部削除して最初からやれ
0733デフォルトの名無しさん2005/05/16(月) 20:59:40
そうだったんですか・・・
なんか1.4入れてからJavaページ見るだけでページ全部閉じちゃうんですよね
1.5消せばいいのか
0734デフォルトの名無しさん2005/05/16(月) 21:15:27
例えばFor文でまわしたグラフィックを表示したら・・・
たとえば5回まわしたら位置ずらしたら5枚できるけど、これ前に実行したヤツを一回一回消す方法はないのでしょうか?
0735デフォルトの名無しさん2005/05/16(月) 21:22:27
状況よく分からんけど。
ループ中にnewで作らないで、移動させればいいんじゃないの。
0736デフォルトの名無しさん2005/05/16(月) 21:28:28
>734
「消すだけなら」次のを描く前に、前のを描いた領域をそっくり背景色で塗りつぶせばいいんジャマイカ。
0737デフォルトの名無しさん2005/05/16(月) 21:42:31
servletのstatus(レスポンスコード)って
どうやって取得できるのでしょう?
setはあるけど、getはないようなので・・・
もしくは、statusの初期値って何になるのでしょうか?
”SC_OK”ですかね?
0738デフォルトの名無しさん2005/05/16(月) 21:45:55
ブラウザがXPって、なんだかなぁ
0739デフォルトの名無しさん2005/05/16(月) 21:56:50
あるいみ>>700は神かも知れん
俺は長年やっているが、そんなとこ行ったことない
0740デフォルトの名無しさん2005/05/16(月) 21:57:16
>>736,5
う〜〜ん、そうですね。ありがとうございました。
0741デフォルトの名無しさん2005/05/16(月) 22:00:40
>>734
setXORMode(Color c) とかどうだろう?
説明が足りないのでその状況で使えるかどうかわからんが
背景塗るよりはましだと思う
0742デフォルトの名無しさん2005/05/16(月) 22:03:07
>>739
長年やってようが関係ないだろw
という俺もおれもこの間サイト内をいろいろまわってたら
偶然みつけたんだけどね。なんかわかりづらそうだったから
やっぱ普通のページから落とした方がいい。
0743デフォルトの名無しさん2005/05/16(月) 22:05:59
>>737
君は勘違いしているのかなぁ?
HTTP応答コードはサーブレットから見た場合
受ける側ではなくて、どちらかというと作るほうなのです
なので、クライアントに返す(set)メソッドしかないのは当たり前です
たとえばわざと404出したりすることがサーブレットでできるようにしているだけのこと
自分で自分の結果知ってなんになるのか?ということです
07447342005/05/16(月) 22:08:43
>>もうちょっとつけ加えるとFill・・・で描いた図形を座標ずらしながらsleepとか使いながら動画みたいな感じにしたいのです。
パラパラ漫画みらいな
0745デフォルトの名無しさん2005/05/16(月) 22:09:39
>>744
もちろん1.4であたらしく出たバッファリング方法使うよねぇ?
0746デフォルトの名無しさん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って項目が無いんで最新版のとこでいいんですよね?)

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

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

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

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

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

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


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

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

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

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

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

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

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

ね。
0772デフォルトの名無しさん2005/05/17(火) 07:14:58
残念、今はそれが出来ない。
0773デフォルトの名無しさん2005/05/17(火) 07:17:06
>>770-771
仮にそれが出来ても >>722 の問題は解決しないだろう
0774デフォルトの名無しさん2005/05/17(火) 07:20:09
アプレット用JREの選択できなくなったのか・・・
0775デフォルトの名無しさん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の意味がないと思うのですが。。。
0776デフォルトの名無しさん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 になり正しく動くように思えるが。
07777752005/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で呼び出すので、
パラメータが渡らなくなってしまいます。
0778デフォルトの名無しさん2005/05/17(火) 10:05:04
jnlpって使ったことないんだけど。substringできないの?
0779デフォルトの名無しさん2005/05/17(火) 11:31:45
538で質問した者ですが、しつこいようですがもう一度質問させてください

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

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


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

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

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

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

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

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

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

[0-9]{7}

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

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

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


今JAVAについて勉強しはじめたばかりなのですがこれがわかりません。
書き方または考え方等教えていただけないでしょうか。
0815デフォルトの名無しさん2005/05/18(水) 14:21:04
>>814
http://pc8.2ch.net/test/read.cgi/tech/1112154540/l50
こっちのほうがよくね?
0816デフォルトの名無しさん2005/05/18(水) 14:21:20
>>814

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

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

0827デフォルトの名無しさん2005/05/18(水) 16:50:59
16進数(文字列)から10進数(int)に変換するには
どうすればよいのでしょうか?
0828デフォルトの名無しさん2005/05/18(水) 16:53:46
>>827
ttp://java.sun.com/j2se/1.4/ja/docs/ja/api/java/lang/Integer.html#parseInt(java.lang.String, int)
0829デフォルトの名無しさん2005/05/18(水) 16:54:19
>>827
strtoul
0830デフォルトの名無しさん2005/05/18(水) 16:54:59
ここjavaか、失礼
0831デフォルトの名無しさん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[]だと書かれています…
0832デフォルトの名無しさん2005/05/18(水) 17:33:15
>>824(831)
>(double[])とキャストしようとしても駄目でした

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

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

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

ん?

Σ( ̄□ ̄)



double の List ってそもそもなんやねん・・・。
0836デフォルトの名無しさん2005/05/18(水) 17:51:35
ちょっと待って
Doubleかも
0837デフォルトの名無しさん2005/05/18(水) 17:58:14
(m.getDoubleList()).toArray(Double[]);
じゃないの。
0838デフォルトの名無しさん2005/05/18(水) 18:04:07
Double [] d0 = (Double[])m.getDoubleList().toArray();
double [] d = d0;
0839デフォルトの名無しさん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();
}

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

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

> 例外が出る理由はわからないけど…
その例外が何かくらい書け。
0842デフォルトの名無しさん2005/05/18(水) 18:37:31
だからtoArray(Object[])のほうだとなんd
0843デフォルトの名無しさん2005/05/18(水) 18:54:27
Double d[] = (Double[])(m.getDoubleList().toArray(new Double[m.getDoubleList().size()]));
0844デフォルトの名無しさん2005/05/18(水) 19:01:24
一人わざと通らない書き方を教えようとしてるやつがいる
0845デフォルトの名無しさん2005/05/18(水) 19:44:05
匿名内部クラスにをスレッドを
書いたのですがそれのstartの
させ方はどうすればよいのですか?
0846デフォルトの名無しさん2005/05/18(水) 19:58:45
>>845
好きにすればいい。
っつか、start() 出来ない理由がわからん。
0847デフォルトの名無しさん2005/05/18(水) 20:21:30
とりあえず助詞をはっきりさせてくれないと、解釈できん。
0848デフォルトの名無しさん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する型を指定してやらないといけない。
0849ぷ2005/05/18(水) 23:13:05
サウンドを取得再生する方法を教えてくださいm(__)m
0850デフォルトの名無しさん2005/05/18(水) 23:49:49
JavaSoundは調べたのかい?
0851デフォルトの名無しさん2005/05/18(水) 23:53:04
JavaSounds
0852デフォルトの名無しさん2005/05/18(水) 23:53:58
単にappletでauファイルをサーバーから取ってきて鳴らしたいだけだったら笑えるな。
0853デフォルトの名無しさん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 で日本語を出すにはどうしたら
良いでしょうか?
0854デフォルトの名無しさん2005/05/18(水) 23:58:10
どういうPG組んでるか?
0855何でも略しゃいいと思ってる奴を煮込む俺 ◆1xdL.Dyf.I 2005/05/18(水) 23:59:52
>>854
0856デフォルトの名無しさん2005/05/19(木) 00:02:18
>>855
ちがうって、多分アジア系の留学生だろ
0857デフォルトの名無しさん2005/05/19(木) 00:03:34
ピグモン?
0858デフォルトの名無しさん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 だす。
0859デフォルトの名無しさん2005/05/19(木) 00:06:16
アナタ シャチョか?
0860デフォルトの名無しさん2005/05/19(木) 00:07:32
シャチョさん
0861デフォルトの名無しさん2005/05/19(木) 15:04:42
JAVA1.5では1.4のときと比べて
GUIのTextAreaの使い方変わってませんか?
0862デフォルトの名無しさん2005/05/19(木) 15:17:56
そう思う理由は?
0863デフォルトの名無しさん2005/05/19(木) 18:02:00
Javaでwebブラウザを作ろうと思うのですが、
HTMLの描画に関して、IEコンポーネントなどを
使うなんて事はできるんでしょうか?
0864デフォルトの名無しさん2005/05/19(木) 19:08:38
>>863
Firefox+Javaでググリマクリスティ
0865デフォルトの名無しさん2005/05/19(木) 19:28:08
シャチョか?
0866デフォルトの名無しさん2005/05/19(木) 20:04:00
シャチョさんシャチョさん
0867デフォルトの名無しさん2005/05/19(木) 20:33:08
>>863
JDIC でブラウザコンポーネント使えるように頑張ってる。
https://jdic.dev.java.net/
0868デフォルトの名無しさん2005/05/19(木) 22:17:02
>>864
ググってみましたが、特に関係ありそうな結果はでず・・・
どういうことなんでしょう?

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

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

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

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

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

default:
 もっとがんばろう


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

Error:1
0877デフォルトの名無しさん2005/05/20(金) 00:49:25
>>874
誘導有難うございます。
当方JAVA初心者で自宅のPCにJAVAを落としたのですが
いまいち使い方がわからなくて(学校のと違うため)かきこんでしまいました。
0878あんま良いネタ思いつかねぇ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;
    }
  }
}
0879デフォルトの名無しさん2005/05/20(金) 01:10:59
>>877
0880デフォルトの名無しさん2005/05/20(金) 01:11:35
>>878
>end:

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

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

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

他にも相違するメソッドがちらほら。なんでだろ?
0890デフォルトの名無しさん2005/05/20(金) 12:52:55
J2ME? (知らんけど)

http://gutti.livedoor.biz/archives/22501123.html
0891デフォルトの名無しさん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を得たい
}
}
0892デフォルトの名無しさん2005/05/20(金) 13:36:54
public void mygraph(Graphics g){ 略 }
ってやればいいんじゃない?
そういう問題じゃない?
0893デフォルトの名無しさん2005/05/20(金) 13:40:55
>>889
longValueってNumberで定義されてるし、ないってことはあるんか
0894デフォルトの名無しさん2005/05/20(金) 13:42:18
>>891
Graphics取得すればいい

>>892
重症
0895デフォルトの名無しさん2005/05/20(金) 13:49:47
>>892
凡人
>>894
エスパー
0896デフォルトの名無しさん2005/05/20(金) 14:04:23
>>894
不親切
0897デフォルトの名無しさん2005/05/20(金) 14:09:23
getGraphics()
0898デフォルトの名無しさん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を得たい
}
}
0899デフォルトの名無しさん2005/05/20(金) 14:12:19
出ましたっ!!
C:\WINDOWS\デスクトップ\新しいフォルダ>javac _2ch.java
_2ch.java:9: シンボルを解釈処理できません。
シンボル: メソッド getGraphics ()
位置 : java.awt.Graphics の クラス
Graphics g = Graphics.getGraphics();
^
エラー 1 個
0900デフォルトの名無しさん2005/05/20(金) 14:20:18
アプレットのほうのGraphicsを取得しろよ・・・
0901デフォルトの名無しさん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 コンテキストから参照できない
0902デフォルトの名無しさん2005/05/20(金) 14:55:06
なんで main から呼び出そうとしているのか
というか、もっと考えようよ
アプレット以前の問題じゃないかい?
0903デフォルトの名無しさん2005/05/20(金) 15:14:46
アプレットとアプリケーションの区別がついてないってか
0904デフォルトの名無しさん2005/05/20(金) 15:30:10
適当なアプレットのソースを見た方が解決が早い。
0905デフォルトの名無しさん2005/05/20(金) 16:01:25
_2ch ni = new _2ch();
ni.mygraph();
0906デフォルトの名無しさん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上でも、
いじったりなどしていないし…なんでしょう?
0907デフォルトの名無しさん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参考サイトのように、アプリケーションマネージャに、
同じアプリがたくさん表示されるよりはマシだと思います。
0908デフォルトの名無しさん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>

しか書かれません

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

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

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

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

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

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

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

セッターでセットした値じゃなくても、
コンストラクタでセットした値は書き出して欲しいです
0924デフォルトの名無しさん2005/05/21(土) 02:40:32
>>923
JavaBeansのコンストラクタは引数を持てなかったはず。
あとBetwixtでは駄目なの?
フォーマットを変えたくなった時とかでも、.betwixtを書き
替えるだけで済むし、なにより簡単。
09259242005/05/21(土) 02:42:40
今、ソース見た。
コンストラクタの中でセットした値って意味かorz
2行目は取り消しということで
0926デフォルトの名無しさん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 のプロパティのデフォルト値がストリームに書き込まれない

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

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


ありがとうございました
0928デフォルトの名無しさん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

だれか助けて〜
0929デフォルトの名無しさん2005/05/21(土) 03:29:08
簡単に言うと
MySQLはユーザIDとパスワードの他に接続元のIPアドレスの3つの組で接続の許可・拒否している
MySQLのコマンドで
mysql>select * from mysql.user;
ってやてみたらわかる
その中の
Host,User,Passwdが一致していないと駄目だ
(ちなみにPasswdは暗号化されている)
そこに無ければlocalhostのユーザ追加してやれ
0930デフォルトの名無しさん2005/05/21(土) 11:09:57
改訂版Javaプログラミングレッスン(下)やっています。
質問させて下さい。

P40の問題11-9です。
長方形のclass Rectangle でフィールドには 基点の座標x,y、幅がwidth、height
というのがあります。
このRectangleのインスタンスを2つ作って、2つの長方形がかぶってできた長方形
をreturnするメソッドを作れ、という問題です。

私はこの問題にたいして、まず長方形がかぶっているかどうかの判定をして
いろいろやったのですが、テキストの解答ではMath.maxとかMath.minとかが
使ってありました。私のやり方を人に話すと「手続き型みたいなやり方だな」って
言われました。Javaではスマートじゃないんでしょうか?
0931デフォルトの名無しさん2005/05/21(土) 11:12:39
>>908 >>912 >>916
Serializableはつけてるのか?

>>913
SerializableがついてないとJavaBeansとはみなされなかったような・・・?
0932デフォルトの名無しさん2005/05/21(土) 11:18:00
>>932
つーか、Rectangleって当たり判定とか重なるRectangleとか返すAPIあるだろ
APIマニュアル読んでない人?

>>931
SerializableはついてなくてもOK
配列アクセスはダメ
0933デフォルトの名無しさん2005/05/21(土) 11:48:03
>>930
「手続き型」がスマートじゃないことはない。
というか、小さいプログラムを変に細切れなオブジェクトに分けると「オブジェクト指向的」なスマートじゃないやり方になるし。
判定するっていう手続きが手続き型みたいなやり方になるのはある意味あたりまえ。

>>932
あたり判定するプログラム作る課題だろ。java.awt.Rectangleとは別物の話と思うが。
0934デフォルトの名無しさん2005/05/21(土) 11:53:50
書籍の問題をここにきかれても持ってない人にはわからんね
0935デフォルトの名無しさん2005/05/21(土) 12:01:54
>>930
あなたの考えた手順を全部見せてもらえれば、スマートなやり方をアドバイスできるかもしれん。
手続きの内容が手続き型っぽくなるのは仕方ないよう、というのは>>933に同意。
09369282005/05/21(土) 13:58:26
>>929
調べてみました。

mysql> select HOst,User,Password from mysql.user;
+-----------+------+------------------+
| HOst | User | Password |
+-----------+------+------------------+
| localhost | root | xxxxxxxxxxxxxxxx |
:

getConnectionのUser/Passにはrootとそのパスワードを使っているのですが、
上記ではちゃんと、rootはlocalhostにアクセスできるよう設定できているように見えます。

あと、何が考えられる問題はありますか?
0937デフォルトの名無しさん2005/05/21(土) 14:38:25
>>928
SQLException eで
e.getErrorCode()の値を教えてくれ
それを、俺が調べて来て また回答する
(つうか、大体答えわかっているが・・・)
09389282005/05/21(土) 14:52:49
>>937
ひとまず、解決したので、詳しい原因はおいおい調べます。
親切にありがとう。

mysqlでhostに「localhost」でなく「locahost.localdomain」を設定したらうまくいきました。
しかしJavaからは「localhost」に対してアクセスしているのに、なぜmysqlでこのように設定しなければならないのかはなぞ
多分Linuxの設定も関係してるかもしれません。

勉強します。。
0939デフォルトの名無しさん2005/05/21(土) 14:54:16
>>936
localhostとlocalhost.localdomainは違う設定だった思う。
09409392005/05/21(土) 14:55:16
一足遅かったか
0941デフォルトの名無しさん2005/05/21(土) 14:59:47
>>938
>mysqlでhostに「localhost」でなく「locahost.localdomain」を設定したらうまくいきました。
おれはそう教えたつもりだったが
>そこに無ければlocalhostのユーザ追加してやれ
「localhost」って書いてたな すまん

>多分Linuxの設定も関係してるかもしれません。
/etc/hostsだよ
0942デフォルトの名無しさん2005/05/21(土) 17:03:45
JAVAでチャットプログラムを作りたいのですが
どんな系統の本を読んで勉強すればいいのかよくわからないので
何かよい書籍ってありませんか?
0943デフォルトの名無しさん2005/05/21(土) 17:09:44
>>942
API読んでわからねーのか、このスカチン
Javaのネットワークプログラミング系統の本読めばいいだろカス
考えれば答えにたどり着くような質問してんじゃねーよクズ
0944デフォルトの名無しさん2005/05/21(土) 17:12:52
Amazon本で「Java ネットワーク」で検索すればいい
たいていその手の本はネットワーク初心者でも読めるように出来ているはずだ
あとはレビュアーのコメント読んで吟味
0945デフォルトの名無しさん2005/05/21(土) 17:28:25
Java自体が分からないのかネットワークが分からないのか
自分に足りないものを探すという努力はないものか
0946デフォルトの名無しさん2005/05/21(土) 17:31:50
2つ教えてください

他スレでimportするとき、アスタリスクはつけるな、クラス全部書け、とあったのですがなぜですか?

try catchでThrouableをキャッチしているのをときどき見ますが、Errorはキャッチすべきではないはずなのに、なぜExceptionを使わないのですか?
0947デフォルトの名無しさん2005/05/21(土) 17:37:29
Linuxでjavaをインストールしようと思ったのですが、sunのダウンロードページに行くと、

・Linux self-extracting file (jdk-1_5_0_03-linux-i586.bin, 46.51 MB)
・Linux AMD64 self-extracting file (jdk-1_5_0_03-linux-amd64.bin, 41.52 MB)

の2つがあって、どちらをインストールすれば良いのかわからなくて困っています。

どっちをインストールすればよいのでしょう?

ちなみに、
OS:Fedora Core 3
CPU:Sempron 2600+
です。
0948デフォルトの名無しさん2005/05/21(土) 17:39:48
>>946
>他スレでimportするとき、アスタリスクはつけるな、クラス全部書け、とあったのですがなぜですか?
ソース解析する立場になればわかる

>Errorはキャッチすべきではないはずなのに
なぜそう思うか考えよう
0949デフォルトの名無しさん2005/05/21(土) 17:40:33
32版はLinux self-extracting file (jdk-1_5_0_03-linux-i586.bin, 46.51 MB)
でないのかなぁ
0950デフォルトの名無しさん2005/05/21(土) 17:46:18
>>948
答えになってねーw


>>946
*で指定すると、その該当するパッケージへのリンクをすべてクラスファイルに埋め込んでしまうからじゃないかな
>try catchでThrouableを
スペル違うよ、Throwable。
APIのThrowableクラスをのぞいてごらん。いろいろといじてるんだよ。エラー情報をね。
0951デフォルトの名無しさん2005/05/21(土) 17:48:59
>>949
CPUを調べたら、32ビットみたいなので、
-------------------------------
・コンシューマ向け32ビットCPU
「Sempron」 (Socket 754)
------------------------------
32bit版をインストールすれば良いのですね。
ありがとうございました。さっそくインストールしてみます。
0952デフォルトの名無しさん2005/05/21(土) 18:12:19
>>950
importでリンクなんてクラスファイルに埋め込まない

Errorは基本的にcatchしても無駄なのでcatchしないだけで、
ログはきたいとか何か処理したい場合にはcatchする。
0953デフォルトの名無しさん2005/05/21(土) 18:16:40
>>950
>*で指定すると、その該当するパッケージへのリンクをすべてクラスファイルに埋め込んでしまうからじゃないかな
なんか意味的に それって、*.classファイルのサイズが大きくなるとか思っているように聞こえるが?
そんなことはない Javaコンパイラはたとえ*と書いてあってもコンパイル時は必要なものしかやらない
*にしたことでコンパイルに時間がかかるかどうかは知らんが・・・

問題なのは、後からソース見た人が「このクラスはどこのパッケージのクラスなのか」の判断ができるようにするためだ
同じクラス名で違うパッケージ名なんてJavaの標準のクラスのみでさえいっぱいある
0954デフォルトの名無しさん2005/05/21(土) 18:26:20
Errorキャッチしてるぞ

JNIまわりだが、これ必須
0955デフォルトの名無しさん2005/05/21(土) 18:43:05
>>952
あー確かにクラスファイルにリンク埋めるっておかしな話だよね。
クラスファイルを別なマシンとかに置いたら実行時エラーが出るし。
あのリンクってどうなってんだろ?
クラスファイルが別のところにあるのに、それをどうやってみつけるんだ?
毎回毎回探すのかね。

>>953
クラスファイルの肥大化ってことじゃなくて、実行時のパッケージ検索の効率化に影響するんじゃないかって思ってた。
0956デフォルトの名無しさん2005/05/21(土) 19:08:27
>>955
実行時に影響するの?
コンパイル時に解決するもんだと思ってたけど違うのか
0957デフォルトの名無しさん2005/05/21(土) 19:09:20
あーコンパイルとリンカは通常は(C言語だと)ちがうか
0958デフォルトの名無しさん2005/05/21(土) 19:21:21
>>956
俺もよくわかんね
なんとなくそう思っていただけだから
でも、普通はコンパイルするときにリンカがリンキングをするじゃん
あれってJavaの場合どうなってんだろ
0959デフォルトの名無しさん2005/05/21(土) 19:33:48
クラスファイルにはFQNで埋め込まれる。
実行時にはクラスローダーが探す。
0960デフォルトの名無しさん2005/05/21(土) 20:17:14
>>959
クラスファイルの記述に使うのはFQNじゃなくてバイナリ名だったと思われ。
メンバ型の時に '$' 使うのと、
匿名クラスとか局所クラスに名前が付いたりするのが違う。
0961デフォルトの名無しさん2005/05/21(土) 21:12:51
>>954
UnsatisfiedLinkErrorならキャッチしてるな。
0962デフォルトの名無しさん2005/05/21(土) 21:32:47
>>958
普通は実行時に全部その場でリンクする。
一部の組み込みAOT環境とかでは
あらかじめリンクする場合もある。
0963デフォルトの名無しさん2005/05/21(土) 22:52:37
JDBCについて一から学べる本やサイトご存知ないですか?
0964デフォルトの名無しさん2005/05/21(土) 22:55:53
>958
最近はコンパイル&リンク(スタティックリンク)のほうが少ないよ。
Cで書いたものでも、今は実行時リンク(ダイナミックリンク)が多い。
WindowsでいえばDLL(ダイナミックリンクライブラリ)がそれ。
Javaは(基本的には)完全ダイナミックリンク。
0965デフォルトの名無しさん2005/05/21(土) 23:07:18
>>964
DLLとはいえ基本的にヘッダ参照なんでここでいうダイナミックリンクとは別かと
0966デフォルトの名無しさん2005/05/21(土) 23:21:22
未だにちゃんと理解していない人が多いけどJavaにおけるimportは
「正式なクラス名を書くときにパッケージ名を省略して書くことができる」
という意味しかない。

コンパイラが正式なクラス名に書き直してくれるだけの機能なので
importを使おうが使うまいがコンパイル結果のクラスファイルに違いはない。
0967デフォルトの名無しさん2005/05/21(土) 23:29:02
>>966
納得した
そういえば、C#のusingはjavaのimportとはまた違った意味があるんだよね
0968デフォルトの名無しさん2005/05/21(土) 23:29:20
演算子のオーバーロードをサポートしてないのにStringや文字列の足し算が出来るのは
コンパイラがそれに相当するコードに直してくれるからだしな
0969デフォルトの名無しさん2005/05/21(土) 23:34:10
jspで掲示板作ってみたいと思うんですがいいですか?
0970デフォルトの名無しさん2005/05/21(土) 23:35:32
ぜひどうぞ。
0971>>9692005/05/21(土) 23:46:38
>>970
作ってみるメリットってありますか?
0972デフォルトの名無しさん2005/05/21(土) 23:49:03
>>971
目的は何だ?
無いなら市ね。
09739692005/05/22(日) 00:01:16
>>972
まあ、落ち着いてくださいよ

目的はHPに自作の掲示板を加える
勉強のためにJSPで挑戦してみようと思った
また、レンタルでJSP使用可のところが少ないので
この際ジサバの勉強もしようとも
アクセス数が少ないならJSPでやる必要はないのかな?
むしろこのしょぼいサイトは何でJSP??と思われる

なのでちょっとここで相談してみたんだけど
訳わかんない質問してすいませんでした
0974デフォルトの名無しさん2005/05/22(日) 00:03:45
>>973
>勉強のためにJSPで挑戦してみようと思った

それ以上の理由はいるのか?
0975デフォルトの名無しさん2005/05/22(日) 00:07:59
JSPでやっちゃいけないなんて誰も言ってないと思うんだけど・・・
それよりも 申し訳ないが自鯖はやめとけ
問題が、君だけの問題ではなくなるからな
0976句読点書けないバカをサマージャンボする俺 ◆9NQzQ21lx. 2005/05/22(日) 00:13:18
>>975
09779692005/05/22(日) 00:19:22
>>974
>それ以上の理由はいるのか?
意味がわかりません

>>975
>それよりも 申し訳ないが自鯖はやめとけ
>問題が、君だけの問題ではなくなるからな
もう少し詳しく教えてください。
JSP使わせるくれる無料サーバなんて見つからないよ(´・ω・`)
0978デフォルトの名無しさん2005/05/22(日) 00:20:17
踏み台にされたりいろいろやられると他人が迷惑ってことじゃないのかな。
べつに無料でなくてもいいじゃん。
09799692005/05/22(日) 00:30:45
>>978
JSPなら勝手につかってもいいけどジサバは勝手にするなって事か・・・
とても理不尽な感じがするけどプロの方たちから見たら常識なのかな?

0980デフォルトの名無しさん2005/05/22(日) 00:33:23
JSPが使える鯖くらいあるじゃん
個人の自宅鯖
→暴走させて追放
専鯖
→金が払えない
自分んちの自宅鯖
→グローバルIPがなくて無理
っつーオチだろ。時間の無駄。
0981デフォルトの名無しさん2005/05/22(日) 00:38:19
個
住所と電話番号書いて闇職の間で出回る
専
かーちゃんが困る
自
騒音で迷惑、過熱して家が燃える

1番の問題
結局JSPわかんねー あぱちぇってなぁに?
0982デフォルトの名無しさん2005/05/22(日) 00:46:50
まぁ雑談したいだけだろ
なんでおまいら、そんなに真面目にレスするんだ
そんなんだから職場で「ちょっと聞いてみただけなのに・・・」って思われるんだぞ
0983デフォルトの名無しさん2005/05/22(日) 00:52:01
不真面目なレスならいいんだ。
09849692005/05/22(日) 00:54:42
>>982
禿同w

>>983
またそうやって屁理屈言うんだからぁ
0985デフォルトの名無しさん2005/05/22(日) 00:59:29
相手の顔を見て話せってことだろ
顔っていうのは相手の気持ちみたいなものでさ
0986デフォルトの名無しさん2005/05/22(日) 01:21:03
>>979
極端な話をしよう
君のサーバ経由で、他のサーバがイタズラされるとする
当然君に最初疑いがかけられる
そのとき君は自分は踏み台にされたということを「今持っている君の知識で」どうやって証明するのか?
証明できなきゃ君がやったことになる可能性がある
ただ、コレは君自身の問題であり、
イタズラされた他のサーバにとっては迷惑

たとえばこの間、価格comにアクセスした人がウイルス感染したかもっていうニュースが流れた
もちろん悪いのはやった奴だが、ウイルス浸入させた価格comも管理ができていなかったことになりこのように恥をさらすことになる
一般ユーザから見たら「お前ら何やってんだ」っていう話になる
個人がその責任持てるとは思えないので、「やめたほうがいい」ということ
せめて毎日不正アクセスが無いか確認することが必要
ほったらかしにしておくサーバ管理者はこの世界ではウイルスばらまく奴同様、悪なのです
0987句読点書けないバカをサマージャンボする俺 ◆9NQzQ21lx. 2005/05/22(日) 08:10:28
>>986
0988句読点書けないバカをサマージャンボする俺2005/05/22(日) 08:36:39
>>987
0989デフォルトの名無しさん2005/05/22(日) 11:51:43
>>987
ウイルス感染者?
0990デフォルトの名無しさん2005/05/22(日) 15:30:57
産め
0991デフォルトの名無しさん2005/05/22(日) 16:25:56
A
【初心者歓迎】Java質問・相談スレッド65 Update 1
ttp://pc8.2ch.net/test/read.cgi/tech/1114850497/l50
2005/04/30(土) 17:41:37

B
【初心者】Java質問・相談スレッド66【大歓迎】
ttp://pc8.2ch.net/test/read.cgi/tech/1116690777/l50
2005/05/22(日) 00:52:57

さて、問題はどっちを使うかだ。
0992デフォルトの名無しさん2005/05/22(日) 16:43:17
A・・・かな。
0993デフォルトの名無しさん2005/05/22(日) 17:30:25
立てたのでこちらへどうぞ。

C
【初心者】Java質問・相談スレッド67【大歓迎】
ttp://pc8.2ch.net/test/read.cgi/tech/1116750427/
2005/05/22(日) 17:27:07
0994デフォルトの名無しさん2005/05/22(日) 17:36:48
http://pc8.2ch.net/test/read.cgi/tech/1114850497/
まずは↑コレを消化するのがスジかと
0995デフォルトの名無しさん2005/05/22(日) 17:54:20
大量のデータを扱うためにPropertiesクラスの代わりに使えるクラスはありますか?
0996デフォルトの名無しさん2005/05/22(日) 18:06:29
java.io.File。
0997デフォルトの名無しさん2005/05/22(日) 18:08:34
>>995
何をどうしたいのかわけ分からん
大量のデータを扱うためにStringクラスの代わりに使えるクラスはありますか?
0998デフォルトの名無しさん2005/05/22(日) 18:13:22
>>997
頭悪いですね。
0999デフォルトの名無しさん2005/05/22(日) 18:13:46
>>997
頭悪いですね。
1000デフォルトの名無しさん2005/05/22(日) 18:14:09
>>997
頭悪いですね。
10011001Over 1000Thread
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。