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

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

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

よくある質問
・「コマンドまたはファイル名が違います」
 「'javac' は、内部コマンドまたは外部コマンド、
 操作可能なプログラムまたはバッチ ファイルとして認識されていません。」
 「Exception in thread "main" java.lang.NoClassDefFoundError: 」
 http://www.wikiroom.com/java/?path,classpath
・String に == は使うな。equals を使え。

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

/* 既出の質問や、他に適切なスレが存在する質問は、容赦なく無視されます。
質問をする前にwikiで過去ログ、関連スレ、FAQをチェックしてください。 */
また、当スレで質問をするかたは、回答をもらえたときに、
wikiの更新をして頂ければ、忝なく存じます。

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

次スレは>>980あたりで。
2デフォルトの名無しさん:2006/05/11(木) 18:47:25
7 時間近く放置かよ!
3デフォルトの名無しさん:2006/05/11(木) 19:13:26
み、みんなJAVAなんかマスターしちまったってことか!
4デフォルトの名無しさん:2006/05/11(木) 19:25:40
>>1
乙〜

ユーキせんせのデザインパターン入門[マルチスレッド編]読んだ〜
練習問題飛ばしてorz....
5デフォルトの名無しさん:2006/05/11(木) 20:28:12
Comparator#compare をオーバーライドする際、
compare 内でチェック例外が発生する可能性のある場合はどうすれば良いのでしょうか?

そのためだけの Runtime 派生例外を作ってごまかしているのですが…
6デフォルトの名無しさん:2006/05/11(木) 20:38:02
お好きなのどうぞ

例外が発生した時点でソートを中止、例外発生有無を返すメソッド提供し呼び出し元で判定

RuntimExceptionのサブクラスをスロー

比較対象のゲッタで例外スローしないようにする


BeanUtilでも使ってるの?
7デフォルトの名無しさん:2006/05/11(木) 21:12:13
>>6
なるほど…最初と最後のような方法もありなのですね。ありがとうございます。

BeanUtil …は使用したことがないです。すみません。

単純に幾つかのフィールドを含んで独自に作成したデータクラスがあり、
その集合を渡せば特定条件でソートする、と言うメソッドを作成していました。
ただ、そのソートの特定条件の中に、データクラスの中のあるフィールド自体ではなく、
フィールドをキーに取得できる値、と言うものがあり、その取得の際に例外が発生する可能性がある、
と言う状態でした。
8デフォルトの名無しさん:2006/05/11(木) 23:04:01
初心者なんですが例外処理でエラーがでてしまいます。

プログラムをはってどこが間違っているか指摘してもらえますか?
9デフォルトの名無しさん:2006/05/11(木) 23:10:41
>>8
すげーーーーーーーーーーーーーーーー
史上最強のエスパー召喚要請だwwwwwwww







って釣りだよな・・・
10デフォルトの名無しさん:2006/05/11(木) 23:11:44
はるんでの間違い?
11デフォルトの名無しさん:2006/05/11(木) 23:11:49
>>8
はってください
12デフォルトの名無しさん:2006/05/11(木) 23:15:38
ソースは春がエラー内容はスルーな予感
13sage:2006/05/11(木) 23:20:08
import java.io.*;
import java.util.*;
public class Kadai1{

public static void main(String[] args) {
BufferedReader b = null;
Vector v = null;
String contents ;
try{ while((contents = b.readLine()) != "paint") {
b= new BufferedReader (new InputStreamReader(System.in));
v = new Vector();
v.addElement("b");

}
b.close();
int n = v.size();
for(int i = 0;i<n;i++){
System.out.println(v.elementAt(i));
}
}catch (IOException e){
System.out.println(e);
}
catch(NullPointerException npe){
System.out.println(npe);
}
}
}


お願いします。
14デフォルトの名無しさん:2006/05/11(木) 23:21:14
名前にsageっていれてしまった。すいません。
15デフォルトの名無しさん:2006/05/11(木) 23:22:50
エラー出力も晴れと....
16デフォルトの名無しさん:2006/05/11(木) 23:27:54
java.lang.NullPointerException

ってエラーです。
17デフォルトの名無しさん:2006/05/11(木) 23:30:06
>>13
9行目でNullPointerExceptionだな。bを初期化する前にreadLine()呼んでる。
ループ内でvにVectorオブジェクトをセットし直しているが、意味無いぞ。
18デフォルトの名無しさん:2006/05/11(木) 23:32:46
>>17
ありがとうございました。
よくわかりませんが、参考に頑張ってみます。
19デフォルトの名無しさん:2006/05/11(木) 23:45:15
//DB接続
Connection con = DriverManager.getConnection
("jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseName=DB_NAME",
"user", "password");

SQLserverのデータベースに接続したいのですが、
上のこうなコードで接続を試みたら

「ユーザー('null')の接続に失敗しました。
理由:SQL Serverの信頼関係接続に関連付けられていません。」

というエラーが発生しました。
もちろん指定した名前のユーザも作成しています。
検索してみると、かなりの数の同例がヒットしたのですが
Javaを本格的に初めて数日の私にはまったくと言っていいほど
理解できませんでした。
初心者にもわかりやすいように、解決法を説明できる方がいましたら
よろしくお願いします。
20 :2006/05/11(木) 23:53:56
PointとかPoint2DとかAffineTransformとかみつかったんですけど2次元幾何の計算に使えるVectorはありませんか。
二つのベクトルOA、OB間の角度を求めたり、ベクトルを正規化したりできるやつです。
21デフォルトの名無しさん:2006/05/11(木) 23:57:02
>>20
意味不明だが、commonsでも探してみればあるかも
22デフォルトの名無しさん:2006/05/12(金) 00:25:16
Java3Dにありそうな。
23デフォルトの名無しさん:2006/05/12(金) 02:43:30
前スレ>>971
jarの中にポリシーファイルを入れた署名付アプレットにすればよい
SDKのドキュメントにそこそこ詳しく書いてあるからまずはそれを読みなさい
24デフォルトの名無しさん:2006/05/12(金) 02:48:27
>>19
sqlserver用のjdbcドライバはユーザー、パスワードの指定をする場合はNT認証になる
正確にはurlに何か指定していないと信頼関係接続(ようするにSQLサーバに登録したユーザで認証する)にならない
何かってのは忘れた
手っ取り早い方法は、urlの方でユーザー、パスワードを設定した接続文字列を使う
25デフォルトの名無しさん:2006/05/12(金) 09:01:15
初めましてこんにちは。
自分はjavaとかあんまりやった事ない初心者ですが
初心者ってどの程度の物が作れますか?
26デフォルトの名無しさん:2006/05/12(金) 09:06:20
うんこ程度の物
27デフォルトの名無しさん:2006/05/12(金) 09:19:19
筋が良ければ、0から初めても、
その日のうちに数当てゲームぐらいは作れるだろう
28デフォルトの名無しさん:2006/05/12(金) 09:26:30
できない初心者は何やってもダメ
初心者は何ができますか?なんて質問する奴は何もできない
29デフォルトの名無しさん:2006/05/12(金) 09:51:18
>>20
JAVA3Dの中にvecmathってパッケージある
その中にVector2dとVector2fってクラスがあるからそれを使えばよろしいのでは
Vector2d
ttp://sakura.meijo-u.ac.jp/java/java3d/javax/vecmath/Vector2d.html
Vector2f
ttp://sakura.meijo-u.ac.jp/java/java3d/javax/vecmath/Vector2f.html

注1)Vector2dはdouble型をVector2fはfloat型を扱うクラス
注2)JAVA3Dはjdkやjreには標準で入っていないので別途インストールする必要がある
3020:2006/05/12(金) 10:41:34
>>29
詳しくどうも有り難うございます。!
しかしjava.awt.geomにはAffineTransformとかまでありながら何故vectorがないんだろう。
31デフォルトの名無しさん:2006/05/12(金) 10:51:06
よろしくお願いします。
ひとつのパッケージの中で異なるクラスを呼び出そうとしてうまくいきませんでした。
myという名前のディレクトリを作って、次のようなふたつのファイルを書きました。

//MyClass.java
package my;
class MyClass {}

//UseMyClass.java
package my;
public class UseMyClass
{
public void method(){
MyClass myclass = new MyClass();
}
}

すると、UseMyClass.javaがコンパイルできません。MyClassを見つけられないと言って来るのです。
どなたかヒントだけでもお願いできないでしょうか。ずっとかかりきりで、どうにもならないのです。
32デフォルトの名無しさん:2006/05/12(金) 11:42:58
MyClass のコンパイル結果にクラスパスは通してるん?

まあたぶん my フォルダにコンパイル結果も出力してて
javac -classpath . UseMyClass.java
   ~~~~~~~~~~~~
が足りないって状況な気がするけど。
3329:2006/05/12(金) 12:53:29
俺はどこからjavadocのURLを取ってきたんだ_| ̄|○
適当に検索して出てきたのを貼り付けただけなんだけど、てっきり公式のdocかと・・・。

sunの公式ページのjavadocはこっちな。中身は変わらんけど一応。
ttp://java.sun.com/products/java-media/3D/forDevelopers/J3D_1_3_API/j3dapi/javax/vecmath/Vector2d.html
ttp://java.sun.com/products/java-media/3D/forDevelopers/J3D_1_3_API/j3dapi/javax/vecmath/Vector2f.html
34デフォルトの名無しさん:2006/05/12(金) 16:43:35

ArrayListに突っ込んだクラスの中の一部のデータだけを変えるのに
簡単な方法ないですか?

private class AA{
 private String no = "1";
}

ArrayList arr = new ArrayList();
for(int i = 0; i < 100; i++){
 AA a = new AA();
 arr.add(a);
}

// 10番目に入れたインスタンスのnoを変えたい

35デフォルトの名無しさん:2006/05/12(金) 16:47:56
AA a = (AA)arr.get(9);
a.setNo("100");
3634:2006/05/12(金) 16:55:52
>>35
setter忘れてました。
それってCで言うポインタみたいな考え方?
37デフォルトの名無しさん:2006/05/12(金) 17:25:50
args内の任意の式,例えば2+6取得して
それぞれ、2、+、6に分割するにはどうすればいいでしょうか?
数値と演算子の間にスペースは入りません。
よろしくお願いします。
38デフォルトの名無しさん:2006/05/12(金) 17:26:46
そう考えないと理解できないの?
39デフォルトの名無しさん:2006/05/12(金) 17:28:31
ポインタアレルギーの低脳君はご健在かw
4034:2006/05/12(金) 17:34:59
いや、Cもポインタもよくわからないんだが。。
ArrayListから取り出したものに対して更新しても
ArrayList内に反映されるということですね。
41デフォルトの名無しさん:2006/05/12(金) 17:40:40
>>37
こういうこと?

int len = args.length();
String[] str = new String[len];
for(int i = 0; i < len; i++){
  str[i] = args.substring(i, i + 1);
}
4237:2006/05/12(金) 17:57:39
ありがとうございます。
やってみます。
43デフォルトの名無しさん:2006/05/12(金) 17:59:08
>>41
どう突っ込んでいいものやら
44デフォルトの名無しさん:2006/05/12(金) 18:01:48
>>43
いや、args に配列添字が無いだけで一応 >>37 の要件は満たしてるぞ。
例に限りだけど
4537:2006/05/12(金) 18:10:59
>>41
ありがとうございました。
やってみましたが、うまくいかないようです。
分割数を取得するのではなく、文字列を2、+、6
という具合にそれぞれ取得したいんです。
46デフォルトの名無しさん:2006/05/12(金) 18:16:21
>>37の後で

System.out.println(str[0]);
System.out.println(str[1]);
System.out.println(str[2]);

ってやってみな
47デフォルトの名無しさん:2006/05/12(金) 18:38:11
ファイルからデータを読み込んで
別のファイルに出力を行いたいのですが

出力
PrintWriter pw = new PrintWriter
(new BufferedWriter(new FileWriter("ファイル名")));

入力
BufferedReader br =
new BufferedReader(new FileReader("ファイル名"));

一度出力ファイルに書き込んだ後、
もう一度書き込もうと、
PrintWriterを宣言すると
出力ファイルの全ての内容が消えてしまいます。
どうすれば出力ファイルの内容を消さずにすむでしょうか。


48デフォルトの名無しさん:2006/05/12(金) 18:40:04
new FileWriter("ファイル名",true)

APIリファレンスくらい読めよ小僧
49デフォルトの名無しさん:2006/05/12(金) 19:43:48
>>47
そりゃもう Java とかプログラミングとかいった問題ではなく
君の考え方の問題だ。
50fbsfv:2006/05/12(金) 21:22:25
ここのレス内容レベル低!
51デフォルトの名無しさん:2006/05/13(土) 09:57:53
URL url = Resource.class.getResource("/hoge.xls");

上をメインメソッド内でやるとちゃんとURLがとってこれるんですが、
なぜかサーブレットのdoGetメソッド内でやるとnullです...orz
教えてください。
52デフォルトの名無しさん:2006/05/13(土) 11:09:19
SOAPわかる方いますか?
RPCのようなメソッド形式でなく、データをDOMのDocumentオブジェクトなどの
XMLオブジェクトにしてからSOAPメッセージとして通信したいのですが、
このあたりのAPIやライブラリ等はあるのでしょうか?AXISとかでもできる?

因みに、↑のようなやり方をDocument/Literal(メッセージング)という認識でOKですか?
また、XMLのエレメント名や構造などは、全部自分で自由に決めれるのでしょうか?
53デフォルトの名無しさん:2006/05/13(土) 12:36:27
自前でXML化して通信するなら
SOAPである意味がない気がするんだが
54デフォルトの名無しさん:2006/05/13(土) 13:36:09
>>53
元々アプリ側がXMLのインターフェースをもっているからです。
55デフォルトの名無しさん:2006/05/13(土) 13:38:25
いや、だからそれならなおさらSOAPである意味がないと思うんだが。
勝手にHTTPに乗せればいいじゃん。
56デフォルトの名無しさん:2006/05/13(土) 14:35:44
シンプルにXML使ったRPCならXMLRPCつかえ
Java以外とのやり取りで最も現実的で自作も容易
Apacheからおとしてくるほうがはやいがな

SOAPやりたいならまったく知識がないようだからNetBeans5.5をまて
JAX-WSはらくだぞ
通常のクラスがWEBサービスになる
57デフォルトの名無しさん:2006/05/13(土) 20:06:49
Math.random() は 0.0 以上 1.0 未満のdoubleの値を取るとあるんですが、
1.0ちょうどを含めたい時はどうすればよいでしょうか?
58デフォルトの名無しさん:2006/05/13(土) 20:14:53
そもそもdouble型がほんとうに欲しいの?
Randomクラスみてみた?
59デフォルトの名無しさん:2006/05/13(土) 20:22:05
XPをSP2にしたら、JAVA_HOME\jre\lib\ext内のjarファイルにクラスパスが通らなくなりました。
これの回避策はありますか?
60デフォルトの名無しさん:2006/05/13(土) 20:24:20
>>57
double d;
do {
d = 1.1*Math.random();
} while (d > 1.);
61デフォルトの名無しさん:2006/05/13(土) 20:30:47
Random random = new Random(System.currentTimeMillis());
double vlaue = (double)random.nextInt(Integer.MAX_VALUE) / (double)(Integer.MAX_VALUE - 1);
6259:2006/05/13(土) 20:36:03
単なる設定間違いでした。
失礼しました。
63デフォルトの名無しさん:2006/05/13(土) 21:05:07
12345と入力させて、Num[4]={1,2,3,4,5}となるようにしたい
とりあえず作ってみたけど、1→エンター→2→エンター・・・のように1個1個エンター押さなきゃいけないんだよねorz
64デフォルトの名無しさん:2006/05/13(土) 21:24:14
>>61
Randomで、種にSystem.currentTimeMillis()を指定する意味ってあるの?
種が無指定の場合、1.4だとSystem.currentTimeMillis()使ってるし、
1.5だとSystem.nanoTime()使ってるでしょ。
65デフォルトの名無しさん:2006/05/13(土) 21:32:56
>>63
>>41の様に一行で入力させて一文字ずつ抜き出すって手は?
66デフォルトの名無しさん:2006/05/13(土) 22:39:12
>>65
41のargsにあたる部分が配列じゃないので、lengthが使えません

x=abcdeの時にX[4]={a,b,c,d,e}となるようにしたい って言ったほうが良いかなぁ・・・伝わってるかなorz
67デフォルトの名無しさん:2006/05/13(土) 22:48:14
>>66
lengthの後ろに括弧があるんだが勘違いしてそうだ
68JAVA初心者:2006/05/13(土) 23:35:31
こんにちは。いつもいろいろ教えてくださいましてありがとうございます。
今日はTORQUEに関する質問です。
TORQUEについて、まだ使用経験がないのですが、今度使わなくてはいけなくなりました。。。。
でも、なにせ資料が少ないので。。。。
DBの中でプライマリーキー(ここではID)の一番大きい数をしるのは
そうやってやればいいでしょうか?
たとえば、IDが今は10番まで使われていたとして、その10番というのを
知る方法が知りたいのです。SQLだと、SELECT MAXみたいなので
GETできると思いますが。。。。。
よろしくお願いしますm__m
69デフォルトの名無しさん:2006/05/13(土) 23:39:08
オブジェクトと
フィールドと
インスタンスと
インスタンス変数と
メンバと
メンバ変数と
属性

の違いについてkwsk
70デフォルトの名無しさん:2006/05/13(土) 23:41:06
今時Torqueかよ。既存システムのお守りならご愁傷様、と言うところだが、
新規案件なら、責任者は腹を切って死ぬべきだな。

それと、こっちで聞いた方がいいかも。
「Java⇔RDBのMapping-Frameworkを語るスレ Vol.4」
ttp://pc8.2ch.net/test/read.cgi/tech/1134701684/
71JAVA初心者:2006/05/13(土) 23:46:59
>70さん、、え??いまどきって、、TORQUEって古いんですか??
すいません、、あまり知識がなくて。。。^^;
一応教えていただいた、スレにも同じ文で投稿してみました。
7265:2006/05/13(土) 23:54:30
>>66
>41のargsにあたる部分が配列じゃないので、lengthが使えません
残念、Stringは使えます。
ttp://java.sun.com/j2se/1.5.0/ja/docs/ja/api/java/lang/String.html
>x=abcdeの時にX[4]={a,b,c,d,e}となるようにしたい って言ったほうが良いかなぁ・・・伝わってるかな
どうでもいいが、X[4]だと生成される配列はX[0]〜X[3]の4つで5つの要素を入れようとすると
ArrayIndexOutOfBoundsExceptionってエラーがでるよ。
String型に要素を入れるときは"a"とダブルコーテーションで囲まないといけないから
正しくは{"a","b","c","d","e"}になるよ。
ってか配列生成時に要素をいれれば配列長は自動で設定されるからX[4]と入れる必要は無い
その文だとXの四番目に{a,b,c,d,e}を入れろになってしまう。
正しくはString[] X = {"a","b","c","d","e"};と表現。



突っ込みどころが多すぎ。質問する前にもっと勉強して。
73デフォルトの名無しさん:2006/05/13(土) 23:56:57
丁寧にありがとうございます
良く勉強しておきます
7465:2006/05/14(日) 00:24:36
>>66
>>41のソースを拡張してこんなん作ってみたよ。
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
String tmp = "初期化";
try{
tmp = in.readLine();
}catch(Exception e){
e.printStackTrace();
}
int len = tmp.length();
String[] str = new String[len];
for(int i = 0; i < len; i++){
str[i] = tmp.substring(i, i + 1);
System.out.println(str[i]);
}
これでString型配列str[]の中には入力された文字列が一つ一つばらばらになって入っているよ。
勿論以下をインポートするんだよ。
import java.io.BufferedReader;
import java.io.InputStreamReader;
75デフォルトの名無しさん:2006/05/14(日) 00:41:17
変数を弄ったらうまく組み込めました
感謝&自分のへたれ具合にショックorz
良く分析して自分のものにします
76デフォルトの名無しさん:2006/05/14(日) 00:55:36
たまには StreamTokenizer の事も思い出してあげてください
77デフォルトの名無しさん:2006/05/14(日) 01:01:17
Stringの初期化が必要なときって
普通はナニを入れますか?
78デフォルトの名無しさん:2006/05/14(日) 01:02:00
null
79デフォルトの名無しさん:2006/05/14(日) 01:02:49
俺はNULL派に所属だな。
80デフォルトの名無しさん:2006/05/14(日) 01:03:28
>>78
ありがとうございました
81デフォルトの名無しさん:2006/05/14(日) 01:03:42
Javaの仕様では、変数を初期化しないとnullになるの?
82デフォルトの名無しさん:2006/05/14(日) 01:12:45
戻り値を取得してSystem.out.printで表示するのと、
クラス内に表示するメソッドを作ってその中でSystem.out.print

ってどっちの書き方がいいんでしょうか??
83デフォルトの名無しさん:2006/05/14(日) 01:17:02
基本は負担軽減を目指して。
84デフォルトの名無しさん:2006/05/14(日) 01:17:43
表示形式に一定の規則があるなら
形式に沿って整形した String を返すメソッド作れ

そんでもって そのメソッドの戻り値を表示しれ
そうすると後で同じ形式で整形したい時に余計な表示がなくて済む
85デフォルトの名無しさん:2006/05/14(日) 02:12:11
この度PCの専門に入りました18の者です。Javaをやってみておもしろいと
おもいました。まだわからないことだらけですが、どうぞよろしくおねがいします
ではでは。本当にありがとうございました
86デフォルトの名無しさん:2006/05/14(日) 02:23:22
> 本当にありがとうございました
87デフォルトの名無しさん:2006/05/14(日) 02:46:57
たぶん出力したデータがエラーを起こして読み取りクラスが動かないんですが、
出力したファイルを直接読み取る方法はないでしょうか?
ワードパット(Magcup)をつかっても文字化けしていて正しく出力しているのか分かりません
文字化けしてるのがデフォなのかも分からないのでそれも含めてお願いします

環境はWindowsMe、IME2000、JDKの最新のやつ、ワードパットはmagcupです

助けて><
88デフォルトの名無しさん:2006/05/14(日) 02:52:00
どうやって出力した? FileWriter 使ったらな FileReader でそのまま読み込めるだろ。
89デフォルトの名無しさん:2006/05/14(日) 02:53:10
直接読み取った結果文字化けのように見えてるだけなのに、
「直接読み取る方法はないでしょうか」ってなんだよ。
新人研修の課題ですか?
90デフォルトの名無しさん:2006/05/14(日) 03:04:07
public void fileOut(){
try{

FileOutputStream fos = new FileOutputStream("Day.data");
ObjectOutputStream oos = new ObjectOutputStream( fos );
oos.writeObject( day );
}catch(Exception e){System.out.println("エラーが出たので終了");}

}

これで書き込んで

public void print(){
try{
int i=0;

while(i<=4){
System.out.println(i);
ClassTable info =(ClassTable)day.elementAt(i);
info.showData();
++i;
}
}catch(Exception e){System.out.println("エラーが出たので終了(2)");}
}
これで読み込んでるって感じです

91デフォルトの名無しさん:2006/05/14(日) 03:04:56
printのファイルの読み込み部分を、iの値を出力するようにするとちゃんと出てくる、
文字を30字ぐらい入れたのにもかかわらず、データファイルが5バイトしかないのが怪しい感じがしてるんですが・・・

具体的には、ここのページをやってます
http://www.crew.sfc.keio.ac.jp/lectures/2000s_mmb/JavaLectures/Lecture6/Lec6top.html

質問が的を得てないかもわからないですけど、どうかお願します><
ファイルの出力が正しく行ってるのかどうかがわからないです
92デフォルトの名無しさん:2006/05/14(日) 03:13:23
ひどい講義資料だな
93デフォルトの名無しさん:2006/05/14(日) 03:19:29
読み込んでネェじゃん

ObjectInputStream in = new ObjectInputStream(new FileInputStream("Day.data"));
day = (Vector)in.readObject();
94デフォルトの名無しさん:2006/05/14(日) 03:21:50
どうでもいいけど
×得
○射
95デフォルトの名無しさん:2006/05/14(日) 03:27:23
読み込みは別の関数でやってるみたいです
「エラーが出たので終了(1)」と表示されないので、読み込めてはいると思うんですが・・

public void fileIn(){
try{
FileInputStream fis = new FileInputStream ("Day.data");
ObjectInputStream ois = new ObjectInputStream (fis);
day = (Vector)ois.readObject();

}catch(Exception e){System.out.println("エラーが出たので終了(1)");}

96デフォルトの名無しさん:2006/05/14(日) 03:29:03
     _____
   /−、 −、    \       / ̄ ̄ ̄ ̄\,,  
  /  |  ・|・  | 、    \    /_____  ヽ 
 / / `-●−′ \    ヽ  | ─ 、. ─ 、 ヽ |  | 
 |/ ── |  ──   ヽ   |  |  ・|・  |─ |___/ 
 | ── |  ──.    |   |   |` - c`─ ′  6 l 
 | ── |  ──     |   l  ヽ (____  ,-′
 ヽ (__|____  / /    ヽ ___ /ヽ 
  \           / /    / |/\/ l ^ヽ 
   l━━(t)━━━━┥    | |      |  |
     _____
   /−、 −、    \       / ̄ ̄ ̄ ̄\,,  
  /  |  ・|  ・| 、    \    /_____  ヽ 
 / / `-●−′ \    ヽ  | ─ 、. ─ 、 ヽ |  | 
 |/ ── |  ──   ヽ   |  |{0}  |  {0}|─ |___/ 
 | ── |  ──.    |   |   | `/¨`ヽ─′ 6 l 
 | ── |  ──     |   l  ヽ `ー'′    ,-′
 ヽ (__|____  / /    ヽ ___ /ヽ 
  \           / /    / |/\/ l ^ヽ 

::::::::::::::::::::::   ____,;' ,;- i
::::::::::::::::::   ,;;'"  i i ・i; 
:::::::::::::::  ,;'":;;,,,,,, ;!, `'''i;         / ̄ ̄ ̄ ̄\,, 
:::::::::::  ,/'"   '''',,,,''''--i,,,,       /_____  ヽ
:::::::::  ;/  .,,,,,,,,,,,,,,,,,   ;i' `i;      | ─ 、. ─ 、 ヽ |  |
:::::::  i;"     ___,,,,,,,  `i".        {0}  |  {0}|─ |___/
::::::: i;    ,,;'""" `';,,,  "`i;       |` /¨`ヽ─′ 6 l
::::::: |  ''''''i ,,,,,,,,,,  `'--''''"      ヽ ヽ._.イl    ,-′
::::::: |.    i'"   ";            ヽヘ_/ノ_ /ヽ
::::::: |;    `-、.,;''"             / |/\/ l ^ヽ
97デフォルトの名無しさん:2006/05/14(日) 03:31:09
「うまくゆかない」だけじゃ答えようがねぇっての。バカ?
98デフォルトの名無しさん:2006/05/14(日) 03:37:58
とりあえず、出力したファイルの中身を文字化けせずに方法を知りたいのですが・・・
txtに変換してメモ帳で開いても文字化け、ワードパットでそのまま見ても文字化け、だったので

ファイルに出力させる方法が間違っているのか、それとも見る方法が間違えていて文字化けなのかの判断もつかないので、
javaで出力したデータを教えてください><
99デフォルトの名無しさん:2006/05/14(日) 03:40:30
×出力したデータを教えてください><
   ↓
○出力したデータを見る方法を教えてください><
100デフォルトの名無しさん:2006/05/14(日) 03:41:56
writeObject() はバイナリで出力するからテキストエディタで開いても見えねぇよ。
それ以外はエスパーにでも頼んでくれ。あんたの文章じゃ何も分からない。
101デフォルトの名無しさん:2006/05/14(日) 03:42:13
Java以前にコンピューターリテラシーが不足していますね。
プログラミングの前に「プログラムはなぜ動くのか」
「コンピュータはなぜ動くのか」と言った一般向け書籍を
読むことをお薦めします。
102デフォルトの名無しさん:2006/05/14(日) 03:44:29
なるほど、バリナリで出力するんですか
では、バイナリを見る方法を探してきます
ありがとうございました><
103デフォルトの名無しさん:2006/05/14(日) 03:49:38
茨の道を選んだか…
まぁ若い頃はそれも良し
104デフォルトの名無しさん:2006/05/14(日) 03:57:12
とりあえず、アドレスでVector型を操ってることが分かりました・・・
う〜ん、全書き換えするしかなさそうですね
ご迷惑をおかけしますた><
105デフォルトの名無しさん:2006/05/14(日) 09:01:52
言語の前にロジカルシンキングやれ
その前に国語もな
106デフォルトの名無しさん:2006/05/14(日) 09:53:02
JBossのインストールから簡単な使い方まで順を追って易しく説明してあるサイトありませんか?
107デフォルトの名無しさん:2006/05/14(日) 09:56:52
あとEJBについて優しくわかりやすく詳しく書いてあるところあったらお願いします。
108デフォルトの名無しさん:2006/05/14(日) 10:06:14
すみません。質問させてください。

以下のような文字列があるとします。
<html><body>本文です<input type="text" name="name" value=""></body></html>

HTMLファイルをタグまたは文字列ごとに区切って、value属性を持つものには、
value=""のダブルクオートの中に文字列を入れて、以下のように出力させたいと思っています。

<html>
<body>
本文です
<input type="text" name="name" value="値">
</body>
</html>

それで、新たにクラスを作りました。
(長くなるので次の番号に続きます)
109108:2006/05/14(日) 10:09:03
108の続きです。

public class Sample {
private static final String findValue = "value=\"";
private static final int valueLen = findValue.length();

public static void main(String[] args) {
String html = "<html><body>本文です<input type=\"text\" name=\"name\" value=\"\"></body></html>";
StringBuffer sb = new StringBuffer(html);
int tagStart = sb.indexOf("<");
int tagEnd = sb.indexOf(">") + 1;
if (tagStart >= 0 && tagEnd > 0) {
String tag = sb.substring(tagStart, tagEnd);
System.out.println("tag : " + tag);
int valueIndex = tag.indexOf(findValue) + valueLen;// パラメータ挿入開始位置
if (valueIndex > valueLen) {
String tagLeft = tag.substring(0, valueIndex);
String tagRight = tag.substring(valueIndex, tag.length());
String ret = null;
ret = tagLeft + "値" + tagRight;
System.out.println("ret : " + ret);
}
}
}
}
この処理だと最初のHTMLタグしか読んでくれず、次のタグの呼び出し方が思い浮かびません。
あと、タグで挟まれていない文字列(上記だと「本文です」の箇所)は
このやり方だと出力されないなあ・・・と気づき、疑問だらけになってしまいましたorz
どなたかご助言をお願いいたします。
110デフォルトの名無しさん:2006/05/14(日) 10:57:13
とりあえずリファクタリングして1メソッドで何でもやろうと思わず
ひとつのメソッドではシンプルになるように心がけては?
そしてこのメソッドでは何をするか、を文章でまとめてみなされ

いきなりコーディングしてしくじっておられるようにみえる
111デフォルトの名無しさん:2006/05/14(日) 11:00:49
html = html.replaceAll("value=\"\"", "value=\"値\"");
112108:2006/05/14(日) 11:12:19
>>110
そうですね・・・行き当たりばったり的にコーディングして
しまって、収集が付かなくなってしまった部分があります。
もちょっと整理してみます。

>>111
ありがとうございます!
11352:2006/05/14(日) 11:47:41
>>55
異種プラットフォームをWebサービスで連携するということですので、
ある程度SOAPを前提にしております。
>>52 の回答できる方いらっしゃらないでしょうか?
114デフォルトの名無しさん:2006/05/14(日) 12:09:24
コンパイル時のエラーについて教えてください。

public class list4{
public static void main(String[]args){
TurtleFrame f;
f = new TurtleFrame();
Turtle m = new Turtle();
Turtle ml = new Turtle();
f.add(m);
f.add(ml);
m.fd(100);
m.rt(90);
m.fd(150);
ml.rt(90);
ml.fd(100);
}
}

というプログラムなのですが
3,4,5,6、行目でシンボルが見つかりませんでした。
というエラーがでてしまいます。
間違っている箇所がありましたらご指摘お願いします。
115名無し募集中。。。:2006/05/14(日) 12:13:20
>>114
Turtleってどこで定義してるんだ?
116デフォルトの名無しさん:2006/05/14(日) 12:13:40
TurtleFrame, Turtle クラスが見つからないんだろ。-sourcepath や -classpath で指定しろ。
117114:2006/05/14(日) 12:26:44
>>116さん
すみません、javaは勉強し始めたばかりで未だ知識が足りないので
もぅ少しだけ簡単に教えてもらえないでしょうか?;
118デフォルトの名無しさん:2006/05/14(日) 12:31:40
情報を小出しする奴に問診する気はない。
TurtleFrame.class, Turtle.class または TurtleFrame.java, Turtle.java はあるのか?
 ない → 作るなり、どこかから持ってくるなりしろ。
 ある → list4.java と同じディレクトリに保存しろ。
119デフォルトの名無しさん:2006/05/14(日) 12:35:51
つーか本もネットも見ずに質問してる時点で
120114:2006/05/14(日) 12:36:09
>>118さん
ありがとうございます。
list4の保存場所を勘違いしていたようです。
Turtleと同じフォルダに保存してコンパイルすることができました。
本当に助かりました。
121デフォルトの名無しさん:2006/05/14(日) 12:41:53
Javaの質問スレって他の言語に比べて学生とか新社会人ぽい
質問が多いね。当たり前か…
122デフォルトの名無しさん:2006/05/14(日) 12:53:55
週末って平日に比べてひとりごと聞いて欲しいっぽい
人が多いね。当たり前か…sage
123デフォルトの名無しさん:2006/05/14(日) 16:38:38
http://f44.aaa.livedoor.jp/~takamura/www/tomcat.html

Tomcatの環境整備

9で、
56個のエラーが出るんですが、何がだめなのでしょうか??
一応環境設定でservlet-api.jarの設定とかはその通りにやったつもりなのですが。

SessionExample.java:70: シンボルを解決できません。
シンボル: クラス HttpSession
場所 : SessionExample の クラス
HttpSession session = request.getSession(true);
^
エラー 56 個

C:\Tomcat 5.0\webapps\servlets-examples\WEB-INF\classes>
124デフォルトの名無しさん:2006/05/14(日) 16:41:10
すみません、『C:\Tomcat5』となっていたのですが、
自分のはC:\Tomcat 5.0にインストールされていました。
125デフォルトの名無しさん:2006/05/14(日) 16:51:57
126デフォルトの名無しさん:2006/05/14(日) 17:07:04
>>123-125
環境変数CATALINA_HOMEの値は?
ちゃんと "C:\Tomcat 5.0" になってるか?
ダブルクオートで囲んでるのは、Tomcatと5.0の間に空白が入ってるから。
面倒でなければC:\Tomcat5にインストールしなおすというのも手。
127デフォルトの名無しさん:2006/05/14(日) 17:08:29
http://f44.aaa.livedoor.jp/~takamura/www/tomcat.htmlに騙されました
win2000ではユーザーではなくシステム環境設定のほうを変更するそうです。だまし最悪。
http://www.nihon-eng.co.jp/c-break/TechNote/tomcat/TCAT5_Inst.htm
128デフォルトの名無しさん:2006/05/14(日) 17:13:32
騙しじゃなくておまえが馬鹿なだけだろうが
129デフォルトの名無しさん:2006/05/14(日) 17:14:05
>>126
ありがとうございます。もちろん半角スペースも入れました。
てか、J2SEとtomcatはユーザー環境変数とシステム環境変数のそれぞれどちらに設定するのですか?
とりあえずhttp://www.hellohiro.com/servlet.htmのページに書いてあることもできません
エラーも6個出るし、(さっきはでなくできた)
tomcatスタートさせて20秒くらいまってからhttp://localhost:8080/examples/servlet/HelloWorldServlet開いても
tomcatのエラーのページになります。。。
130デフォルトの名無しさん:2006/05/14(日) 17:21:47
>>128
無知のくせに揚げ足取りだけはいっちょ前だな
131デフォルトの名無しさん:2006/05/14(日) 17:53:09

【現代の】 共 謀 罪 【治安維持法】

4年以上の罪に全て適用される共謀罪。
著作権法違反の罰則は5年以上なので例に漏れず適用される。
例えば、著作権法に違反する可能性のある機能(たとえばP2P機能やCD・DVDコピー機能など)を
持つソフトウェアのアイデアを開発チームが話し合っただけで、
『著作権法違反の幇助の共謀の罪』が成立し、

 逮 捕 ・ 家 宅 捜 索  
 

 そ れ が 共 謀 罪 ク オ リ テ ィ


【社会】 "市民団体ら、猛反発" 共謀罪めぐり、HPでバトル…日弁連vs法務省★2
http://news19.2ch.net/test/read.cgi/newsplus/1147166654/l50

132デフォルトの名無しさん:2006/05/14(日) 21:39:50
Socket socket = new Socket("SampleServer.class",8000);

""で囲まれた部分って何を入れればいいんでしょうか?
サーバーを立ち上げてクライアントを動かしても例外が出てしまいます
133デフォルトの名無しさん:2006/05/14(日) 21:42:20
マニュアル読んでの発言か?
134デフォルトの名無しさん:2006/05/14(日) 21:51:13
localhost
135デフォルトの名無しさん:2006/05/14(日) 22:01:18
ありがとうございます!!動きました!!
136デフォルトの名無しさん:2006/05/14(日) 22:35:08
しね
137デフォルトの名無しさん:2006/05/15(月) 01:18:03
2ちゃんねらーの喧嘩とmixi上の喧嘩はどっちが醜いですか?
138デフォルトの名無しさん:2006/05/15(月) 01:19:45
女の喧嘩
139デフォルトの名無しさん:2006/05/15(月) 01:50:13
EJBって詳しい人いますか?
どうやって覚えたらいいですか?
今はservletでhttp://localhost:8080/でしか表示できない漢字ですが
tomcat5.0でxmlの配置と記述詳しく教えてくだせぇ〜。てかサーブレットのJAVAファイルって
サーブレットのことが書いてあるJAVAファイルコンパイルしてclassだすんだよね?
オンラインテストのシステムなんだけど、JBoss、EJBの勉強ってどうやったらいいかな?
俺小6から鬱病でほんとに頭が悪い。集中力もない。全て順を追ってそのまま教えて欲しいって感じ。
付属の知識はあとで暗記するからとりあえず先に進みたいって感じ。antとかxdoclet?とかmysqlとかアパッチとか一通り
使った物がみたいな。全部インストールして、フォルダ、ファイル作って記述して、コンパイルしたり、実行したりって感じでしょ?
IT系って辛くないっすか?読みづらいものが多い。たぶん不安症&パニック障害&不規則だから心臓がズキズキ痛い。神経科行かないと。
IT系って暗記多いですか?俺にあった進め方教えてくれると嬉しいです。とりあえず真似してスピードに乗って進めていけるような参考書ないですかね?
間違え探しとか、単純な計算とか好き。でもここに来たいじょうなかなか方向転換はできない。
自称頭の悪い精神病っぽい人はどう進めていくのがいいのかなぁ・・。
140デフォルトの名無しさん:2006/05/15(月) 01:52:34
ここは雑談板ではないので悪しからず
141デフォルトの名無しさん:2006/05/15(月) 01:53:53


I
I
使






E

使付 が読めん
142デフォルトの名無しさん:2006/05/15(月) 02:03:23
>>139
勉強が先じゃない。作りたいものが先だ。
143デフォルトの名無しさん:2006/05/15(月) 02:36:05
>>142
ですよね。

雑談板じゃないけどちょっと愚痴ります。
もう死にたいっすわ。
3年前、精神的にやばすぎで心療内科行った。母親には皮膚科行くって嘘ついて金もらった。
昔から全く理解のない母親は、中学校の初登校の日とか、大学生活の途中とかに「精神的にやばい」的なことを漏らした。
馬鹿にされて終わり。「お兄ちゃんとかはそんなこと言ってなかったわよ」と言われて終わり。
すごく性格悪い母親なんだけど、今は自分勝手な母親が勝手にシカトしてるような感じだが、病院行くから金ちょうだいとは言える分けないな、と思い、
俺はこのまま。金に汚い親。絶対逆切れする。めちゃくちゃ精神病で不安定になりながら、バイトして学費以外の金は命令通り負担したけど、
寝れずに徹夜で重労働の派遣行ったのは自殺行為だった。そのときに胸がつったようになりやばくなり、
それから胸や心臓がズキズキ痛むようになった。電車の中とかでも数回あった。パニック障害なんだろうけどね。
落ち着いてないし。あと、姿勢ずっと丸めて悪いのも心臓・胸痛くなる原因ってのを見た。俺だな、と。
肘ついて顔隠す。鬱の薬飲もうかな〜。でも買えねぇか。少し良くなるって見かける。俺は昔から精神病の薬なんて、化学物質体に蓄積させるだけ
と馬鹿にしてたけど、そうでもない感じがしてきたよ、少し。明日発表さ。絶対変な目で見られるさ。ほんと死にたいよ。死なないけど。
144デフォルトの名無しさん:2006/05/15(月) 02:39:20
愚痴ってばっかすみません。
古いバージョンのトムキャットならhttp://muimi.com/j/jakarta/tomcat.htmlこんな早くできますか
145デフォルトの名無しさん:2006/05/15(月) 03:15:42
何こいつw コピペか?w
146デフォルトの名無しさん:2006/05/15(月) 14:19:13
http://www.gihyo.co.jp/books/support.php/4-7741-2177-0
ここの基本ってやつをAll-In-One Eclipseで動かすにはどうしたらいいですか?
全くのお手上げ状態です。よろしくお願いします。
147デフォルトの名無しさん:2006/05/15(月) 15:45:38
少なくともお前は頭が悪くてそんな質問してるんだろうなってのは伝わった
148デフォルトの名無しさん:2006/05/15(月) 17:44:33
>>146
そのレベルだとここで質問しても無駄。 理解できない。
もっと初歩的な本買って読んで悩め。
149デフォルトの名無しさん:2006/05/15(月) 22:35:37
Eclipse関連は専用すれへ
150デフォルトの名無しさん:2006/05/15(月) 23:33:07
学校でエラーもなくコンパイルできていたソースを家に持ち替えりコンパイルしようとしたら、
持ち帰った全てのソースで「シンボルを解決できません」というエラーが大量に出てしまうのですが、
javacのバージョンが学校のと違うのですがそれが原因だったりするのでしょうか?
151デフォルトの名無しさん:2006/05/15(月) 23:41:17
たぶんそう。
http://java.sun.com/javase/downloads/
http://java.sun.com/products/archive/
から、なるべく同じバージョン手に入れた方が苦労がなくてよいかと。
それでダメなら、追加のパッケージが学校の環境に入ってるんだろう。
センセに聞いてみれ。
152デフォルトの名無しさん:2006/05/15(月) 23:43:49
セッションAが有効かどうかって、セッションBからわかる?
AのセッションIDを知っているという前提で。
教えてください。
153150:2006/05/16(火) 00:05:43
>>151
javacのバージョンをいくつか変えてみましたがダメでした。
友人は自分と同じように持ち帰った環境でちゃんと動作しているのが非常に謎です。
154デフォルトの名無しさん:2006/05/16(火) 00:11:23
>>150
ClassPathかimport文じゃないの?
というか友人の環境と自分の環境の違いをメールとかで比べたほうがはやいんじゃ…
155150:2006/05/16(火) 00:22:03
>>154
友人の環境とソースをもらってこちらで試してみたのですが、同様にシンボルのエラーが出てしまいました。
どうしたものか・・・
156デフォルトの名無しさん:2006/05/16(火) 00:28:25
環境をもらうってどうやったんだ?
友人のほうで君のは動くの?
157150:2006/05/16(火) 00:35:11
>>156
もらうというか同じ環境にするですね、紛らわしくて申し訳ないです。
友人に自分のソースを実行してもらったところ、問題なく動くとのことでした。
明らかに自分の実行環境に何か問題ありますね・・・
158デフォルトの名無しさん:2006/05/16(火) 02:18:12
オセロをつくったとしてそれにBGMをつけるにはどうしたらいいですか?
AudioClipオブジェクトとかいうのを使うんですか?
でもAudioClipはインタフェースなのでnewできないという風に本には書いてあったのですが
基本がわかってないんでよくわかりません。
オセロのゲームの内容を書いたクラスに何を付け加えればBGMつきのオセロにできるでしょうか?

以下のAudio.javaを同じフォルダに01.auを入れてコンパイルして実行すれば問題なく音が流れるのですが

import java.applet.*;

public class Audio extends Applet {

AudioClip bgm;

public void init() {

bgm = getAudioClip(getClass().getResource("01.au"));

bgm.loop();
}
}

これをどのようにすればオセロのBGMにできるかわかりません。
自分でテキトウにやってみたら

シンボル: クラス AudioClip
場所 : Audio の クラス
AudioClip bgm;
^
のようにエラーがでます。
159158:2006/05/16(火) 02:19:39
すみません。

    「シンボルを解決できません」

というのが抜けてました。
160デフォルトの名無しさん:2006/05/16(火) 03:27:27
テキトウにやってみたソースを出せ
話はそれからだ

importでも忘れてるんじゃないのか
161デフォルトの名無しさん:2006/05/16(火) 10:10:52
162デフォルトの名無しさん:2006/05/16(火) 10:44:49
音楽を扱うのはJavaSoundのほうがいいとおもうが
163デフォルトの名無しさん:2006/05/16(火) 12:30:23
Oracle9i + J2SE5-06 + Tomcat5.5.9 でプログラミングをしようとしています。プラットフォームはWinXPです。  
JDBCドライバはOracleより10.2を落としてきました。CLASSPATHは通してあります。 JDBCのテストをするために以下のプログラムを作成しました。  

import java.sql.*;  import oracle.jdbc.*;  import oracle.jdbc.pool.OracleDataSource;  
class JDBCVersion  
{   public static void main (String args[]) throws SQLException  
  {  
    OracleDataSource ods = new OracleDataSource();  
    String url = "jdbc:oracle:thin:@//localhost:1521/ZIDANE";  
    ods.setURL(url);  
    ods.setUser("scott");  
    ods.setPassword("tiger");  
        Connection conn = ods.getConnection();  
        DatabaseMetaData meta = conn.getMetaData();  
        System.out.println("JDBC driver version is " + meta.getDriverVersion());  
  }  }  

コンパイルは通りますが実行すると以下のエラーが出ます。  

C:\java>java JDBCVersion  
Exception in thread "main" java.lang.UnsupportedClassVersionError: JDBCVersion (Unsupported major.minor version 49.0)  
 (以下略)  

何が原因でしょう?知恵を拝借できると助かります。 
164デフォルトの名無しさん:2006/05/16(火) 14:50:50
書いてあるとおりじゃないの
JDBCのバージョンがおかしい
165デフォルトの名無しさん:2006/05/16(火) 15:23:46
javacコマンドがJava5で、javaコマンドがそれより前のバージョン(J2SE1.3など)なんじゃね?
java -version と javac -version の実行結果を見て、どのバージョンが動いているのか
確認するといいかも。
166デフォルトの名無しさん:2006/05/16(火) 16:22:45
Java用スクリプト言語Groovyをダウンロードしてみようと思い、

ttp://groovy.codehaus.org/

にアクセスしたのですが、繋がりません。
URLが変わったのかと思い、
ttp://ja.wikipedia.org/wiki/Groovy
ttp://www.wikiroom.com/Groovy/
等を調べたのですが、特に変わった様子はありませんでした。

どこに行けばjreファイル等をダウンロード出来るのでしょうか?
御教授の程、宜しくお願いします。
167デフォルトの名無しさん:2006/05/16(火) 16:40:14
>>166
codehaus.orgが死んでる様子。しばらく待つしかない。
168デフォルトの名無しさん:2006/05/16(火) 16:45:50
>>167
なるほど、了解しました。
大人しく待つことにします。
どうもありがとうございました。
169デフォルトの名無しさん:2006/05/16(火) 17:43:28
例外のthrowについて教えてください。
Java自身がそのAPIとして最初から持っているNullPointerExceptionなどと、
開発者が自分でExceptionクラスを継承して作成した任意の例外クラス、
例えばMyExceptionの2つにおいて、
メソッド中でNullPointerExceptionを、

  throw new NullPointerException();

とする場合、該当メソッドにthrowsを宣言する必要がありませんが、

  throw new MyException();

とする場合、該当メソッドで、この例外を明示的にthrowsしてやる必要がありますよね?
この違いは何によるものなんでしょうか?
NullPointerExceptionが継承しているRuntimeExceptionかな・・・?

170デフォルトの名無しさん:2006/05/16(火) 17:47:35
RuntimeException のサブクラスかどうか
171169:2006/05/16(火) 17:50:00
>>170
ありがとうございます。
ちょうど今、自分で思いついて試してみました。
カキコ前に試せよ>漏れ('A`)

一般的に例外を拡張する時は、
Exceptionを継承するんでしょうか?
RuntimeExceptionの継承を常用するのって、まずいですかね?
172デフォルトの名無しさん:2006/05/16(火) 18:19:51
>>171
>RuntimeExceptionの継承を常用するのって、まずいですかね?
まずいです。コンパイル時に例外処理をしているかどうかチェックされなくなります。
173デフォルトの名無しさん:2006/05/16(火) 18:23:26
RuntimeException…プログラム側に問題があり、回避可能なもの
それ以外のException…プログラムだけではどうしようもないもの

ぬるぽなんて、事前にif (obj == null)とチェックすれば回避できるだろ?
174デフォルトの名無しさん:2006/05/16(火) 18:26:05
>>173
ガッのほうはちょっと難しいかな
175デフォルトの名無しさん:2006/05/16(火) 18:32:20
正規表現で  -1.5234+4.23455
のような任意の式を定義して例外を捨てるには
どうしたらいいですか?
176デフォルトの名無しさん:2006/05/16(火) 18:33:51
何がしたいのか不明です。
177デフォルトの名無しさん:2006/05/16(火) 18:36:20
>>175
    ∧__∧
   / -  - \
   |  ▼   |
  /|=(_人_)= | < 日本語でおk
 / ヽ、____ノ
`Jr  ___ ノ
 ∪⌒∪   ∪
178175:2006/05/16(火) 18:39:47
>>176
わかりにくくてすみません。
入力待ちなりで○+○、○-○のような式を入れてもらって
計算するプログラムです。
それで数式以外がきた時にエラーのメッセージをだせるように
数式の定義がしたいんです。
179デフォルトの名無しさん:2006/05/16(火) 18:41:56
[+-]?[0-9]*\.?[0-9]*[+-][0-9]*\.?[0-9]*
180175:2006/05/16(火) 18:46:02
ありがとうございました。やってみます。
181デフォルトの名無しさん:2006/05/16(火) 19:04:40
文字列を数値にparseできるかどうかbooleanで戻ってくるような関数はありますか?
毎回Integer.parseIntでNumberFormatExceptionをcatchしなくちゃいけなくてはげしく面倒です。。。
182デフォルトの名無しさん:2006/05/16(火) 19:07:00
ない
183デフォルトの名無しさん:2006/05/16(火) 19:08:23
>>181
String text = ...
if (text.matches("[0-9]+"))
i = Integer.parseInt(text);
184デフォルトの名無しさん:2006/05/16(火) 19:11:10
符号がついてたり16進表記だったりするとどうなりますか?
185デフォルトの名無しさん:2006/05/16(火) 19:11:22
>>183
-100 で NG
Integer.MAX_VALUE より大きい値で例外
186デフォルトの名無しさん:2006/05/16(火) 19:14:13
負とか16進数とかはパターンを拡張すれば何とかなるけど、
Integer.MAX_VALUEとかの範囲もチェックするとなると、すごい手間に
なるね。

Integer.parseInt()でNumberFormatException捕まえたほうがかなりマ
シになりそう。
187デフォルトの名無しさん:2006/05/16(火) 19:16:04
>>181
static boolean isParseable(String s) {
try {
Integer.parseInt(s);
return true;
} catch (NumberFormatException ex) {
return false;
}
}
188デフォルトの名無しさん:2006/05/16(火) 19:16:46
面倒ならメソッド作れば済む話。

private static final int parseInt(String num){
  try{
    return Integer.parseInt(num);
  } catch(NumberFormatException ex){/* */}
  return -1;
}
189デフォルトの名無しさん:2006/05/16(火) 19:37:57
Javaっていつの時代の言語ですか?
歴史に詳しい人教えて!
190171:2006/05/16(火) 19:39:52
>>172>>173
なるほど、よくわかりました。
ありがとうございます。
RuntimeExceptionの継承はやめにしました。
191デフォルトの名無しさん:2006/05/16(火) 19:44:41
>>173
逆じゃね? アプリケーションが想定してない例外が RuntimeException。
アプリケーションの設計上ありえて対処すべき例外がそれ以外の Exception。
192175:2006/05/16(火) 19:52:43
>>179
private boolean isValid(String[] args) {
return ("[+-]?[0-9]*\.?[0-9]*[+-][0-9]*\.?[0-9]*
".matches(args[0]));
こうしても、赤くなってしまうのですが‥。
たびたびすいません。

}
193デフォルトの名無しさん:2006/05/16(火) 19:53:09
あるフォルダ内のファイル・フォルダのタイムスタンプを変更するプログラムを作ろうとしています。

Fileクラスlistメソッドで得られた1番目のタイムスタンプに他のみんなを合わせようとしているのですが、
setLastModifiedメソッドを使ったところファイルのタイムスタンプは変更されるのですが、フォルダは変更されません。

ドキュメントにはsetLastModifiedメソッドでファイル・フォルダ共に変更可能とあるのですが、どこに間違いがあるのでしょうか?
どうかよろしくお願いいたします。
194193:2006/05/16(火) 19:53:17
お願いします。

jreの質問です。
j2sdkのフォルダ内にある「jre」フォルダと、
\Program Files\Java\jre1.4.2_hoge〜
ってのは、どっちが使用されるのでしょうか?

中身をみると、同じように見受けられます。

また、「VM」はどこにはいっているのでしょうか?
195193:2006/05/16(火) 19:53:49
import java.io.*;
public class TimeStampTest {
public static void main( String[] args ) {
File path = new File( args[0] );
String files[] = path.list();
File f = new File( args[0] + File.separatorChar + files[0] );
long time = f.lastModified();
System.out.print( f.getName() + "  " );
System.out.print( time + " " );
System.out.println( time + " " );

for (int i=1; i<files.length; i++) {
f = new File( args[0] + File.separatorChar + files[i] );
System.out.print( f.getName() + "  " );
System.out.print( f.lastModified() + " " );

boolean j = f.setLastModified( time );
if ( j ) {
System.out.println( f.lastModified() );
} else {
System.out.println( "error" );
}

}
}
}
196196:2006/05/16(火) 19:54:21
バンゴウ間違えました
お願いします。

jreの質問です。
j2sdkのフォルダ内にある「jre」フォルダと、
\Program Files\Java\jre1.4.2_hoge〜
ってのは、どっちが使用されるのでしょうか?

中身をみると、同じように見受けられます。

また、「VM」はどこにはいっているのでしょうか?
197197:2006/05/16(火) 20:00:35
eclipseとtomcatとWTPの質問です。

eclipse3.1.2使用中です。
これにWTP入れたいのですが、単体で入れるとGEFとかなんやら、
たくさんインストールしなくてはならんようで面倒みたいです。

で、all in one でやろうかと。
wtp-all-in-one-sdk-R-1.0.2-200604280245-win32.zip
ってやつダウンロードすると、eclipse本体が入ってません。
(参照)
http://download.eclipse.org/webtools/downloads/drops/R-1.0.2-200604280245/

どーなんてんでしょうか?
198デフォルトの名無しさん:2006/05/16(火) 20:01:31
>>196
SunのJDKをWindowsインストーラでインストールした場合は、
Program Files\〜が使用されるようにレジストリが設定される。
ただし、環境変数JAVA_HOMEがj2sdkなどに設定されている場合は、そっちが優先される。
JVMは各JREインストールディレクトリに入っている。
199197:2006/05/16(火) 20:12:32
>>198
ありがとうございます。
>SunのJDKをWindowsインストーラでインストールした場合
この場合はj2sdkのフォルダはどこにできるのでしょうか?
その場合、「jre」フォルダはどこにできるのでしょうか

JVMはどのファイルでしょうか?
みあたりません。
200200:2006/05/16(火) 20:20:48
WindowsXP使用です。

tomcatをインストールしたいのですが、windowsインストーラを
使用しないでインストールする場合、どうやればいいのでしょうか?
解凍して、ただ配置すればよいのでしょうか?
配置の仕方等、解説しているHPありませんでしょうか?
201デフォルトの名無しさん:2006/05/16(火) 20:22:45
>>200
解凍して中の README 嫁
202デフォルトの名無しさん:2006/05/16(火) 20:25:45
>>199

> この場合はj2sdkのフォルダはどこにできるのでしょうか
インストール時にウィザードで指定した場所。

> その場合、「jre」フォルダはどこにできるのでしょうか
j2sdkインストールディレクトリおよびインストール時にウィザードで指定した場所。

> JVMはどのファイルでしょうか?
いろいろ。単一ファイルではない。


203デフォルトの名無しさん:2006/05/16(火) 20:27:21
>>200
ドキュメントぐらい読めよ。
解凍した中にも入っているし、Tomcatのサイトにもある。
204デフォルトの名無しさん:2006/05/16(火) 20:50:38
分からないならインストーラを使え
205デフォルトの名無しさん:2006/05/16(火) 21:05:22
ttp://java.sun.com/j2se/1.4/ja/docs/ja/tooldocs/win32/jarsigner.html

jarsignerで署名付きのJARファイルにすると・・・
パスワード入れないと動作しなくなる???
206デフォルトの名無しさん:2006/05/16(火) 21:06:35
>>192
args[0]と正規表現が逆。
Javaの文字列リテラル内では \ は \\
「赤くなる」ってなんじゃい。
207デフォルトの名無しさん:2006/05/16(火) 21:36:22
XMLEncoder を使用して String を保存する際に \u0002 などが含まれていると、
エスケープされずに出力された挙句 XMLDecoder で復元できなくなってしまいます。

import java.beans.*;
import java.io.*;

public class Test {

public static void main(String[] args) {

String s = new String( new char[]{'\u0002'} );

ByteArrayOutputStream o = new ByteArrayOutputStream();

XMLEncoder e = new XMLEncoder(o);
e.writeObject(s);
e.close();

String s2 = (String)new XMLDecoder( new ByteArrayInputStream( o.toByteArray() ) ) .readObject();
}
}


特にサーブレットで request.getParameter("hoge") してきた場合、クライアントとの文字コード違いや、
悪意のあるリクエストによってそのような不正な文字コードが混じることがあって
そのままだと XMLEncoder/Decoder を使用することができません。
事前にチェックをするとした場合、XMLEncoder/Decoder で使用できる文字の範囲(逆にできない範囲)
を知りたいのですがご存知の方いらっしゃいますか?

または Encoder に正しくエスケープさせるか、強引に Decoder に読み込ませる方法でも良いですが・・・。
208デフォルトの名無しさん:2006/05/16(火) 22:33:58
ものすごい初歩的な質問なんですが・・・
クラスとインスタンスについて質問です。

Testというクラスがあるとします。

Test test;
で、Test型のクラスの宣言をして、メモリのtestというアドレスを用意する。

test = new Test();
で、アドレスtestにTestクラスのインスタンスを作成する。

という認識であってるんでしょうか?
209デフォルトの名無しさん:2006/05/16(火) 22:35:06
Java使ってファイルデータベースを作ろうと思うんだけど、
詳しく説明されているサイト知らない?

バイナリへのエンコード/デコードとか、
ダウンロードした後サーバに残るファイルの削除とか、
どんな感じで処理しているのかイメージがわかなくて。
210デフォルトの名無しさん:2006/05/16(火) 22:40:01
なんか、新宿のホストが紛れ込んでるな
211デフォルトの名無しさん:2006/05/16(火) 22:57:14
>>207
XMLの仕様って読んだことある?
「XML 制御文字 BASE64」でぐぐると幸せになれるかも。
212デフォルトの名無しさん:2006/05/16(火) 22:59:14
>>208
まちがってます。
メモリ領域はnew()した時に動的に確保されます。
213デフォルトの名無しさん:2006/05/16(火) 23:02:57
>>211
つまりSunの実装がまずいってことだよね
シリアライズの問題だから

JAXBのほうはどーなんだろ
そっちのほうに問題があれば影響は多そうだ
214デフォルトの名無しさん:2006/05/16(火) 23:06:03
>>213
シリアライズの問題ではなく、そもそもXML(1.0)の仕様として
Unicodeのうち一部の制御文字は使用不可となっている。
実体参照経由でも使用不可と規格で決まっている。
215デフォルトの名無しさん:2006/05/16(火) 23:06:38
>>189
ナウ
216デフォルトの名無しさん:2006/05/16(火) 23:15:39
>>212
ありがとうございます。

では
Test test;
では一体どんな処理をしているのですか?
217デフォルトの名無しさん:2006/05/16(火) 23:27:04
     _, ,_
   ( ^ё^) ヤダァ、見ないで!恥ずかしい…
     (つ/ )
      |`(..イ 彡サッ
     しし'
218デフォルトの名無しさん:2006/05/16(火) 23:39:03
>>207
XMLEncoderの仕様ミスだね、これは。

http://java.sun.com/j2se/1.5.0/ja/docs/ja/api/java/beans/XMLEncoder.html
> Java の String クラスは、特別なものとして、
> <string>Hello, world</string> に書き込まれる。

こういうルールなので、XMLで表現できない文字がStringに入っている
と壊れる。

Sunにバグレポートしたほうが良い的。

219デフォルトの名無しさん:2006/05/16(火) 23:44:05
というわけで、String に U+0000-U+0008, U+000b-U+000c,
U+000e-U+001f, U+fffe-U+ffff が入ってるとマズい。
220デフォルトの名無しさん:2006/05/16(火) 23:56:56
>>208

> Testというクラスがあるとします。
> Test test;
> で、Test型のクラスの宣言をして、メモリのtestというアドレスを用意する。
で、Test型の変数の宣言をして、メモリのtestというアドレスを用意する。

> test = new Test();
> で、アドレスtestにTestクラスのインスタンスを作成する。
で、アドレスtestに、newした時点でメモリ上に確保されたTestクラスのオブジェクトを参照するIDが代入され、
Test()でコンストラクタが呼ばれて、インスタンスが作成される。



で合ってますかねぇ?
221207:2006/05/17(水) 00:00:42
ありがとうございます。
当面は219を自前で処理しつつバグレポしておきます。
6.0 に期待しててください。
222デフォルトの名無しさん:2006/05/17(水) 00:03:48
Javaの文字コードの扱いについて教えて下さい。

StringクラスのコンストラクタString(byte[],String charset)は
charsetで指定された文字コードでバイト配列をUnicodeに
変換しているらしいのですが、

変換先の文字コードはUnicode決め打ちなんでしょうか?
223デフォルトの名無しさん:2006/05/17(水) 00:05:30
>>214
ageてまでひっしにかくそうとするのやめれ
224デフォルトの名無しさん:2006/05/17(水) 00:19:05
>>220
なんでそんなにC言語ちっくに解釈しようとするの?
もうちょっと本質を学ぼうよ
225デフォルトの名無しさん:2006/05/17(水) 00:22:51
>>220
言語仕様の制約さえ満たしていればそれ以外の具体的な
動作は実装依存。考えるだけ無駄。どうしても解釈が
欲しいなら規格書を読みなさい。
226デフォルトの名無しさん:2006/05/17(水) 00:23:00
>>222
決め打ちですよ。StringはかならずUnicodeだから。
227新人のプログラマー志望:2006/05/17(水) 00:26:31
ああああああのーーー前みたいな消える騒ぎがあったときなにもできなかったから
句や市いので・・・・・・圧縮の仕方教えてください!!過去ログからの資料age
、きぼんぬ!!
228デフォルトの名無しさん:2006/05/17(水) 00:28:53
>>220
Javaの仕様的にはメモリとかそれのアドレスなんてものは *存在しません*。

実装上も、メモリに確保されたオブジェクトはCとかと違って
ガベージコレクタが *がんがん勝手に移動させるので*
アドレスなんかに意味はありません。
229デフォルトの名無しさん:2006/05/17(水) 00:32:40
>>227
まず落ち着け。洗面所へ行って手を洗い、ついでに顔も洗え。
そしていっぱいうんこして寝ろ。
230デフォルトの名無しさん:2006/05/17(水) 00:33:39
Javaでゲーム作りたいんだけどどれ位勉強すればいいかな?
あと勉強する時はやっぱ本買ったりネットで調べたり地道にやるしかない?
231222:2006/05/17(水) 01:05:02
>>226
ありがとうございます。

ということは、サーブレットでリクエストを受け取る時の定番エンコード処理

---------
String noencode = request.getParameter("PARAM1");
String encoded = new String(noencode.getBytes("ISO-8859_1"),"SJIS");
---------

は ラテンコード(ISO-8859_1)に従って分解されたバイト配列を
SJISでUnicode変換していることになる。

したがって、受け取ったリクエストパラメータPARAM1は、もともと
ISO-8859_1でUnicode変換されている。

という解釈でOK?
232デフォルトの名無しさん:2006/05/17(水) 01:13:56
Unicode変換とかいう俺用語を作らないでください
233デフォルトの名無しさん:2006/05/17(水) 01:17:56
ISO-8859_1 は String に入ってる文字を何も変換せず(読み取ったときのまま)
バイトの配列で取り出すってことと違う?
んでそれを SJIS と解釈して String に詰め込むと。

ってか SJIS ってありなんだっけ?
234デフォルトの名無しさん:2006/05/17(水) 01:40:53
throwsを使うと、そのメソッドの呼び出し元に
例外処理をさせることができるということなんですが、
mainメソッドにthrowsをつけた場合、呼び出し元はどこになるんですか?
235デフォルトの名無しさん:2006/05/17(水) 01:47:52
そんなこと知ってどうする
236デフォルトの名無しさん:2006/05/17(水) 01:48:47
わからないなら書き込むな
237デフォルトの名無しさん:2006/05/17(水) 01:51:54
Java VM
238デフォルトの名無しさん:2006/05/17(水) 01:57:59
>>230
Javaに限らず地道な努力が必要

>>231
なんでサーブレットのAPIつかわないの?
リクエストパラメータはEUC-JPであるとかMS932であるとか指定できるのに
239222:2006/05/17(水) 01:59:54
>>233
俺)Unicode変換
 ↓
正)Unicodeに変換
失礼しました。

>>233
確かに
http://www.atmarkit.co.jp/fjava/javafaq/servlet/servlet06.html
にもそう書いてありますね。ところで
------
import java.io.*;
class moji_code{
public static void main(String args[]) throws IOException{
try{
BufferedReader br = new BufferedReader(new FileReader("UTF.txt"));
String utf_str = br.readLine();
byte[] byt = utf_str.getBytes("8859_1");

String str = new String(byt, < A > );

System.out.println("utf:" + utf_str);
System.out.println("result:" + str);
}catch(IOException e){
System.out.println(e);
}
}
}
-----
UTF-8で書かれたテキストから (あえて)FileReader()で読む場合
< A >はどんなコードでUnicodeに変換すれば文字化けしないですか?
240デフォルトの名無しさん:2006/05/17(水) 02:05:48
>>239
"UTF-8"
241デフォルトの名無しさん:2006/05/17(水) 02:07:25
>>240 は間違い。どんなコードでやっても化ける。

> BufferedReader br = new BufferedReader(new FileReader("UTF.txt"));
BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream("UTF.txt"), "UTF-8"));
242デフォルトの名無しさん:2006/05/17(水) 02:09:19
>>239
つーかちゃんとReaderで文字コードを指定しろ
243デフォルトの名無しさん:2006/05/17(水) 02:09:53
>>239
> byte[] byt = utf_str.getBytes("8859_1");
これが通用するのは、絶対に ISO8859_1 で読み込むと決められている場合だけ。

FileReader はプラットフォーム固有のエンコーディングしか使わない。
Windows だったら Windows-31J とか。
244222:2006/05/17(水) 02:37:04
>>243
ということは、サーブレットが受け取るリクエストパラータは
上で言う「絶対に ISO8859_1 で読み込むと決められている場合」に
相当するわけですか?
245デフォルトの名無しさん:2006/05/17(水) 02:54:16
お前ら様へ。
"ISO8859_1”などと俺仕様で書かずに、"ISO_8859-1”とか"ISO-8859-1”と書いてください。
一応ちゃんと決まった名前ですから。なんかね、気持ち悪いのよ。
メソッドの引数はしかたないけど。
246デフォルトの名無しさん:2006/05/17(水) 04:15:49
Class classA のインスタンスは一つの時、
classA に定義されているメソッドを
複数のスレッドから同時に呼び出した場合、
synchronized されていなければ、
同時に実行することがでると思うんですが、
多数のスレッドが一つのインスタンスのメソッドを呼び出すのは、
パフォーマンス的に問題ないのでしょうか?

例えば、classAにはデータベースからデータを取ってくるメソッドが沢山定義されています。
classA を シングルトンのように1VM : 1インスタンス として使用している場合、
複数のスレッドが同時に呼び出した場合、
classAに処理が集中して遅くなったりしてしまうのでしょうか?
247デフォルトの名無しさん:2006/05/17(水) 05:51:13
サーブレットは大抵 1 インスタンスなわけだが。
248デフォルトの名無しさん:2006/05/17(水) 05:59:58
>>247
すこぶる納得しました。
ありがとうございます。
249デフォルトの名無しさん:2006/05/17(水) 06:26:55
"SJIS"もやめような。
Shift_JISとかWindows-31Jと書け。

Servlet仕様では、デフォルトでは
リクエストパラメータはISO-8859-1で送信されているものとして扱われる。
250デフォルトの名無しさん:2006/05/17(水) 06:47:39
本買ってサーブレット始めたものですが
本の付録のソースで動作を確かめようと
コンバイルしたのですが
パッケージ javax.servletが存在しません
とでてそれに関連したエラーがでます
一応普通のhelloとか文字の方はできるのですが
どうしたらいいのでしょうか;
251デフォルトの名無しさん:2006/05/17(水) 07:04:58
>>250
    ∧__∧
   / -  - \
   |  ▼   |
  /|=(_人_)= | < 日本語でおk
 / ヽ、____ノ
`Jr  ___ ノ
 ∪⌒∪   ∪
252デフォルトの名無しさん:2006/05/17(水) 09:51:58
8859-1でgetbytesしてString作り直すのは悪いプログラムだからまねすんな
253222:2006/05/17(水) 10:13:26
>>249
納得しました。ありがとうございます。

>>252
よりいい方法があれば教えてください。m(_ _)m
254デフォルトの名無しさん:2006/05/17(水) 19:43:05
request.setCharacterEncoding(String)
255デフォルトの名無しさん:2006/05/17(水) 22:17:15
Javaが他の言語より優れてる点ってなんですか?
マルチプラットフォームなのは他にもあるし。
オブジェクト指向言語、コンポーネントの再利用性が高いというのも
他と大差ないような。。。コンパイル時の型チェック?速度?
今のところ、納得いくドキュメントを見たこと無いです。

トータルで見たときに、なんとなくとか?(w
256デフォルトの名無しさん:2006/05/17(水) 22:21:45
>>255
>マルチプラットフォームなのは他にもあるし

例えば?
257デフォルトの名無しさん:2006/05/17(水) 22:31:27
スクリプト言語って全部そうじゃね?
258デフォルトの名無しさん:2006/05/17(水) 22:51:58
>>255
堅牢なクラスライブラリ
言語そのものに精通したエキスパートじゃなくても
兵隊を大量にこき使える
259デフォルトの名無しさん:2006/05/17(水) 23:16:52
1.5から
ArrayList list = (ArrayList)request.getAttribute("errorList");
list.add("hoge");
ってやるとEclipseエディタ上で警告みたいなのでます。
ArrayList<String> list = (ArrayList<String>)request.getAttribute("errorList");
list.add("hoge");
ってやっても別のが出る。
どうすれば許してもらえるのかな。
260デフォルトの名無しさん:2006/05/17(水) 23:34:36
>>255
Javaでいうマルチプラットフォームは

コンパイル済みのバイナリを
再コンパイルなしに別のプラットフォームで利用できる

という意味。再コンパイルをいとわないとか
(スクリプト言語みたいに毎回コンパイルするもの含む)
一つのプラットフォームしか使わないとかだったら
Javaである利点はない。
261デフォルトの名無しさん:2006/05/17(水) 23:37:42
@SuppressWarnings("unchecked")
262デフォルトの名無しさん:2006/05/18(木) 00:39:09
public class Scene1 extends JFrame{
public Scene1(String title){
super(title);
addWindowListener(new MyWindowAdapter());
Container pane = getContentPane();
pane.add(new MyPanel());
}


private class MyWindowAdapter extends WindowAdapter{
public void windowClosing(WindowEvent e){
System.exit(1);
}
}

public class MyPanel extends JPanel{
public void paintComponent(Graphics g){
super.paintComponent(g);
g.drawString("Hellow Java!!", 50 , 50);

}
}
public static void main(String[] args){
boolean b = true;
Scene1 frame = new Scene1("test");
frame.setSize(200,200);
frame.setVisible(b);
}
}
質問です。
上のようにしたときに、どのタイミングでpaintComponentが呼ばれているのですか?
263259:2006/05/18(木) 00:41:44
>>261
ぐへっ、またそれか・・・
ほとんどのクラスに@SuppressWanings("serial")つけてるんだけど・・・
もっと根本から絶つ方法ないのかなぁ。
264デフォルトの名無しさん:2006/05/18(木) 00:48:02
>>260
ほんとうにそのまま他のプラットホームにもってて動くの?
今のJavaってそこまで信用できんの?
265デフォルトの名無しさん:2006/05/18(木) 00:50:16
>>264
俺の書いたコードはwindowsでもlinuxでも同じように動いてくれたよ。
266デフォルトの名無しさん:2006/05/18(木) 00:52:30
mailtoとwindow.close()の二つを同時に動作させることは可能でしょうか?

私が行おうとしている詳細は以下の通りです。

1.[メール]ボタンをクリックすると

2.別ウィンドウで規約への同意画面が開き、同ウィンドウ内の[同意する]をクリックするとこのウィンドウが閉じメーラーが開く。

といったページを作成しようとしています。
上記の”[同意する]をクリックするとウィンドウが閉じ、メーラーが開く”動作はWin IEでは動くのですが、
FireFoxやMacのsafariではメーラーが立ち上がらない等で動作してくれません。

自分なりに作成したソースは以下の通りです。
この動作をFireFoxやMacのsafariでも動くようにするにはどのようにしたら良いでしょうか?
-------------
<a href="mailto:xxxx@xxxx?subjectxxxxxx>
<img src="images/agreement_btm.gif" width="110" height="30" onClick="JavaScript:window.close()">
</a>
-------------

何卒ご教示のほどよろしくお願いします。
267デフォルトの名無しさん:2006/05/18(木) 00:54:10
>>263
メニューの「ウィンドウ」->「設定」->「Java」->「コンパイラー」->「エラー/警告」->「J2SE 5.0 オプション」のどこか。
268デフォルトの名無しさん:2006/05/18(木) 00:55:02
>>266
悪いがそれは JavaScript スレで頼むわ
269デフォルトの名無しさん:2006/05/18(木) 00:59:36
>>265
参考までにどんなプログラムで何万行くらいのソースコードかおしえてほすぃ。
270デフォルトの名無しさん:2006/05/18(木) 01:02:51
>>261
だめなの教えるなよ
271デフォルトの名無しさん:2006/05/18(木) 01:10:00
30 万ステップ (コメント空行抜き) くらいのプロジェクト Windows でコンパイルして AIX で動かしてましたが。
いや別会社のも全部あわせたら 120 万くらい行ってるかな?
272デフォルトの名無しさん:2006/05/18(木) 01:20:34
>>271
ありがとう。安心して作れそうだ。
273デフォルトの名無しさん:2006/05/18(木) 01:26:15
>>271
ところでそれGUIがついてるアプリですか?
1.2の時代にWinで作ってlinuxにもっていったら動かなかった経験があるので。
274222:2006/05/18(木) 01:41:42
>>254

ありがとうございました。納得です。
275デフォルトの名無しさん:2006/05/18(木) 02:33:23
>>273
マルチプラットフォームというのは
アホがどんな無茶なコードを書いても動く事を保証しているわけではないからな
276デフォルトの名無しさん:2006/05/18(木) 03:57:19
>>275
無茶なコードってどんなのが無茶なんだ?
どこまでなら保証の範囲なんでしょ?
277デフォルトの名無しさん:2006/05/18(木) 05:39:13
>>276
ディレクトリの区切りを \ と決め打ちしたコードとかじゃね?
278デフォルトの名無しさん:2006/05/18(木) 07:59:47
そういうのは実行すればすぐに原因わかるから問題にならないんじゃね?
279デフォルトの名無しさん:2006/05/18(木) 10:45:21
SWTでGUIアプリ作るとマルチプラットフォーム無理とかそんなん?
280JFreeChartの質問:2006/05/18(木) 17:53:02
JFree チャートで線グラフを表示するのですが、点線の出し方がわかりません。
チャート作成時に使っているメソッドはChartFactory.createLineChartです。

JFreeChart chart = ChartFactory.createLineChart(ttlstr, null, null, dataset, PlotOrientation.VERTICAL, true,true,false);
chart.setBackgroundPaint(backcolor);
TextTitle ttl = chart.getTitle();
ttl.setFont(new java.awt.Font("kochi gothic", java.awt.Font.TRUETYPE_FONT,16));

((StandardLegend)chart.getLegend()).setItemFont(new java.awt.Font("kochi gothic", java.awt.Font.TRUETYPE_FONT,16));
((StandardLegend)chart.getLegend()).setTitleFont(new java.awt.Font("kochi gothic", java.awt.Font.TRUETYPE_FONT,16));

CategoryPlot plot = chart.getCategoryPlot();
plot.setRangeGridlinesVisible(true);
plot.setDomainGridlinesVisible(true);

LineAndShapeRenderer renderer0 = (LineAndShapeRenderer)plot.getRenderer(0);
setPaint(renderer0, _iscust);

CategoryAxis axis = plot.getDomainAxis();
axis.setTickLabelFont(new java.awt.Font("kochi gothic", java.awt.Font.TRUETYPE_FONT,12));
axis.setLabelFont(new java.awt.Font("kochi gothic", java.awt.Font.TRUETYPE_FONT,12));
axis.setCategoryLabelPositions(CategoryLabelPositions.UP_45);

ValueAxis axis = plot.getRangeAxis();
axis.setTickLabelFont(new java.awt.Font("kochi gothic", java.awt.Font.TRUETYPE_FONT,12));
axis.setLabelFont(new java.awt.Font("kochi gothic", java.awt.Font.TRUETYPE_FONT,12));

plot.setDatasetRenderingOrder(DatasetRenderingOrder.FORWARD);

どなたか点線の書き方を教えてください。エロイ人、お願いします。
281デフォルトの名無しさん:2006/05/18(木) 18:10:42
>>280
レンダラのsetStroke辺りを調べてみろ
282デフォルトの名無しさん:2006/05/18(木) 19:48:17
サーブレットを使用して、
自分のPC内の Aフォルダ にある全てのファイル名を得たいのですが、どのようにすればよいでしょうか?
よろしくお願いします。
283デフォルトの名無しさん:2006/05/18(木) 19:59:00
サーブレットは自分のPCで動いてるんだよね?
まさか、他所で動いてるサーブレットから自分のPCのAフォルダを
見ようとしてるわけじゃないよね?

で、サーブレットを使わない場合は出来てるのかな?
それが出来てなきゃサーブレット以前の話だ。
284282:2006/05/18(木) 22:27:11
>>283さん
それもそうですね、、

もちろん自分のPCです!
ファイル名を指定して書き込んだりする方法は覚えたのですが、
ファイル一覧を得るクラスというのが見当たらないんです。
もしあれば教えて頂きたいです。

ほかにも色々したい事があるのですが、お目当てのクラスを探すコツというのはあるのでしょうか?

285デフォルトの名無しさん:2006/05/18(木) 22:47:34
すいません質問よろしくおねがいします。
今、JAVAをやっててその中でXMLやXSPもやっているんですが、
その中でXSP中に<xsp:logic>内でJAVAを使うんですが、そのときどうしても
IF文で < や > 比較演算子が使えません。
他に ==や ||は使えるんですが、教えてくださいペコm(_ _;m)三(m;_ _)mペコリ
286デフォルトの名無しさん:2006/05/18(木) 23:12:42
>>285
マルチ氏ね
287デフォルトの名無しさん:2006/05/18(木) 23:13:10
>>285
xspがなんなのかは知らないけど、

<xsp:logic>

みたいな書き方をするなら、< や >は使えなくてもおかしくないような希ガス。
普通の括弧とごちゃになるから。
何かエスケープの仕方があるのでは。
288JAVA初心者:2006/05/18(木) 23:19:37
こんにちは。今TORQUEで開発を試みていますが、org.apache.torque.Torqueがインポートできないとエクリプスに怒られます。何がたりなくて、どうなっているのでしょう?もう、頭が爆発しそうです、、わかる方、よろしくお願いします。


289デフォルトの名無しさん:2006/05/18(木) 23:20:21
>>288
マルチ氏ね
290JAVA初心者:2006/05/18(木) 23:20:52
こんにちは。今TORQUEで開発を試みていますが、org.apache.torque.Torqueがインポートできないとエクリプスに怒られます。何がたりなくて、どうなっているのでしょう?もう、頭が爆発しそうです、、わかる方、よろしくお願いします。


291デフォルトの名無しさん:2006/05/18(木) 23:30:08
>>288,290
それが解決できない奴がTorqueなんて100年早い。
ちなみに、今時Torqueなんて3,4年遅い。

結論:やめとけ。
292デフォルトの名無しさん:2006/05/18(木) 23:53:41
oracleのPL/SQL分かる方います?
例外処理でEXCEPTIONのあとによくみかける
RISE;って何を表してるんですか?

293デフォルトの名無しさん:2006/05/18(木) 23:54:11
新人研修の季節か
294デフォルトの名無しさん:2006/05/19(金) 00:07:44
>>284
java.io.Fileをよーーっく見てみそ。
295デフォルトの名無しさん:2006/05/19(金) 00:08:42
>>285
XSPは知らんけど、<とか>って書く必要があるんじゃない?
296デフォルトの名無しさん:2006/05/19(金) 00:10:27
うへ、
「&lt;とか&gt;って書く必要が」ね。
297デフォルトの名無しさん:2006/05/19(金) 00:12:55
Windows上の「マイドキュメント」とかUNIX上のホーム
ディレクトリのようなパスを環境非依存で取得する方法は
あるのでしょうか?
298デフォルトの名無しさん:2006/05/19(金) 00:17:01
>>297
System.getProperty("user.dir");
299デフォルトの名無しさん:2006/05/19(金) 00:17:50
XSPは超連射で使っているライブラリ

GWあけてひといきついたあたりなので
そろそろ研修終えた新人が配属されるころだからいつもどおりだな

スレ違いだけはどうにかならないのか

すでに板違いも多いが
300デフォルトの名無しさん:2006/05/19(金) 00:17:51
まちがえた、
System.getProperty("user.home");
だ。
301デフォルトの名無しさん:2006/05/19(金) 00:34:24
上級者に聞きたいです。
初心者からどのようなプロセスで上級者になったのですか?
302デフォルトの名無しさん:2006/05/19(金) 00:50:54
doubleで変数を初期化するときに16進数で初期化はできないんですか?
0xをつけるとエラーになってしまう・・
303デフォルトの名無しさん:2006/05/19(金) 00:51:34
・電子計算機概論を知っていること
・アセンブラもしっておくこと
・Java以外の高級言語も知っており、それらの違いや思想を的確に把握
・10年以上業務経験あり
・コンピュータ歴は20年以上

これくらいやっても上級者になれるかどうか
304282:2006/05/19(金) 01:05:12
>>294さん

ありがとうございます!発見しました!^^

File file = new File("c:/test/");
String[] count = file.list();
out.println(count.length + "コ");

気になってたURL絡みの操作も同じページに載っていたりと、本当に助かりました!
305デフォルトの名無しさん:2006/05/19(金) 01:05:28
(double)0x????
なんか意味あんのか?
それともdoubleのビット表現を直接指定したいの?
306デフォルトの名無しさん:2006/05/19(金) 01:18:44
>>302
16進浮動小数点リテラルは、1.5 以降から使える。

そうじゃなくて、ビット表現から浮動小数点数に変換したいなら
Double.longBitsToDouble(0x0L) か、Float.intBitsToFloat(0x0) 使え。
307デフォルトの名無しさん:2006/05/19(金) 16:42:48
ソフトウェア板を誤爆してここに誘導されました。

環境:NetBeans IDE4.1
Java:1.4._09

という条件で、

for (int i : a)

といった、for〜each文や、

List<String> list2 = new ArrayList<String>();

といった、総称が文法エラーでコンパイルできません。

Javaが古いとは思えないし、なにかコンパイルオプションが必要のでしょうか?

NetBeansのオプション等を見てもコンパイルオプションの設定の仕方もわかりませn。

どなたか、ご教授おながいいたします。
308デフォルトの名無しさん:2006/05/19(金) 16:45:20
Javaが古い
309デフォルトの名無しさん:2006/05/19(金) 16:46:15
>>307
Javaが古い。
ここ(ttp://java.sun.com/j2se/1.5.0/ja/download.html)からJava5をダウンロードしてインストールすること。
ついでにNetBeanも最新版入れとけ。
310デフォルトの名無しさん:2006/05/19(金) 17:00:40
ふ、古かったのか……。
ありがとうございました。
311デフォルトの名無しさん:2006/05/19(金) 17:19:59
どうして古いと思わなかったのか、そっちのほうが気になる。
1.4系の中ですら古いじゃん。
312デフォルトの名無しさん:2006/05/19(金) 20:35:50
jigみたいなものを作っているのですが、ブラウザから作成されたページ全体のイメージをキャプチャし、JPEG画像に変換し、画像データとしてディスクに保存したいのですが、どうしたらいいのですか?サンプルプログラムを募集します。
313デフォルトの名無しさん:2006/05/19(金) 22:51:13
>サンプルプログラムを募集します。

何かのコンテストでつか?
314デフォルトの名無しさん:2006/05/19(金) 22:54:05
Stringって、中途半端じゃない?
てか、どう考えたら良いの?
組み込み型?ライブラリのクラス?

文字列リテラル自体がString型で、

String s = "abcd";



String s = new String("abcd");

と同じなら、StringはStringから生成されているワケで、
じゃぁ、最初のStringは誰が何から作ってるのだ?
組み込み型っぽいようでそうでない?

・・・もう頭がパンクしそうだ・・・
315デフォルトの名無しさん:2006/05/19(金) 23:18:07
>String s = "abcd";

>String s = new String("abcd");
は違います。

文字列リテラルはコンストラクタを通してString型インスタンスになるのではなく
クラスファイルのコンスタントプールからじかに作られたはず。
316デフォルトの名無しさん:2006/05/19(金) 23:23:33
>>315
いろいろなjavaの入門書に同じって書いてあるけど、ウソなの?
317デフォルトの名無しさん:2006/05/19(金) 23:41:00
>>316
具体的にどの書籍の何ページに書いてあるのか、ここに晒してみろ。
出版社と著者にクレーム入れてやるから。
318デフォルトの名無しさん:2006/05/20(土) 02:13:50
A.javaで宣言した配列は同じフォルダ内にあるB.javaで使えないんですか?
319デフォルトの名無しさん:2006/05/20(土) 02:33:48
使えません
320デフォルトの名無しさん:2006/05/20(土) 02:40:32
String str = br.readLine();
int a = Integer.parseInt(str);

intだと扱える数が少なく、やりたいことができなかったので、これを
long
に変えたいんですけど右はどうすればいいんですか。
321デフォルトの名無しさん:2006/05/20(土) 02:42:31
>>320
long a = Long.parseLong(str);
322デフォルトの名無しさん:2006/05/20(土) 02:43:14
Integer.parseFloat();
323デフォルトの名無しさん:2006/05/20(土) 03:06:49
>>321
とってもさんきゅー
324デフォルトの名無しさん:2006/05/20(土) 03:45:01
long k = 8979323846;

整数 8979323846が大き過ぎます。
えっおい。ごるぁ。longだぞ?
結局行き詰る俺。(藁
325デフォルトの名無しさん:2006/05/20(土) 03:47:03
8979323846L
326デフォルトの名無しさん:2006/05/20(土) 04:06:38
>>325
たすかっ(ry
完成したっちゃ!!
327デフォルトの名無しさん:2006/05/20(土) 07:37:15
>>317
>文字列リテラルはコンストラクタを通してString型インスタンスになるのではなく
>クラスファイルのコンスタントプールからじかに作られたはず。

ここで指摘されてる違いはよくわからないが、(生成の過程が違うってことか?)とりあえず手持ちの本に書いてある記述。
共立出版 桑原恒夫著 3日で解るJava[第2版] P56
>クラスStringからインスタンスを生成する場合には、newを使わずにこのように""で文字列を直接代入する表記方法も許されてます。

でサンプルソースで

String a, b;
a = new String("ABC");
b = "ABC";
System.out.println(a.equals(b));

こんなのがあって、これを実行するとtrueが表示されるから同じモノだよ〜というふうに書いてある。

>>314が疑問に思っていることは難しくてよくわからんのだが、とりあえずどっちにしても作られるものは同じであるという理解で間違いないか?
328デフォルトの名無しさん:2006/05/20(土) 10:37:51
質問があります。
以下のプログラムを実行したときにどうしてもIOコネクションを得られませんに飛んでしまうのですがどこが悪いのでしょうか。
書籍「すべての人のためのjavaプログラミング」よりechoサーバーとの通信を行うプログラムです。
開発環境はWinXPでVisualStudio2003のJ#を使っています。
長めなので2回に分けさせていただきます。

import java.io.*;
import java.net.*;

public class EchoClient {
public static void main(String[] args) throws IOException {
Socket echoS = null;
BufferedReader in = null;
DataOutputStream out = null;
try {
echoS = new Socket("localhost", 7);
in = new BufferedReader(new InputStreamReader(echoS.getInputStream()));
out = new DataOutputStream(echoS.getOutputStream());
} catch (UnknownHostException e) {
System.out.println("ホストに接続できません。");
System.exit(1);
} catch (IOException e) {
System.out.println("IOコネクションを得られません。");
System.exit(1);
}
329デフォルトの名無しさん:2006/05/20(土) 10:38:41
BufferedReader stdIn = new BufferedReader(new InputStreamReader(System.in));
String typedString;
while ((typedString = stdIn.readLine()) != null) {
out.writeBytes(typedString);
out.writeByte('\n');
System.out.println("サーバからのエコー: " + in.readLine());
}
in.close();
out.close();
stdIn.close();
echoS.close();
}
}
330デフォルトの名無しさん:2006/05/20(土) 10:57:05
>>328
サーバーはあるんだよな?
331デフォルトの名無しさん:2006/05/20(土) 11:09:10
>>330
見た感じだと自分のマシンにつないで自分のechoに反応させるという意図で作ってあるみたいです
332デフォルトの名無しさん:2006/05/20(土) 11:15:02
333デフォルトの名無しさん:2006/05/20(土) 11:24:11
windowsにechoサーバーとしての機能は最初から入っていると思ったのですが違うんでしょうか?
コマンドプロントからechoを入れるとecho ONとなってるんですが
334デフォルトの名無しさん:2006/05/20(土) 11:34:31
脱力感。。。とりあえずApacheでもいれろ。話はそれからだ。
335デフォルトの名無しさん:2006/05/20(土) 11:40:20
わかりました
やってみます
336デフォルトの名無しさん:2006/05/20(土) 12:35:59
>>327
>どっちにしても作られるものは同じであるという理解で間違いないか?

違 い ま す 。
作られるものは異なるが 値 が 同 じ だけです。
337デフォルトの名無しさん:2006/05/20(土) 12:38:23
「3日でわかる〜」とかいう本は3日で全部がわかるんじゃないぞ
3日でわかるだけの内容しかないんだ。
338デフォルトの名無しさん:2006/05/20(土) 12:44:52
J#って・・・
339デフォルトの名無しさん:2006/05/20(土) 13:01:10
>>333
ECHO サーバはコントロールパネルの [プログラムの追加と削除]-[Windowsコンポーネントの
追加と削除]-[ネットワークサービス]-[簡易TCP/IPサービス] で追加できる。標準ではインス
トールされていない。

それからコマンドプロンプトで使うときは telnet 使え
telnet localhost echo
340デフォルトの名無しさん:2006/05/20(土) 13:48:19
equalsじゃなくて==してみろよ。
まあそれでも一緒かも知らんが。
出来たものが同じ文字列なのは最低限で当たり前。
341デフォルトの名無しさん:2006/05/20(土) 15:36:25
不変オブジェクトはどうつかってもいいからな
342デフォルトの名無しさん:2006/05/20(土) 15:39:29
Reflection で内部フィールド変更してもいいのか?
343デフォルトの名無しさん:2006/05/20(土) 17:22:29
private void func_1(Component Control){

if(○○○){ //←ControlがJButton型だった場合
...
}
else if(×××){ //←ControlがJTextArea型だった場合
...
}
else if(△△△){ //←ControlがJLabel型だった場合
.
.
.
}
Controlが何型のインスタンスなのか調べたいのですが
上の○○○、×××、△△△等にどのような処理を書けばよいのでしょうか?
344デフォルトの名無しさん:2006/05/20(土) 17:31:03
>>343
instanceof で可能
こんな感じ
if(Control instanceof JButton){

}
注意点
こういう処理(クラスで判断)をするということは設計が悪い証拠です。
普通はinterfaceのポリモーフィズムで解決します。
345328:2006/05/20(土) 17:36:23
無事解決しました。
プログラム自体は問題なくやはりサーバーの問題でした。
皆さんどうもありがとうございました。
346デフォルトの名無しさん:2006/05/20(土) 19:06:22
マルチスレッドについて勉強しているんですが、syncronizedについてよく分かりません
public syncronized void echo() メソッドと、syncronized public void echo()メソッドとどう違うんでしょうか?
上のsyncrhonizedがなかったらスレッドが同時に起動するらしいのですが、だったら下のsyncronizedの意味はなんなのか?
下のを消してもコンパイルできるし、実際に動くし訳がわかりません
命名規則のようなものなんでしょうか?

package thread;

class SyncSample1{
synchronized public void echo(){  //***分からない所****
System.out.println("開始");
try{
Thread.sleep(3000);
}catch (InterruptedException e){
e.printStackTrace();
}
System.out.println("終了");
}

}
347デフォルトの名無しさん:2006/05/20(土) 19:07:07
public class SyncMethodTest1 extends Thread{
SyncSample1 ss1;
public void run(){
echo();
}
public synchronized void echo(){ //***分からない所***
ss1.echo();
}
public static void main(String args[]){
SyncSample1 obj = new SyncSample1();
SyncMethodTest1 t1 = new SyncMethodTest1();
t1.ss1 = obj;
SyncMethodTest1 t2 = new SyncMethodTest1();
t2.ss1 = obj;

t1.start();
t2.start();
}

}
348デフォルトの名無しさん:2006/05/20(土) 19:55:38
>>346
syncronized について見る場合はそのsyncronized が
どのオブジェクトまたはクラスに対して同期を取っているのか注意して判断しましょう。
結論としては SyncMethodTest1 のecho()はsyncronizedは必要ありません。
理由は SyncSample1クラスのecho()の方で同期を取っているので。

あと文法的に
public synchronized void echo()と
synchronized public void echo()は並び順が違うだけで同じものです。

参考情報
マルチスレッド・プログラミングの基本
http://www.javaworld.jp/technology_and_programming/-/10943-5.html
349JAVA:2006/05/20(土) 20:26:25
こんにちは。質問なのですが、STRUTSでメッセージを日本語で出したい場合には、
どのようにしたらいいのでしょうか?本をよんでみたりしましたが、
よくわかりません。ちなみにエクリプスの中で開発中です。
何かのコードに変換するようなのですが、、よろしくご教授お願いします。


350デフォルトの名無しさん:2006/05/20(土) 20:32:05
読ませていただきました、参考になりました
上のsynchronizedは SyncSample ss1(=obj) のインスタンスに対してロックをかけている、
下のはSyncMethodTest1 t1,t2それぞれにロックをかけているけど、別物だからロックが必要ないってことなんでしょうか・・・?

ちょっとインスタンスとかの作られ方に自信がなくなってきたので復習してきます
ありがとうございました!!
351デフォルトの名無しさん:2006/05/20(土) 21:41:13
こういう勉強って、無駄に暗記多くない?奴隷?
大量に暗記させられて激務で。言語の知識ってさ・・。
人間性抜かしゃ、雇われる中国人やインド人と一緒?
取り柄?
352デフォルトの名無しさん:2006/05/20(土) 21:46:47
基本がわかってればjavadocがあるから暗記は必要ない。
弁護士とか駅員とかの暗記量に比べたら楽勝だよ。
353デフォルトの名無しさん:2006/05/20(土) 22:03:01
でも親切な文章無くない?
研究内容が、オープンソースのいろんなソフトの比較に変わったから、
やらなくなったけどさ。
354デフォルトの名無しさん:2006/05/20(土) 22:03:12
そんなあやふやな理解でマルチスレッドは止めたほうがいい。
絶対バグを作りこむぞ…
355デフォルトの名無しさん:2006/05/20(土) 22:04:02
コンピュータのこと大してわかってなくてもそこそこ
プログラミングできてしまう言語だから、適性無い人が
やると暗記作業になってしまうんだな
356デフォルトの名無しさん:2006/05/20(土) 22:06:33
俺もあんまり暗記してる感じはないな。
書き方とかオブジェクト指向の概念くらい。
調べればすぐ出てくるし。
忘れそうなのはサンプル作って保存してある。
357デフォルトの名無しさん:2006/05/20(土) 22:08:45
どうやればすんなり覚えていけるかってのが分からないんですが。
ネットや本ですか?真似していくだけで覚えて(実行して)いけるっていうのあります?
358デフォルトの名無しさん:2006/05/20(土) 22:16:00
cfiveっていうオープンソースのやつはwindowsにインストールできませんか?
359デフォルトの名無しさん:2006/05/20(土) 22:27:11
こういうのって頭良くないとできないっすよね?
俺には向いてないのかも・・。
360デフォルトの名無しさん:2006/05/20(土) 22:29:53
そうやって諦めてればいいよ。
九九だって水泳だって生まれたときから
できてたわけじゃないだろ?
361デフォルトの名無しさん:2006/05/20(土) 22:40:19
なんか、範馬裕次郎を思い起こさせる流れだなぁ
362デフォルトの名無しさん:2006/05/20(土) 22:58:55
>ネットや本ですか?真似していくだけで覚えて(実行して)いけるっていうのあります?
お前は発想自体がもう間違ってる。
まねしてくだけって発想じゃなくて、理解してやってみるだけでいい。
理解したことは忘れない。
細かいレベルでは忘れても、どこ見たら分かるか、
どんなことができたかとか、概念的な大きなレベルでは忘れない。
363デフォルトの名無しさん:2006/05/20(土) 23:12:18
初心者でも使えるエディタってあります?
それとも最初は黙ってメモ帳を使うべきでしょうか?
364デフォルトの名無しさん:2006/05/20(土) 23:20:16
>>360
そういうのはすんなり努力しようと取りかかれば、勉強できるもんじゃないですか・・?
今はCFIVE、MoodleとかSAKAIとか、excampusとかについて比較して調べろって
のをやるんですが、まず簡単な基礎から取りかかりたいんですが、どうしたらいいでしょうか?
たくさん検索しても、難しいことばかり書いてあってさっぱりです。。
先生は、構築とかしなくていいから、実行して?比較すればいいと言ってたのですが・・。
インストールするのか、ネット上でログインしてやるだけでいいかも分からない・・。(教員用とかでログインIDとか取得できない気もした)
Linux用な気がするけどWindowsでできるのかもわからない。PCはwindowsしか入っていない・・。
http://cfive.itc.u-tokyo.ac.jp/cgi-bin/questionnaire.cgiから
cfive-current-src.tar.gzをDLしたけど明らかにLINUX用。
CFIVEは事前にJ2SDK、サーブレット(tomcat)、PostgreSQL、LDAPのソフトウェアがインストールされていることが必要だそうだけど、J2SE、tomcatあるから、PostgreSQL、LDAPインストールすればいいのかな・・。
検索して↓のへんみてもさっぱりです。やろうとしてるんですが、どこから手つければいいかわかりません。。
ttp://hwb.ecc.u-to kyo.ac.jp/current/4857422FCDFDB2F2C5D9A4CEB3CEC7A72FB2DDC2EAA4C8C4F3BDD0CAFDCBA12F4346495645A5B7A5B9A5C6A5E0A4CECDF8CDD1CBA1.html
ttp://cfive.itc.u-to kyo.ac.jp/source/docs-/plugin-development.html
ttp://cfive.itc.u-tok yo.ac.jp/source/docs/install.html
ttp://el124.se esaa.net/article/17711375.html
ttp://www.totsus angyo.com/xoops/search.php?action=showallbyuser&mid=5&uid=2
まずtomcatとかでサーブレットの使い方とか覚えた方がいいかな?(少しは勉強したんですが。。)
リナックスの知識はゼロです。。。
先生は俺の頭の悪さに気づいて、テーマ変えてくれたと思うんだけど、((実行して?)調べて比較すればいい、とだけ言ってたけど)余計難しくなった気がする・・。俺はどうしたら捗った勉強できるでしょうか。。。
頭悪い人にも理解しやすいわかりやすい参考書を探すべきでしょうか。(お金もないっすが、そういうのは学校から金が出るらしいですが。。。)
365デフォルトの名無しさん:2006/05/20(土) 23:42:34
>>364
書き込む前にメモ帳とかに書き込む内容を記述して推敲してください。
366デフォルトの名無しさん:2006/05/20(土) 23:53:29
>>364
さっきはキツイこと言ったけど初心者にこれは厳しいね。
範囲が広いし時間がかかりすぎる。
とりあえずJavaにWinもLinuxも関係ないから
TomcatでHelloWorld表示するところから始めたら?入門本買ってきて。
tar.gzはフリーソフトで解凍できるっしょ。
367デフォルトの名無しさん:2006/05/20(土) 23:56:21
>>365
はい、これはメモ帳に書いたものを書き込みました。
推敲が読めないので辞書で調べます。
人って、絶対適性がありますよね・・。大学生活の途中で何度も思ったのですが、
自分には向いてないなぁ、と。やめようと思いましたが、親のこととか色々あり、脱線したこともできずって感じです。
基本的に向いて無いことが多すぎです自分。単純な計算とか大好きだけど、(そういう瞬間的に判断するのは能力は高いはず)
スピードに乗れないものとかほとんど苦手です。親とか兄弟は介護とかしてる。他の兄弟は教師とかしてる。
俺は頭悪いからなー。まぁ、先生優しいんで、難しいことやらなくても理解していなくてもがんばってればOK出してくれるような人なので、
。俺は昔から鬱病で馬鹿だからなぁ。やさしいJAVA第3版とか買って派遣の休憩中に読んだりしたんですけどねぇ。
やっぱり世の中金ですよね。理想は、バイト+投資ッス。でも、親のこととかいろいろあるんで、脱線せずにどっか就職するんだろうなぁ・・。
全然向いてないスーパーのレジも精神不安定になりまくりながら半年以上続けたからなぁ・・・。
格闘家、レーサー。介護、教師。いえいえ、フリーターです。プチパニック障害ですがストレス(&不安証)で神経症になりましたが
まぁがんばります。普通で。
368デフォルトの名無しさん:2006/05/20(土) 23:59:46
>>366
最悪の書き込みの後にすんません。
文字表示させることくらいならだいたい分かります・・。
けど、そういうJAVAの勉強から入るべきなのでしょうか・・。
オープンソースのソフトについて調べるのは、やっぱりその後にするべきでしょうか・・・。
普通のソフトで解凍したんですが、中にはproject.properties、maven.xmlファイルや、
xdocs、sqlフォルダなどいろいろ入っていました。これはウィンドウズでも使えるのでしょうか。。。
369デフォルトの名無しさん:2006/05/21(日) 00:03:56
てか勉強する気になれないんです・・。やってて楽しいようなやり方ありますでしょうか。。
370デフォルトの名無しさん:2006/05/21(日) 00:06:37
つーかなんで勉強するの?
371デフォルトの名無しさん:2006/05/21(日) 00:13:00
>>364
先生に相談すべし。
教えてもらえる人がいるうちはお世話になるといいよ。

進路については…たいていの大学ならカウンセラーがいるから、その人に相談してみよう。
372デフォルトの名無しさん:2006/05/21(日) 00:17:26
言語学習は自発的にならんと、厳しいかもしらんな。
373デフォルトの名無しさん:2006/05/21(日) 00:20:15
やりたくなければやめればいいと思うよ。
374デフォルトの名無しさん:2006/05/21(日) 00:39:06
ああもうだめだよ、まわりのせいにしてる時点でな。
向き不向きはあるけどそういう問題じゃない。
頭いいとか悪いとかそういう問題じゃない。

結果だけはすぐにほしがるタイプみたいだし、
自分なりにがんばったんだからあとはうまくいかないのは
自分のせいじゃないってタイプっぽいし。
375デフォルトの名無しさん:2006/05/21(日) 01:14:51
>>363
メモ帳以外を薦める。ベクターあたりで探してみたら。
理由はキーワードが色分けできると可読性が向上するから。
個人的には GreenPad というエディタがお勧め。
あとはEclipseやNetBeansという統合開発環境をインストールしてみるのもいいかも知れません。
(フリーソフトです。)
376デフォルトの名無しさん:2006/05/21(日) 01:18:18
ひとつ言えることは、やってて苦痛ならいくら
努力しても身につかないよ。
好きこそモノの上手なれって奴が結構当てはまる分野だと思う。
377デフォルトの名無しさん:2006/05/21(日) 01:31:40
派遣のフリーターなら現場にプロジェクトリーダーとか開発メンバーとかいるだろ。
独学が基本だけど知ってる人に聞くのもいいよ。
ただし、教えてクンになりすぎるとうっとうしがられるので注意。
378デフォルトの名無しさん:2006/05/21(日) 01:40:18
>>375
俺はTextPadってやつ使ってはじめた。
シンタックスハイライトしてくれるし、
メニューからjavaのコンパイル、実行ができたのがうれしかった。
何より超軽い。
379デフォルトの名無しさん:2006/05/21(日) 02:03:32
Tomcat使ってます
アドレスに直接?data=で値を入力して同一パラメータのデータを正しく扱うって
授業をしたのですが、いまいちわからず質問させてください
以下の内容でやってみるとエラーができます。どこが間違っているのでしょうか?
配布されたテキストどおりに入力しているのですがエラーがでます
入力例は?data=aaa&data=bbb&data=ccc

<%@ page contentType="text/html; charset=Windows-31J" %>
<html>
<head><title>GETメソッドの処理</title></head>
<body>
<%
request.setCharacterEncoding("Windows-31J");
%>

<%

String[] values = request.getParameterValues("data");
for (int i=0; i< values.length; i++)
{
out.println("GETメソッドで送られてきたデータは"+ values[i] +"です。<br />");
}

%>

</body>
</html>

ぐぐってみたりwiki見たりしましたけど、よくわかりませんでした
380デフォルトの名無しさん:2006/05/21(日) 02:11:39
↑の書き忘れです。クリックするとエラーになり
アドレスにdataをぶち込むと正常に起動するのですが
何が原因なのでしょうか?
381デフォルトの名無しさん:2006/05/21(日) 02:15:14
FORM でパラメータ渡す基本からやりなおせ
382デフォルトの名無しさん:2006/05/21(日) 02:20:11
>343
Thanx
383デフォルトの名無しさん:2006/05/21(日) 02:46:12
>>379-380n
for (int i=0; i< values.length; i++)
{
out.println("GETメソッドで送られてきたデータは"+ values[i] +"です。<br />");
}
のところを
if (values != null) {
for (int i=0; i< values.length; i++) {
out.println("GETメソッドで送られてきたデータは"+ values[i] +"です。<br />");
}
} else {
out.println("GETメソッドにdataパラメータがありません<br />");
}
にする。
384デフォルトの名無しさん:2006/05/21(日) 02:50:53
AMDSempronでもjavaはプログラムできますか?
385デフォルトの名無しさん:2006/05/21(日) 02:56:46
>>384
なぜそのような疑問を持ったんですか?
386デフォルトの名無しさん:2006/05/21(日) 03:06:09
ノートパソコンでAMDSempronだと安いのですよ。
でもJDKにintel対応みたいにかいてあるのでどうかとおもったんです。
387デフォルトの名無しさん:2006/05/21(日) 03:17:17
>>383
ありがとうございます。
388デフォルトの名無しさん:2006/05/21(日) 03:19:42
InputStream/OutputStream と New I/O の使い分け基準がよく分かりません。
どういうときに New I/O を使えば良いわけ?
389デフォルトの名無しさん:2006/05/21(日) 03:19:59
>>386
なるほど。
結論から言いますと、できます。

AMD64テクノロジ向けJDKというのがありますので、
こちらのページから
http://java.sun.com/j2se/1.5.0/ja/download.html
「JDKのダウンロード」のリンクを選んで、
出てきた先のページの一番下辺りに
「Linux AMD64 Platform」とか
「Windows AMD64 Platform」とかありますので
プロセッサ能力活かしたJDKを使えるはずですよ。
390デフォルトの名無しさん:2006/05/21(日) 03:38:59
>>389
AMD専用のもあったんですね。
どうもありがとうございます。
391デフォルトの名無しさん:2006/05/21(日) 04:34:48
もしかしてOpteronじゃないと対応してないかな?
392デフォルトの名無しさん:2006/05/21(日) 04:43:07
AMD64だから64ビットのSempronAthlonならおk
393デフォルトの名無しさん:2006/05/21(日) 05:02:21
久しぶりに@IT会議室を見てみた。
ひどい・・・・
既出質問、題名が「教えてください」だとか、JSPじゃなくてHTMLの質問をしていたり・・・
394デフォルトの名無しさん:2006/05/21(日) 08:26:28
http://www.netbeans.jp/index.nsp

NetBeansをダウンロードしようと思ったんですがダウンロードのページに
入れないんです。僕だけですか?
395デフォルトの名無しさん:2006/05/21(日) 08:41:02
public int[] oddAr(int[] ar)
{
int count = 0;
for (int i = 0; i < ar.length; i++)
if (ar[i] % 2 == 0)
count++;

int[] result = new int[count];
count = 0;
for (int i = 0; i < ar.length; i++)
if (ar[i] % 2 == 0)
result[count++] = ar[i];
return result;
}

このメソッド、奇数の要素を含む配列だけを返すらしいんですけど
正直まったく見当つきません。 一体なんでこれで奇数がかえるんだ・・・
396デフォルトの名無しさん:2006/05/21(日) 09:19:31
これ偶数じゃないのか?

public int[] oddAr(int[] ar) {
int count = 0;
for (int i = 0; i < ar.length; i++) {
if (ar[i] % 2 == 0) { //2で割ったあまりが0になる数(偶数)
count++; //の個数を数える。
}
}

int[] result = new int[count];//先ほど調べた個数の大きさの配列を作る
count = 0;
for (int i = 0; i < ar.length; i++) {
if (ar[i] % 2 == 0) {//countで2で割ったあまりが0になる数(偶数)を
result[count] = ar[i];//配列resultに入れていく
count++;
}
}
return result;
}
397デフォルトの名無しさん:2006/05/21(日) 09:20:39
countで→countを使って
398デフォルトの名無しさん:2006/05/21(日) 09:44:55
>>394
ttp://www.netbeans.org/ からたどってください。
たいていのオープンソースソフトウェアは、jpサイトは更新が遅い。jpで無理ならus。これ鉄則。
399デフォルトの名無しさん:2006/05/21(日) 10:20:57
AMD64だから64bit版進めるのはどうかと
JNIとか動かなくなるのでわりと問題出るよ
マルチメディア関係もタイミング違うし
400デフォルトの名無しさん:2006/05/21(日) 11:09:11
>>394,398
そもそもnetbeans.jpは公式サイトじゃないよね?
401デフォルトの名無しさん:2006/05/21(日) 11:36:37
一応はただのファンサイト
本家のjaがでたりsunのブログがあったりで最近影が薄くなっちゃったね
402デフォルトの名無しさん:2006/05/21(日) 13:12:44
public class WebCamTest01 extends JFrame {
private JPanel jContentPane = null;
public static void main(String[] args) {
WebCamTest01 webCam = new WebCamTest01();
System.exit(1);
}
public WebCamTest01() {
super();
initialize();
}
private void initialize() {
this.setSize(320, 243);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setContentPane(getJContentPane());
this.setResizable(false);
this.setTitle("JFrame");
this.setVisible(true);
}
private JPanel getJContentPane() {
if (jContentPane == null) {
jContentPane = new JPanel();
jContentPane.setLayout(new BorderLayout());
}
return jContentPane;
}
}
mainメソッドの二行目(System.exit(1);)以降が動きません。
何か勘違いしてそうですがわかる方お願いします。
403デフォルトの名無しさん:2006/05/21(日) 13:17:18
>>402
一瞬起動して System.exit(1); で終了してるだけじゃない?
System.exit(1); はいらないかと。
404デフォルトの名無しさん:2006/05/21(日) 13:18:49
わかるひといない?
よく一般的に配布されてるexeファイルの作り方と、
そのアイコンを自分の作った画像にする方法がわからん。
jarファイルにする仕方はわかるけど、これじゃあ、
実行ファイルなのかわからんだろ。それにアイコンの画像も
冴えない。。書籍にも載ってないけど、。
405デフォルトの名無しさん:2006/05/21(日) 13:23:45
何が、わかるひといない?、だボケ。
過去ログも読まないようなやつは死ねよ。
406デフォルトの名無しさん:2006/05/21(日) 13:25:10
>>405
答えられないのに書き込むんじゃねえよ、ボケ。
わからない奴は死ねよ。
407デフォルトの名無しさん:2006/05/21(日) 13:25:14
>>396
どうもメソッドのタイトルがoddであったり、
なのに偶数返してそうなあたりから
これはもう問題のミスだとおもうのです

いずれにせよ初心者の自分にはやたら複雑にみえて
わかりにくいですけどね

 
408404:2006/05/21(日) 13:26:49
マジで知ってるひといないの?
409デフォルトの名無しさん:2006/05/21(日) 13:29:56
NSISでも使え
410404:2006/05/21(日) 13:31:11
それと、
dllファイルとかよく付いてくるけど、
あれは何?どうつくれれるのかがわからん。
てかよ、普通に書籍でjava勉強してもdllなんて出てこないし
exeファイルの作り方も載ってない。jarファイル作りどまりだけど。
ちゃんとフリーソフトのサイトで公開できるような、
アプリの作り方(exeファイルの作り方、パッケージ等?)
を知っているひといたら、参考になるURLや
書籍をおしえてくれ。
411デフォルトの名無しさん:2006/05/21(日) 13:34:10
jarを起動できるようなexeを作れば良いんじゃないですか。
412404:2006/05/21(日) 13:36:51
作り方教えて。
コンパイルすると、classファイルができるよね。
classファイルをまとめてjarを作って、あと何すればいい?
参考書籍、URLある?
413デフォルトの名無しさん:2006/05/21(日) 13:38:22
だれだこんなところに馬鹿を放流したのは?
414デフォルトの名無しさん:2006/05/21(日) 13:41:33
>>404
Java Web Startという方法もあるよ。
個人的には配布環境がWindows限定でJavaにこだわる理由が特にないなら
.Netで開発してexeを作成したら?
415404:2006/05/21(日) 13:42:36
わかる人いないの?

>>409
NSIS初めて聞きました。
これでinstaller-i386.exeみたいなのできますか?
416デフォルトの名無しさん:2006/05/21(日) 13:42:39
417404:2006/05/21(日) 13:45:16
>>414
フリーで配布されているwindowsアプリは.NETとかで
つくられてるんですかね?
.NETやったことがないもので。。
418412:2006/05/21(日) 13:49:18
>>416
サンクス!
419デフォルトの名無しさん:2006/05/21(日) 13:50:26
なんとか情報専門学校とか大学の授業とかソルジャー要員の
企業研修でJavaだけしか勉強しないとこんなアホになって
しまうんですね…
420デフォルトの名無しさん:2006/05/21(日) 13:51:48
本当に小学校からやり直して欲しいな。
香ばしすぎる。
421デフォルトの名無しさん:2006/05/21(日) 13:58:55
>>415
できる。
422412:2006/05/21(日) 14:04:09
>>419
>>420
Java技術が一番需要あるんですよね。
これからバリバリやりますよ。
どうすれば書籍レベルから脱却できますか?
ソフトウエアハウスに転職すべきですか?
それとも人に聞きまくるとか、
勉強方法間違ってるとか、
書籍中心でやっているんですが。。
>>421
ありがとうございます。
挑戦してみます。


423デフォルトの名無しさん:2006/05/21(日) 14:07:52
技術よりも会話能力とか英語で書かれた資料を普通に読める能力はほしいな。
424デフォルトの名無しさん:2006/05/21(日) 14:22:02
>>412
>>1にあるwikiのJavaスレの過去ログを読む。
・すぐ人に聞かずに検索サイトで検索してみる。
・他の人の質問や相談に答えてあげる。

問題が起こったときに参考になりそうなサイト
教えて!goo にある Java カテゴリ
http://oshiete1.goo.ne.jp/oshiete.php3?c=253
@IT:Java Solution
http://www.atmarkit.co.jp/fjava/

以上。
425デフォルトの名無しさん:2006/05/21(日) 14:47:58
Javaで共有メモリにアタッチ・デタッチってあるの?
426402:2006/05/21(日) 14:54:36
>>403
exitじゃなくてSystem.out.println("...");でも反応ないんですよ。

public class ConstTest {

private int a;

public static void main(String[] args) {
// TODO 自動生成されたメソッド・スタブ
ConstTest ct = new ConstTest();
ct.show();
}

public ConstTest() {
a = 0;

System.out.println("Setting!");
}

public void show() {
System.out.println("a = " + a);
}
}
こっちはちゃんと2行目(ct.show();)動くのに…。
1から作り直してみます。
427426:2006/05/21(日) 15:15:21
eclipse使わずにコマンドプロンプトから実行したら普通に動いたような…。
もう少し調べてみます。
お騒がせしました…。





eclipseだめじゃん…orz
428デフォルトの名無しさん:2006/05/21(日) 15:15:41
java applet でゲームを作り、cgi を介してのハイスコア送受信も作ってみました。
しかし一回目のロードはできても2回目のロードがうまくいきません。

どなたか分かる方がいらっしゃいましたら、ご指摘よろしくお願いします。
--------------------------
public BufferedReader OpenReader( String FileName ) {
try {
URLConnection urlCon = Url_Read.openConnection();
urlCon.setDoOutput( true );
urlCon.setDoInput( true );
urlCon.setAllowUserInteraction( false );
PrintWriter writer = new PrintWriter( urlCon.getOutputStream() );
writer.print( FileName );
writer.close();
BufferedReader reader = new BufferedReader( new InputStreamReader( urlCon.getInputStream(), "SJIS"));
return reader;
}
catch 以下略
----------------------------
Url_Read には cgi の URL が入っています。
返ってきたBufferedReader を readLine → close しています。
一回目は動くのに二回目はうまくいかないので困り果てております。
エラーは 500 です。
よろしくお願いします。
429デフォルトの名無しさん:2006/05/21(日) 15:35:49
エディタってたくさんあるけど書いてあるプログラムが同じなら
実行しても内容は同じだよね?
初心者質問でスマソ
430デフォルトの名無しさん:2006/05/21(日) 15:41:38
Java Core APIのドキュメントの読み方がわからないいんだけど。
参考URLとかわかる?
ジャバで作った有名なアプリとかしらない?
431デフォルトの名無しさん:2006/05/21(日) 15:43:44
Java勉強するのに参考となる書籍おしえてください。
432デフォルトの名無しさん:2006/05/21(日) 15:47:10
433デフォルトの名無しさん:2006/05/21(日) 15:52:13
書籍たかくない?1000ぐらいでいいのしらない?
434デフォルトの名無しさん:2006/05/21(日) 16:03:24
J2SEとJ2EEって何が違うの?
J2EE使ったことないからわからん。
J2EEはカネかかるの?
J2SEでことたりるよな?
だれかわかる?
435デフォルトの名無しさん:2006/05/21(日) 16:04:00
>>433
子供には高いかもな
436デフォルトの名無しさん:2006/05/21(日) 16:07:42
>>433
図書館にいきましょう。
437デフォルトの名無しさん:2006/05/21(日) 16:08:35
プログラミング言語は所詮プラットフォームと人間を
橋渡しする道具です。まず目的(仕事でも)が先にあって、
その目的を実現する/できるプラットフォームについて
ある程度知識が無いと、いくら勉強してもロクに身に付かず
時間を浪費するだけ。
438デフォルトの名無しさん:2006/05/21(日) 16:09:46
>>429
同じ。
心配ならファイル比較ソフトとかでチェックしてみたら?
439デフォルトの名無しさん:2006/05/21(日) 16:11:50

どうすれば最短で身につくきますか?
書籍レベルから脱出して、早急に自分でFirefoxとか、
フリーソフトを作ってる人のようにアプリをつくれるようになりたいいんだけど。
440デフォルトの名無しさん:2006/05/21(日) 16:13:42
おまいの場合まず人に聞かず自分で調べる根性を身につけるのが先決
煽りじゃなくてホントに
おまいの言う「フリーソフト」を作ってる優秀な人たちだって
毎日新しいことを自分で調べて吸収してるわけなんで
441デフォルトの名無しさん:2006/05/21(日) 16:14:37
日本ご不自由だなプッ

439 :デフォルトの名無しさん :2006/05/21(日) 16:11:50

どうすれば最短で身につくきますか?
書籍レベルから脱出して、早急に自分でFirefoxとか、
フリーソフトを作ってる人のようにアプリをつくれるようになりたいいんだけど。
442デフォルトの名無しさん:2006/05/21(日) 16:18:01
日曜だってのに珍しく大盛況だな。新人が現場に突っ込まれる時期か。
443デフォルトの名無しさん:2006/05/21(日) 16:19:46
しかし人に聞いた方がはやい。自分で調べたら時間がかかる。
だからここで神が表れることを期待して質問レスするのもひとつの手だな。
444デフォルトの名無しさん:2006/05/21(日) 16:23:29
なにが神だよクズ。
445デフォルトの名無しさん:2006/05/21(日) 16:25:31
おおおおおおおおおおおおおおおおおおおおおおおおおおおおお
446デフォルトの名無しさん:2006/05/21(日) 16:26:14
javaで飯食ってるやついる?
どんなアプリつくってるの?
447デフォルトの名無しさん:2006/05/21(日) 16:27:18
ままままままままままままままままままままままままま
448デフォルトの名無しさん:2006/05/21(日) 16:42:14
自分で調べつつ、保険としてここで質問だけして放置と
いうのもありだろう。答えてくれる人がいればラッキー
みたいな。
まあ、マヌケな質問は煽られるだけなんでどっちみち
ある程度まで自分で上達しないとだめだけどw
449デフォルトの名無しさん:2006/05/21(日) 16:51:30
うんこっこ
450デフォルトの名無しさん:2006/05/21(日) 16:52:41
エラープログラマー
上司「また君はエラー発生させたのかねぇ!次やったら首だ首!徹夜で勉強してこい!この甘ったれが!」
451伝説新人タクシ:2006/05/21(日) 17:01:11
>>439
「作りたい」というのがどの程度を言っているのか
HTMLパーサや描画エンジンから作りたい?
実際どうやって作るか、考えてないでしょ?

>>443
早いだろうが、その程度のレベルだと自覚汁
452デフォルトの名無しさん:2006/05/21(日) 17:13:28
あー、
日曜なのに家にこもりっぱなし、なんかいいサイトしらない?
為になるサイトをきぼん。
453デフォルトの名無しさん:2006/05/21(日) 17:23:48
>>451
少なくともお前は頭が悪くて実際どうやって作るか教えられないのにレスしてるんだなってのは伝わった
454デフォルトの名無しさん:2006/05/21(日) 17:27:22
自分で調べた方が速い事の方が多いよ。
何が速いかって、理解するのが速い。
人に聞いてすぐに答えが見つかったとしても
答えてもらった事以上の応用が出来なくて終わっちゃうよ。

それに人に聞いた事はすぐ忘れちゃうけど、
自分で調べて理解した事は忘れにくいし
忘れたとしてもどこをどう調べ直したらいいのかはすぐに思い出せる。
455デフォルトの名無しさん:2006/05/21(日) 18:04:04
答えてもらった事以上の応用何て必要ないよ。
必要になったらまた聞けばいいし。
456デフォルトの名無しさん:2006/05/21(日) 18:05:54
聞く人がいなくなったらどうすんの?
457デフォルトの名無しさん:2006/05/21(日) 18:06:37
>>456
煽れる質問スレなんてそこら中にあるから問題ナッシング
458デフォルトの名無しさん:2006/05/21(日) 18:11:20
つまり質問スレで返ってくる程度の知識であんたの技術職人生終わりって事か。
そこまで開き直ってるなら良いんじゃね? まぁ残りの人生やれるのは派遣くらいだろうけど。
459デフォルトの名無しさん:2006/05/21(日) 18:53:41
>つまり質問スレで返ってくる程度の知識であんたの技術職人生終わりって事か。

コミュニケーション能力なさそう・・
460デフォルトの名無しさん:2006/05/21(日) 19:08:19
煽り合いは2ちゃんねるの醍醐味だね
461デフォルトの名無しさん:2006/05/21(日) 19:27:58
javaアプレットで弾幕シューティングを創ろうと思うのですが
ブラウザに直接乗っけるよりウインドウ出したほうが早いでしょうか?
462デフォルトの名無しさん:2006/05/21(日) 19:30:45
バイトして本買って勉強してネットで調べて自分の力でなんとかしろ。
どうしてもわからなければ聞いてよし。
463デフォルトの名無しさん:2006/05/21(日) 19:45:46
じゃあこのスレは何の意味があるの?
464デフォルトの名無しさん:2006/05/21(日) 19:52:22
ないよ
465デフォルトの名無しさん:2006/05/21(日) 19:56:55
教えることによって自分の知識の穴を再発見することが重要なんじゃね?
ただ、質問の内容があまりにも幼稚すぎ
ネットに答えが溢れていると言うのに・・・
466デフォルトの名無しさん:2006/05/21(日) 20:20:18
>>459
言い返せなくなって人格否定かよw
やっぱりバカだなこいつwww
467デフォルトの名無しさん:2006/05/21(日) 20:38:59
まともな質問だと答える前に念のためウラ取ったりするけど、
そういう風に調べてると教える側も色々発見があるもんだ
468デフォルトの名無しさん:2006/05/21(日) 20:39:52
>>461
JavaアプレットではなくてJavaアプリのほうが早くていろんなことできるぞ
弾幕STG程度べつにどんな環境でも余裕だがね
469デフォルトの名無しさん:2006/05/21(日) 20:57:19
>>466
必死乙
470デフォルトの名無しさん:2006/05/21(日) 21:19:20
>>469
そりゃお前だろw
30歳、派遣末端コーダー、手取26万がおまえの第二の人生
471デフォルトの名無しさん:2006/05/21(日) 21:43:15
今日本買ってきて始めてプログラミングというのをやってみた。
自分で打ったプログラムが結果として反映されるのは面白いなw
俺の目標はゲーム創ることだからがんばるぞ!
472デフォルトの名無しさん:2006/05/21(日) 21:47:16
今の日本買ったとはたいした金持ちですね
473デフォルトの名無しさん:2006/05/21(日) 21:50:14
>>468
回答ありがとうございます。
ブラウザ上で遊べるシューティングゲームを探すと
ウインドウが出てくるものがあるのですが
それもアプレットですか?
初歩的な質問すみません
474デフォルトの名無しさん:2006/05/21(日) 21:50:25
>>470
妄想までして必死な奴だなww
475デフォルトの名無しさん:2006/05/21(日) 21:54:12
哀れ、ついに壊れたテープレコーダーになったしまったかw
476デフォルトの名無しさん:2006/05/21(日) 21:59:53
日本語さえまともに話せないのかよコイツwwプププ

475 :デフォルトの名無しさん :2006/05/21(日) 21:54:12
哀れ、ついに壊れたテープレコーダーになったしまったかw
477デフォルトの名無しさん:2006/05/21(日) 22:01:45
いやあ煽りが活発なスレは楽しいですなあ
478デフォルトの名無しさん:2006/05/21(日) 22:03:38
「壊れたテープレコーダー」の意味も分からない奴がなんか必死に煽ってるが
バカ丸出しで哀れすぎるw
479デフォルトの名無しさん:2006/05/21(日) 22:04:41
う〜〜ん。どうも、うっすい煽りだな。
そもそもプログラマじゃないだろ?
480デフォルトの名無しさん:2006/05/21(日) 22:12:00
あたりまえじゃん。お前みたいな末端コーダーと一緒にすんなよw
481デフォルトの名無しさん:2006/05/21(日) 22:12:03
壊れたテープレコーダ の検索結果 約 977 件中 1 - 10 件目 (0.13 秒)
壊れたレコード の検索結果 約 32,700 件中 1 - 10 件目 (0.47 秒)
482デフォルトの名無しさん:2006/05/21(日) 22:15:27
プッ
煽らればちゃんと自分で調べられるんでちゅねー
えらいでちゅねー (ゲラ
483デフォルトの名無しさん:2006/05/21(日) 22:22:18
なぁ初心者な質問で悪いんだけど
javaってなに?
484デフォルトの名無しさん:2006/05/21(日) 22:24:13
大喜利禁止
485デフォルトの名無しさん:2006/05/21(日) 22:25:17
>>483
コーヒーのこと
486デフォルトの名無しさん:2006/05/21(日) 22:35:15
>>483
インドネシアの島
487デフォルトの名無しさん:2006/05/21(日) 22:41:51
>>
風呂釜洗い
488デフォルトの名無しさん:2006/05/21(日) 22:45:19
>>
ハン・ソロ船長に金を貸している金持ち
489デフォルトの名無しさん:2006/05/21(日) 22:49:05
>>483
水中に住む草食の哺乳類
490デフォルトの名無しさん:2006/05/21(日) 22:50:18
そういえばダン・ブラウンの処女作「パズル・パレス」に
「ジャバ」という名のコンピュータエンジニアが出てきたな。
491デフォルトの名無しさん:2006/05/21(日) 22:53:35
>>490
それはカバだろ
492デフォルトの名無しさん:2006/05/21(日) 23:06:16
ナニココ━(゚∀゚≡゚∀゚)━!!
一日見ない間に素敵なスレになってるな
493デフォルトの名無しさん:2006/05/21(日) 23:17:28
Javaで共有メモリにアタッチ・デタッチってあるの?
494デフォルトの名無しさん:2006/05/21(日) 23:19:42
あるよ。
495デフォルトの名無しさん:2006/05/21(日) 23:27:01
何で共有メモリなんて必要なの?
システム設計おかしいんじゃない?
496デフォルトの名無しさん:2006/05/21(日) 23:39:52
googleツールバーみたいなIEに付けるアプリつくりたいんだけど、
javaで作れる?IE APIみたいなのがあってそれをjavaで操作して
実装する感じになるのかな?
497デフォルトの名無しさん:2006/05/21(日) 23:41:47
>>496
できるけどあまりオススメしない
498デフォルトの名無しさん:2006/05/21(日) 23:45:40
>>497
どうすればいいですか?
サンプルをIEから実行させて起動できたらいいなと考えていたので。
参考になるURLや書籍、検索キーワードがあれば教えてください。
499デフォルトの名無しさん:2006/05/21(日) 23:49:37
JNI
500デフォルトの名無しさん:2006/05/21(日) 23:52:56
>>499
ありがとうございます。
さっそく調べてみます。
501デフォルトの名無しさん:2006/05/22(月) 00:35:28
本って一回だけじゃあなくって何回もやったほうがいいのか?
502デフォルトの名無しさん:2006/05/22(月) 00:36:55
日本語でおk
503デフォルトの名無しさん:2006/05/22(月) 01:27:36
画像をフルスクリーン(最大画面)で表示がわからないんですけど
おしえてください
504デフォルトの名無しさん:2006/05/22(月) 01:36:44
いいよ。
505デフォルトの名無しさん:2006/05/22(月) 01:38:49
Google検索すれば一発目にズバリ出てくるのに聞く人って
やっぱり頭悪いのかな?
506デフォルトの名無しさん:2006/05/22(月) 04:19:38
ここに新入社員っていんの?
507デフォルトの名無しさん:2006/05/22(月) 10:15:43
作るJavaって本どうですか?
初心者にもわかりやすい?
508507:2006/05/22(月) 10:16:18
創るJavaでした。すいません
509デフォルトの名無しさん:2006/05/22(月) 13:43:09
String[][] hoge1 = { {"1-1","1-2"}, {"2-1","2-2"} };
String[][] hoge2 = { {"3-1","3-2"}, {"4-1","4-2"} };
という2つの二次元配列を、

String[][] hoge3 = { {"1-1","1-2"}, {"2-1","2-2"}, {"3-1","3-2"}, {"4-1","4-2"} };
という用に簡単にマージできるライブラリないですか?
commonsあたりにありそうな気がしましたが見つかりません。
510デフォルトの名無しさん:2006/05/22(月) 13:54:52
addAllとか
511デフォルトの名無しさん:2006/05/22(月) 14:02:18
>>509
ライブラリ? 必要か? これじゃ駄目なのか?
String[][] hoge3 = {hoge1[0], hoge1[1], hoge2[0], hoge2[1]};
なんだったら clone() 使うとか。
String[][] hoge3 = {hoge1[0].clone(), hoge1[1].clone(), hoge2[0].clone(), hoge2[1].clone()};
512デフォルトの名無しさん:2006/05/22(月) 14:12:21
public static <T> T[] joinArray(T[] array1, T[] array2) {
  T[] newArray = (T[]) Array.newInstance(
      array1.getClass().getComponentType(),
      array1.length + array2.length);
  System.arraycopy(array1, 0, newArray, 0, array1.length);
  System.arraycopy(array2, 0, newArray, array1.length, array2.length);
  return newArray;
}
513デフォルトの名無しさん:2006/05/22(月) 14:19:27
514デフォルトの名無しさん:2006/05/22(月) 14:41:16
>>512
そういや T[] newArray = new T[array1.length + array2.length]; と書けないのは何故だ?
515506:2006/05/22(月) 14:45:57
>>510-513
ありがとうございます。
配列の二次元目(カラム数?)以外全て動的に変化するので頭が混乱してしまいました。
addAllがすごい便利ですね。
どうすれば実現できそうかは大体理解できました。m(-_-)m

それにしても皆さん、今回みたいにn次元配列系の操作って目が回りませんか?
516デフォルトの名無しさん:2006/05/22(月) 14:54:21
>>515
いっかい紙に書けば?
517デフォルトの名無しさん:2006/05/22(月) 14:58:43
>>515
2次元以上の配列を操作することは滅多にない。

数学の行列処理など、問題領域にモロに配列の概念が出てくる場合は、
頻繁に使うことになるけど。
518JAVA:2006/05/22(月) 15:08:46
質問なのですが、STRUTSのJSPの画面で、今検索結果が3件出ています。
そして、それぞれに関して、同じボタンがついていて、そのボタンを押すと、検索結果の詳細画面にとんで、詳細をだすようにしたいのですが、
押されたボタンのINDEXに相当する検索情報をどうやって、保持して、そして、次の画面でだしたらいいでしょうか??
519506:2006/05/22(月) 17:02:36
>>518

<input type="button" onclick=detailAction('
  <bean:write name="form1" property="key1"/>
  ,<bean:write name="form1" property="key1" />') >

function detailAction(key1, key2){
 document.forms[0].action =
  <%= response.encodeURL( "/xxxxAction.do" )%>'
  + "?" + "key1=" + key1
  + "&" + "key2=" + key2;
 document.forms[0].submit();
}

んで、xxxxActionの中で「key1」と「key2」をgetparameterすればキー項目が取れるので、
そのキー項目を使って詳細検索すればよいかと。
520デフォルトの名無しさん:2006/05/22(月) 17:13:47
Mac OSXで情報を見るでアクセス拒否にできるんですが
それをJavaでしたいんですけど
どうすればいいんでしょう?
521デフォルトの名無しさん:2006/05/22(月) 17:36:03
CFullScreenWnd::CFullScreenWnd()
{
LPCTSTR lpszClassName = AfxRegisterWndClass( 0, 0, HBRUSH(COLOR_WINDOW + 1) );
CreateEx( 0, lpszClassName, "FullScreenWnd", WS_POPUP, 0, 0,
GetSystemMetrics(SM_CXSCREEN), GetSystemMetrics(SM_CYSCREEN),
NULL, NULL);
ShowWindow(SW_SHOW);
}


void CFullScreenWnd::OnPaint()
{
CPaintDC dc(this);


}

フルスクリーン ここまでわかったんですけど
どこに、画像の(ビットマップ)アドレスを入れたらいいんですか?
522428:2006/05/22(月) 18:41:25
>>428 です・・・。
調べても調べてもわからんとです・・・。

>>428 です・・・。
27.5時間も経つのに誰もレスしてくれんとです・・・。

>>428 です・・・。



催促のようで申し訳ありませんが、
もし分かる方がいらっしゃいましたらよろしくお願いします。
523デフォルトの名無しさん:2006/05/22(月) 19:29:35
俺が買った本に160時間あればスラスラプログラムが
書けるようになるって書いてあったんだけど本当?
524デフォルトの名無しさん:2006/05/22(月) 19:35:27
>>522
エラーコードが500なら、サーバのログに詳細な情報が記録されているかもしれない。
アプレットが悪いのかどうかはそのコードだけじゃわからん。
525デフォルトの名無しさん:2006/05/22(月) 20:47:52
サーバのログってのはどうやったら手に入るのでしょうか。
526デフォルトの名無しさん:2006/05/22(月) 20:49:47
ここJavaスレサーバーのログは他で聞け
527デフォルトの名無しさん:2006/05/23(火) 01:09:53
Threadを継承するのとRunnableを実装するのではなんか違い
があるんですか? メリット・デメリットは?
528デフォルトの名無しさん:2006/05/23(火) 01:26:12
Javaは多重継承できない
529デフォルトの名無しさん:2006/05/23(火) 01:35:22
プロファイラとか使ったときにクラス名が明示的なので俺は Thread のサブクラス使ってる。
多重継承できないのは inner クラスで十分対処できるし、オブジェクトが自分で動いてる感じがするし。
Runnable なんて 1998 年頃に虎本でアニメーション作った時くらいしか使ってないな。
530デフォルトの名無しさん:2006/05/23(火) 02:00:48
Thread が Runnable の機能を兼ねてるのはおまけ
531デフォルトの名無しさん:2006/05/23(火) 02:11:57
オブジェクト指向的にはThreadクラスを継承すべきではない。
Threadクラスはスレッドの「実行環境」を表すクラスで、
スレッドの「実行内容」とは is-a 関係には無いから。
532デフォルトの名無しさん:2006/05/23(火) 02:14:54
ワーカースレッドなんか is-a やんけ。
533デフォルトの名無しさん:2006/05/23(火) 02:25:44
オブジェクトが自分で動いてるってのは語弊があるな。エージェント指向じゃあるまいし。
作るといったらイベントディスパッチャー、何かの監視、サーバ処理の類なので別に is-a でも良いだろ。
534デフォルトの名無しさん:2006/05/23(火) 03:49:10
ぱっと思いついた点だけ。

Thread の継承ではなく、Runnable を実装する利点

(1)出来上がるクラスが、Thread のような(何か怖そうな)クラスに依存していないため、
 概念的にも扱いやすい。

(2)Thread の継承で作ると、スレッド実行終了後、再実行できない
 (すなわち、Thread の性質に強く結びつけられる)。
 一般に状態遷移数を少なくすることがオブジェクト指向にとって吉だが、
 特にスレッドは怖いので Thread の仕様となってる(と思た)。
 Runnable 実装なら、新しい Thread のインスタンスに放り込めばいい。

(3)Runnable の実装で作ると、Thread クラスを使う以外の選択肢が広がる。
 例えば、スレッドのプーリングや、別スレッドを立ち上げずそのまま実行とか、
 そんな Thread の代わりのものを使う場合に、
 Runnable の実装ならそのまま、あるいは多少のラッピングで使用可能(かも)
 Java 5.0 では、それっぽいライブラリが導入されているので参照のこと

Thread の継承が良い場合

(1)Thread そのものの機能の拡張。実行開始時や終了時にログの機能をつけたりとか?
 いずれにせよ、Runnable もしくはそれに相当する実行対象は後から与える。

(2)そんなこまかいこと気にする必要がないので、タイピングを少なくする場合。

(3)プロファイラについては良く知らん。
535デフォルトの名無しさん:2006/05/23(火) 03:59:56
>>534
上の(2)は間違ってるよ。
Thread は Runnable を継承してるから別の新しい Thread のインスタンスに
放り込めば (いい悪いは別にして) 再実行は不可能ではない。
536デフォルトの名無しさん:2006/05/23(火) 04:08:21
>>535
書こうかと思ったけど止めたところをw
そのロジックなら、(3) も間違いw
537デフォルトの名無しさん:2006/05/23(火) 09:09:21
同じパッケージの中にあるクラスは、普通に変数として利用できますよね?
にもかかわらずシンボルを見つけられないとエラーがでる場合は、
どのような原因が考えられるのでしょうか。
538デフォルトの名無しさん:2006/05/23(火) 09:43:25
適切なフォルダに作成されてない
public classとして作成されてない
本当にない

さてどれだ?
539デフォルトの名無しさん:2006/05/23(火) 09:45:22
スペルミスとか大文字・小文字を間違えてるとか。q
540デフォルトの名無しさん:2006/05/23(火) 09:48:49
語尾にqがついてるとか。
541デフォルトの名無しさん:2006/05/23(火) 09:53:23
>>583 
publicキーワードなしでも、
同じパッケージ(フォルダ)からは参照できるのではないでしょうか?
542デフォルトの名無しさん:2006/05/23(火) 10:22:06
>>541
そだよ。クラスパスを適切に設定した上で、の話だけど。
543デフォルトの名無しさん:2006/05/23(火) 10:28:06
>>542
レスありがとうございます。多分分かりました。
どうやらそこらへんに原因がありそうです、、
544デフォルトの名無しさん:2006/05/23(火) 10:57:39
スレッドの話が出て思い出した。
Java言語で学ぶデザインパターン入門 マルチスレッド編の
java.util.concurrent対応版ってためになるかいな?
545デフォルトの名無しさん:2006/05/23(火) 11:44:34
java.util.concurrentは必須科目だから勉強しとけ
546デフォルトの名無しさん:2006/05/23(火) 14:34:18
JavaScriptからアプレットのメソッドを呼び出すことはできるみたいですが
アプレットからJavaScriptって呼べます?
547デフォルトの名無しさん:2006/05/23(火) 15:09:45
例外をthrow newするタイミングとして、

A.try〜catch節の中
B.ifで条件判定した結果

がある場合、Bだと特にprintStackTraceしなくても
標準出力に例外が表示されますが、
AだとprintStackTraceしないと表示されないようです。

Aのケースで必ず例外内容を標準出力に出したい場合は、
明示的にprintStackTraceしないとダメですか?
548デフォルトの名無しさん:2006/05/23(火) 15:20:10
>>547
Bの挙動が変な気がする。明示的に呼び出してないのにスタックトレースが出るの?
549デフォルトの名無しさん:2006/05/23(火) 15:21:54
>>548
RuntimeExceptionおよびそのサブクラスが、mainメソッドやスレッドの外まで行ってるだけじゃない?
550デフォルトの名無しさん:2006/05/23(火) 15:29:13
>>547
例外の勉強したほうがいい
551547:2006/05/23(火) 15:37:52
>>548-550
レスどうもです。
>>549さんのカキコ見てハッ!Σ(;゚д゚)としました。
自作例外の組み込みで、いらんことやってたようです。
もうちょっと修行して来ます
552JAVA:2006/05/23(火) 16:20:45
すいません、質問なのですが、STRUTSのFORM画面で日本語が入力された場合、
ACTIONでその値がうまくとれませんん、、文字化けしてします、、
どうしたらいいでしょうか。。よろしくご教授ください。
553デフォルトの名無しさん:2006/05/23(火) 16:44:52
struts以前の話だな
strutsは薄いラッパなんだからまずServlet/JSPを勉強しよう
554デフォルトの名無しさん:2006/05/23(火) 21:09:37
Java一筋で特化して勉強するとして
就職に必要なくらいのスキルを身につけるにはどれくらい勉強すればいい?
555デフォルトの名無しさん:2006/05/23(火) 21:13:29
どれくらいって・・・
Javaにかぎらずずっと勉強しなきゃだめだろ

普通就職してからのほうが勉強多いぞ
556デフォルトの名無しさん:2006/05/23(火) 21:21:03
教授が言ってたなあ…
「完全な技術はありませんから、技術はどんどん変化します」
「技術者は一生勉強を続けなければいけません」
557デフォルトの名無しさん:2006/05/23(火) 21:22:40
技術の進歩に追いつかなくなると出世する
558デフォルトの名無しさん:2006/05/23(火) 21:29:38
>>554
JavaだけでなくJavaの範囲外まで勉強しないとだめ。
たとえばサーブレットでDB使ってWebのサービス作るとなると、
Javaとサーブレット(を実現する機構)とJavaからのDBアクセス方法と
DBそのものとWebとそのサービスの仕様が理解できないと作れない。
559554:2006/05/23(火) 21:34:52
いや、今から勉強するとして一日何時間の何日やれば
面接でJavaやってます!って言えるかなぁって質問
560デフォルトの名無しさん:2006/05/23(火) 21:50:51
今から毎日10時間以上。眠っているとき以外はJavaのことを常に考えていろ。
面接以降も。就職してからもずっと続ける意志を持って。
それぐらいやって「Javaやってます!」と言え。
561デフォルトの名無しさん:2006/05/23(火) 21:50:52
>>559
人による
562デフォルトの名無しさん:2006/05/23(火) 21:51:35
>>559
業務で使用したことがなければJavaやってますなんていえないだろう。
就職するために、まず就職しる

それとも、売り込みが出来る程度のものを作って、
面接時にプレゼンテーションすれば、インパクト強いかも
563デフォルトの名無しさん:2006/05/23(火) 21:55:33
なにこの実りの無い糞レスの嵐
564デフォルトの名無しさん:2006/05/23(火) 21:56:17
>>559=554はマニュアル人間っぽさが出てるな。
時間とか関係ないのよ。「これやって」「はい」が成り立つなら、やってると言える。
565554:2006/05/23(火) 22:02:08
>>564
その域に達するまでどれくらいかかる?
566デフォルトの名無しさん:2006/05/23(火) 22:08:31
あなたの技術で会社が儲かる(あるいは楽しくなる)と
面接官を思わせることができれば、就職できます。
そうでなければ、「趣味:音楽鑑賞」と同レベル
567デフォルトの名無しさん:2006/05/23(火) 22:09:08
>>565
そういう質問が出るような思考パターンの持ち主という時点で向いてないよ。
別の道を探したほうがいい。
568554:2006/05/23(火) 22:12:14
そっか
569デフォルトの名無しさん:2006/05/23(火) 22:13:26
全くもって>>567の言うとおり。
やめときなさい。>>565
570デフォルトの名無しさん:2006/05/23(火) 22:20:32
まったくもって初心者大歓迎じゃないな…
571デフォルトの名無しさん:2006/05/23(火) 22:21:53
LinuxでJavaをやりたいんだけど何かいい書籍orサイトはありませんか?
572デフォルトの名無しさん:2006/05/23(火) 22:28:05
思考パターンなんて、見聞広げれば変わってくる可能性もあるんじゃね?
ガンガレ
573デフォルトの名無しさん:2006/05/23(火) 22:39:25
向き不向きが大きく作用する分野とも言える。

>>570
常識的に考えて「初心者なら誰でも」じゃないだろ?
やる気のない奴・失礼な奴・誰が見ても向いてないと思われそうな奴。
カンベン願いたい。
574デフォルトの名無しさん:2006/05/23(火) 23:08:17
初心者は歓迎するけど、ショートカットで中級者に見せかけるテクニックを聞かれても困る、
ってところだと思うよ。
575 :2006/05/23(火) 23:10:11
DOMImplementationLSの実装クラスはどうやって取得するの?
空のDOMオブジェクトつくって、ノード付け足してxmlファイルに保存したいんですけど。
576デフォルトの名無しさん:2006/05/23(火) 23:14:44
Java「だけ」勉強して済ませようという時点でもう向いていない
算数ドリルどのくらいやれば研究者になれますか?みたいで失笑
577デフォルトの名無しさん:2006/05/23(火) 23:23:38
1日何時間、何日走れば陸上選手です!と言えるか?
そんな感じ。
578デフォルトの名無しさん:2006/05/23(火) 23:28:03
>>575
DOM操作してXMLファイルを一から作りたいってこと?
DOMImplementationLSがなんででてきたんだ?
579デフォルトの名無しさん:2006/05/23(火) 23:30:18
空気嫁なくてスマソ
「.class」から「.java」を生成するソフトってないですか?
580デフォルトの名無しさん:2006/05/23(火) 23:32:22
あるよ。
581デフォルトの名無しさん:2006/05/24(水) 00:14:37
582デフォルトの名無しさん:2006/05/24(水) 00:45:02
>>545
java.util.concurrent非対応版 Java言語で学ぶデザインパターン入門 マルチスレッド編

は今すぐ売却するか捨てるかしかないか?
583デフォルトの名無しさん:2006/05/24(水) 03:03:57
おまえらjavaか俺か選べ
584デフォルトの名無しさん:2006/05/24(水) 03:11:16
>>583
もちろんjavaも愛しているがお前のほうが大事だ。
585デフォルトの名無しさん:2006/05/24(水) 03:15:30
(*´_´*)
586デフォルトの名無しさん:2006/05/24(水) 06:53:00
>>574 >>576
しかし全くの初心者はそんな感覚もわからんだろ
587デフォルトの名無しさん:2006/05/24(水) 10:27:49
初心者です。力不足どうしても解けません
おねがいします

四則演算を行うプログラムを作成する
足し算の場合、足す数、四則演算(+)、足される数の入力を受け付け、
どんな計算を行い、どんな結果が得られたかをコンソールに表示させてください。

(足し算の場合)
入力1:足す数
入力2:四則演算
入力3:足される数

注)割り算の場合、小数点以下2桁まで表示。
  少数点以下3桁目を切り捨てること。

例外について
起こりうる全ての例外をキャッチしてください。
例外時は、どんな例外が起きたのかコンソールに表示させてください。

IOException(IOエラー時):
IOエラーが発生しました。
NumberFormatException(数値以外が入ってきた)):
入力された数値が正しくないようです
ArithmeticException(0で割ろうとした時):
0で割ることはできません!
588デフォルトの名無しさん:2006/05/24(水) 11:07:12
ここは宿題すれじゃないぞ
589デフォルトの名無しさん:2006/05/24(水) 11:28:42
>>587
何かデジャブを感じる。

独習Cか独習Javaにそれとまったく同じような問題が出ていたような
590デフォルトの名無しさん:2006/05/24(水) 15:09:42
アプレットの質問なんですが、シューティングゲームを作ってみたのだが、画像を読み込んでくれないみたいなんです。
ローカルではできるんだがサーバーにUpしたら読み込んでくれません。
拡張子の大文字小文字も見たんですが、、、こんなことってありますか(・ω・`)
591デフォルトの名無しさん:2006/05/24(水) 15:13:36
>>590
画像のパスはちゃんと通ってる?
592デフォルトの名無しさん:2006/05/24(水) 15:20:27
>>590
おまえまさかパスの区切りを \ で書いてないか?
593デフォルトの名無しさん:2006/05/24(水) 15:32:54
jdbc使ってoracleに繋いでいるのですが、
毎回初回実行時にのみI/O例外エラーが発生してしまいます。
2度目以降は問題なく接続出来ます。
何か回避策はないでしょうか?
594590:2006/05/24(水) 18:20:31
>>591>>592
getImage(getDocumentBase(), "00.gif");
で画像は同じフォルダに突っ込んでます。
595デフォルトの名無しさん:2006/05/24(水) 19:26:14
EUC_JP形式のファイルをUTF8形式で出力したい。

A.EUCファイルをFileChannelを利用して読みbyte[]に格納。
B.EUCを読むためのCharsetDecorderでAのbyte[]を読み出しCharBufferに格納。
C.UTF8を書くためのCharsetEncorderでBのCharBufferを読んでString化
D.CのStringをファイルに出力

という処理を書いてみたのですが、出力されたファイルが文字化け。
文字コード変換を伴うテキストファイル入出力の場合、
FileChannelは使うべきじゃないのかな?
596デフォルトの名無しさん:2006/05/24(水) 20:30:00
>>594
ちゃんと待つようにはしてるの?
わからないならImageIOつかいなさい

>>595
普通のストリームを使わない理由は?
597デフォルトの名無しさん:2006/05/24(水) 20:56:29
>>595
>文字コード変換を伴うテキストファイル入出力の場合、

Reader系を使うのが一般的、というかそのために用意されたクラス群ですよ。
598デフォルトの名無しさん:2006/05/24(水) 21:01:40
https://www.fxcm.co.jp/site/chart-jp.html?symbol=USD/JPY
はドル/円のリアルタイムチャートなんですけど、このアプレットから
数値だけ抜くことが出来ますか?
教えてくださいませ。
599デフォルトの名無しさん:2006/05/24(水) 22:53:23
>>595
なんでC.のCharsetEncoderの結果がStringなんだ? byte[]では?
600デフォルトの名無しさん:2006/05/24(水) 23:51:42
>>582
基礎を勉強する意味で熟読しとけ
601595:2006/05/24(水) 23:57:21
>>596>>597
stream系を使わないのは、FileChannel使ってファイルから読み込んだ場合、
実験したところstreamよりも約3割くらい高速だったから。
ただ、用途として体感できるほどの差は無いと思うので、
おとなしくstream使うことにします。

>>599
byte[]からString作ってますた


ところで、FileChannelを使うのが最適な場面って、なんだろう?
バイナリ系ファイルの読み書き?
テキスト系ファイルの読み書きは、Stream使うのが最適ってことなんだろうか。。。
602デフォルトの名無しさん:2006/05/25(木) 00:10:09
オンディスクのファイルをダイレクトにネットワークに書き出す場合とか
ネイティブならメモリマップドファイルを使う場面とか
603デフォルトの名無しさん:2006/05/25(木) 00:17:14
すいません。今すごく困っているので誰か教えてください。
コマンドプロントでipconfig /allと入力してenterキーを押すと
"ipconfig"は内部コマンドまたは外部コマンドから認識されていません
と出ます!!先週くらいまではできていたのですが・・・原因がわかりません。
誰か助けてください(≧∇≦)
604デフォルトの名無しさん:2006/05/25(木) 00:20:02
>>603
クビ掻っ切って死ね
605デフォルトの名無しさん:2006/05/25(木) 00:20:38
すいません。今すごく困っているので誰か教えてください。
コマンドプロントでipconfig /allと入力してenterキーを押すと
"ipconfig"は内部コマンドまたは外部コマンドから認識されていません
と出ます!!先週くらいまではできていたのですが・・・原因がわかりません。
誰か助けてください(≧∇≦)
606デフォルトの名無しさん:2006/05/25(木) 00:21:01
607デフォルトの名無しさん:2006/05/25(木) 00:37:40
すいません。今すごく困っているので誰か教えてください。
コマンドプロントでipconfig /allと入力してenterキーを押すと
"ipconfig"は内部コマンドまたは外部コマンドから認識されていません
と出ます!!先週くらいまではできていたのですが・・・原因がわかりません。
誰か助けてください(≧∇≦)
608デフォルトの名無しさん:2006/05/25(木) 00:45:24
ナンダコノばかハ
609デフォルトの名無しさん:2006/05/25(木) 00:45:58
format c:
610デフォルトの名無しさん:2006/05/25(木) 01:50:28
JDKをインストールしてHelloWorldのプログラムをコンパイルしようとしたのですがコマンドプロンプトでこんな表示でコンパイルできません。

C:\Documents and Settings\xxx>javac HelloWorld.java
エラー: HelloWorld.java を読み込めません。
エラー 1 個

PATHも追加したし、なにが原因かわからないのです。
知恵をかしてください。お願いします
611デフォルトの名無しさん:2006/05/25(木) 01:53:00
HelloWorld.java.txt
なんてオチじゃないだろうな。
612デフォルトの名無しさん:2006/05/25(木) 02:34:52
いえ、ちゃんとjavaです。
JDKのインストールに失敗してるのでしょうか?
613デフォルトの名無しさん:2006/05/25(木) 02:38:18
>>610
先ずは、HelloWorld.java をフルパスで指定してみる。
614デフォルトの名無しさん:2006/05/25(木) 03:11:53
cdでファイルを指定したらできました。
しかしこれが普通なのですか?本でははそのままjavacでコンパイルしていたので
わかりませんでした。
615デフォルトの名無しさん:2006/05/25(木) 04:17:12
>>614
そのあたりの基礎知識は前提条件となっているんでは?
616デフォルトの名無しさん:2006/05/25(木) 05:02:06
すみません、まったくの素人なんですが・・・
先ほどいきなりデスクトップに「hs_err_pid2344.log」なるファイルが勝手に作成されていて、中身を見たら
「An unexpected error has been detected by HotSpot Virtual Machine:
#
# EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x7c9410f3, pid=2344, tid=2132
#
# Java VM: Java HotSpot(TM) Client VM (1.5.0_06-b05 mixed mode, sharing)
# Problematic frame:
# C [ntdll.dll+0x10f3]
#

--------------- T H R E A D ---------------

Current thread (0x1122c4a0): JavaThread "thread applet-com.daifukuya.chat3.applet.SimpleApplet" [_thread_in_native, id=2132]

siginfo: ExceptionCode=0xc0000005, writing address 0x113c186c

Registers:
EAX=0x00000000, EBX=0x2b4c62c8, ECX=0x0f05f734, EDX=0x113c1864
ESP=0x0f05f744, EBP=0x0f05f77c, ESI=0x113c1850, EDI=0x113c1864
EIP=0x7c9410f3, EFLAGS=0x00010246
・・・・・・」
と、こんな感じで続いていってるんですけど、
これってもしかしてウィルスとかなんですか!?
怖くてファイルも消せないし正体不明だし、凄く不安です。
誰か内容が分かる方、教えてください!!!
617デフォルトの名無しさん:2006/05/25(木) 06:13:49
>>616
どうみてもJVMのエラーログですけどね…
エラーの出力結果をレポートしてくれてるんだけど。

daifukuyaのチャットアプレットに不具合があるようですヨ。
618デフォルトの名無しさん:2006/05/25(木) 07:57:16
VM自体の不具合が原因だろ
普通VMを落とすことは不可能だ
619601:2006/05/25(木) 09:08:23
>>602
レスd
なるほど、納得。
もう一回、New-I/Oの勉強しなおしてみます。
620デフォルトの名無しさん:2006/05/25(木) 12:38:35
>>600
すべて5.0だけで開発することを考えてかつ、
concurrentがあれば古いのはいらないと思うが、
concurrentが出る前のマルチスレッドのデザインパターンには
そんなに重要なものがあるのかね?
621デフォルトの名無しさん:2006/05/25(木) 13:00:28
concurrent以前のスレッド利用方法だと、
たしか一度作ったスレッドはVMが終了するまで完全に破棄できないんだっけ?
622JAVA子:2006/05/25(木) 14:29:25
PRICEのフィールドに入ってきたものが、INT型かどうか
はんだんするにはどのようなメソッドを使えばいいですか?
IF PRICE == ??(INTだったら)
みたいなかんじで、チェックしたいのですが、、、、
よろしくお願いします。
623デフォルトの名無しさん:2006/05/25(木) 14:31:36
>>622
それは本当にJava言語の文法なのか?
全部大文字って、VBだかCOBOLを連想させる。

とりあえずIntegerクラスについて調べよ
624デフォルトの名無しさん:2006/05/25(木) 14:32:17
いや、int型であるかどうかくらいわかるはず。
オブジェクト型だったらinstanceofまたはClass.getClass()で調べられる
625デフォルトの名無しさん:2006/05/25(木) 20:31:01
現在Strutsの勉強をしていて、
簡単なログイン処理を作成しています。

【ファイル構成】
page1.jsp・・・ログイン画面
page2.jsp・・・ログイン完了画面

【処理】
page1.jspでIDとpassを入力
また、hiddenパラメータでyearというのを送っています

ActionFormで各種パラメータのgetterやsetterメソッドを定義していて、
入力されたIDとpassがデータベースに登録されていれば
page2へ遷移、登録されていなければpage1へ戻す

そしてpage2に遷移した際、テキストフォームで入力されたIDとpassは
request.getParameterメソッドで入力内容を取得出来るのですが、
hiddenパラメータで送ったyearは取得できません。
ActionFormでpage2へ遷移する際、setyear( 2006 );という感じで
値をセットしているつもりなのですが、page2.jspでは0と表示されます。

hiddenパラメータをActionFormで設定し、遷移先のページへ送るには
どうすればいいのでしょうか?
御教授の程、宜しくお願いします。
626デフォルトの名無しさん:2006/05/25(木) 21:30:27
Strutsってのは知らないけど、jspならこんな感じで送受信できるのでは?
見当違いのこと言っていたらごめんなさい。
<input type=hidden name=year value=2006>
request.getParameter("year");
627デフォルトの名無しさん:2006/05/25(木) 23:25:24
突然おじゃまします。
板違いのような気もするのですが、どこで聞いていいかもわからず、
とりあえずJAVA関係かと思いこちらにおじゃましました。
Yahoo!ゲームについてなのですがこちらで聞いてもよろしいでしょうか?
628デフォルトの名無しさん:2006/05/25(木) 23:26:26
>>627
障害の相談ならYahooへどうぞ。
629627:2006/05/25(木) 23:28:41
わかりました、おじゃましました。
630デフォルトの名無しさん:2006/05/25(木) 23:43:53
public String readFile(String fileName)
  throws IOException,
  FileNotFoundException, UnsupportedEncodingException {
  BufferedReader reader = new BufferedReader(new InputStreamReader(
      new FileInputStream(fileName), "JISAutoDetect"));
  StringWriter sout = new StringWriter();
  PrintWriter pout = new PrintWriter(sout);
  String tempLine;
  while ((tempLine = reader.readLine()) != null) {
    pout.println(tempLine);
  }
  pout.flush();
  reader.close();
  return sout.toString();
}

このコードに、EUCやUTF8形式のファイルを食わせてみたのですが、
JISAutoDetectが効いてないようで戻り値のStringをprintすると文字化けします。
J2SE5.0update6です。
JISAutoDetectが効かないケースってあるんでしょうか?
631デフォルトの名無しさん:2006/05/26(金) 01:02:51
>>630
文字コードの自動判定は失敗する事がある。
特に、判定材料となる『文字列』自体が短いと失敗する確率は高い。
あまり過信してはならんぞ。
632デフォルトの名無しさん:2006/05/26(金) 01:18:26
0xE9CD は Shift_JIS で「鯱 (しゃち)」、EUC-JP で「虱 (しらみ)」
633デフォルトの名無しさん:2006/05/26(金) 01:44:51
ドラッグ&ドロップで画像を取得するアプリを書いたのですが、メモリリークしてしまいました。
何がリークしているのかを調べてみたら、java.awt.dnd.DropTargetContext$TransferableProxy.getTransferData(DataFlavor)が
gcされずに残ってるようでした(メソッドなのでgcされずに云々もちょっと変ですが)。
該当部のコードはこんな感じです。
public void drop(DropTargetDropEvent arg0) {
Transferable tr = arg0.getTransferable();
currentImage = (Image) tr.getTransferData(DataFlavor.imageFlavor);
tr=null;
arg0.dropComplete(true);
arg0=null;
}

明示的にこのTransferableProxyを破棄する方法はありますでしょうか?
ちなみに、currentImageはグローバル変数で、ファイルに書き込みする際にnullを代入してあります。
634デフォルトの名無しさん:2006/05/26(金) 05:00:42
SDKのバージョンが異なるという理由で、
NoClassDefFoundErrorが出るときはあるのでしょうか?
635デフォルトの名無しさん:2006/05/26(金) 06:25:10
>>634
JAVA_HOME の(再)設定をしろ。
636デフォルトの名無しさん:2006/05/26(金) 07:26:42
>>635 ばかすぎ。
637デフォルトの名無しさん:2006/05/26(金) 07:43:10
4ヵ月で就職に使えるだけのスキルを身に付けたいんだけど
いい勉強法とかおすすめの本とかある?
638デフォルトの名無しさん:2006/05/26(金) 07:51:19
3時間もぐらい適当な文法の本読めば大丈夫。
639デフォルトの名無しさん:2006/05/26(金) 07:54:21
>>637
「就職に使えるだけのスキル」の定義がわからん。
「即戦力」「すぐに現場で使える」を意味するのなら、実務経験必須。
そうでないのなら、Javaのスキルよりも素質重視。
うちでは頭の回転が良さそうなら未経験でも取るからな。
よそでは実務経験がないと取らないところもある。
まずはおまいのこれまでの経歴と年齢を晒せ。
640デフォルトの名無しさん:2006/05/26(金) 08:13:58
boolean使って何かを判断するプログラムの作り方おしえてください・・
641デフォルトの名無しさん:2006/05/26(金) 08:20:38
if (true) {
 System.out.println("true");
} else {
 System.out.println("false");
}
642デフォルトの名無しさん:2006/05/26(金) 08:25:38
public class BoolTest {
public static void main(String[] args) {
BufferedReader stdin = new BufferedReader(new InputStreamReader(System.in));
boolean isFool = false;

System.out.println("数字を入力してください。");
try{
String str = stdin.readLine();
Double.parseDouble(str);
}catch (NumberFormatException e){
isFool = true;
}
catch (IOException e){
System.out.println("入力エラーです。");
}
finally{
if(isFool)
System.out.print("あなたは指示にも従えないアフォです。");
else
System.out.print("あなたは指示にしか従えないアフォです。");
}

}

}
643デフォルトの名無しさん:2006/05/26(金) 09:02:49
スタックオーバーフローで悩んでます。

行列データを読み込んで、それを解析するのですが、
たとえば、10×10のint配列hogeがあって、

hoge =
{0, 0, 0, 0, 0, 0, 0, 0, 2, 5}
{0, 0, 0, 0, 0, 1, 0, 1, 5, 6}
{0, 0, 0, 0, 0, 1, 2, 3, 4, 5}
{0, 0, 0, 0, 0, 0, 1, 1, 3, 3}
{0, 1, 1, 0, 0, 0, 0, 0, 1, 2}
{1, 2, 3, 1, 0, 0, 0, 0, 0, 0}
{0, 1, 2, 0, 0, 0, 0, 0, 0, 0}
{0, 0, 0, 0, 0, 0, 0, 0, 1, 1}
{0, 0, 0, 0, 0, 0, 0, 1, 2, 1}
{0, 0, 0, 0, 0, 0, 0, 1, 3, 2}

というデータが格納されてるとしたら、
(以下続きます)
644デフォルトの名無しさん:2006/05/26(金) 09:03:51
このデータを、同じ10×10のhogehogeに、

hogehoge =
{0, 0, 0, 0, 0, 0, 0, 0, 1, 1}
{0, 0, 0, 0, 0, 1, 1, 1, 1, 1}
{0, 0, 0, 0, 0, 0, 1, 1, 1, 1}
{0, 2, 2, 0, 0, 0, 0, 0, 1, 1}
{2, 2, 2, 2, 0, 0, 0, 0, 0, 0}
{0, 2, 2, 0, 0, 0, 0, 0, 0, 0}
{0, 0, 0, 0, 0, 0, 0, 0, 3, 3}
{0, 0, 0, 0, 0, 0, 0, 3, 3, 3}
{0, 0, 0, 0, 0, 0, 0, 3, 3, 3}

というように格納させたいんですが・・・。良い手はありますでしょうか?
(詳細と自分なりに考えた失敗案を次レスに書きます)
645デフォルトの名無しさん:2006/05/26(金) 09:05:27
以下のように再帰的にメソッドを読み出して、隣斜めまでに0より大きい数字を持つとき、counterを格納するようにしました。

/** for文で回してhoge2の要素を全て0にする。
for(int i = 0; i < 10; i++)
for(int j = 0; j < 10; j++)
hogehoge[i][j] = 0;

int counter = 0;

/** for文で回して、hoge[i][j] > 0の要素を見つけたら、counterを回す。
for(int i = 0; i < 10; i++){
for(int j = 0; j < 10; j++){
if((hogehoge[i][j] == 0) && (hoge[i][j] > 0)){
counter++;
hogehoge[i][j] = counter;
saiki(i, j, counter);
}
}
}
(以下続きます)
646デフォルトの名無しさん:2006/05/26(金) 09:06:27
/** hoge[i][j]の周辺に0以外の要素があるか探し、あったらhogehoge[i][j]にcounterを格納する。
void saiki(int i, int j, int counter){
for(int k = -1; k < 2; k++){
for(int l = -1; l < 2; l++){
if(((i + k) >= 0) && ((i + k) =< 10) && ((j + l) >= 0) && ((j + l) =< 10)){
if((hoge[i + k][j + l] == 0) && (hoge1[i + k][j + l] > 0)){
hoge2[i + k][j + l] = counter;
saiki(i + k, j + l, counter);
}
}
}
}
}

しかし、この処理ではスタックオーバーフローになってしまいました(元のint配列データはもっと膨大なデータ量です)。

何かプログラム的に間違ってますか?それともアルゴリズム的な問題でしょうか・・・。
何か良い手立てがあれば良いのですが・・・。
647630:2006/05/26(金) 09:14:25
>>631
なるほど、自動判定を絶対視しちゃ危険だってことですね。
明示的にエンコーディング指定するようにします。
アドバイス、ありがとう。
648デフォルトの名無しさん:2006/05/26(金) 09:57:40
>>646

あまり詳しく見たわけじゃないけど、再帰関数って再帰を停止する条件がないと無限に再帰するんじゃないの?
649デフォルトの名無しさん:2006/05/26(金) 10:17:15
質問させてください

buttonArray = new JButton[8];
for(int i=0;i<8;i++){
buttonArray[i] = new JButton(Integer.toString(i));
c.add(buttonArray[i]);
buttonArray[i].setBounds(i*50,10,50,50);

この場合8個横一列に並んだボタンができ、
これを8*8になるようにするにはどうすればいいのでしょうか?
650デフォルトの名無しさん:2006/05/26(金) 10:26:54
>>633
イメージの使用が済んだところで、null代入の前にflush(disposeだっけ?)しないと
外部リソースを解放しないのではなかろうか。
651デフォルトの名無しさん:2006/05/26(金) 10:33:31
>>649
少しは自分で考えろ。馬鹿。
652デフォルトの名無しさん:2006/05/26(金) 10:40:43
分からないなら答えなくていいよ馬鹿
653625:2006/05/26(金) 11:02:02
>>626
返信ありがとうございます。
たしかに、単純にJSPから別のJSPへformを使って
post通信等で値を渡すだけなら、その記述で出来ますね。

しかし、それをStruts(ActionForm、ActionMapping)で行う方法がわかりません。
個人的にはsuccess時(ActionMapping)に特定のパラメータの値を設定出来れば
理想的かと思い、

【ActionFormクラス】
public class LoginForm extends ActionForm
{
  private String UserID;
  private String UserPass;
  public int Year; // LoginActionから触るのでpublicにしてます

  // 各種パラメータのアクセサメソッド
  public String getid(){ return UserID; }
  public void setid( String ID ){ this.UserID = ID; }
  public String getPassword(){ return UserPass; }
  public void setPassword( String Password ){ this.UserPass = Password; }
  public int getyear(){ return Year };
  public void setyear( int Year ){ this.Year = Year; }

  // ActionErrorsでエラーチェック(省略)
}
654625:2006/05/26(金) 11:02:53
>>653の続きです
【Actionクラス】
public class LoginAction extends Action
{
  public ActionForward execute( ActionMapping am, ActionForm form, HttpServletRequest req, HttpServletResponse res )
  {
    LoginForm loginForm = (LoginForm)form;

    loginForm.Year = 2006; // ここでYearパラメータの値を設定
    return mapping.findForward( "success" ); // page2.jspへ遷移
  }
}

上記のようなコーディングを行ったのですが、
どうやってもYearの値が0のままです。

hiddenパラメータを設定し、遷移先のページへ送るには
どうすればいいのでしょうか?
御教授の程、宜しくお願いします。
長文失礼しました。
655デフォルトの名無しさん:2006/05/26(金) 11:19:15
>>643
なかなか、おもしろい。
一次元から二次元になるとむつかしくなるね。

仕事?学校?

ちなみに hoge1不要で、 hoge2 は hogehogeでよい ?
656デフォルトの名無しさん:2006/05/26(金) 12:24:39
byte[] byData = new byte[5120];
として、httpから取ってきたデータを入れたのですが、
これを、とりあえず画面に表示したくて
Stringに入れたいのですが、どうすればよいのでしょうか?
657643:2006/05/26(金) 13:04:51
>> 648さん

有難うございます!
多分そういった初歩的なミスなのかな〜と思っていたので、
アルゴリズムのスレじゃなくこっちにカキコしました。
後で試してみます!
結果は書き込みますね。


>> 655

ありがとうございます。難しいですよね。
こういうとこ、うんうん悩みながら頑張るのも面白いんですが。

あ、最後三行ですが、

if((hogehoge[i + k][j + l] == 0) && (hoge[i + k][j + l] > 0)){
hogehoge[i + k][j + l] = counter;
saiki(i + k, j + l, counter);

です。一度テキストに書き込んでから、hoge1、hoge2は混乱しやすいな、
と思って変えたので、ミスしてしまいました。すいません。

ちなみに、「数理造形」の授業の課題です。
僕らの班は圧力検知装置を使って何か映像を作ってみろ、という課題で、
マトリックスデータに書き出されたテキストファイルしか与えられないもので・・・。
他の班はモーションキャプチャとかもっと扱いやすいものを使ってるんですが・・・。
658デフォルトの名無しさん:2006/05/26(金) 14:30:49
>>657
・テストファーストで考えると、渦巻き状とか難しそう。
・10はコンストのマックスアイ、マックスジェイにして、5*5くらいで、デバグ、完全網羅テストやったらよいのでは。
・スタックの中身を、データ構造として外だしして、サイキ呼び出し箇所をデータオブジェクト間のリンク計算にすれば ヒサイキにできるかと
・ツリー探索とかソートみたいにいろんな解がありそうですが、画像処理アルゴリズムでオーソドックスなのありそう。
・ニジゲンなので二乗で深さがふえるからどうしようもなく、スタック増やすしかないのでは
659デフォルトの名無しさん:2006/05/26(金) 14:39:38
つづき

・0に接するのを‐1 接しないのを-2としたら早いかも
でも 深度はジジョウにちかいですね
・スタックやデータは最大どんだけかは見積もり必要おもいますよ システムリソースは要件のひとつで実装方案けっていの判断材料だし
・やぱり、ろぐでばぐ、がよいのではー

仕事中につき携帯で乱文・思い付きすみません
660デフォルトの名無しさん:2006/05/26(金) 15:09:55
>>656
おそらく日本語であろうと予想が付く場合は String s = new String(byData, "JISAutoDetect");
をやってみる。例外が出た場合は "utf8" でやってみる。と言う感じでどうか?

本当は Content-type: ヘッダの charset= の所を見た方がよくて、本格的に
やりたい場合はまずヘッダとボディーの切り分けを先にやる。ヘッダの方だけ
iso-8859-1 で String に変えて Content-Type: の行を探し、charset= が
あった場合はそのエンコードとしてボディーをStringにする。ない場合は最初に
書いた方法でエンコードする。
661633:2006/05/26(金) 15:20:08
>>650
返信ありがとうございます。
やってみましたが、リークしている箇所はそのまま変化せずでした。
ただ、画像をflushすればリソースがすぐ解放されるってのは知らなかったので
参考になりました。

dropTargetListenerって長命なオブジェクトに実装させるべきではないんですかね?
現在はJFrameを継承したクラスに実装させてるんで、結構長命なオブジェクトなんですが。
何だかリスナ専用のクラス作ってしょっちゅうnewしてればいいような気もしてきましたが
それはそれで無駄なような…。
662656:2006/05/26(金) 15:22:21
>>660
レスありがとうございます。
String s = new String(byData, "JISAutoDetect");
で例外が出てしまいました。
たぶんbyDataに不正な値が入ってると思うのですが・・・。
とりあえず、「JISAutoDetect」を利用つつ、
ご助言のとおりやっていきたいと思います。
ありがとうございました。



663656:2006/05/26(金) 15:59:58
とりあえず、
System.out.println(new String(byData));
こんな感じで、表示できましたb
664デフォルトの名無しさん:2006/05/26(金) 17:40:38
http://java.sun.com/j2se/1.5.0/ja/docs/ja/api/java/lang/String.html
Stringのコンストラクタをよく見てみ・・・・・
ってもう解決してたか


とりあえず、困ったらjavadoc。これ大事。
665beansちゃん:2006/05/26(金) 18:19:21
 javaで帳票設計のツールをつくっているんですが、javaで縦書文書を表示
する方法ってあります?
 縦書フォント(@のついているやつ)を使って、AffineTransformで回転させ
てやればと思うんですが.
GraphicsConfigurationのAvailableFontsでも@フォントが取得できません。
どなたかご存知ありませんか。
よろしくです
666デフォルトの名無しさん:2006/05/26(金) 19:15:45
配列から指定した値の入ってるインデックスを知りたいときって
自分でいちいちループしてさがさんといかんのだっけ?
ArraysにもindexOf()とか用意されてないし。
binarySearchはあるけど。
667デフォルトの名無しさん:2006/05/26(金) 19:40:25
JARファイル叩くとFailed to load Main-class manifest attribute from XXXX
になってしまうんですが・・・
最新のJAVARuntimeはいれてます。
668デフォルトの名無しさん:2006/05/26(金) 20:06:47
>>643
フィーリング的に思いついたアルゴリズム

(1)まず行単位で纏める。
[1] {0, 0, 0, 0, 0, 0, 0, 0, 1, 1}
[2] {0, 0, 0, 0, 0, 2, 0, 3, 3, 3}
[3] {0, 0, 0, 0, 0, 4, 4, 4, 4, 4}
[4] {0, 0, 0, 0, 0, 0, 5, 5, 5, 5}

(2)インデックスがグループ番号になるような配列を作って
a[5] = { 1, 2, 3, 4, 5 }

(3)1行目と2行目の比較
配列の番号1 と 3 が隣接しているので
a[1]=1 と a[3]=3 のうち、大きい数を小さい数で潰すように a に含まれる全ての番号に適用する。
[1] {0, 0, 0, 0, 0, 0, 0, 0, 1, 1}
[2] {0, 0, 0, 0, 0, 2, 0, 3, 3, 3}
a: { 1, 2, 3, 4, 5} -> { 1, 2, 1, 4, 5 }

(4)2行目と3行目の比較。
2 と 4 が隣接、a[2]=2 と a[4]=4 より a 内の 4 を 2 で潰す。その後、
3 と 4 が隣接、a[3]=1 と a[4]=2 より a 内の 2 を 1 で潰す。
[2] {0, 0, 0, 0, 0, 2, 0, 3, 3, 3}
[3] {0, 0, 0, 0, 0, 4, 4, 4, 4, 4}
a: { 1, 2, 1, 4, 5 } -> { 1, 2, 1, 2, 5 } -> { 1, 1, 1, 1, 5 }

(5)以下略、あとは、a から 配列の番号付け直し
669デフォルトの名無しさん:2006/05/26(金) 20:14:46
>>667
それ自作のJarファイル?
MANIFEST作った?
670デフォルトの名無しさん:2006/05/26(金) 20:20:38
あるビジネスロジックがDBにアクセスするとして、
DriverManagerとデータソースの2通の方法があります。
つまり、バッチの場合とWEBの場合で異なります。

DB.open(String jndiName);
DB.open(String url, driverName, user, password);

だが、ビジネスロジックはバッチになってもWEBになっても一通りとしたい。
こんな場合はどうやって吸収するべきでしょうか?
671デフォルトの名無しさん:2006/05/26(金) 20:36:27
>>669 いやひとつはネットにあったツール。
もうひとつはこのサイトのこのゲームです。
ttp://www.dailyclassifieds.com.au/FreeGames/index.shtml
ttp://www.dailyclassifieds.com.au/FreeGames/Renju/jar.cgi

ツールのほうは展開したところにもmanifestがないようですが・・・
そのようなものが必要なんでしょうか?
672デフォルトの名無しさん:2006/05/26(金) 20:47:11
MANIFESTにMain-Classかかないといけないが、
その前に>>671のjarファイルに入ってるclassにmainメソッドがない。
673625:2006/05/26(金) 20:47:58
何度も申し訳ないです。

>>654のActionクラスを
DynaActionFormクラスに変えてみました。

そして
DynaActionForm loginForm = (DynaActionForm)form;  // キャスト
String Year = "2006";
loginForm.set( "year", Year ); // yearパラメータにセット

として、遷移先のページで
String year = request.getParameter( "year" ); // yearパラメータ取得
としたのですが、yearは空でした
しかし、<bean:write name="loginForm" property="year" />
このようにして表示すると、「2006」と表示されました

出来れば、String型の変数に入れたいです。
何か良い方法がありましたら、御教授願います。
674デフォルトの名無しさん:2006/05/26(金) 21:01:29
>>672 それは何かのツールで中身を見れるんですか?それともバイナリエディタ?
675674:2006/05/26(金) 21:07:10
自己レス
SDK入れれば見れそうですね
676デフォルトの名無しさん:2006/05/26(金) 21:30:06
中身を見たところツールのほうにもMain.classがないようです・・・
これだとうごかないということでしょうか?
677デフォルトの名無しさん:2006/05/26(金) 21:32:57
javaから実行マシンの制御って出来ないのでしょうか?
WinAPIでのsetcursorposに相当するクラスとか。
ウィンドウメッセージを受取って処理とか。

具体的に言うと、
クリック含めたマウス操作をプログラムから制御したい。
画面のキャプチャ(printscreen)もしたい。

出来ない?
678677:2006/05/26(金) 21:33:52
アゲチマッタ!!ソマソorz
679デフォルトの名無しさん:2006/05/26(金) 22:58:05
あるツールで実行するときに
jave antlr.tool t.g として実行させるものがあります。
antlrはツールの名前です。 t.gは読み込ませる設定ファイルです。

c:\antlr\s75\libにantlr.jar ファイルがあり その中にTool.classもあります。
c:\antlr\s75\libで先ほどのjave antlr.tool t.gを実行しても

Exception in thread "main" java.lang.NoClassDefFoundError: antlr/tool
となり実行できません。
何か指定がおかしくクラスを読み込めないのだと思うのですが、何がおかしいのでしょうか?
javaは素人です。
680デフォルトの名無しさん:2006/05/26(金) 23:26:51
>>670
ロジックはコネクションを受け取るとか取得と分離していれば問題なかろう
681デフォルトの名無しさん:2006/05/26(金) 23:32:42
僕はエスパーなのですがいくら念じても人の心が読めません。何がおかしいのでしょうか
682デフォルトの名無しさん:2006/05/26(金) 23:41:33
多分頭じゃないかな。
683デフォルトの名無しさん:2006/05/27(土) 00:21:34
684679:2006/05/27(土) 00:29:19
すいません・・・誰か教えてください・・・
685デフォルトの名無しさん:2006/05/27(土) 00:49:51
>>677
とりあえずjava.awt.Robotでマウス操作と画面キャプチャは可能。
686デフォルトの名無しさん:2006/05/27(土) 01:08:21
>>1 wikiの該当場所動きません・・・
687デフォルトの名無しさん:2006/05/27(土) 01:34:20
688デフォルトの名無しさん:2006/05/27(土) 01:39:55
>>687 Wikiがみれません。ほかのサイトも見てるけれどまじで判らんです。
あぁぁぁぁぁぁぁぁぁぁぁいらいらする。Java最悪。
689デフォルトの名無しさん:2006/05/27(土) 01:48:46
>688
落ち着け。ちゃんと見れるぞ。
690デフォルトの名無しさん:2006/05/27(土) 01:51:36
>>689 みれますた・・・orz なんだったんだろう・・・
えーとHelloWorldすら
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello, World");
}
}
コンパイルすると”helloworldはpublicであり、ファイルhelloworld.javaで宣言しなければなりません”とかいわれる・・・まじでむかつく・・・orz
691デフォルトの名無しさん:2006/05/27(土) 02:07:45
確かに変だな。
普通なら、「HelloWorldはpublicであり、ファイルHelloWorld.javaで宣言しなければなりません」となるはずなんだが。
692デフォルトの名無しさん:2006/05/27(土) 02:51:07
>>690
Eclipseとかを使ってみてはどうですか?
http://eclipsewiki.net/eclipse/
Javaは大文字・小文字を区別します。ファイル名とClass名があってるか確認しましょう。
693デフォルトの名無しさん:2006/05/27(土) 08:44:35
>>691-692
大文字小文字でなんか通ったようです。ありがとうございました。
・・・・ふぅ・・・・
694デフォルトの名無しさん:2006/05/27(土) 08:52:36
キレる若者
695108:2006/05/27(土) 11:30:36
すみません。
こちら(初心者スレ)に投稿しようか、一時迷ったのですが、
投稿させていただきます。

現在アプレットとサーブレット間でデータをやりとりする処理を開発中です。
開発環境が
J2SDK 1.4.2_11
Eclipse3.1.2
Tomcat5.0.28
です。

appServTestというプロジェクトを作成し、マシンのCドライブ直下に
appServTestというフォルダを作り、それをプロジェクトのルートフォルダにしています。
それで、疑問が湧いてきたのが、以下の2点です。

(1)appletタグを埋め込んだHTMLは、ルートフォルダ以下のどこに置けばいいのか?
(2)appletタグ内に記述するアプレットのクラスファイルのパスはどうなるのか?

サーブレット開発の場合、クラスファイルの置き場所が
ルートフォルダ\WEB-INF\classesフォルダ下になるのですが(というか自動的に作られるのですが)、これをこのまま
<applet code="WEB-INF\classes/AppletSample.class">
と書くわけにはいきませんよね・・・(実際アプレットは動きません)。

アプレットに詳しい方いらっしゃいましたら、お願いいたします。
696695:2006/05/27(土) 11:32:24
すみません、私は108さんとは別人です(念のため)。
697デフォルトの名無しさん:2006/05/27(土) 11:41:25
アプレットはサーブレットとはきりわけて考えてくれ

サーブレットはサーバーで動くものでサーバーが認識する場所に置く

アプレットはHTTPでダウンロードして実行する
FlashとかHTMLとかとおなじ
WEB-INFはサーブレットでしか認識できない場所だからそこはだめ

698デフォルトの名無しさん:2006/05/27(土) 12:25:32
>>695

アプレットはダウンロード元のホストとしか
通信出来ません。
以下、一例です

アプレット置き場
http://localhost/tomcat/webapps/game/applet.html
    ↑ ココ ↑

サーブレット置き場
http://localhost/tomcat/webapps/game/WEB-INF/classes/server.class
    ↑ ココ ↑

「ココ」が同一の名前だったらどこに置いても通信出来ます。
699695:2006/05/27(土) 12:54:09
>>697
>>698

回答ありがとうございます。
HTMLファイルとサーブレットクラスファイルの置き場所に関しては理解できました。
しかし、アプレット-サーブレット間の通信を行う処理でプロジェクトを
作成する場合の、プロジェクト内のフォルダやクラスファイル、
ソースファイルなどの置き場所に関して、まだこんがらがってる状態です。
もし、ルートフォルダ直下にHTMLファイルを置いた場合は、
アプレットのクラスファイルはHTMLファイルと同じ階層に
置けばいいという認識でよいでしょうか?
(間違っていたらご指摘願います)
700デフォルトの名無しさん:2006/05/27(土) 13:06:04
>>699

アプレットとサーブレットが通信を行うってのと
アプレットを実行するhtmlとクラスファイルの関係は全然別。

アプレットの中からサーブレットのクラスにアクセスすればok
701デフォルトの名無しさん:2006/05/27(土) 14:58:37
Applet用のワークスペースとServlet用のワークスペースは別に作れる
と言うか基本的には別にした方が良いよ

通信を行うプログラムだとサーバとクライアントはそれぞれ別のアプリケーションと認識したほうが良いな

702695:2006/05/27(土) 15:59:16
>>700
>アプレットの中からサーブレットのクラスにアクセスすればok
それは認識してたんですけど・・・ただ、URLにアクセスして最初に
表示されるHTMLファイルに埋め込む、アプレットクラスの置き場所が
はっきりわからなかったんです。
今までAppletにServletが絡んでくる処理というのは初めてだったので。

>>701
別プロジェクトから別プロジェクトに
アクセスってできるんですか?
Eclipseでもそういうことができたりするのでしょうか?

703デフォルトの名無しさん:2006/05/27(土) 16:17:02
>>702
外部プロジェクトを参照するように設定できるよ
プロジェクトのプロパティをいじってごらん
704695:2006/05/27(土) 16:46:05
>>703
ありがとうございます!
早速試してみます。
705デフォルトの名無しさん:2006/05/27(土) 19:30:12
あるメソッド内のローカルな配列型変数(クラスのインスタンス)を
別の関数に参照渡しして、渡した関数内で配列の長さを変えることってできますか?
下のような感じで処理がしたいのですが・・・
2つの関数は全く別のクラスです。

private あるメソッド(){
別の関数(ローカルな配列型変数)
}
public static 別の関数(ローカルな配列型変数){
// ローカルな配列型変数の配列の長さを変更する処理
}
706デフォルトの名無しさん:2006/05/27(土) 19:33:51
private あるメソッド(){
  String[] array = new String[100];
  array = サイズを倍(array);
}

private static String[] サイズを倍(String[] array){
  String[] temp = new String[array.length * 2];
  System.arraycopy(array, 0, temp, 0, array.length);
  return temp;
}
707デフォルトの名無しさん:2006/05/27(土) 20:25:11
>>705
Javaではどうやっても参照渡しはできないので
適当なその配列をラップするクラスを作って引数で渡すか
>>706みたいに戻り値を使うかしましょう。
708デフォルトの名無しさん:2006/05/27(土) 20:32:05
javaでリバーシを作ろうと思っています。
guiを使おうと思っているのですがゲームを作る場合シングルスレッドなswingではやりずらいような気がします。
多くの場合、ゲームを作るときはawtかswingどちらを使うべきなのでしょうか?
709デフォルトの名無しさん:2006/05/27(土) 20:53:02
>>708
swingは確かにシングルスレッドモデルだが何でやりづらいのかわからん。
描画以外は勝手にマルチスレッドにすればいいんじゃないのかね。
710デフォルトの名無しさん:2006/05/27(土) 20:58:50
>>709
それでやってみます。
やはりawtを使うのは良くないことなのでしょうか?
711デフォルトの名無しさん:2006/05/27(土) 21:00:58
つーかSwing使うといってもゲームでSwingのコンポーネントはほとんど使わないし
712デフォルトの名無しさん:2006/05/27(土) 21:18:44
リバーシのどこでマルチスレッドが必要になるのかね?
713デフォルトの名無しさん:2006/05/27(土) 21:22:00
ひっくり返すところのアニメーションとかだろ。
714デフォルトの名無しさん:2006/05/27(土) 21:22:55
awtイベントのスレッドとゲームのスレッドがごっちゃになってる予感
715デフォルトの名無しさん:2006/05/27(土) 22:43:29
GUIについて勉強しはじめました。
メニューについての質問があります。
今はJMenuItemでおこるイベントを同じクラス内のActionListenerで書いていますが、
JMenuItemが増えれば管理が難しくなると思い、クラスを下のようにしたいと思いました。

MenuBar
  ├─MenuA
  |   └─ActionListenerA
  ├─MenuB
  |   └─ActionListenerB
  ├─MenuC
  |   └─ActionListenerC
  └─MenuD
      └─ActionListenerD

ただ、このように書くにはどうすればいいかわかりません。
また、推奨される書き方などがあれば教えてください。
716デフォルトの名無しさん:2006/05/27(土) 22:52:44
NetBeansでメニューつくってそれのイベント生成部分見てごらん
生成パターンも複数えらべるし
717あぼーん:あぼーん
あぼーん
718デフォルトの名無しさん:2006/05/28(日) 02:22:24
UIスレッドにマルチスレッドを採用したモノってあるん?
719デフォルトの名無しさん:2006/05/28(日) 02:24:38
 File dir = new File(
720デフォルトの名無しさん:2006/05/28(日) 02:29:59
下記をアプレットビューワで実行するとうまく表示されるのですが、
HTMLで実行するとエラーになります。
セキュリティのせいだと思いますが、回避策はありますでしょうか?

 File dir = new File("model");
 String modellist[] = dir.list();
 System.out.println(modellist[0]);
721デフォルトの名無しさん:2006/05/28(日) 02:31:34
ない
722720:2006/05/28(日) 02:59:16
ですよね。ありがとうございました。
何日もかけた作りかけのゲームが終わった・・・。 orz
723デフォルトの名無しさん:2006/05/28(日) 03:21:11
>>722
アプレットではなく、AWTで実装してみたら?
(確かCGIと組み合わせるとファイル扱えたような気もするけど難しそう)
724695:2006/05/28(日) 09:06:13
何度もすみません。

アプレットのプロジェクトとサーブレットのプロジェクトを
別々に作ろうとしてみたんですが、
アプレットのプロジェクトの方でつまっています。
Eclipse上でアプレット側プロジェクトをTomcatプロジェクトで作成し、
HTMLファイルとアプレットクラスをプロジェクト直下に作ろうとしたんですが、
どうしても自動的にWEB-INF下にクラスができてしまい、直下に作ると
Javaプログラムとして認識してくれません。
アプレット側はTomcatプロジェクトとして作成してはいけないのでしょうか?
でもそうすると、アプレット側のHTMLファイルにhttp://〜という形でアクセスできないし・・・。

725デフォルトの名無しさん:2006/05/28(日) 11:45:27
>>722
書名つけりゃいいんじゃねーの?
726デフォルトの名無しさん:2006/05/28(日) 12:17:09
>>695
マルチポストしすぎ…
@ITと教えてGOOと2ちゃんにPOSTしてるし。
せめてどこかで教えてもらった内容は他のポスト先に反映しませんか?
727695:2006/05/28(日) 12:38:23
ごめんなさい。
マナー違反とは知らなかったんです。
以後気をつけます。
728デフォルトの名無しさん:2006/05/28(日) 15:46:12
共有フォルダ上で実行可能jarから作ったexeファイル(aaa.exe)を実行させようと思っています。
そこで多重起動を禁止しようと思っているのですが、
起動中のプロセスの中にaaa.exeがあった場合は実行しないようにしようとしています。

起動中のプロセス名を取得する方法、または同じユーザによる
多重起動を防止するほかのよい方法があったら教えてください。

exeにしたのはjarだと、どのjarを起動してもプロセス名がjava.exe(かな?)だったからです。
729デフォルトの名無しさん:2006/05/28(日) 16:08:00
ポリモーフィズム

do(Object o){
o.draw();
}

はなんとなくわかったのですが、

do(Object o){
if(o instanceOf Circle){
   ごにょごにょ
}else if(o instanceOf Rectangle){
むにょむにょ
}else{
  エエー
}
}

って書くところは、きれいにできないんでしょうか?
730デフォルトの名無しさん:2006/05/28(日) 16:19:35
インタフェースを使え

interface Shape {
void do();
}
class Circle implements Shape {
public void do() {
   ごにょごにょ
}
}
class Rectangle implements Shape {
public void do() {
  むにょむにょ
}
}
class Hoge {
do(Shape s){
s.do();
}
}
731デフォルトの名無しさん:2006/05/28(日) 16:20:49
staticメソッド内で、インスタンスを作成せずに自身のクラス名を取得することってできる?
732デフォルトの名無しさん:2006/05/28(日) 16:30:12
連結リストでデータを昇順に並べたい場合、データの比較とそのセルの挿入はどのようにしたらいいのでしょうか?
733デフォルトの名無しさん:2006/05/28(日) 16:55:43
>>728
クラス名.class で、java.lang.Class取れる。

動的にはどうやるんだろう
734デフォルトの名無しさん:2006/05/28(日) 17:10:01
>>732
セルの挿入ってなんだ?
735デフォルトの名無しさん:2006/05/28(日) 22:56:43
abstract class Airplane { // 抽象クラスAirplane
String serial;
public Airplane(String serial) {
this.serial = serial;
}
abstract int getPassengers();
public String toString() {
Class cls = getClass();
return cls.getName() + ": " +
serial + " " + getPassengers();
}
}
class B747 extends Airplane {
final static int PASSENGERS = 500;
public B747(String serial) {
super(serial);
}
public int getPassengers() {
return PASSENGERS;
}
}
class AirplaneTypes {
public static void main(String args[]) {
// 領域を宣言して割り当てる
Airplane airplanes = new B747("UA1233");
// 航空機の表示
Airplane a = airplanes;
System.out.println(a);
}
}
このプログラムでmainの最後の System.out.println(a); でなぜ a.toString() と書かなくてもto.String()関数が呼び出されるのでしょうか?
736デフォルトの名無しさん:2006/05/28(日) 23:01:48
>>735
頼むからAPIを読む癖をつけてくれ
737デフォルトの名無しさん:2006/05/28(日) 23:10:21
データグラムソケットであるポート番号からUDPパケットを受ているとき、
他のアプリケーションで同じポート番号からUDPパケットを受けることが出来ません。
逆に他のアプリケーションから起動し、javaを起動すると
Javaアプリの方がjava.net.BindException: Address already in use: Cannot bind
という例外が生じます。また、Javaアプリを2つ起動した場合、後に起動した方が同じ例外が
生じます。
DatagramSocket socket = new DatagramSocket(10000);//java.net.BindException
DatagramPacket packet = new DatagramPacket(buf, buf.length);
socket.receive(packet);
これらを両方起動することは出来るのでしょうか?
738デフォルトの名無しさん:2006/05/28(日) 23:11:24
>>735
受け取り側がString型だと自動的にtoStringが呼ばれると思いなされ。
逆に意図しないうちにtoStringが使われることがあるから注意。
739デフォルトの名無しさん:2006/05/28(日) 23:12:18
出来るわけねぇじゃん。
740デフォルトの名無しさん:2006/05/28(日) 23:25:22
>>737
同じJVM内で別スレッドで共有するしかない

どうしても別プロセスで共有したいなら環境依存になる。
UNIXの場合親プロセスで生成したソケットをふたつの
子プロセスのJVMで共有することは可能かもしれない。
741デフォルトの名無しさん:2006/05/28(日) 23:25:40
>>737
お前そんな状態でUDP使うプログラムなんか作ってんのか?
742デフォルトの名無しさん:2006/05/28(日) 23:27:44
お前ら、バインドアドレス変えれば別プロセスでも同一ポート使えることも知らんのか…
743デフォルトの名無しさん:2006/05/28(日) 23:34:15
フレームの中に画像とテキストボックスを表示させてその画像をクリックしたら
テキストボックスの中にそのクリックした位置の座標を表示させたいのですが
どなたか教えていただけませんでしょうか??
744デフォルトの名無しさん:2006/05/28(日) 23:37:39
>>736
読んでみたんですがObjectの値が返されるとしか書いてなかったのでいまいちわかりませんした。

>>738
ためしにAirplaneクラス内に
public String tekito()
{
return "aaa";
}
という適当な関数を作って実行してみたのですが今までと変わらない実行結果が得られたのですがそれはどうしてでしょう?
745デフォルトの名無しさん:2006/05/28(日) 23:40:54
>>738
ありがとうございます。

が抜けてたorz
746デフォルトの名無しさん:2006/05/28(日) 23:46:37
>>742
いや、意味が分からんのだが
bind先変えたら同じサービスを複数プロセスで提供できてないじゃん
747デフォルトの名無しさん:2006/05/29(月) 00:20:59
流れぶった切ってすみません。
アプレットで隠しフィールドを使いたいのですが、
<parame name="hoge" value="aaa">
というタグは、HTMLタグの
<input type="hidden" name="hoge" value="aaa">
と、位置づけとしては同じなんでしょうか。
748るーきー:2006/05/29(月) 00:28:01
Javaをインストールしたので、さっそくhello,worldのプログラム書いて
コマンドプロンプトでコンパイルしました。

コンパイルは成功したのですが、実行はできませんでした。
エラー内容は以下の通りです。

D:\Java練習>setenv
D:\Java練習>SET JAVA_HOME=C:\j2sdk1.4.2_04
D:\Java練習>SET PATH=C:\j2sdk1.4.2_04\bin

D:\Java練習>javac Sample1.java
D:\Java練習>java Sample1
Exception in thread
749るーきー:2006/05/29(月) 00:30:39
最後の1行間違えました

D:\Java練習>java Sample1
Exception in thread "main" java.lang.NoClassDefFoundError: Sample1
750デフォルトの名無しさん:2006/05/29(月) 00:32:46
実行できてますが
751デフォルトの名無しさん:2006/05/29(月) 00:33:45
>>748
>>1を2000回ぐらい読み直せば?
いやなら死ね
752デフォルトの名無しさん:2006/05/29(月) 00:35:41
ルーター使ってアクセスしてるとき
(cmdでipconfigしてもローカルアドレスが出る環境)
に、javaからグローバルIPを確認するにはどのようにしたらよいのでしょう?
753デフォルトの名無しさん:2006/05/29(月) 00:36:35
>>748
1,まず >>1を読んでください。
2,「D:\Java練習」のフォルダにSample1.classがあることを確認してください。
3,Eclipseとかを使ってみませんか?
http://eclipsewiki.net/eclipse/
754デフォルトの名無しさん:2006/05/29(月) 01:50:37
すみません。JSP初心者です。

レッスンを進んでいったところ、いろいろなJSPが表示できるようになりましたが、
あるJSPページだけ、アドレスバーに打ってエンターを押すと、ダイアログボックスがでてきて
ページが表示されずに、「開く」か「保存」か「キャンセル」か「詳細」のダイアログボックスが出てきます。

ベクターで.exeファイルをダウンロードするときに出てくるダイアログボックスです。
OSはWinMeです。

よろしくお願いします。
755754:2006/05/29(月) 01:51:31
わかりやすくいうと、「ファイルのダウンロード」ダイアログボックスが出てきて、
Webページは表示されないのです。

よろしくお願いします。
756デフォルトの名無しさん:2006/05/29(月) 01:53:03
そういうページなんじゃないの?
757754:2006/05/29(月) 01:57:09
>>756
いや違います(;^ω^
758デフォルトの名無しさん:2006/05/29(月) 02:00:59
excampusとかmoodleをwindowsにインストールする方法が載ってるサイトありませんか?
あとpostgreSQLのとか・・。
759デフォルトの名無しさん:2006/05/29(月) 04:25:25
>>754
@page contentType="ほにゃらら" が間違っている。
ここがちゃんと text/html になっていないと、
ブラウザはHTMLとして扱ってくれないぞ。
760デフォルトの名無しさん:2006/05/29(月) 10:15:26
PNG画像を画面に描画するソフトを作っています。
一度メモリ上に読み込んで書くのですが、遅いので、
メモリ上のバッファーをvolatileimageにしようと思いました。
つまり次のようなイメージです。
*.png -> Image -> volatileimage -> JPanel
volatileimageに転送する時、drawImageを使っているのですが、
この時、透明度が失なわれてしまいます。
volatileimageの初期状態が灰色で塗ってある状態なので、
そこに書くと透明だった部分が灰色になるのです。

volatileimageを透明に塗ればいいと思うのですが
どうしたらvolatileimageを透明に塗れますか?
fillRectなどでは、透明に塗るという作業ができません。
761デフォルトの名無しさん:2006/05/29(月) 11:41:50
初めまして質問です

現在テキストから名前と値を読取りました
値は不定で
A 0.0.0.0…
B 1.1.1.1…
C 2.2.2.2…

値は不規則に変わりますが一列目を基準にし 2列目の値が違うときはエラーメッセをだすようにしてます
A=0+B=1+C=2をだしたい時の処理の仕方を教えてください 初心者ですいません
762デフォルトの名無しさん:2006/05/29(月) 11:49:40
誰か日本語に訳してくれ
763デフォルトの名無しさん:2006/05/29(月) 12:36:00
StringTokenizer st = new StringTokenizer(".");

アトハシラネ
764デフォルトの名無しさん:2006/05/29(月) 12:42:58
>>761
日本語の初心者はこのスレでは取り扱っていません
お引取り下さい
765デフォルトの名無しさん:2006/05/29(月) 12:49:22
>762-764
プッ! バカだなー
>>761
どれどれ。
………、……。……。…、………駄目だッ!
0.061ピタゴラスバイトものデータサイズで書かれても俺の
旧世代スーパーブロック脳みそではエラーが発生する!
766デフォルトの名無しさん:2006/05/29(月) 12:49:25
>>743
743のプログラムを誰か分かる人いませんか?
ヒントだけでもよろしいんで・・・
767デフォルトの名無しさん:2006/05/29(月) 13:00:04
>>766
APIリファレンスくらい読め
MouseEventの所に結構詳しく書いてある
768デフォルトの名無しさん:2006/05/29(月) 13:03:42
質問があります。
テキストファイルから文字列と複数の数値を読みとるプログラムを作成しています。
テキストファイルは次のように1行ごとに、文字列(半角スペースで区切る)、複数の数値(.で区切る)の形式です。
A 0.0.0.0…
B 1.1.1.1…
C 2.2.2.2…
仕様上、同じ行の数値は全て同じになります(もし違う場合はエラーを出すようにしています)。
ここまでは出来たのですがA=0+B=1+C=2をだしたい時の処理?がわかりません。
どのようにすれば出来るのか教えてください。

俺のESPではここまでが限界。肝心な所が意味不明だ。
769デフォルトの名無しさん:2006/05/29(月) 14:00:43
>>768
> A=0+B=1+C=2
これが何を意味しているのか全く分からない。
770768:2006/05/29(月) 14:14:21
俺もだ。
1行目をA、2行目をB、というようにして、A(=0)+B(=1)+C(=2)の値、つまり各行の合計って事かとも思ったんだが、それがわからん事も無いだろうし。
よくわからんのはそこだけじゃ無く、>768で書いたのと全く違う可能性も高い。誰か優秀なエスパー頼む。シャンポリオンでもいいから。
771754:2006/05/29(月) 15:39:18
>>759
ありがとうございます。できました。おっしゃるとおり、「<%@ page contentType=
772デフォルトの名無しさん:2006/05/29(月) 15:41:37
同じ行の数値が全部同じなら
1列目をA+B+Cして終わりだよな。うーん。
773まゆみ:2006/05/29(月) 16:06:20
すいませんわかりずらくて A 1.2.3.4.5.6.7
B 7.6.5.4.3.2.1
C 5.4.3.2.1
みたいに毎回値が不規則に変わります
不規則な値になっても計算できる式が知りたかったです
縦の列を全て足した合計
例→Aの一文字目+Bの一文字目+Cの一文字目

行を足した合計
Aを全部足す

arraylistでなんとかなりそーです
意味わからない投稿すいません
774デフォルトの名無しさん:2006/05/29(月) 16:44:15
>>773
その例だと全部何とかメッセとやらが出るんだろ?
775デフォルトの名無しさん:2006/05/29(月) 17:22:06
急ぎのようでsplitを使いたいのですが、
public class Test10
{
public static void main(String args[])
{
String[] strs =
776デフォルトの名無しさん:2006/05/29(月) 17:23:11
ごめんなさい、途中で切れてますね。
public static void main(String args[])
{
String[] strs = "2003/05/19".split("/");
for (int i = 0; i < strs.length; i++)
{
System.out.println(strs[i]);
}
}
}
777デフォルトの名無しさん:2006/05/29(月) 17:39:18
>>776
だから?
778デフォルトの名無しさん:2006/05/29(月) 17:43:21
>>773
分かり辛い。
その A, B, C が先頭にある行というのはどういう風に
そのプログラムに渡されるのか? ファイルか? ファイル
だとしても A, B, C は規則的に必ず A, B, C の順で
入るのか? 複数パターンあるのか?(B, C, A のような
パターンもあるのか?)。連続して A, B, C, A, B, C の
ように入って来るのか? それとも1組だけ A, B, C と
来るのか? などの情報が足りない。
779754:2006/05/29(月) 18:13:11
あれ??>>771が途中で切れてるや。

text/html;のセミコロンが抜けてました。原因はそれでした。アドバイスくれた方
ありがとうございました。

またひとつ勉強になりました。
780デフォルトの名無しさん:2006/05/29(月) 19:18:09
>>767
APIリファレンスは読んだのですがいまいちピンときません・・・
下がプログラムです。
JTextField pertxt1 = new JTextField("0.0",4);
void initFrame(BufferedImage imageOriginal) {
JFrame frame1 = new JFrame("");
frame1.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JToolBar toolbar1 = new JToolBar();

ImageIcon icon2 = new ImageIcon(imageOriginal);
JLabel label2 = new JLabel();
Image image2 = icon2.getImage();
int image2W = image2.getWidth(label2);
int image2H = image2.getHeight(label2);
image2 = icon2.getImage().getScaledInstance((int)(image2W*0.5),(int)(image2H*0.5),Image.SCALE_FAST);
icon2 = new ImageIcon(image2);
label2.setIcon(icon2);
toolbar1.add(pertxt1);
frame1.getContentPane().add(label3,BorderLayout.CENTER);
frame1.getContentPane().add(toolbar1,BorderLayout.SOUTH);
frame1.pack();
frame1.setVisible(true);
}
class MouseListener extends MouseAdapter{
public void mousePressed(MouseEvent e){
int iX = e.getX();
int iY = e.getY();
System.out.println(iX);
}
}
これでpertxt1の中にクリックしたときにマウスの座標を表示させたいのですが・・・
781デフォルトの名無しさん:2006/05/29(月) 20:28:59
>>780
getX()やgetY()の結果はクリックした時のコンポーネントの相対座標って書いてあるだろ
だから簡単に書くとクリックしたコンポーネントの左上の座標にgetX()、getY()を足してやればよい
あとはそれをラベルなり、テキストボックスなりに表示してやればよい
ただし、コンポーネントの座標として得られる値はLayoutManagerによってボーダー領域を含んだり含まなかったりするので気をつけるべし
782デフォルトの名無しさん:2006/05/29(月) 20:34:38
>>781

int x = 0;
int y = 0;

int iX = e.getX();
int iY = e.getY();

x = x + iX;
y = y + iY;
というようにすればよいということでしょうか?
783デフォルトの名無しさん:2006/05/29(月) 20:37:26
C言語で書いてあるソースをjavaに直してみようと試みているんですが、
scanf()関数の代わりになる関数がわかりません。
ネットで入出力関連の文法をあさってみたのですが、ファイル入出力しか見つかりません。
汎用的な入力関数はどれを使うのが良いのでしょうか???
784デフォルトの名無しさん:2006/05/29(月) 20:39:45
というわけで貴様らはやく教えなさい
785デフォルトの名無しさん:2006/05/29(月) 20:42:33
教えて下さい。
786デフォルトの名無しさん:2006/05/29(月) 20:50:31
つSystem.in
787デフォルトの名無しさん:2006/05/29(月) 20:51:10
>>783
ttp://java.sun.com/j2se/1.5.0/ja/docs/ja/api/java/util/Scanner.html
こういうときJava5になって便利だとオモタ。
1.4だと、InputStreamReader使ってBufferedReader使って、さらにInteger#parseInt()して、と
面倒だったし。
788デフォルトの名無しさん:2006/05/29(月) 20:51:23
>>783
そんな邪悪なものはありません。

======== 終了 ========
789デフォルトの名無しさん:2006/05/29(月) 20:56:07
>>657
巨大な行列を扱うときは
普通、pivot使わね?
790デフォルトの名無しさん:2006/05/29(月) 22:53:25
class Hoge{
 private String foo = null;
 public Hoge(){
  foo = new String("Initial Data");
 }
}

class Hoge{
 private String foo = new String("Initial Data");
 public Hoge(){
 }
}

この2つの表現方法って、結果は同じなんでしょうか?
791デフォルトの名無しさん:2006/05/29(月) 22:56:09
結果ってなんだよ
792デフォルトの名無しさん:2006/05/29(月) 22:59:36
動きは微妙に違うがまぁ結果的には同じ事になる。
793まみ:2006/05/29(月) 23:02:30
こんばんわ 質問です
テキストファイルを読み込んで文字を検索かけたいんですが【String型】プログラムってどーかけばよぃですか?
わかりやすく全部ソース書いてください おながいします
794デフォルトの名無しさん:2006/05/29(月) 23:04:09
どこの求人見ても実務経験者募集ばっかりなんだけど
どうやってスタートすればいいんだよ
795デフォルトの名無しさん:2006/05/29(月) 23:04:22
なんかここ二・三日蒸し暑くね?
796デフォルトの名無しさん:2006/05/29(月) 23:08:38
>>793
い な く な れ
797デフォルトの名無しさん:2006/05/29(月) 23:10:23
>>794
事実上新卒採用しか入り口はないってことだな・・・
798デフォルトの名無しさん:2006/05/29(月) 23:16:21
結構未経験あるよDQN臭が漂ってるけど
799デフォルトの名無しさん:2006/05/29(月) 23:16:40
実務レベルのもんが作れるってわかるだけのもの作って持ちこみゃ良いじゃん。
800デフォルトの名無しさん:2006/05/29(月) 23:17:36
>>788
邪悪じゃないが邪刃FiveにはScannerクラスがあるだろ
801デフォルトの名無しさん:2006/05/29(月) 23:19:19
>>795
何処が?

東京は熱かったり寒かったりするけどな。

お前の住んでるところを示さないことには何ともいえね
802デフォルトの名無しさん:2006/05/29(月) 23:21:01
>>794
食安徹夜残業代ゼロ糞零細企業から

学生ならプログラマアルバイト経験を生かせる。

803デフォルトの名無しさん:2006/05/29(月) 23:21:40
>>793
釣りか?
804まみ:2006/05/29(月) 23:22:18
うんこはだまれ
805デフォルトの名無しさん:2006/05/29(月) 23:34:34
今からはじめようと思うんだがJavaとVBどっちが需要あるかな?
いやもちろん一概には言えないからいろんな言語が同時に存在してるわけだけど
体感的にね
806デフォルトの名無しさん:2006/05/29(月) 23:36:54
 | ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄|
 |  大喜利禁止!!  |
 |               |
 |__________|
    ∧∧ ||
    ( ゚д゚)||
    / づΦ
807デフォルトの名無しさん:2006/05/29(月) 23:48:49
>>805
需要があるのは何でもこなせる奴
808デフォルトの名無しさん:2006/05/29(月) 23:52:22
そうかぁ?
一つの仕事に対して複数の言語使える必要はないだろ
会社の方針によって一種特化でおkだと思うが
809デフォルトの名無しさん:2006/05/30(火) 00:10:00
一言語だけでやってける会社ってよっぽど専門家の集まった所だな
案件によってコロコロ変わるのが日常茶飯事だから羨ましい
810デフォルトの名無しさん:2006/05/30(火) 00:21:57
一言語しかできない奴って自分のごくごく狭い得意分野を
外れたら途端に使い物にならなくなる
811デフォルトの名無しさん:2006/05/30(火) 02:40:53
そうそう、Java や VB ってごくごく狭い分野でしか使われてないからな
812デフォルトの名無しさん:2006/05/30(火) 06:58:00
昨日splitのことを書き込んだものですが、
文字を分割したくて「とほほJAVA入門」のサイトの

String[] strs =
813デフォルトの名無しさん:2006/05/30(火) 07:04:15
なんで途中できれちゃうんだろうorz


String[] str = "2003/05/19".split("/");
for (int i = 0; i < strs.length; i++) {
System.out.println(strs[i]);
}

を映して実行してもエラーになります。
エラーの内容は今自宅なので実行できません。
でも
String[] strs = "2003/05/19".split("/");
↑ここのドットがエラーの原因みたいです。

どなたか教えていただけませんか?お願いします。
814デフォルトの名無しさん:2006/05/30(火) 07:10:21
変数の識別子だが、strかstrsどちらかにしような。 な。
815デフォルトの名無しさん:2006/05/30(火) 07:15:27
String[] str = "2003/05/19".split("/");
     ^^^
for (int i = 0; i < strs.length; i++) {
          ^^^^
System.out.println(strs[i]);
           ^^^^
816813:2006/05/30(火) 09:03:40
ごめん。そこ直してもエラーになります。
817デフォルトの名無しさん:2006/05/30(火) 09:06:34
だから、エラー出力ぐらい提示しろよ。他がわるいかもしれんだろ。
818デフォルトの名無しさん:2006/05/30(火) 09:25:47
strとstrsを統一すれば、ふつうに動くじゃん。
ここ以外にロジック上の問題は見あたらないのでは?
819813:2006/05/30(火) 09:30:50
表示されるエラーは
シンボル:メソッドsplit(java.lang.String)
位置 :java.lang.Stringクラス
String[] str =
820813:2006/05/30(火) 09:31:42
なんでいつも全部打ってるのに途中で切れて表示されるんだろう・・・
821デフォルトの名無しさん:2006/05/30(火) 10:53:38
DBと連携するサーブレットを作ってるのですが。ある処理でステートメントを
大量に発行するため時間がかかってしまっています。プリペアステートメントで
ある程度解決しましたが、まだ遅くて困ってます。

DBサーバーとサーブレットのサーバーは同じサーバーなのですが、
同一サーバー上だと接続を早くできる様な方法はないでしょうか?
822821:2006/05/30(火) 10:56:20
ちなみに、Oracle+Tomcat5で ドライバーマネージャーで接続しています。
823デフォルトの名無しさん:2006/05/30(火) 10:57:53
>>821
オレもPostgreSQL+Tomcatで同じようなケースに陥って、
最後はストアドピロシージャで解決したよ。。。

o....rz
824デフォルトの名無しさん:2006/05/30(火) 11:12:56
>>823
orzってことは無い。とてもまともな対応だよ
825821:2006/05/30(火) 11:13:15
>>823 
ストアドですかぁ

ストアド使いたいところなんですが、横に伸びちじみする表を作ってるんですよ…
出来ないことはないんだろうけど… かなりやりたくないんですよねぇ
826デフォルトの名無しさん:2006/05/30(火) 11:13:56
ストアドピロシージャを使うとは、御主ただ者じゃないな。
827デフォルトの名無しさん:2006/05/30(火) 16:48:08
>>822
まさか毎回コネクション切断とかはしてないよね?
828821:2006/05/30(火) 16:54:10
>>827 さすがにそれは、ないです。
ただ、SELECT分を4,0000回ほど発行してるようです。

インデックス張ったら少し早くなりました。
829デフォルトの名無しさん:2006/05/30(火) 16:59:38
ってDBの問題かよ

それだとストアドでも遅いだろ
830デフォルトの名無しさん:2006/05/30(火) 18:36:07
それほんとに必要なのかよ
831デフォルトの名無しさん:2006/05/30(火) 18:37:32
バッチなら分かるがWEBアプリで4万回もSQL発行してたら遅くて当たり前
設計が悪いに一票
832>>813:2006/05/30(火) 19:01:10
>>812-820n
使ってるJavaのバージョンは?
もしかして1.3以前を使ってるとかいう落ちじゃなかろうな?
833デフォルトの名無しさん:2006/05/30(火) 19:39:37
クラスパスとかjarとか


  ま  じ  で  む  か  つ  く  !  !
834デフォルトの名無しさん:2006/05/30(火) 20:07:07
すまんです。
基本的質問だと思うのですがお願いします。

c:\Hoge\Nurupo\damepo.jarにあるクラスを実行しようとしています。

1.CLASSPATHにc:\Hoge\Nurupo,c:\Hoge\Nurupo\damepo.jarを設定すると
c:\Hoge\Nurupoでjava damepo.Ugagaで実行することが出来ます。

2.CLASSPATHに設定しないと
java damepo.Ugaga
-Exception in thread "main" java.lang.NoClassDefFoundError:damepo/Ugaga
java ^jar damepo.jar damepo.Ugaga
-Failed to load Main-Class manifest attribute from damepo.jar
java -cp c:\Hoge\Nurupo damepo.Ugaga
-Exception in thread "main" java.lang.NoClassDefFoundError:damepo/Ugaga

となります。ただし両方ともフォルダはc:\Hoge\Nurupoにいるとします。
ちなみにdamepo.jarにはMainくらすはありません。

だとして
1.の場合にMainクラスがないのに動作するのはなぜか
2.の場合にjarファイルを指定しても1.と同様の動作をしないのはなぜなんでしょう?

835デフォルトの名無しさん:2006/05/30(火) 20:23:10
muripo
836デフォルトの名無しさん:2006/05/30(火) 20:27:41
JWindow を継承したSplashScreenのクラスを書いて、プログラムの起動時に
はしっかりと画像もプログレスバーもでるのですが、このクラスをプログラム終了時前に
データの保存するためにインスタンスを作って書き終わるまで表示させようとしているのですが
画像やラベルは一切出ないでただの白い四角形がレンダリングされて出てきます。
後画像のパスなどは合っています。
プログラムは大方こんな感じです・・・


public void exit()
{
............................................
if (isDataUpdate){
SplashScreenWindow p = new SplashScreenWindow();
p.setVisible(true);
mediator.mapData();
p.setVisible(false);
p.dispose();
}
.................................................
}

ただ、唯一うまく表示できたのは、SwingUtilities.invokeLaterを使ったときのみでした。
ただしデータがマップされた後なので全く意味がないのですが・・・
分かる方がいれば宜しくお願いします。
837 :2006/05/30(火) 20:36:02
自分も初心者と余り変わらないけど、自分が思うに

>>834
public static main(String[] arg)
というメソッドを持つクラスなら、なんでもクラスパスさえ指定すれば実行できる。
damepo.Ugaga はクラスであってjarファイルじゃないのでは?
damepo.Ugagaクラスはmainメソッドを持ってるんでしょ。

クラスパスってのはパッケージ名をつけたクラスの名前damepo.Ugagaのことではなく、
クラスの名前を探す基点となるフォルダかjarファイルのことだよ。この場合、damepo.jarの中を捜すようにクラスパスにdamepo.jarを指定する。
その指示が-cp damepo.jar


2の場合正しいのは
java -cp damepo.jar damepo.Ugaga
とすべきなのでは?
-cp damepo.jarってところでクラスパスを指定して、damepo.Ugagaでmainメソッドを持つクラスを指定する。



838デフォルトの名無しさん:2006/05/30(火) 20:40:40
>>833
つFatJar
839デフォルトの名無しさん:2006/05/30(火) 20:54:09
>>836
マルチスレッドの茨の道をどうぞ。
840デフォルトの名無しさん:2006/05/30(火) 21:01:43
awtスレッドの仕組みはわかってるのかな
841デフォルトの名無しさん:2006/05/30(火) 21:08:30
>839-840
よく分かっていないですね・・・orz
マルチで走らせなければならないのかなとも思ったのですが・・・

842デフォルトの名無しさん:2006/05/30(火) 21:19:11
ようはGUI使うと専用にスレッドが作られてそこにイベントがたまってくる
そしてイベントを次々に取り出して処理をする

コンポーネントの状態を変更するときはそのスレッドから行うこと
843デフォルトの名無しさん:2006/05/30(火) 21:25:21
>842
いまいち良く分かっていないのですが・・・
スレッドを使っては知らせてみたのですが・・・
スマソン
844デフォルトの名無しさん:2006/05/30(火) 21:27:06
>843
>スレッドを使っては知らせてみたのですが・・・
訂)スレッドを使って書いてみたのですが。
845 :2006/05/30(火) 21:30:59
スレッドといえば
mainの中でJFrameの派生クラスを生成するときinvokeLaterかなんかよんでSwingイベントスレッドでする必要あるの?
846デフォルトの名無しさん:2006/05/30(火) 21:51:48
>>845
Swing って
オブジェクト指向の観点からはやってはいけないことをやってるから、
使い方として示されている方法に従ったほうがいいよ
847デフォルトの名無しさん:2006/05/30(火) 21:57:49
>>845
その質問って定期的に沸いてくるな…
私、個人としては↓を信じてmainでもinvokeLaterを使って起動してる。
信じるか信じないかは自由。
Java GUIプログラミングの、とてもBasicなFAQ
http://homepage1.nifty.com/algafield/JavaGUIFaq19j.html#four3
848デフォルトの名無しさん:2006/05/30(火) 22:08:58
>>839
マルチスレッドが茨の道だというのか?
java.util.concurrentが茨の道だと?

ではなくawtマルチスレッドが茨?
ということはSwingを使えば問題なしと?

849デフォルトの名無しさん:2006/05/30(火) 22:10:46
ウィジェットのコンストラクタ実行時に自分自身への参照を
UIスレッドからアクセスできる位置にさらしているためと当て推量
850デフォルトの名無しさん:2006/05/30(火) 22:11:31
やってはいけないコードを最近記事にした@ITおわっとる
http://www.atmarkit.co.jp/fjava/rensai3/swing01/swing01.html
851デフォルトの名無しさん:2006/05/30(火) 22:20:59
>>848
マルチスレッドで対応するなら、
当然、アクセスするデータは全てスレッドセーフにしなきゃならん。
間違いやすいし、間違っても間違ったまま実行される。
また、僅かだろうが最適化が効かずスループットも落ちる。

また、気分的に処理実行中はユーザからのUI要求を無視したいが、
厳密に言えば、すでにイベントキューにいくつかの操作要求が入っているかもしれないので、
単に、コントローラの enabled を false にしただけでは不足。

めんどい。
852デフォルトの名無しさん:2006/05/30(火) 22:34:13
>>850
何処がやってはいけないのか分らない俺ってダメだな
853デフォルトの名無しさん:2006/05/30(火) 22:41:21
>>852
俺漏れもw
854デフォルトの名無しさん:2006/05/30(火) 22:46:42
pack()を使う場合の話だろ

pack()でコンポーネントの最適なサイズを得るために
toolkit()を呼び出して、コンポーネントに対応するFontを実デバイスに貼り付けてデバイス座標系のサイズを得ようとするけど
mainを実行してるスレッドに居る間にはtoolkit()にピアーが張り付かない

swingがLWなコンポーネントなのが原因だよ
昔自分でLWなコンポーネント書いて見て解った
855デフォルトの名無しさん:2006/05/30(火) 22:54:23
awtスレッドでVisibleセットしてないとかもだな
また、ウインドウサイズをsetSizeできめるのは環境依存するとか
856デフォルトの名無しさん:2006/05/30(火) 22:57:40
Sun なんぞが言うことなんて信じないさ。
857デフォルトの名無しさん:2006/05/30(火) 23:02:27
議論は別のところでやろうね
858デフォルトの名無しさん:2006/05/31(水) 08:30:50
てかJavaもSunももう完全に落ち目だろ。
859デフォルトの名無しさん:2006/05/31(水) 08:38:52
暗黙の御作法が多い仕様やライブラリは糞
860デフォルトの名無しさん:2006/05/31(水) 09:06:54
Sunが糞
861デフォルトの名無しさん:2006/05/31(水) 09:15:14
今のjarカオス状態を作り出したのはJakartaじゃまいか。
862デフォルトの名無しさん:2006/05/31(水) 10:53:00
はじめまして、アプレットで表示したデータを印刷したいのですが、
参考になるサイトなどあったら、教えていただけませんか?
よろしくおねがいします
863デフォルトの名無しさん:2006/05/31(水) 11:18:45
アプレットはセキュリティのために印刷が制限されるわけだが本当にアプレットが必要なの?
アプリケーションやWebStartじゃ駄目なの?
864デフォルトの名無しさん:2006/05/31(水) 12:40:00
865デフォルトの名無しさん :2006/05/31(水) 14:12:39
目的:JREバージョン1.4.2_01を使ってアプレットをIEで動かしたいので
   指定バージョンのJREがインストールされていないときに
   自動インストールしたい。
困ったこと:1.5.0が入っていると自動インストールがされない

HTMLコンバータで(下参考URL)
ttp://java.sun.com/j2se/1.5.0/ja/docs/ja/guide/plugin/developer_guide/html_converter_more.html
「指定のバージョンがない場合はインストールするようにする」ようにしたんですが
1.5.0がすでに入っていると、そのままアプレットが起動してしまいます。
解決方法ありませんでしょうか??
866JAVA子:2006/05/31(水) 14:13:15
こんにちは。今Webアプリを作っているのですが、検索のところで、大文字小文字の区別をしないで、
検索したいのですが、どのようにしたらいいでしょうか。。。
たとえばJr(Jは日本語で書いたJ、rは半角英数字で書いたもの)
や、普通にJとかいたら、Jのものもjのものも結果としてとってきたいのですが。。よろしくお願いします。
867デフォルトの名無しさん:2006/05/31(水) 14:34:20
大文字小文字?全角半角の間違いか?
868JAVA子:2006/05/31(水) 14:37:14
そうです、、すいません、大文字小文字の間違いです。。
869JAVA子:2006/05/31(水) 14:57:39
いや、、全角半角の間違いです、、再度すいません、、
870デフォルトの名無しさん:2006/05/31(水) 15:09:09
871デフォルトの名無しさん:2006/05/31(水) 15:39:44
しかしJavaはホント、日本語のことなんか考えてないよな。
native2asciiって何だよ。うんこ。
872デフォルトの名無しさん:2006/05/31(水) 22:02:18
>>865
なんで1.4.2固定が必要なんだ?
873デフォルトの名無しさん:2006/05/31(水) 22:29:20
>>865
古いJREには深刻なセキュリティホールが見つかっています。
JREのマイナーバージョンに依存しないようにすべきです。

仮に古いJREのインストールが出来るとして、
それがセキュリティホールを作る行為になるという認識はありますか?
874デフォルトの名無しさん:2006/05/31(水) 22:34:07
>>861
WindowsでもDLL Hellはあるわけだから
動的に読み込める仕組みがある限り
ある意味カオスになるのは仕方がない。
875デフォルトの名無しさん:2006/05/31(水) 22:43:46
>>874
前例があったとしても後発の規格が同じ失敗を繰り返すってのは
間抜けだよなあ。JSR-277で少しましになるんだろうかな。
876デフォルトの名無しさん:2006/05/31(水) 23:11:56
>>871
native2ascii使わなくても良い方法があるんだが
877デフォルトの名無しさん:2006/05/31(水) 23:13:06
>>874
まて>>861の釣りに乗せられるな。
JakartaのJARがカオスだと?
そんな>>861にはFatJarでも使わせておけばいい。

もっとましなやりかたはApache Mavenを使うことだが。

878デフォルトの名無しさん:2006/05/31(水) 23:34:31
最近Javaをはじめたんだが、質問いいだろうか?

JDBCで決まり文句のように、
ODBCを利用するドライバを初期化するのに、
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

というのを見るので、調べてみたら
new sun.jdbc.odbc.JdbcOdbcDriver();

と、書くのと等価らしいと言う事がわかった。
どっちもJdbcOdbcDriverクラスのインスタンス作っている
のはバカな俺でもわかるんだが、
受け皿になる変数がないから、これって実行された後、
すぐにこのインスタンスはガベージコレクタで消されると考えていいよな?

となると、この処理には一見意味のないもののようにみえるんだが、
この行を消すと実行エラーになってしまう。
どの資料をみても同じ事をやっているんだが、
それに対する解説はなく、決まり文句のように使われている。
これにはいったいどんな意味があるのかがわからない。

どうかおしえてもらえるとうれしい。
879デフォルトの名無しさん:2006/05/31(水) 23:38:30
sun.jdbc.odbc.JdbcOdbcDriver.classと一緒で無いの?
ていうかクラスがロードされりゃ何でもいいんでそ?
880デフォルトの名無しさん:2006/05/31(水) 23:41:33
その、ロードされりゃあいいという理屈がわからない。
881デフォルトの名無しさん:2006/05/31(水) 23:44:19
ロードされたときに必要な処理が行われるようになってるからさ。
ロードされないと必要な処理が行われないのさ。

まあ正直汚い仕掛けに見える。
882デフォルトの名無しさん:2006/05/31(水) 23:44:57
>>878
ヒント:static initializer
883デフォルトの名無しさん:2006/05/31(水) 23:49:59
ちゃうわ、forNameってインスタンス作成か…ぼけてた?
884デフォルトの名無しさん:2006/05/31(水) 23:53:04
>>878
Javaにはスタティックイニシャライザというのがあって、
クラスがロードされたときに実行される処理を書くことができる。

例えば、以下のようなクラスがあって、
public class Hoge{
 static{
  // A何らかの初期化処理
 }
 public Hoge(){
 }
}

以下のように実行すると、
new Hoge();

以下の順番で実行される。
1. Hogeクラスのロード
2. スタティックイニシャライザの実行(上のA)
3. Hogeクラスのコンストラクタの実行

JDBCでは、JDBCドライバの実装クラスをjava.sql.DriverManagerに登録する処理を
スタティックイニシャライザで行うという仕様になっていて、
JDBCを使う側はスタティックイニシャライザが実行されるような処理を実行する必要がある。
コンパイル時にJDBCドライバを固定するなら>>879でもいいんだけど、
多くの場合Javaのコードは、JDBCドライバの実装に依存しないように書こうとするから、
コンパイル時にJDBCドライバのクラス名に依存しないように
Class#forName(String)使うね。
885デフォルトの名無しさん:2006/05/31(水) 23:59:20
いや、やっぱロードであってた…orz
886デフォルトの名無しさん:2006/06/01(木) 00:03:45
>>884
すばらしくわかりやすい解説ありがとう。
それのおかげで完全にスッキリしたわ。

スタティックイニシャライザか。
ようは、クラスのコンストラクタ?みたいなものだよな?

ちなみにその例で

new Hoge();
new Hoge();

みたいに二回連続で呼ぶと、
スタティックイニシャライザは二回よばれる?
それとも三回よばれる?
887デフォルトの名無しさん:2006/06/01(木) 00:07:56
すまん、勢いで書いた。
それくらいは自分で調べなきゃな。
スルーしてください。
888デフォルトの名無しさん:2006/06/01(木) 00:17:03
>>887
初心者でもこういう初心者は大歓迎だな。

特別サービス。
その場合、staticイニシャライザは1度しか呼ばれない。
889デフォルトの名無しさん:2006/06/01(木) 00:24:54
すいませんがjava3Dで雲とか炎とかってどう表現すればいいのでしょうか
他のプログラムだとparticleにbillboardを貼るとかあるんですが
particleクラスみたいなのが無いのでよくわかりません
890デフォルトの名無しさん:2006/06/01(木) 00:56:12
>>866
>こんにちは。今Webアプリを作っているのですが、検索のところで、大文字小文字の区別をしないで、
>検索したいのですが、どのようにしたらいいでしょうか。。。

一番簡単なのは、正規表現を使う方法。

import java.util.regex.*;
public class RegexSearch1 {
public static void main(String[] args) {
String searchTarget = "cJavaじゃヴぁJAVA77jAVaScdojaVariable";
String searchTextRegexText = "[jJjJ][aAaA][vVvV][aAaA]";
Pattern p = Pattern.compile(searchTextRegexText);

Matcher m = p.matcher(searchTarget);
while (m.find()) {
System.out.println(m.group());
}
}
}
891デフォルトの名無しさん:2006/06/01(木) 02:14:03
インスタンスは参照がなくなったら回収される。
クラスは、それをロードしたクラスローダが回収されない限り、アンロードされない。
ゆえに、大抵はスタティックイニシャライザは1回しか実行されない。

昔の初版の言語仕様だとアンロードされちゃったりしたんで、
シングルトンの実現とか面倒だったらしい。
892デフォルトの名無しさん:2006/06/01(木) 02:24:08
>>879
5.0 では、クラスリテラルを使っただけではクラスはロードされない。
Java のドキュメントの「互換性」を参照
893デフォルトの名無しさん:2006/06/01(木) 07:32:30
JMenuを選択できないようにするにはどのようなメソッドを使えば良いのでしょうか。
894デフォルトの名無しさん:2006/06/01(木) 07:36:31
すいません、自己解決しました。
895デフォルトの名無しさん:2006/06/01(木) 10:42:44
http://java.sun.com/j2se/1.3/ja/docs/ja/api/
http://java.sun.com/j2se/1.4/ja/docs/ja/api/
http://java.sun.com/j2se/1.5.0/ja/docs/ja/api/

これらのドキュメントを
一括ダウンロードできるようにしてあるところは
ないのでしょうか?
wget とか使わないとダメですか?
896デフォルトの名無しさん:2006/06/01(木) 10:53:35
オレ的チラシの裏。
HashMapとHashtable、putはどっちが速いのか気になって試してみた。
PenM1.4GHz、RAM1GB、Win用Java5.0-upd6、Eclipse3.1.2上にて。

テストロジックA:
  HashMap hMap = new HashMap();
  for(int i=0; i<1000000; i++){
   String key = new String(String.valueOf(i));
   String value = new String(String.valueOf(i));
   hMap.put(key, value);
  }

テストロジックB:
  Hashtable hTable = new Hashtable();
  for(int i=0; i<1000000; i++){
   String key = new String(String.valueOf(i));
   String value = new String(String.valueOf(i));
   hTable.put(key, value);
  }

 10万回: A:0.712秒 B:0.510秒
 50万回: A:3.415秒 B:2.334秒
100万回: A:6.279秒 B:6.539秒
150万回: A:9.724秒 B:6.870秒
200万回:HDDスワップするんでやめた。

それぞれ複数回測定。100万回だと、微妙にHashMapが速いけど、
概ねHashtableが高速みたい。。。
897デフォルトの名無しさん:2006/06/01(木) 11:02:24
>>895
各SDKのダウンロードページからzip形式のファイルがダウンロードできる。
898初心者:2006/06/01(木) 11:14:20
アプレットでの文字表示ができません。アプレットだけは映るのですが、文字が表示されません。自分はwindows Internet Explorerを使っていて、その中のJavaコンソールを見ると
java.lang.ClassNotFoundException: TestApplet
at com/ms/vm/loader/URLClassLoader.loasClass
at com/ms/vm/loader/URLClassLoader.loasClass
at com/ms/applet/AppletPanel.securedClassLode
at com/ms/applet/AppletPanel.processSentEvent
at com/ms/applet/AppletPanel.processSentEvent
at com/ms/applet/AppletPanel.run
at java/lang/Thread.run
とでているのですが、
classファイルの保存場所がわるいのでしょうか、もしかして、環境設定がわるいのでしょうか?
どうすればアプレットに文字表示ができますか?

899デフォルトの名無しさん:2006/06/01(木) 11:19:39
すいません初心者の質問なんですけど

つい最近Javaのプログラミングの勉強を始めました。
で、今日からeclipse(Ver3.1)を使ってみようとダウソしました。
今まで作ったプログラムをeclipseで使えるようにするにはどうしたらいいのでしょうか?
初歩ですいませんがお願いします
900デフォルトの名無しさん:2006/06/01(木) 11:34:35
>>899
eclipseスレ行け
901デフォルトの名無しさん:2006/06/01(木) 12:31:49
>>897
Thanks!
902デフォルトの名無しさん:2006/06/01(木) 12:36:17
JScrollPaneにJTextAreaを組み込んだようなもので、
テキストエリアのように表示文字の編集ができないような
ものを作るにはJTextAreaの変わりに何を埋め込めば良いでしょうか
903デフォルトの名無しさん:2006/06/01(木) 13:30:11
JTextAreaをsetEditable(false)すればいいんじゃないの?
904デフォルトの名無しさん:2006/06/01(木) 14:07:03
JSP⇔Servlet間でのパラメータのやりとりに関して質問です。
1.入力用ページ(JSP) ttp://localhost/app/input.jsp/
2.チェックページ(サーブレット) ttp://localhost/app/servlet/check
3.入力成功ページ(JSP) ttp://localhost/app/success.jsp/

ページ構成は上記のようになっています。
この時、
1で入力されたパラメータ(idとする)を2に送って、
・パラメータがnullだったら、エラーメッセージを付与し1に戻す
・パラメータがnullじゃなかったら、送られてきたパラメータを付与し3に移行する
ということをやりたいと思い、
ttp://www.atmarkit.co.jp/fjava/rensai2/jspservlet13/jspsevlet13_1.html
ここを参考にしながら2のチェックページで

RequestDispatcher dispatch;
String RetURL;// 戻りURL

String ID = request.getParameter( "id" );
if( ID == null ) RetURL = "/input.jsp";
else RetURL = "/success.jsp";

dispatch = context.getRequestDispatcher( RetURL );
dispatch.forward( request, response );

このようなコードを書いた所、JSPへ遷移はしてくれるのですが
URLのアドレスがttp://localhost/app/servlet/checkのままになってしまいます

アドレスを遷移先アドレスにするにはどうすればいいのか、
御教授の程、お願い致します。
ちなみに、response.sendRedirect( RetURL );
とした所、アドレス表記は変わりましたがパラメータは引き継がれませんでした・・・。
905デフォルトの名無しさん:2006/06/01(木) 14:08:09
>>886
> ようは、クラスのコンストラクタ?みたいなものだよな?
違う。一回しか実行されないコンストラクタみたいなもん
staticなんだから、一度作ったらわざわざ複数のインスタンスに
遭わせて実行する必要もなく、複数のインスタンスで共有される。
906デフォルトの名無しさん:2006/06/01(木) 14:10:39
>>896
Genericsを使った場合は?
907デフォルトの名無しさん:2006/06/01(木) 14:44:54
複数回やって平均とらないと…

スレッドのCPUタイムってとれへんのかなぁ?
908デフォルトの名無しさん:2006/06/01(木) 16:17:45
LinkHashMap, TreeMapと比較した場合は?
909デフォルトの名無しさん:2006/06/01(木) 16:26:01
自分でやれやハゲ
910デフォルトの名無しさん:2006/06/01(木) 17:05:07
そもそもnew Stringする意味は?
911デフォルトの名無しさん:2006/06/01(木) 17:13:45
>>910
JavaのStringが何であるかをよく知らないんだろう。
912デフォルトの名無しさん:2006/06/01(木) 18:14:45
>>911
それでもhashのkeyの方をnew Stringする意味は無い
913デフォルトの名無しさん:2006/06/01(木) 18:32:36
たしかに。全くない。
914デフォルトの名無しさん:2006/06/01(木) 19:54:38
Mapのkeyオブジェクトのクラスは
必ずComparableインタフェースを実装しなければ
ならないことから(ry
915デフォルトの名無しさん:2006/06/01(木) 20:17:56
一つのアプリケーションで、複数のスレッドを動かした場合と、
一つのスレッドを有するアプリケーションを、同じ数だけ動かした場合、
使用するメモリー量や、処理速度は変化すると思いますか?
916デフォルトの名無しさん:2006/06/01(木) 20:20:12
Javaの場合は思いっきり変化する
917デフォルトの名無しさん:2006/06/01(木) 20:31:19
前者の方が圧倒的に速い
918デフォルトの名無しさん:2006/06/01(木) 20:44:04
Imageに普遍性を持たせる上手な方法はありませんでしょうか?
自らのGraphics等のdrawメソッドは持たせず、他へのレンダリングは可能なクラスを作りたいのです。
標準APIの書き込みメソッドの引数に使える情報は一切制限したくないので
単純にgetGraphicsで例外みたいなことはできません。
919デフォルトの名無しさん:2006/06/01(木) 20:54:54
>>915
OSによって違うかも知れない。
但しアプリを複数動かした方がメモリはより多く使うことになると思う。

たとえば Linux の場合、OSの提供するマルチスレッドに対応した
Java VM で Java プログラムからスレッドを1つ作成するとプロセスが
clone() で一つ増えるので Java VM をそのまま二つ動かした時と
似たような状態になる。違いはメモリなどの資源を共有しているか
どうかだ。共有している分だけ資源の消費は少ないが、速度は
Java VM を同じプロセス数だけ動かしたのと同じになる。
920デフォルトの名無しさん:2006/06/01(木) 21:01:03
>>915
プロセス管理ができるJava6が登場するまで待て
921デフォルトの名無しさん:2006/06/01(木) 21:01:22
>>918
普遍性? 不変の間違い?
922デフォルトの名無しさん:2006/06/01(木) 21:03:35
>>921
失礼しました。そのとおり不変性です。
923デフォルトの名無しさん:2006/06/01(木) 21:04:30
すみません、質問させてください。
コンピュータ端末に組み込まれたアプレットに対し、ソケット通信で
非同期データ発生を通知するという処理をJavaで行おうとしています。
で、私のソケット通信のイメージなのですが、サーバー側にクライアントから
リクエスト処理があって、サーバー側がレスポンスを返すという認識でいるのですが、
上記の処理で、アプレットがクライアントで、非同期データを通知する側を
サーバーと考えた場合、これはクライアントから処理を送っていないから、
サーバーからクライアントへの一方通行の処理になりますよね。
こんな処理は可能なのでしょうか?イメージがわかないので困り果てています。
924923:2006/06/01(木) 21:21:26
間違えましたorz

誤:これはクライアントから処理を送っていないから
正:これはクライアントからリクエストを送っていないから
925デフォルトの名無しさん:2006/06/01(木) 23:14:46
>>904
まずJSP以前にHTTPを勉強したほうがいいかもしれない。
フォワードとリダイレクトの違いをしるのはJava以前の話。
926デフォルトの名無しさん:2006/06/01(木) 23:21:59
JTableのコンストラクタ
JTable(Vector rowData, Vector columnNames)
のVectorをどのような形にすればよいかわかりません。
ご存知の方はいらっしゃいませんか?
927デフォルトの名無しさん:2006/06/01(木) 23:26:03
>>922
Imageを継承するか委譲するか集約する。
そしてそのクラスをfinalにする。
不変にしたいデータを扱うための
インスタンスフィールドはすべてprivate finalにする。
必ずそれらのインスタンスフィールドを初期化するコンストラクタ
を用意する。
不変にすべきなので値を変更するsetterメソッドは一切作らない。
getterメソッドのみを作る。
equals()を実装するときは必ず、数学の法則 A=BならばB=A,
A=B, B=CならばA=Cが成り立つようにせよ。
hashCode(), Comparable#compareTo(T)を実装するときも同様。
Clone()は実装する必要がない。
928デフォルトの名無しさん:2006/06/01(木) 23:27:11
>>923
その文からは目的が読みとりにくいなあ。
何がしたいかわからないので質問に
答えるのが面倒くさい
929デフォルトの名無しさん:2006/06/02(金) 00:34:21
>>927
あからさまに最近Effective Java読みました的痛いレスだな。
集約+防御的コピーで十分不変性は保たれる。Cloneする必要のないの真逆だ。
930デフォルトの名無しさん:2006/06/02(金) 00:52:02
宿題スレにも書いてきて重複しますが

【問題】任意の年月日に任意の日数(特に制限はない)を加算した年月日を求めなさい。
なおデータ入力はコマンドライン引数でおこないます。
(入力例・>java class 2006年6月1日 30日)
※うるう年も考えて作ります。

といった問題が解けなくて、困っています
アドバイス等よろしくお願いします。
931デフォルトの名無しさん:2006/06/02(金) 01:08:03
携帯(ドコモ)の暗証番号を忘れたときなんかは、PCのソフトなどで自分で読み取ったり出来るんですか?
932デフォルトの名無しさん:2006/06/02(金) 02:11:04
この野朗ども
ちょっと俺がサボってる間に着々と勉強しやがって
なめるんじゃないよ
おまえらが亀なら俺はウサギだ
ちょっと昼寝してたがブッちぎりで追い抜かすからな。
933デフォルトの名無しさん:2006/06/02(金) 04:32:09
>>930
基本的にマルチ野郎には回答しない
934923:2006/06/02(金) 05:46:33
>>928

私自身の今のソケット通信のイメージとしては
クライアント → サーバー → クライアント
なのですが、
サーバー → クライアント
という流れもありうるのか?
ということを聞きたかったんです。
いろいろなサイトを調べてみたんですけど、
クライアント → サーバー → クライアント
という流れの解説しかなかったもので。
935デフォルトの名無しさん:2006/06/02(金) 06:36:14
>>934
サーバからデータを送りたければ勝手に送ればよかろう。ただ、

送り先もわからず送れるのか、とか
いつ来るかもわからないデータをどうやって待つのか、とか

考えなかったのか?普通はこういう問題があるから
クライアントからメッセージを投げてサーバに答えてもらうわけだが。
936デフォルトの名無しさん:2006/06/02(金) 09:35:02
>>930
以下の二つのクラスのドキュメントを読め。

java.text.SimpleDateFormat
java.util.Calendar

それでも分からない場合は留年してやり直せ。その方がオマエのためになる。
937デフォルトの名無しさん:2006/06/02(金) 10:25:50
今、文字列と数値のソートプログラムを作りたいのですが、Arrays.sort()を使い、文字列と数値
の2つに分けてソートしているのですが、これを一つにまとめて昇順にソートするやり方を探してるの
ですが見つかりません。
public static void sort(Object[] x,int fromIndex,int toIndex,Comparator c)
を使ったらできるみたいな事を探してはみたのですが使い方がいまいちわかりません。
どなたかわかる方いらっしゃいましたら指摘お願いします。
938デフォルトの名無しさん:2006/06/02(金) 10:35:12
ネットワークプログラミングについてですが
Windows Media Encoder のデータを丸投げするリレーサーバーを構築しているのですが
(SocketChannelを使用)

Perlで組んだときと、Javaで組んだときとで受信するデータが異なってしまいます

やっている処理
ソケット受け取ったデータの先頭2バイトを調べる
データヘッダ($D) であれば さらに2バイト取得し、データサイズを取得
そのデータサイズ分のバイト数をさらに取得

まったく同じようにデータ抜き出しルーチンは組んだのですが、
Perl では ヘッダー$D データサイズ 1451-2 が連続して受信できるのに対して
JavaのSocketChannelでは
$D 145
$D 1451
$h 45643
$D 1451
$!) 35128
$D 1451
$P 2309
$D 1451
と、途中にゴミデータのようなものがはいってしまいます
なぜか分かる方いらっしゃいますでしょうか?
939デフォルトの名無しさん:2006/06/02(金) 10:35:21
>>937
>一つにまとめて昇順にソートする
の定義は?
940デフォルトの名無しさん:2006/06/02(金) 10:40:02
>>937
数値も文字列にしてソートするんじゃダメなのか?
自分ルールを適用したいんなら、Comparatorなりを書く必要がある。
Comparatorはインターフェースで、2つの値を比較して結果を返すだけのモノ。 これを実装してやりゃいい。
そのsortメソッドだが、fromIndex, toIndexはいらないんじゃ?
Comparator c に比較ルールを実装したComparatorを指定すりゃいい。
941デフォルトの名無しさん:2006/06/02(金) 10:41:18
>>939
定義とは型の定義のことでしょうか??
そうならint型とstring型でやろうと思ってます。

初心者ですみません。
942デフォルトの名無しさん:2006/06/02(金) 10:45:08
文字列と数ってのは、
123, "15", 51, 765, "573"
みたいに混ざった集合だとおもうんだが、これを整列するとどう並ぶべきなのか
がここで訪ねられている「定義」

たとえば、「文字列を数値と解釈し値が小さい方から大きい方へ」なら
"15", 51, 123, "573", 765
になる。
943デフォルトの名無しさん:2006/06/02(金) 10:45:56
>>940
数値は数値として分けてソートしたいのですが・・・
1つにまとめることはやっぱり無理でしょうか?
944デフォルトの名無しさん:2006/06/02(金) 10:49:53
>>943
数値を先に表示したいのですが
51,123,765,"15","573"
と表示できたらいいのですが。
945デフォルトの名無しさん:2006/06/02(金) 10:50:50
よくわからんが、intとStringを持つインスタンスの配列ってこと?
つまり、フィールドは分かれてる。
それとも、まざってるデータをどうにかってことか?
946デフォルトの名無しさん:2006/06/02(金) 10:53:02
instanceof で順番決めりゃいいんじゃね?
947デフォルトの名無しさん:2006/06/02(金) 10:55:42
混ざっているデータを数値優先でソートしたいのですが。
配列に123, "15", 51, 765, "573"いれましたら
出力で51,123,765,"15","573"と表示させたいのですが。
948デフォルトの名無しさん:2006/06/02(金) 11:02:55
基本的に数値ソートと文字ソート(辞書順)はちがうから、どちらかにしないと。
ベタにやるなら、数値データと文字データを分けて抽出して、それぞれに
sortしてあげて、書き出すときにつなげてあげるとかかな。
949デフォルトの名無しさん:2006/06/02(金) 11:05:57
>>948
そうですか〜。がんばってそのやり方で試してみます。
みなさんご指導ありがとうございます。
950デフォルトの名無しさん:2006/06/02(金) 11:52:59
>>923
そもそもクライアント在りきではじめないと結果をどこに返すべきかわからないよ
サーバアプリがなぜサーバなのか考えないと、主人がいるから従者ができるんだよ

非同期で返すにしてもクライアントはつなっげぱでほっておいてサーバがそれにつなげて返すとか
最初にクライアントがサーバにつなぐべきアドレスとポート番号をかえすとか
どんな方法にしろクライアントから始まるって考えないとダメだな
951デフォルトの名無しさん:2006/06/02(金) 12:36:10
952デフォルトの名無しさん:2006/06/02(金) 12:45:54
953デフォルトの名無しさん:2006/06/02(金) 12:47:20
ミスった
>>949
>>946
954デフォルトの名無しさん:2006/06/02(金) 12:47:34
JOptionPane.showInputDialogを使い、Integer.parseIntで数字を取得しているのですが、
同じことをするために、必ず数字での入力が行われ、
他の文字が入力された場合にはエラーを表示させるにはどうしたらよいのでしょうか。
955デフォルトの名無しさん:2006/06/02(金) 13:06:31
parseIntがNumberFormatExceptionを投げるので捕まえる。
例外を入力エラー検知に使うのって行儀がよくないような気がするけど、
他に思いつかん。
956デフォルトの名無しさん:2006/06/02(金) 13:59:50
通常のjavaプログラムにおけるmain(String argv[])のargvみたいな
起動時にプログラムが受け取る引数をアプレットでも使用したいのですがどうしたらいいですか?
957デフォルトの名無しさん:2006/06/02(金) 14:02:04
あ、appletviewer hoge.html 3みたいにコマンドライン引数を受け取りたいって意味です。
958デフォルトの名無しさん:2006/06/02(金) 14:05:41
959957:2006/06/02(金) 14:43:17
いえ、htmlファイルにparamを渡すのは知っているのですが
コマンドライン引数として渡せないか、ということが気になるのです。
960デフォルトの名無しさん:2006/06/02(金) 14:50:25
言ってる意味が分かんねえよ。普通のアプレットならブラウザや appletviewer から
動くんだからどこで引数なんか指定するんだよ。
961デフォルトの名無しさん:2006/06/02(金) 14:52:40
既存の argv を使って処理する何かをそのまま使いたいのかな?
param -> split するとか、
自動的に param0, param1, param2, param3, ... -> argv にする関数とか作ったのでは不満か?
962デフォルトの名無しさん:2006/06/02(金) 14:53:23
やっぱり無理ですか?
C:java>appletviewer hoge html 3の最後の3みたいな感じにappletviewerをコマンドラインから起動するとき
引数を渡せないかと思っていたのですが。
963デフォルトの名無しさん:2006/06/02(金) 15:00:26
ある文字列が、IPアドレスまたはホスト名として有効かどうか
簡単に判断させる方法はあるでしょうか。
964デフォルトの名無しさん:2006/06/02(金) 15:03:06
>>962
場合によっては -J オプションとやらがあるみたいだが、標準じゃないっぽいな。
965デフォルトの名無しさん:2006/06/02(金) 15:51:33
例えばClass hogeを使って
h1、h2・・・といったオブジェクトを作ってArrayListに格納したいんですが
(Hoge h = new Hoge();でオブジェクトを作成し、インスタンス変数は個別のを与えてあります。)

ArrayListのadd()メソッドで追加すると、格納されたオブジェクトを区別する事は出来るんでしょうか?

つまり、名簿のように同種のオブジェクトをいくつか作って、それをArrayListに格納していつでも追加/削除出来るようにしたいのですが・・・
966デフォルトの名無しさん:2006/06/02(金) 16:09:08
>>963
java.net.InetAddress#getByName(String) でどうだろう?
967デフォルトの名無しさん:2006/06/02(金) 17:52:48
正規表現を使ってargsへの入力、
0001 34 0002 8 0003 72 ‥
のような入力を定義づけるにはどうしたらいいでしょうか?
交互に4桁の数が必ず入ります。その次の数字の桁数は自由です。
よろしくお願いします。
968967:2006/06/02(金) 18:01:33
失礼。事故解決しました。
969デフォルトの名無しさん:2006/06/02(金) 18:11:35
保険に入ってたのか
970デフォルトの名無しさん:2006/06/02(金) 18:11:50
ttp://www.hyuki.com/techinfo/singleton.html#uniqueinstancebyclass

のSingletonのサブクラス化を勉強させていただいているのですが、
(2)の方法にですと、例で言えば ScreenDisplay や HyperDisplay を
getInstance 経由でなく直接 new できてしまい、さりとて
ScreenDisplay のコンストラクタをアクセス制限すると
getInstance 内でのインスタンス生成ができないような気がするのですが、
何か理解が間違っているのでしょうか?
971デフォルトの名無しさん:2006/06/02(金) 18:14:40
>>970
とりあえず試せば?
972デフォルトの名無しさん:2006/06/02(金) 18:17:56
現在オンライン試験ステムを作っているのですが、
ハッシュに格納していた解答とデータベースから引っ張ってきた正解を判定する際、
for文でまわしてやっているのですが、問題数が増えると何故か
NullPointerExceptionが出て、うまく表示できません。
エクリプスで1行づつでバックしていくとうまく表示されるし、
問題数を減らしてもうまくいきます。
なにかいい方法があったら教えてください。
よろしくお願いします。
Tomcat5.0.28 eclips3.1 dell inspiron2200
973デフォルトの名無しさん:2006/06/02(金) 18:23:47
>>972
ソース晒せば?
974デフォルトの名無しさん:2006/06/02(金) 18:24:40
>>972
どこでぬるぽが出ているかは特定出来てるの? 出来てなければまずそれをやれ。
975デフォルトの名無しさん:2006/06/02(金) 18:35:20
>>970
protectedなのでScreenDisplayやHyperDisplayの中でなければnew Display()はは呼べない
もちろんScreenDisplayやHyperDisplayのコンストラクタは他のクラス(ここではMain)からは呼べない
976デフォルトの名無しさん:2006/06/02(金) 18:35:38
ああ、new はできるが一度きりの new になるのですね...失礼しました。
977デフォルトの名無しさん:2006/06/02(金) 18:36:53
>>975
被ってしまいました。すみません。
むむ、Main 内から new は呼べるのですが、一度目は OK, 二度目は
Runtime 例外となりました。
978デフォルトの名無しさん:2006/06/02(金) 18:43:52
>>974
一行ずつデバックしていくとぬるぽがでないので、
特定ができません。
多分判定するfor文での処理が多すぎるためにこうなっているのだと思います。
979デフォルトの名無しさん:2006/06/02(金) 18:48:44
Java Servlet についでの質問です。
Servletから送るHTMLに、JavaScriptは使えないのでしょうか?
たとえば、
private void htmlHeader(PrintWriter out){
out.println("<HTML>");
out.println("<HEAD>");
out.println("<title>Movie Database Site</title>");
out.println("<script language="JavaScript">");
とした場合、"JavaScript"が "" で囲むため、エラーとなります。
また、
out.println("var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)");
out.println("if (a[i].indexOf(\"#\")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}");
としたときに、indexOf は illegal character となります。

Javaに奮闘中の初心者です。
よろしくお願いします。
980デフォルトの名無しさん:2006/06/02(金) 18:50:03
アプレットとかサーブレットとか良くわからないんだけど
誰か詳しく教えて!
981965:2006/06/02(金) 19:04:51
ArrayListにオブジェクト型の配列からオブジェクトをコピーすればいいのかなと思い、
以下のように作ったわけですが、なんか無駄な事?やってる気がしてしょうがないです・・・。

public class seitoTestDrive {
private static int num = 0;
public static void main(String [] args) {
ArrayList gakusei = new ArrayList();
seito[] Student = new seito[10];

Student[num] = new seito();
Student[num].tokusei = "従順";
gakusei.add(Student[num]);
num++;
Student[num] = new seito();
Student[num].tokusei = "普通";
gakusei.add(Student[num]);

int size = gakusei.size();

for(int x = 0 ; x < size ; x++){
System.out.println("学生 " + x + " is " + gakusei.get(x));
Student[x].showtokusei();
}
}
}
やりたいことは、
・このように個々のインスタンス変数をもつオブジェクトをArrayListかLinkedListで管理する
・削除や追加機能を持たせる。
なんですが、入力した内容をオブジェクト名としてオブジェクトは作れないんですかね・・・
ArrayListのadd()はオブジェクト名を渡すんですよね、、、

とりあえず、もう少し整理してみます。
982デフォルトの名無しさん:2006/06/02(金) 19:26:36
>>979
JSPにJavaScript書けば終わり。相当古い入門書使ってるだろ。
一応以下で動くと思うけど。
  out.println("<script language="JavaScript">");
  ↓
  out.println("<script language=\"JavaScript\">");

  out.println("if (a[i].indexOf(\"#\")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}");
  ↓
  out.println("if (a[i].indexOf(\\\"#\\\")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}");

983デフォルトの名無しさん:2006/06/02(金) 19:34:43
out.println("if (a[i].indexOf(\"#\")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}");
はそのままでいいんじゃないか?
indexOf(\"#\")じゃ無くてindexOf("#")にしたいんだろ?
984デフォルトの名無しさん:2006/06/02(金) 20:59:49
JSPの出力をメモリにとっておくことはできませんか?
Velocity使えば簡単かと思いますが、得体の知れないライブラリ扱いされるので使えません。
985デフォルトの名無しさん:2006/06/02(金) 21:03:31
質問です。
Javamailを使ってメール送信のためのアプリケーション
を作成しようと思っているのですが、SMTPにパスワードを
送信するところがよくわからんのです。
↓ここを見て作ってるのですが、
ttp://www.fk.urban.ne.jp/home/kishida/kouza/old/javaml.html
どこをどういじくったらいいのでしょう?教えてください。
986デフォルトの名無しさん:2006/06/02(金) 21:07:03
>>983
あーほんとだ。すまない。
987デフォルトの名無しさん:2006/06/02(金) 22:33:21
流れ切る様で悪いが、なんでみんな未来安価になってんの?
988デフォルトの名無しさん:2006/06/02(金) 22:36:52
未来安価になんてなってない。
ローカルのログが壊れてるんだろ。再読み込みしてみろ。
989デフォルトの名無しさん:2006/06/02(金) 22:43:39
質問をさせてください。
JDKを使っていて、コンパイラしたクラスを実行しようとしても、ほとんどのソースの場合に
Exception in thread"main"java.lang.NoSuchMethodError:main
というエラーが出ます。
恥ずかしながら、ソースの意味すら理解できていない初心者なのですが、コピペなのでソースはあっていると思います。
どうか原因がわかる方、教えてください。
990デフォルトの名無しさん:2006/06/02(金) 22:48:47
>>989
mainが無いんだろうな
991デフォルトの名無しさん:2006/06/02(金) 23:25:37
>>990例えばこのソースだったら、どこを改変したらいいか判りますか?

import java.applet.Applet;
import java.awt.Graphics;

public class jlearn01 extends Applet{
public void paint(Graphics g) {
g.drawString("人のよい所をどんどん見つけよう! by ちゃいちゃん", 50, 30);
}
}
992デフォルトの名無しさん:2006/06/02(金) 23:29:03
>>991
それアプレットじゃん
java jlearn01 とコンソールから打つ代わりに
appletviewerを使いなさい
993デフォルトの名無しさん:2006/06/02(金) 23:29:48
>>991
そりゃAppletじゃ。まずはこの辺でも読んでみ。
ttp://www.hellohiro.com/applet.htm
994989:2006/06/02(金) 23:33:29
すいません、根本的にやってることがおかしいと気付きました。
大馬鹿ですいませんでした。
995デフォルトの名無しさん:2006/06/03(土) 00:01:10
次スレ
【初心者】Java質問・相談スレッド86【大歓迎】
http://pc8.2ch.net/test/read.cgi/tech/1149260440/
996デフォルトの名無しさん:2006/06/03(土) 00:22:46
では梅
997デフォルトの名無しさん:2006/06/03(土) 00:47:49
梅岡
998デフォルトの名無しさん:2006/06/03(土) 01:02:31
999デフォルトの名無しさん:2006/06/03(土) 01:04:00
竹岡?
1000デフォルトの名無しさん:2006/06/03(土) 01:04:19
ぷりけつさん
10011001
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。