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

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

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

1 :Javaってなんぼじゃ!おりゃー:03/07/31 21:27
☆★☆こんなメッセージが出たら >>2 へ☆★☆
『'javac' は、内部コマンドまたは外部コマンド、
 操作可能なプログラムまたはバッ ファイルとして認識されていません。』
『Exception in thread "main" java.lang.NoClassDefFoundError: Hello』

>>2-3 初心者によくある質問と回答・他のFAQサイトへのリンク
>>4  JDKの配布元とAPIドキュメントへのリンク
>>5-6 過去スレの一覧
>>7-10 関連スレ
>>11 2ちゃんねる外のJavaサイト・無料の開発環境の配布場所
(諸般の事情でずれた場合は >>2-20 )

Google で検索 ⇒ http://www.google.co.jp/
JavaFAQ で探す ⇒ http://www.gimlay.org/~javafaq/javafaq.html
ご要望によりじゃばこサイト ⇒ http://www.javaco.org/
■JavaScriptの質問■はWeb製作板 ⇒ http://pc3.2ch.net/hp/
  または「JavaScript デス」スレへ⇒
http://pc2.2ch.net/test/read.cgi/tech/1052273054/

パソコンの基本操作に関しては、PC初心者板へどうぞ ⇒ http://pc.2ch.net/pcqa/

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

基本的に sage 進行でおねがいします。また煽り厨は放置でお願いします。
※初心者なんでよろしくです。

2 :デフォルトの名無しさん:03/07/31 21:28
Q. javac コマンドを実行したときに、
『コマンドまたはファイル名が違います』や
『'javac' は、内部コマンドまたは外部コマンド、
操作可能なプログラムまたはバッチ ファイルとして認識されていません。』
と表示されてコンパイルできません。
A. javac.exeへのPATHが通っていません。
http://java.sun.com/j2se/1.4.1/ja/install-windows.html
を良く読んで、javac.exe のあるディレクトリ(例: C:\j2sdk1.4.1_01\bin )のパスを
環境変数PATHに追加してください。 その後、
Windows98/MEの場合はOSを再起動、
Windows2000/XPの場合はコマンドプロンプトを立ち上げなおしてください。
設定したパスが正しければ、javacが使えるようになります。
それでも同じエラーが出る場合は、設定した値が間違っています。
よく見直してください。

Q. javac Hello.java でコンパイルはできるのですが、
java Hello を実行しようとすると
『Exception in thread "main" java.lang.NoClassDefFoundError: Hello』
と表示されて実行できません。
A. カレントディレクトリ(.)がクラスパス(classpath)に含まれていません。
コマンドプロンプトで、
set CLASSPATH=%CLASSPATH%;.
と設定する。最後の「;」と「.」を見落とさないように!
または、
http://www.gimlay.org/~javafaq/S004.html#S004-02
を読んでカレントディレクトリ「.」を環境変数CLASSPATHに追加してください。

クラスパスとはなにか(JavaFAQ 基礎知識)
http://www.gimlay.org/~javafaq/S004.html

3 :デフォルトの名無しさん:03/07/31 21:28
Q. Javaのインストール方法、パスや環境変数の設定方法が分かりません。
A: Java(TM) 2 SDK インストールガイド
http://java.sun.com/j2se/1.4.1/ja/install.html
http://java.sun.com/j2se/1.4.1/ja/install-windows.html

Q: クラスの使い方が分かりません。
A: Java 2 プラットフォーム API 仕様
http://java.sun.com/j2se/1.4/ja/docs/ja/api/index.html

Q: SDKの仕様や、Javaの使い方、コマンドの使い方を教えて下さい。
A: Java(TM) 2 SDK ドキュメント
http://java.sun.com/j2se/1.4/ja/docs/ja/index.html

Q: Javaの言語仕様が知りたいです。
A: Java言語規定
http://www.y-adagio.com/public/standards/tr_javalang/index.htm
http://java.sun.com/docs/books/jls/second_edition/html/j.title.doc.html

Q: 「僕以外の人も、同じ疑問を持ったはず」と思えるような質問があります。
A: Java House ML Topics / Java FAQ / Java Tips
http://java-house.jp/ml/topics/
http://www.gimlay.org/~javafaq/
http://www.javaworld.com/columns/jw-tips-index.shtml

このほかのFAQ(良くある質問とその回答)はこちら↓をご覧ください。
http://www.gimlay.org/~javafaq/javafaq.html

4 :デフォルトの名無しさん:03/07/31 21:29
■■■ JavaのコンパイラとAPI リファレンス ■■■
【Sun J2SE SDK 1.3】
http://java.sun.com/j2se/1.3/ja/download.html
http://java.sun.com/j2se/1.3/ja/docs/ja/api/index.html

【Sun J2SE SDK 1.4】
http://java.sun.com/j2se/1.4/ja/download.html
http://java.sun.com/j2se/1.4/ja/docs/ja/api/index.html

【Sun J2SE SDK 1.4.1】
http://java.sun.com/j2se/1.4.1/ja/download.html
http://java.sun.com/j2se/1.4/ja/docs/ja/api/index.html

【IBM J2SE SDK 1.1/1.3】 (要ユーザ登録)
http://www-105.ibm.com/developerworks/tools.nsf/dw/java-devkits-byname?OpenDocument&Count=100

5 :デフォルトの名無しさん:03/07/31 21:29
JAVA厨房
http://piza.2ch.net/tech/kako/966/966391052.html
Java相談室
1 http://piza.2ch.net/tech/kako/971/971960169.html
2 http://piza.2ch.net/tech/kako/980/980858322.html
3 http://piza2.2ch.net/tech/kako/994/994150280.html
4 http://pc.2ch.net/tech/kako/997/997791189.html
5 http://pc.2ch.net/tech/kako/1003/10035/1003567552.html

ネタ心者歓迎!今更ながらにJavaを学ぼう!
1 http://piza.2ch.net/tech/kako/981/981424252.html
2 http://pc.2ch.net/tech/kako/993/993358225.html

ネタ心者歓迎! 今更ながらにJava相談室
01 http://pc.2ch.net/tech/kako/1003/10035/1003569074.html
02 http://pc.2ch.net/tech/kako/1006/10064/1006408230.html
03 http://pc.2ch.net/tech/kako/1007/10078/1007802486.html
04 http://pc.2ch.net/tech/kako/1010/10105/1010545421.html
05 http://pc.2ch.net/tech/kako/1012/10129/1012968994.html
06 http://pc.2ch.net/tech/kako/1015/10154/1015418174.html
07 http://pc.2ch.net/tech/kako/1018/10186/1018631329.html
08 http://pc.2ch.net/tech/kako/1020/10204/1020453823.html
09 http://pc.2ch.net/tech/kako/1021/10215/1021555964.html

6 :デフォルトの名無しさん:03/07/31 21:30
【初心者・ネタ】Java質問・相談スレ【大歓迎】
01 http://pc.2ch.net/tech/kako/1021/10218/1021817147.html
02 http://pc.2ch.net/tech/kako/1023/10233/1023319551.html
03 http://pc.2ch.net/tech/kako/1024/10248/1024885660.html
04 http://pc3.2ch.net/tech/kako/1026/10266/1026601774.html
05 http://pc3.2ch.net/tech/kako/1028/10280/1028096225.html
06 http://pc3.2ch.net/tech/kako/1029/10297/1029774594.html
06+ http://pc3.2ch.net/tech/kako/1031/10313/1031397913.html
07 http://pc3.2ch.net/tech/kako/1032/10329/1032944182.html
08 http://pc3.2ch.net/tech/kako/1032/10329/1032944246.html
09 http://pc3.2ch.net/tech/kako/1034/10343/1034303501.html
10 http://pc3.2ch.net/tech/kako/1035/10355/1035570359.html
11 http://pc3.2ch.net/tech/kako/1036/10361/1036142056.html
12 http://pc3.2ch.net/tech/kako/1037/10374/1037407642.html
13 http://pc3.2ch.net/tech/kako/1038/10387/1038731106.html
14 http://pc3.2ch.net/tech/kako/1040/10401/1040150533.html
16 http://pc3.2ch.net/tech/kako/1042/10424/1042407622.html
16+ http://pc2.2ch.net/tech/kako/1043/10436/1043654161.html
18 http://pc2.2ch.net/tech/kako/1044/10449/1044983072.html
19 http://pc2.2ch.net/tech/kako/1046/10461/1046166884.html
20 http://pc2.2ch.net/tech/kako/1047/10475/1047544179.html
21 http://pc2.2ch.net/tech/kako/1048/10486/1048689029.html
22 http://pc2.2ch.net/test/read.cgi/tech/1049715659/l50
23 http://pc2.2ch.net/test/read.cgi/tech/1051284438/l50
24 http://pc2.2ch.net/test/read.cgi/tech/1052625006/l50
25 http://pc2.2ch.net/test/read.cgi/tech/1054041744/l50
26 http://pc2.2ch.net/test/read.cgi/tech/1055601178/l50
27 http://pc2.2ch.net/test/read.cgi/tech/1057249423/l50

7 :デフォルトの名無しさん:03/07/31 21:31
28 http://pc2.2ch.net/test/read.cgi/tech/1058408362/

■■■ Java関連スレいろいろ ■■■ 
【IDE 統合開発環境】
【Java/C/他】統合開発環境Eclipse RC6
http://pc2.2ch.net/test/read.cgi/tech/1051840417/
えっ?JBuilder8が発売?
http://pc2.2ch.net/test/read.cgi/tech/1038042372/l50
【Meadow】Java開発環境(・∀・)イイ【JDEE】
http://pc2.2ch.net/test/read.cgi/tech/1017214967/l50
【統合】Java開発環境スレ
http://pc2.2ch.net/test/read.cgi/tech/1038118138/l50
【Java】NetBeans vs Eclipse【IDE】
http://pc2.2ch.net/test/read.cgi/tech/1029407008/l50

【携帯・モバイル】
携帯JAVAのスレッド
http://pc2.2ch.net/test/read.cgi/tech/1011977260/l50
iモード携帯電話用Java(iアプリ) Part 3
http://pc2.2ch.net/test/read.cgi/tech/1040898596/l50
iアプリでゲーム (ゲーム製作技術板)
http://pc2.2ch.net/test/read.cgi/gamedev/1005042631/l50
京セラJAVA搭載PDauPocketCosmo」 (モバイル板)
http://pc3.2ch.net/test/read.cgi/mobile/1021979970/l50

8 :デフォルトの名無しさん:03/07/31 21:33
【サーバサイドゃ;ンタープライズ】
EJB(初心メ鰹+})
http://pc2.2ch.net/test/read.cgi/tech/1017240849/l50
= ?Servlet/JSP(EJB萱洫 ソ貰々レ = ?(WebProg泊ァ
http://pc2.2ch.net/test/read.cgi/php/1023501812/l50
《The Jakarta Project》
http://pc2.2ch.net/test/read.cgi/tech/1019996589/l50
TOMCAT
http://pc2.2ch.net/test/read.cgi/tech/998525941/l50
Servlet/JSPv》レームワークり雁"Xレ
http://pc2.2ch.net/test/read.cgi/tech/1001950590/l50
EJBw.Iら!!逐?
http://pc2.2ch.net/test/read.cgi/tech/1036481443/l50
JavaサーブレットQ& LV2
http://pc.2ch.net/tech/kako/1012/10127/1012728608.html
サーバーサイドJAVAり梳 [ゆ雁"Xレ
http://pc.2ch.net/tech/kako/1004/10049/1004972840.html


9 :デフォルトの名無しさん:03/07/31 21:33
【サーバサイドやエンタープライズ】
EJB(初心者歓迎)
http://pc2.2ch.net/test/read.cgi/tech/1017240849/l50
■■ Servlet/JSP(EJB含む) 質問スレ ■■ (WebProg板)
http://pc2.2ch.net/test/read.cgi/php/1023501812/l50
《The Jakarta Project》
http://pc2.2ch.net/test/read.cgi/tech/1019996589/l50
TOMCAT
http://pc2.2ch.net/test/read.cgi/tech/998525941/l50
Servlet/JSPのフレームワークを語るスレ
http://pc2.2ch.net/test/read.cgi/tech/1001950590/l50
EJBは終わってる
http://pc2.2ch.net/test/read.cgi/tech/1036481443/l50
JavaサーブレットQ&A LV2
http://pc.2ch.net/tech/kako/1012/10127/1012728608.html
サーバーサイドJAVAをまたーり語るスレ
http://pc.2ch.net/tech/kako/1004/10049/1004972840.html


10 :デフォルトの名無しさん:03/07/31 21:34
【その他】
クライアントサイドJavaどうよ?
http://pc3.2ch.net/tech/kako/1002/10021/1002160815.html
クライアントサイドJavaどうよ? part2
http://pc2.2ch.net/tech/kako/1032/10326/1032665721.html
クライアントサイドJavaどうよ? part3
http://pc2.2ch.net/test/read.cgi/tech/1045891783/l50
ム板のみんなでRobocode (・∀・)ヤロ−ウヨ!1台目
http://pc3.2ch.net/tech/kako/1020/10201/1020161792.html
Java 高速GUI SWT
http://pc2.2ch.net/test/read.cgi/tech/1032448424/l50
【徹底討論】Java3Dの可能性について考える
http://pc2.2ch.net/test/read.cgi/tech/1033703640/l50
★お前らJavaはJNIで組もうぜ★
http://pc2.2ch.net/test/read.cgi/tech/1033795664/l50
Javaアプレットのゲームの限界は! (ゲーム製作技術板)
http://pc2.2ch.net/test/read.cgi/gamedev/1005230153/l50
【Java編】 学校の宿題は俺にやらせろ 【Java編】
http://pc2.2ch.net/test/read.cgi/tech/1040552821/l50
祝 JAVA Developer創刊
http://pc2.2ch.net/test/read.cgi/tech/1024967343/l50


11 :デフォルトの名無しさん:03/07/31 21:34
■■■ 他板のJavaスレッド ■■■
UNIXでJAVA (Unix板)
http://pc.2ch.net/test/read.cgi/unix/1011292632/l50
LinuxのJAVAチューニングスレ (Linux板)
http://pc.2ch.net/test/read.cgi/linux/1004594459/l50
◆◆◆◆◆◆MacでJava◆◆◆◆◆◆ (新Mac板)
http://pc.2ch.net/test/read.cgi/mac/991194610/l50

■■■ 撲滅させたいかた、死滅を心配してるかた ■■■
CとJavaを比較した場合Cの良いとこと悪いとこ
http://pc.2ch.net/tech/kako/1009/10097/1009707596.html
C#とJava、どっちをおぼえればいいの?
http://pc2.2ch.net/test/read.cgi/tech/1006715468/l50
Java撲滅委員会
http://pc.2ch.net/tech/kako/996/996848309.html
Java撲滅委員会
http://pc3.2ch.net/test/read.cgi/tech/996848309/l50
●●JAVAって死滅しちゃうの????●●
1 http://pc.2ch.net/tech/kako/1005/10051/1005159122.html
2 http://pc.2ch.net/tech/kako/1006/10060/1006053686.html
3 http://pc.2ch.net/tech/kako/1008/10081/1008162230.html
4 http://pc2.2ch.net/tech/kako/1042/10422/1042268758.html
5 http://pc2.2ch.net/tech/kako/1046/10465/1046539052.html
6 http://pc2.2ch.net/test/read.cgi/tech/1047748598/


12 :デフォルトの名無しさん:03/07/31 21:34
■■■ 民間サイト ■■■
巨大なJavaリンク集
Java的リンク
http://www.geocities.co.jp/SiliconValley/6064/java_link.html
What's New about Java(Java に関する最新ニュース)
http://www.gimlay.org/~andoh/java/javanew.html

■■■ 無料の統合開発環境 ■■■
【Eclipse R2】
http://www.eclipse.org/downloads/index.php
【Sun ONE Studio 4 (Forte 4)】
http://jp.sun.com/products/software/tools/jde/try/index.html
【NetBeans v3】
http://www.netbeans.jp/dowonload.htm
【JBuilder 7 Personal】
http://www.borland.co.jp/jbuilder/jb7/download/

※2chではないので暴れないように。


13 :デフォルトの名無しさん:03/07/31 21:37

いつもおまえらスレ立て人には、感謝してます


14 :デフォルトの名無しさん:03/07/31 21:58
いつもおまえらスレ立て人には、憤慨してます
死ね

15 :1:03/07/31 22:00
続きやってくれた人ありがとうです。

16 :デフォルトの名無しさん:03/07/31 22:06
>>1、続きやった人
オツ

17 :デフォルトの名無しさん:03/07/31 22:08
だまれウンコ共


18 :デフォルトの名無しさん:03/07/31 23:01
っていうかよく見たらclassにpublicついてないじゃん。
氏ねよマジで。
>>1 乙

19 :デフォルトの名無しさん:03/07/31 23:09
いいかげんCLASSPATH環境変数を使うのは非推奨にしたらどうよ。


20 :前スレ898:03/08/01 00:11
>>983
BufferedReader myReader = null;
try{
try {
myReader=new BufferedReader(new FileReader("aaa.txt"));
String line;
int count=0;
Point3d[] vertices = new Point3d[1000];
StringTokenizer st=null;
while ((line = myReader.readLine()) != null) {
if(count==1000)break;
st=new StringTokenizer(line," ");
double[] temp=new double[st.countTokens()];
for(int j=0;st.hasMoreTokens();j++){
temp[j]=Double.parseDouble(st.nextToken());
}
vertices[count]=new Point3d(temp[0],temp[1],temp[2]);
}
}
catch(Exception e){
}
finally{
myReader.close();
}
}catch(Exception e){
}
コンパイルは通ったのですが実行時にjava.lang.NullPointerExceptionエラーが
LineArray geometry = new LineArray(vertices.length, GeometryArray.COORDINATES); ←この行
で発生しました
外部ファイルを参照しないときはこんなことなかったのに

21 :デフォルトの名無しさん:03/08/01 00:19
verticesがnullぽ

22 :デフォルトの名無しさん:03/08/01 00:19
vertices.length

23 :デフォルトの名無しさん:03/08/01 00:20
GeometryArray.COORDINATES

24 :デフォルトの名無しさん:03/08/01 01:31
>>20
皆さんがおっしゃるとおりvertices.lengthの値がnullだと思われます。
ソースが見れないのでなんともいえませんがverticesを宣言できてないのでは?
FileReader(”aaa.txt”)の部分でエラーが生じてそうな悪寒
aaa.txtがまずクラスファイルと同一階層にあるかを調べてみてください。
それがしっかりできているならPoint3d[] vertices〜の下でprintlnして見たり
catchブロックでなんらかを出力させてみたりしてください。
これだけの情報じゃなんともいえないです・・すんません



25 :デフォルトの名無しさん:03/08/01 02:25
>>前スレ903
>rand.nextInt() & 0x3ff;
>
>↑で乱数の値は0〜1023までになってるでしょうか?

rand.nextInt() % 1024; にしろ、範囲は 0〜1023 になるはずだが
一般的には一様にならない。
基本的に乱数の下位ビットは比較的短い周期で元に戻ってしまう。

26 :デフォルトの名無しさん:03/08/01 05:59
>>1
連続カキコでとまったかな〜?と思ったので続きやらせていただきましたが
私の方も>>12を書いた時点で
連続カキコにひっかっかり、今までかけませんでした泣く
これ、すぐに復帰できるようにするにはしばらくおとなしくしてるしかないんですかね?


27 :前スレ898:03/08/01 06:59
皆さんレスありがとうございます。
Point3d[] vertex = null;
としてやると実行できました。
まだJavaよくわかっていませんがこれからも頑張ります。
本当にありがとうございました。

28 :デフォルトの名無しさん:03/08/01 07:30
>>19 賛成。

29 :デフォルトの名無しさん:03/08/01 10:43
PureJavaってなぁに?

30 :デフォルトの名無しさん:03/08/01 11:25
Linux Redhat9.0
SDK 1.4.1_04
環境において、JAVA2Dを利用し文書を作るアプリを作っています
「半角カナ」フォントを変えようと思い
$JAVA_HOME/jre/lib/font.properties.ja内のsansserif設定を
変更前)
sansserif.1=-kochi-gothic-medium-r-normal--*-%d-*-*-c-*-jisx0201.1976-0
sansserif.2=-kochi-gothic-medium-r-normal--*-%d-*-*-c-*-jisx0208.1983-0
変更後)
sansserif.1=-shinonome-gothic-medium-r-normal--*-%d-*-*-c-*-jisx0201.1976-0
sansserif.2=-shinonome-gothic-medium-r-normal--*-%d-*-*-c-*-jisx0208.1990-0
と変えましたが、「半角カナ」が総て □ となってしまいました。

xfontsel,xfdでは確認できるフォントを使用しました。
見落している箇所をどうかご指摘願います。

31 :デフォルトの名無しさん:03/08/01 11:32
>>28
クラスパス非推奨ってどういうこと?
全部extフォルダに入れるとか、IDE使えってこと????

32 :デフォルトの名無しさん:03/08/01 11:40
>>31
環境変数に設定するのを非推奨にしようってことだろ?
全部extフォルダに入れるなんてもってのほか。
コンパイル時や実行時に個別に指定するほうがイイってこと。
AntとかIDE使うのもその手段の一つだが。

いまだにJ2EEアプリ実行するのに実行ユーザの環境変数に
クラスパス設定するヤシとかextにライブラリ入れるヤシとかいて
あきれるな。

33 :デフォルトの名無しさん:03/08/01 11:54
究極は

java.lang.String s=new java.lang.String("text");

とか推奨か?

34 :デフォルトの名無しさん:03/08/01 12:00
環境変数のCLASSPATHは使わないほうがいいでしょ。

CLASSPATHが設定されていなければ
c:\somewhere>java HelloWorld
が動作する。

CLASSPATHが変なところに設定されているから動かなくなるだけ。

いっぱいjarファイルが必要なアプリはバッチファイルを作って、
set JARS=foo.jar;bar.jar
java -classpath %JARS%;. net.2ch.SomeApp
とでもすればいい。


35 :デフォルトの名無しさん:03/08/01 12:01
>33
java.langはimportしなくても使えるぞ。


36 :デフォルトの名無しさん:03/08/01 12:04
>>33
クラスパスとimport混同してない?
こんなヤシは>>2見れ

37 :デフォルトの名無しさん:03/08/01 12:09
クラスパス非推奨派は理由を述べないな

38 :デフォルトの名無しさん:03/08/01 12:14
>>37
ポータビリティが低下するからに決まってんだろ。
そんなことわざわざ言ってもらわないとわからなのか・・・・?

39 :ただの見物人:03/08/01 12:16
わかんねーよ。Javaしらねーし

40 :デフォルトの名無しさん:03/08/01 12:20
>37
SUNはこう言ってるが。

The -classpath option is preferred because you can set it individually for each application
without affecting other applications and without other applications modifying its value.

ttp://java.sun.com/j2se/1.4.2/docs/tooldocs/windows/classpath.html


41 :デフォルトの名無しさん:03/08/01 12:25
classpathオプションが好まれる?

42 :デフォルトの名無しさん:03/08/01 12:29
>>41
そう。環境変数に設定せずに、実行時に指定する方法が推奨。
必要なクラスパスはアプリによって違うからな。

43 :デフォルトの名無しさん:03/08/01 12:30
-classpath オプションが推奨されているのは、アプリケーションごとに個別に設定できるので、
ほかのアプリケーションに影響を与えたり、ほかのアプリケーションからこの値が変更されたりすることがないためです。

44 :デフォルトの名無しさん:03/08/01 12:31
つまり環境変数は使わずにオプションを使えってことか。

45 :デフォルトの名無しさん:03/08/01 12:34
>>44
よくできました

46 :デフォルトの名無しさん:03/08/01 12:37
インストールするとCLASSPATHを設定するアフォなアプリもあるから、
初心者向けのQ&Aとしてはこんな感じか?

Q. javac Hello.java でコンパイルはできるのですが、
java Hello を実行しようとすると
『Exception in thread "main" java.lang.NoClassDefFoundError: Hello』
と表示されて実行できません。
A. カレントディレクトリ(.)がクラスパス(classpath)に含まれていません。
コマンドプロンプトで、
java -cp . Hello
と設定する。「-cp」の後ろの「.」を見落とさないように!
「.」の前後には半角空白が必要です。
または、
http://www.gimlay.org/~javafaq/S004.html#S004-02
を読んでカレントディレクトリ「.」を環境変数CLASSPATHに追加してください。


47 :デフォルトの名無しさん:03/08/01 12:38
コマンドプロンプトで、
java -cp . Hello
と実行する。「-cp」の後ろの「.」を見落とさないように!
~~~~~~~~~~
の間違い。


48 :デフォルトの名無しさん:03/08/01 12:41
java -cp `pwd` Hello

49 :デフォルトの名無しさん:03/08/01 12:51
Javadocドキュメント(?)部分に変更履歴を書くと思いますが、
その変更履歴の書き方のフォーマットって用意されていたりしますか?
あれば教えて下さい。

50 :デフォルトの名無しさん:03/08/01 13:34
String s = "a" + "b" + "c" + "d" + "e";

String s = new StringBuffer("a").append("b").append("c").append("d").append("e").toString();
としてコンパイルされるとJavadocに書いてあったんですが、
実際には双方の実行時間がまったく違いました。
Stringリテラルの連結のほうが圧倒的に速いのです。
なぜでしょう?
J2SE-1.4.2でコンパイルし、実行しました。

51 :50:03/08/01 13:34
ちなみにこんなソースです。
public class Concat {
 public static void main(String[] args) {
  int iteration = 1000000;
  String t = "a" + "b" + "c" + "d" + "e";
  {
   Date before = new Date();
   for(int i = 0; i < iteration; i++){
    String s = "a" + "b" + "c" + "d" + "e";
   }
   Date after = new Date();
   System.out.println("String literal loop : " + ( after.getTime() - before.getTime() ));
  }

  {
   Date before = new Date();
   for(int i = 0; i < iteration; i++){
    String s = new StringBuffer("a").append("b").append("c").append("d").append("e").toString();
   }
   Date after = new Date();
   System.out.println("String buffer loop : " + ( after.getTime() - before.getTime() ));
  }
 }
}

52 :デフォルトの名無しさん:03/08/01 13:38
StringBuffer使った方は実行時に連結されていて、
リテラルの方はコンパイル時に最適化されて既に連結されて
バイトコード生成されているとか?

53 :デフォルトの名無しさん:03/08/01 13:44
>>50

これはどう?

String s = "a";
s += "b";
s += "c";
s += "d";
s += "e";


54 :デフォルトの名無しさん:03/08/01 13:57
>>53
StringBufferより2.5倍ほど遅くなりました。
String.Buffer.toString()を4回余計に呼んでいると思えば遅くなるのもうなずけます。
でもリテラル連結が一番速いのはなぜでしょうね。
>>52さんの言うとおりなのでしょうか。

55 :デフォルトの名無しさん:03/08/01 14:08
>>54
なんか雑誌で読んだんだけど

Stringの連結は1行でやれ!
それが出来ない場合(複数行にまたがる場合)はStringBufferをつかえ!

56 :デフォルトの名無しさん:03/08/01 14:13
>>55
だ・か・ら
それはなぜなのか?って議論してるんでしょ?

57 :デフォルトの名無しさん:03/08/01 14:26
対処法を教えてください。
"http://www.google.co.jp/search?num=100&hl=ja&ie=Shift_JIS&q=%8F%5C"からダウンロードして、テキストとして正常に表示したいです。
以下のwhile((line = br.readLine()) != null){の部分で弾かれています。
原因は%8F%5Cに有るようです。以下の例にあるURLはIEで正常に表示されます。
javaのバグっぽいですが、なにとぞよろしくお願いいたします。m(_ _)m

import java.net.*;
import java.io.*;
public class TestBufferdReader {
public static void main(String[] args){
URL url = null;
try{
url = new URL("http://www.google.co.jp/search?num=100&hl=ja&ie=Shift_JIS&q=%8F%5C");
Object obj = url.getContent();
if(obj instanceof InputStream) {
String line;
BufferedReader br = new BufferedReader(new InputStreamReader((InputStream)obj));
while((line = br.readLine()) != null){
System.out.println(line);
}
}else{
System.out.println("DownLoadしたObjectはInputStreamとして扱えません。");
}
}catch(Exception e){
e.fillInStackTrace();
}
}
}

58 :57:03/08/01 14:31
以下のwhile((line = br.readLine()) != null){の部分で弾かれています。

ごめんなさい。
そこで弾かれてるわけじゃなかったです。

59 :デフォルトの名無しさん:03/08/01 14:36
>>57
>javaのバグっぽいですが
って・・普通自分のコード見直すだろ?

それとも、他では動くのにこのURLだと動かないって事?
単に表示するだけなら
ソケットでGetコマンド打てばいいんじゃない?

60 :デフォルトの名無しさん:03/08/01 14:45
>>59
>他では動くのにこのURLだと動かないって事?
その通りです。

javaで取得しないと意味が無いんで…。


61 :57:03/08/01 14:46
すみません。↑僕です。

62 :デフォルトの名無しさん:03/08/01 14:55
実行すると403 Forbiddenが返ってくるね。なんでだろ。

63 :59:03/08/01 14:56
えと、とりあえず試したんですが
クエリ送った場合は何も表示されませんね
もうチョイ粘らせてください

64 :57:03/08/01 14:58
>>62
本当に不思議なんですよ。
今までjavaのバグに何度か見舞われたけど、今回は僕の力では無理だった・・・。

65 :デフォルトの名無しさん:03/08/01 14:58
>>59
いろいろ張る前に、
e.fillInStackTrace()→e.printStackTrace()
と変更してからにしてね。これが最低限のエラー処理。

66 :デフォルトの名無しさん:03/08/01 14:59
>>63
がんばって頂いている様で、ありがとうございます。m(_ _)m

67 :59:03/08/01 15:01
>>65
ご指摘ありがとうございます。
今後気をつけます。m(_ _)m

68 :デフォルトの名無しさん:03/08/01 15:02
同じことをHttpUnit経由で実行すると上手くいくので、
java.netパッケージの使い方が間違ってるんじゃないかな。
使ったこと無いんで知らないけど。

69 :57:03/08/01 15:05
>>68
そうですか・・・。
本見て作ってるんで、そんなはずは無いと思うのですが、一応確認してみます。

70 :59:03/08/01 15:10
クエリ(num=100&hl=ja&ie=Shift_JIS&q=%8F%5Cの部分)を別の方法でセットした方が
いいと思って探してるんだが
URLクラスに限ってみるとgetQuery()
はあるけど
setQuery()
っていうのはないねぇ
今度はURL周辺探ってみます

71 :57:03/08/01 15:11
while((line = br.readLine()) != null)
の外にbr.close();がなったです。ただ結果には影響しないですが・・・。


72 :59:03/08/01 15:12
>>70
すみません。よろしくお願いします。m(_ _)m

73 :57:03/08/01 15:25
ソース見直しました。新しいソースを張っておきます。
import java.net.*;
import java.io.*;
public class TestBufferdReader {
public static void main(String[] args){
URL url = null;
try{
url = new URL("http://www.google.co.jp/search?num=100&hl=ja&ie=Shift_JIS&q=%8F%5C");
Object obj = url.getContent();
if(obj instanceof InputStream) {
String line;
BufferedReader br = new BufferedReader(new InputStreamReader((InputStream)obj));
while((line = br.readLine()) != null){
System.out.println(line);
}
br.close();
}else{
System.out.println("DownLoadしたObjectはInputStreamとして扱えません。");
}
}catch(Exception e){
e.printStackTrace();
}
}
}

74 :デフォルトの名無しさん:03/08/01 15:36
>>50
52の言が正しい。
"a" + "b" + "c" + "d" + "e" という式は "abcde" に静的に評価できるので
コンパイル時に "abcde" に自動的に置き換えられる。
これはJava言語仕様で決まっている。

Javadoc にあるのは静的に評価できないときの話。例えば
String a = "a", b = "b", c = "c, d = "d", e = "e";
なら a + b + c + d + e は new StringBuffer(a).append(b).append(c).append(d).append(e).toString() になる。


75 :59:03/08/01 15:38
ほかのHPとか試した?
おれ、BIGLOBEの検索の方で試したんだけど・・・
動いたよ
googleのやつが特別なんじゃないかな?
たとえば、そのページ内からじゃ無いと検索CGI叩けないとか・・・
んで、俺もSocket使ったプログラムでやったけど
これもgoogleがダメで
BIGLOBEはOKだったよ

76 :デフォルトの名無しさん:03/08/01 15:48
>>57
googleはUser-Agentヘッダを見ていて、ブラウザの種類によってはじいているようだ。
URLの生成の前にこれをいれると上手くいく。
System.setProperty("http.agent", "お好みの正しいUser-Agent");
ちなみにおいらのはこんなんだった
"Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; .NET CLR 1.0.3705)"

77 :59:03/08/01 15:49
>>75
>たとえば、そのページ内からじゃ無いと検索CGI叩けないとか・・・
いや、そんなこと無いですと言いたい所ですが、その通りなようで・・・。
さっきちゃんと確認したなのになぁ・・・。
おかしいなぁ・・・。
どうもありがとうございます。m(_ _)m

78 :デフォルトの名無しさん:03/08/01 15:52
>>74
>これはJava言語仕様で決まっている。
おいおい…

79 :57:03/08/01 15:54
>>76
そうだったのか・・・。
今までjavaでUser-Agentの扱い方が解からなかったのですが、これできっかけがつかめました。
とりあえず、やってみます。
ありがとうございました。m(_ _)m

80 :デフォルトの名無しさん:03/08/01 15:56
>>78
("a" + "b" + "c" + "d" + "e").intern() == "abcde" は言語仕様で決まっていますが何か?

81 :59:03/08/01 16:02
すげえ>>76
できたぞい

82 :57:03/08/01 16:03
>>76
本当にありがとうございます。m(_ _)m
ちなみに、僕のは"User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)"でした。

今までUser-AgentはURLにUser-Agent=&見たいに追加するもんだと思って、一生懸命総当たり戦してました。
あまりにも苦労してたんで、知ったとき感動して、本当にちょっと涙出ちゃった。


83 :59:03/08/01 16:10
>>57
な、泣くなよおい・・・俺まで泣きそうだよ

84 :デフォルトの名無しさん:03/08/01 16:11
すまん。Java言語仕様ではなくJava仮想マシン仕様だった。

85 :デフォルトの名無しさん:03/08/01 16:11
>>80
>("a" + "b" + "c" + "d" + "e").intern() == "abcde" は言語仕様で決まっていますが何か?
おいおい…

86 :デフォルトの名無しさん:03/08/01 16:16
>>84
>すまん。Java言語仕様ではなくJava仮想マシン仕様だった。
おいおい…

87 :57:03/08/01 16:18
>>59
さすがに、もう泣きやんだ。
今ちょっと一人でニヤニヤしてる。

88 :59:03/08/01 16:20
おれ、オナニーしてました
なんかうれしくってね



89 :デフォルトの名無しさん:03/08/01 16:24
おいおいといってるやつは
http://www.takilab.cs.kobe-u.ac.jp/~java/publications/javaVM5.html でも読め

90 :デフォルトの名無しさん:03/08/01 16:38
>>89
言語仕様とVM仕様とAPI仕様読んでから出直してください。

91 :黒猫:03/08/01 16:39
こんにちわ(*・・*)。

益々日差しも強まり・・・(略)。

んと、お邪魔します(*..)、
JAVAでしたいことがあるんですけど、
どうしてもその手段が見つからなくて・・・
もし宜しければ助けてください(;;)。

したいことは、
現在のマウスのディスプレイ上の座標を取得したいの。

それで、最後にマウスが動いた時のイベントをListenerで取得して、
保持していこうかなって考えたんですけど・・・・
それはawt等のコンポーネント上でのこと・・ですよね、、(;;)?

awtコンポーネント上では、
MouseMotionListenerインターフェースを使って、
addMouseMotionListenerメソッドでコンポーネントにセットして出来るんですよねぇ・・・・。
でも、awtとかSwingのコンポーネント以外でマウスの動いた座標をとりたくても、
リファレンスみても見つからなかったんですぅ( ノ_;)

黒猫の見つけ方が下手なのでしょうか(;;)。
もし、お知恵をお借りさせていただけましたら嬉しいですぅ。

乱文で失礼しますぅ。

92 :デフォルトの名無しさん:03/08/01 17:43
ぐぐれ。

93 :デフォルトの名無しさん:03/08/01 17:45
getX

94 :デフォルトの名無しさん:03/08/01 18:01
>>91
>>awtとかSwingのコンポーネント以外で
Appletという意味???
>>リファレンスみても見つからなかったんですぅ
java.awt.eventにあります。
---------------------------------------------------------------
int X,Y;
addMouseMotionListener(new MouseMotionAdapter(){
public void mouseMoved(MouseEvent e){
X=e.getX();
Y=e.getY();
}
});
-------------------------------------------------------------------
です。

>>黒猫の見つけ方が下手なのでしょうか(;;)。
黒猫って何ですか?
もしかしてブラック キャット(No.]V)・・・

95 :デフォルトの名無しさん:03/08/01 18:05
>>94
それじゃ黒猫の要求にこたえられない

96 :デフォルトの名無しさん:03/08/01 18:08
>>95
swingでのイベントの処理ってこと?

97 :デフォルトの名無しさん:03/08/01 18:10
いや、そうでなくって
Swing、AWT以外の場所でも
マウスの位置知りたいってこと

98 :デフォルトの名無しさん:03/08/01 18:12
あーFramの外でも座標がわかるようにしたいのね!!!
そんなことできるの???

99 :デフォルトの名無しさん:03/08/01 18:14
Javaでは無理なんじゃねーの?

JNI 使ってやるか・・。

100 :デフォルトの名無しさん:03/08/01 18:15
目で見て数えればいいんじゃないかな?
上から1つ2つ3つ・・・120つ・・・
左から1つ2つ3つ・・・パンつ・・・
ってさ!

101 :デフォルトの名無しさん:03/08/01 18:23
>>101
               _,......,,,_
               ,、:'":::::::::::::::::``:...、
           /::::::::::::::::::::::::::::::::::::::\
          i::::::::::::::::::::::::::::::::::::::::::::::::::ヽ
            !::::::::::::::::::::::;‐、:::::::::_::::::_::::';
         |::::::::::::::::::::::|  :: ̄      ``!
         r''ヾ'::::::::::/  ::          |
         l r‐、\::/  _,,、ii_;;_、    _,,,l、
         ヽヾ〈    ::= -r:;;j_;、`/ :;'ィ;7
          !:!_,、    :: ` ー  : |: `´/     なに言うとんじゃ、ぼけ
         ,./ヽ |  、_  ::  ,: 'r' :i |:  /       
       ,../ `ヽ;_  i | '"、_:::__`:'‐'. /
        / ``'ー 、_\  ! `::` ̄''`チ`シ
    /ー 、_    `\:、_ :: ` ̄/
   /     ``ヽ、   ヽ`'7‐--'゛

102 :デフォルトの名無しさん:03/08/01 18:26
いくら 100 をゲットしても、松本に睨まれたらおしまいだな。w

103 :デフォルトの名無しさん:03/08/01 18:36
>>101
自分で自分にいってんのか?w
あせっちゃったねw

104 :デフォルトの名無しさん:03/08/01 18:38
最近Javaもあんまり分かってないのに興味本位でJava3Dに手を出し始めた者なんですが

ttp://www.javadrive.jp/java3d/base/index1.html

↓は↑のページの一部

public BranchGroup createSceneGraph() {
BranchGroup objRoot = new BranchGroup();
objRoot.addChild(new ColorCube(0.4));
objRoot.compile();
return objRoot;
}

のように表示した図形をボタンを押したりしてポンっと魔法みたいに
消したり表示したりする方法ってありますかね?

105 :デフォルトの名無しさん:03/08/01 18:48
エクリプス使ってるんですが,エクリプスに関係ないと思うので,
ここで質問させてください.

例えば,xerces.jarとかjdom.jarなんかのを外部jarをインポートして
作ったプログラムを,ひとつのjarファイルにまとめるときに,
外部jarもまとめて入れることは出来ないのでしょうか?

つまり,ユーザの環境でクラスパスとか設定しなくともすむように,
ひとつの実行ファイルに出来ないかという意味なのですが,
よろしくお願いします.


106 :デフォルトの名無しさん:03/08/01 18:52
>>105
最初から外部JARにしないで
プロジェクトの中にコピーもってくればいい

107 :デフォルトの名無しさん:03/08/01 19:01
>>106
なるほど・・・有難うございます.やってみます.

108 :デフォルトの名無しさん:03/08/01 19:01
>>104
イベント処理を追加して、ボタンを押したときにcreateImageでオフスクリーン描画を
すれば消える。
また違うボタンを押したときにcreateSceneGraph()を呼び出すようにする。
---------------------------------------------------------------------
クラス KeyEventのフィールドにキーボード(106)すべての設定がありますので
クラス KeyAdapterでそのキーを押したときすなわちequals()でtrueである場合
なんかをするみたいな感じ・・・

109 :デフォルトの名無しさん:03/08/01 19:04
>78=85=86=90

String x = "a" + "b";
String y = "ab";
とおなじソースに書いた場合、x.equals(y) が true になるのは当たり前だが
x == y も true になるのを知らないだろ?
これが ("a" + "b").intern() == "ab" が true になることが規定されているという意味だ。

ちなみにコンパイラによる最適化によってたまたま x == y になるのではない。
Java 仮想マシン仕様によってそうならないといけないと規定されている。

110 :デフォルトの名無しさん:03/08/01 19:09
>おいおいクンへ
仕様なんだよ

111 :デフォルトの名無しさん:03/08/01 19:22
>>109
>これが ("a" + "b").intern() == "ab" が true になることが規定されているという意味だ。
この一行は全然関係ないね。

String

112 :デフォルトの名無しさん:03/08/01 19:24
>>111は間違えて途中で送信。

>>109
String a = new String("a");
String b - new String("b");
(a + b).intern() == "ab"
↑これがどうなるか知ってるだろうな?

113 :デフォルトの名無しさん:03/08/01 19:33
おい、オタク野郎ども!
他でやれよバカ

114 :デフォルトの名無しさん:03/08/01 19:48
>>104
repaint();

115 :デフォルトの名無しさん:03/08/01 19:51
> String b - new String("b");
コンパイルエラー

116 :デフォルトの名無しさん:03/08/01 19:53
>>109
> String x = "a" + "b";
> String y = "ab";
> とおなじソースに書いた場合、x.equals(y) が true になるのは当たり前だが
> x == y も true になるのを知らないだろ?
これは仕様じゃないんだけどね。

117 :デフォルトの名無しさん:03/08/01 19:56
>>114
repaint();の意味わかってます?

118 :デフォルトの名無しさん:03/08/01 20:03
>>115
  ─── 、─丶
 (___ノ(   )
 (ノ ー   |  /
 [・][・]─-6 /   <ンモー 揚げ足とる〜ゥ
  C      ソ   
 (!!!!_,_   /
   ヽ、 `/


119 :デフォルトの名無しさん:03/08/01 20:04
このサイトで「実装コードにコメントは書くべきではない」と書いてあるけど
そういうもんなの?

http://member.nifty.ne.jp/masarl/article/junit/programming-style-guide.html

120 :デフォルトの名無しさん:03/08/01 20:10
>>119
extreme programing では「実装コードにコメント書くな」という事になってるだけ。
必要があると思うなら書いとけ。

121 :デフォルトの名無しさん:03/08/01 20:10
>119

極端だな、こりゃ。
ただ、非常に限定された場合にはありえるかも。
このページはXPでテスト側コードが十分にドキュメント化されているわけだし。

実装詳細のコメントはいらんということかも。
/* You are not expected to understand this. */
とでも書いておくか。


122 :デフォルトの名無しさん:03/08/01 20:11
その人の主観かどうか見極めながら読め
書こうが書かまいが、間違いとは言いがたい

123 :デフォルトの名無しさん:03/08/01 20:13
>>118
「教師生活25年」とか言うのかと思った

124 :デフォルトの名無しさん:03/08/01 20:15
>>123
似てないよ全然
ソルマック

125 :デフォルトの名無しさん:03/08/01 20:33
>>112
true

126 :デフォルトの名無しさん:03/08/01 20:35
>>125
バドワイザーでつか?

127 :黒猫:03/08/01 21:01
93さん、94さん、95さん、96さん、97さん、98さん、99さん
ありがとうございますぅ(*・・*)。

93さん、94さん、例をありがとう御座います♪
でも、95さん、97さんが仰ってくださいました様に、
コンポーネントの外でのイベントを取得したかったのですぅ(;;)。

JAVAでの実現方法、簡単では無さそう・・ですね( ノ_;)。。。

マウス移動は出来るのにぃ(><)。。。
動作が出来てプロパティ取得が出来ないなんて・・・(;;)。。

ありがとうございました(*><)。。

追伸
黒猫の姿、好きなんです(*・・)、、

128 :デフォルトの名無しさん:03/08/01 22:42
内部クラスの中から、それを直接囲んでいるクラスのオブジェクトを
参照するコマンドを教えてください。thisでもなくsuperでもなく…

129 :_:03/08/01 22:46
http://homepage.mac.com/hiroyuki44/

130 :デフォルトの名無しさん:03/08/01 22:47
OuterClassName.this


131 :デフォルトの名無しさん:03/08/01 22:50
>128
ttp://gimlay.org/~javafaq/S016.html#S016-10


132 :デフォルトの名無しさん:03/08/01 23:08
最近はJavaをJAVAと書くのが流行りなんですか?

133 :デフォルトの名無しさん:03/08/01 23:19
いいえ。JAVAです。

134 :デフォルトの名無しさん:03/08/01 23:27
OK。俺が甘かった。

135 :が@Mたんちゅき p3204-ipad12fukuokachu.fukuoka.ocn.ne.jp:03/08/01 23:48
>>127 黒猫たん。
JavaHouse的には、
アプレットの外にあるマウスポインタの位置を知ることはできない、という見解みたい。
アプリケーションの場合は知らないけど。

http://java-house.jp/ml/topics/topics.html#core-awt-mouse
Java House Topics
# アプレットの外にあるマウスポインタの位置を知ることはできない [j-h-b:8672]
http://java-house.jp/ml/archive/j-h-b/008672.html#body
[JavaHouse-Brewers:8672] Re: appletの外のevent について

たしかに最近のJavaって、こんなこともできるから、
Javaのコンポーネントから外にはみだしたマウスカーソルの位置も、
わかってよさそうな気はする。

import java.awt.*;
public class MouseRobot {
  public static void main(String[] args) {
    try {
      Robot robot = new Robot();
      for (int n = 0; n < 500; n++) {
        robot.mouseMove(n, n);
        Thread.sleep(10);
      }
    } catch (Exception ex) {
    }
  }
}

あと、これあげる。
http://javawebstart.minidns.net/images/2get.jpg

136 :が@Mたんちゅき p3204-ipad12fukuokachu.fukuoka.ocn.ne.jp:03/08/01 23:48
それはそうと、つぎのスレこそ、>>8をカットしたほうがいいとおもう。
前スレ、前々スレ以来、ずっとコピペされ続けてきたけど。

137 :デフォルトの名無しさん:03/08/01 23:59
自分が書いたメソッドやクラスの
変数やら定数を一覧で取得するには
どげんしたらよかとでしょ?

138 :デフォルトの名無しさん:03/08/02 00:01
>>137
javadoc

139 :137:03/08/02 00:06
もうしわけありませんでした。
言葉足らずでした。

デバッグのときとかに
ログで出せたりしないのかなーって
いみだったんです・・・。

140 :アプレット初心者:03/08/02 01:00
こんばんわ。
アプレットのことで少々お聞きしたいことがあります。
画面フルサイズの親パネルの上に子パネルがいます。
親パネルにイメージを描画するのですが、そのイメージが大きくて、
子パネルにかかってしまいます。
かかってしまうならいいのですが、子パネルの下にイメージがいってしまうようで、
イメージが切れてしまいます。
これはどうにもならないでしょうか??
一日考えても全く分かりませんでした。
どなたか教えて下さい...

141 :デフォルトの名無しさん:03/08/02 01:16
>>136
すまん。
連書き規制回避にレンタルサーバ経由で w3m 使って書いたやつだ。

>>139
Eclipse のデバッガ

142 :デフォルトの名無しさん:03/08/02 01:38
どういう時にreturnをつけるのか、
つけないのかが、よくわかりません。

143 :デフォルトの名無しさん:03/08/02 01:41
API リファレンスを眺めて、どういうメソッドがあり、どういう戻り値にしているかを研究してみやう。

144 :104:03/08/02 01:47
detach();
で消したり表示したりしようと思うのですが

shape.setCapability(BranchGroup.ALLOW_CHILDREN_WRITE);
shape.setCapability(BranchGroup.ALLOW_DETACH);
objRoot.detach();

とやってもうまく消えてくれません(TдT)

145 :デフォルトの名無しさん:03/08/02 01:49
>>142
ttp://msugai.fc2web.com/java/method.html
ttp://msugai.fc2web.com/java/methodSamples.html

146 :山崎 渉:03/08/02 02:02
(^^)

147 :黒猫:03/08/02 08:06
>>135さん、ありがとう御座いますぅ(*・・*)。

猫さん可愛い(><)!!!!!



置いておいて・・・(;・・)ノ■

うゅ、出来ない・・みたいですね(;;)。。
JVM使ってる故の制約・・なのかなぁ。。。



148 :デフォルトの名無しさん:03/08/02 10:06
Java3D勉強中
 ど お し て 
どのHPにもどの本にも
物体を表示
物体を回転
物体を移動
とかしかのってなくて
物体を消す
ってのがないんだよ
ヾ(*`Д´*)ノ"ヾ(*`Д´*)ノ"ヾ(*`Д´*)ノ"





どなたか教えてくださいませ

149 :デフォルトの名無しさん:03/08/02 10:10
>>148
おれは、3Dの仕組み知らないのだが
塗り潰せばいいやんっておもうんだが
そういうことはやりたくないの?

150 :137:03/08/02 10:13
>>141
製造してるのはアプレットで、
サーバ側にDBに接続したりするクラスがあるみたいなのですが、
それでもEclipseでできますでしょうか?

DBと接続やらするクラスを僕のマシンに持ってきたらいいのかな・・。
あとサープレットコンテナもTOMCATじゃないのかもしれない感じなんです・・。

そんなわけでコードの中で一覧を取得して
それを任意のタイミングで吐き出せればなぁーと
思ったわけなんです。

151 :148:03/08/02 11:18
>>149
チェックボックス?で選択する形式で
1:球
2:立方体
3:三角形
とかで1にチェックを入れてボタンを押せば球が表示されて
2にチェックが入っていれば球を消して立方体を表示させたいのです。
さらにその図形を回転させたいのですが・・・

回転させることはできるのですがどうしても消して2つ目の図形を表示させることができません

152 :デフォルトの名無しさん:03/08/02 11:21
だから、3Dは知らないけど
paintで描くの?Java3Dって?
だったら、コードの書き方間違ってるんじゃない?と俺は思う
普通に作れば勝手に背景塗り潰されてから
描画されるはずだが・・・J**の場合はチョイしくみ違うが・・・
結果は同じになる

153 :デフォルトの名無しさん:03/08/02 11:23
>>151
っていうか、楽しそうだな
そのソースうpしてくれ
3Dの魅力を俺にも分けてくれ

154 :黒猫:03/08/02 12:35
こんばんわぁ(*・・)。

んとんと・・・移動できるのなら、
画面外に移動させるとか、、出来ないのかなぁ(・・;

それか、3DのコンポーネントをCanvasの上にaddして、
そのCanvasをsetVisible(false)するとかぁ(・・’)。。

155 :デフォルトの名無しさん:03/08/02 12:38
うざい


156 :_:03/08/02 12:46
http://homepage.mac.com/hiroyuki44/

157 :デフォルトの名無しさん:03/08/02 12:57
>>151
俺も昔研究でJava3Dを使ったときあるけど、
同じように追加は出来てもremoveが出来なかった記憶がある。
で、今昔使ってたソース見て(すっげー恥ずかしい)やってみたら出来たよ。
一応↓がその(削除で追加)のコア部分だけど,
俺も忘れてしまって詳しくは説明出来ないから自分で理解してくれ.
STLGroupってのはSTLGroup extends BranchGroupで
STLファイルを読み込んで3Dオブジェクトを生成するクラス.

public void actionPerformed(ActionEvent e) {
if (!(e.getSource() instanceof JFileChooser))
return;

File selectFile = this.stlFileChooser.getSelectedFile();
String filename = this.stlFileChooser.getName(selectFile);
String absFilename = selectFile.getAbsolutePath();

this.universe.getLocale().removeBranchGraph(this.scene);

for (int i = 0, n = this.transformGroup.numChildren(); i < n; i++) {
Node node = this.transformGroup.getChild(i);
if (node instanceof BranchGroup) {
this.transformGroup.removeChild(node);
}
}

this.transformGroup.addChild(new STLGroup(absFilename));
this.universe.addBranchGraph(this.scene);
}

158 :デフォルトの名無しさん:03/08/02 12:58
あとこんなのも作ってる.

private void createSceneGraph() {
this.scene = new BranchGroup();
this.scene.setCapability(BranchGroup.ALLOW_DETACH);
createTransformGroup();
this.scene.addChild(this.transformGroup);
}

private void createTransformGroup() {
this.transformGroup = new TransformGroup();
this.transformGroup.setCapability(TransformGroup.ALLOW_TRANSFORM_READ);
this.transformGroup.setCapability(TransformGroup.ALLOW_TRANSFORM_WRITE);

BoundingSphere bounds = new BoundingSphere(new Point3d(), 1000.0);

MouseRotate rotator = new MouseRotate(this.transformGroup);rotator.setFactor(0.01);rotator.setSchedulingBounds(bounds);this.scene.addChild(rotator);

MouseTranslate translator = new MouseTranslate(this.transformGroup);
translator.setSchedulingBounds(bounds);this.scene.addChild(translator);

MouseZoom zoomer = new MouseZoom(this.transformGroup);zoomer.setSchedulingBounds(bounds);this.scene.addChild(zoomer);

PointLight pLights[] = MyLightCreator.getPointLights();
for (int i = 0; i < pLights.length; i++)
this.transformGroup.addChild(pLights[i]);

this.transformGroup.addChild(MyLightCreator.getAmbientLight());
}

159 :148:03/08/02 12:59
>>151
見たいならUPするけど
Java3d始めて2週間くらいだからソース汚いとか言われそうで少し怖いな
ちなみにJavaすっとばしてJava3dやってます

160 :148:03/08/02 13:02
おおいつのまにか157,158の書き込みが
ありがとうございます
難しそうですが解読してみます

161 :148:03/08/02 13:08
159のレスは153へですね
ミスです

162 :デフォルトの名無しさん:03/08/02 13:10
変数名とかはJavaFriendlySocietyのやつに合わせてたと思う。
重要なのは
this.scene.setCapability(BranchGroup.ALLOW_DETACH);
の記述と
this.universe.getLocale().removeBranchGraph(this.scene);
でいったんsceneを切り離したあとに削除処理を行って、また
this.universe.addBranchGraph(this.scene);
でuniverseに追加し直すことじゃないかな。
まあ、universeやらsceneが何を表してるかはもう忘れてしまったけど。
適当に言ってるから知らんよw

163 :黒猫:03/08/02 13:26
javax.media.j3d.Groupクラスの
removeChild(int index)メソッドって、使えませんかぁ(・・;?

↓ Java 3D 1.2 API Documentation (javadoc)より、ですぅ。
http://java.sun.com/products/java-media/3D/forDevelopers/J3D_1_2_API/j3dapi/


164 :デフォルトの名無しさん:03/08/02 17:03
PG3ヶ月目の者です。
職場で、↓のソースを見たのですが、ちょっと疑問に思ったもんで、
質問させてください。

if( xxxx.compareTo(yyy) == -1 ){
mecheodA(); // Aの処理を実行
}else{
mecheodB(); // Bの処理を実行
}

もともと、ここの処理が書かれているところでは、
yyyより、xxxxが小さかった場合、Aの処理を実行し、
yyyより、xxxxが大きかった場合、Bの処理を実行するようになっています。

しかし、上のコーディングの
if( xxxx.compareTo(yyy) == -1 ) の条件の意味は、
xxxx.compareTo(yyy)を実行した結果の値が-1だった場合、
Aの処理を実行するという意味になってしまうと思います。
この条件式だと
yyyより、xxxxが小さかった場合、Aの処理を実行し、
yyyより、xxxxが大きかった場合、Bの処理を実行するということを
満たしていないと思っています。
なぜなら、xxxx.compareTo(yyy)で、yyyより、xxxxが小さかった場合は
負の数が得られますが、その負の数が必ず-1であるとは限らないと
考えているからです。

この考えであっているのでしょうか?
一応、調べた結果、自分なりそう結論付けました。
週末に、先輩方に聞き忘れてしまいましたので、ココで質問させて
もらいました。
どなたか、質問に答えていただければありがたいです。

165 :?:03/08/02 17:06
みてね〜♪
http://cappuccino.h.fc2.com/cappuccino.html

166 :デフォルトの名無しさん:03/08/02 17:10
んな、どうでもいい質問して。

167 :デフォルトの名無しさん:03/08/02 17:16
普通に
xxxx.compareTo(yyy)
が何を出力しているか自分で確かめてみるのが一番だと思うけど
xxxx > yyy
xxxx = yyy
xxxx < yyy
の3通り

168 :sage:03/08/02 17:16
>>161もっと致命的な・・・ネタ?!

169 :デフォルトの名無しさん:03/08/02 17:22
>>167

レスありがとうございます。

>xxxx.compareTo(yyy)
>が何を出力しているか自分で確かめてみるのが一番だと思うけど
>xxxx > yyy 、xxxx = yyy 、xxxx < yyy の3通り

なるほど。テストする時は、その3通りのパターンを考えてテストしたいと
思います。
ただ、まだ自分のPCが与えられてなくて、ソースと詳細設計書を見ながら、
自習しているといった感じなので、まだしばらくの間、テストができないんです・・・。

170 :デフォルトの名無しさん:03/08/02 17:25
>>164
インタフェース Comparable
public int compareTo(Object o)
戻り値:
このオブジェクトが指定されたオブジェクトより小さい場合は負の整数、等しい場合はゼロ、大きい場合は正の整数

とあるから、チミの主張は正しいと思われ。

171 :デフォルトの名無しさん:03/08/02 17:27
>>169
compareTo()の返り値がなんなのかがよくわからないから、そのへんを
意識してソース読み返してみては?
大きいか、同じか、小さいかの3種類を返すだけなのか、それとも
大きかったら小さかったら、その差を返すのか、とか。

172 :デフォルトの名無しさん:03/08/02 17:30
多分
-1
0
1
だと思うけどどうだろ・・・

173 :デフォルトの名無しさん:03/08/02 17:34
そうだったとしても、インタフェース通りに使え

174 :デフォルトの名無しさん:03/08/02 17:36
>>172
きめうちするとバグの元になるよ。

175 :デフォルトの名無しさん:03/08/02 17:36
>>172
インタフェースComparableは>>170が書いてる通り、
> 小さい場合は負の整数、等しい場合はゼロ、大きい場合は正の整数
なんです。-1や1に限定してしまうと、似たようなインタフェースの
Comparatorなんかの使い勝手が悪くなる。

176 :デフォルトの名無しさん:03/08/02 17:39
>>173
少なくとも、String#compareTo() は -1 0 1 以外の値も返す。

177 :デフォルトの名無しさん:03/08/02 17:45
定数返すようにすればもっと判りやすいんだろうが・・・
列挙型が無いのがだるいな

178 :デフォルトの名無しさん:03/08/02 17:52
一つのクラスで多くの事を処理するよりも
なるべく複数のクラスに分けて作っていった方が
良いのですか?

179 :デフォルトの名無しさん:03/08/02 18:05
>>178
そういう問題に悩むようになったんなら、
もう少しオブジェクト指向プログラミングについて勉強するのがいいと思う。
(複数のクラスに分けたほうがいいと言ったところで、クラス設計で悩みだすのがオチだから)

180 :デフォルトの名無しさん:03/08/02 18:05
>>177
列挙型なら Tiger で追加される。

181 :デフォルトの名無しさん:03/08/02 18:06
>>178
イエス

「一つのクラスで多くの事を処理する」場合も
インタフェースは簡潔にするといい(facadeぱたーん

182 :デフォルトの名無しさん:03/08/02 19:22
抽象電化製品クラスを継承した既存のテレビクラスとビデオクラスがあって、
これからテレビデオクラスを作るとしたらどうします?
is-a、has-a?

183 :デフォルトの名無しさん:03/08/02 19:24
has-a

184 :デフォルトの名無しさん:03/08/02 19:25
テレビデオはテレビとビデオを持っているわけだね。

185 :デフォルトの名無しさん:03/08/02 19:25
>>183
テレビデオって事ですね?
了解しました

186 :デフォルトの名無しさん:03/08/02 19:27
>>182
厳密に言うなら
そのどちらでもない
いうなれば
家電製品クラスのサブクラス同士

187 :デフォルトの名無しさん:03/08/02 19:46
public class テレビデオ extends 抽象電化製品 {
テレビclass tv;
ビデオclass video;
...
public void on() {
tv.on();
video.on();
}
}
とかか?

188 :182:03/08/02 20:04
どうでもいい質問にレスサンクスです。
Java言語では必ずhas-a関係になると思うのですが、
これが多重継承が許される言語になるとis-aも候補に出ると思うんですよね。
(Javaでis-aにしようと思うと間に何かかまさないといけないですよね?)
has-aにするのと
class テレビデオ extends 電化製品, テレビ, ビデオ
のようにis-aにするのと何が違うのかとふと疑問に思った次第です。

189 :デフォルトの名無しさん:03/08/02 20:08
初心者にお勧めなJavaの参考図書ってありませんか?
できれば最近のやつで。
「やさしいJava」というものがいいと聞ききましたが、
できればもうちょっといろいろな人の意見を参考にしたいです。


190 :デフォルトの名無しさん:03/08/02 20:13
>>182
>どうでもいい質問にレスサンクスです。
こんなこといわれると、おれたち何してたんだろうって思っちゃうので・・・

191 :182:03/08/02 20:17
>>190
はわわわわ、すみませんでした。

192 :デフォルトの名無しさん:03/08/02 20:20
>>189

「わかるかな?JAVA」
「BlackBookJavaプログラミング」
「赤坂5丁目Java1番」
「独習Java」
「俺たちのJava」
「詳細Java GUI編」
「なかなかJava前編」「どうしてJava後編」
「デザインパターンで考えるJava入門」
「Java質問スレ1〜28巻」
「今日からはじめるJavaプログラミング」
「集中講座Javaの2週間」
「猫でもわかるJava言語」
「ヒカルのJava」
「Java bo beautiful human life」

193 :デフォルトの名無しさん:03/08/02 20:22

「ああ!あの時の・・・Java」

194 :デフォルトの名無しさん:03/08/02 20:22
「ああ、昔あったよね・・・そんなJava」

195 :デフォルトの名無しさん:03/08/02 20:23
「山下君!この書類Java頼む」

196 :デフォルトの名無しさん:03/08/02 20:31
「食事中にJava見るんじゃありません!」

197 :デフォルトの名無しさん:03/08/02 20:32
>>182
日本語で考えればいい

テレビ「は」家電製品である  だからis

家電製品はテレビ持ってるっていわないだろ?

車とエンジンは

エンジンは車ではない
車はエンジンでもない

車にはエンジンあるから has

テレビデオって言うのは難しいけど

基本がテレビだと考えよう

そうすれば、テレビデオはテレビでありis

テレビデオはビデオもってるhas

俺の父ちゃんhage





198 :デフォルトの名無しさん:03/08/02 20:46
Java 的には
Interface テレビ
Interface ビデオ
Interface テレビデオ extends テレビ, ビデオ
じゃないのかなぁ


199 :デフォルトの名無しさん:03/08/02 20:49
え〜?
テレビとかビデヲインターフェースにするには
ちょっと具体的じゃない?
どうせならAV機器って言うインターフェースの方がマッチしてると思うんだけど・・・

200 :デフォルトの名無しさん:03/08/02 20:56
>>199
>>182は既存だって書いてあるのもあるが、
テレビは単独でも動作することを考えるとインターフェースはない。
ただ、ビデオに関しては「録画機能を持つ」と定義すればあり得るかも・・・ないか。


201 :148:03/08/02 20:59
>>157
消えたああああああ!!!
無事消えました。
ありがとうございます。

消えたのはいいけど次の物体が表示されないという問題がまだあるんですが・・・
ま、それは明日にしよう
今日はもう寝る!疲れた

202 :デフォルトの名無しさん:03/08/02 21:02
そうなんだけどさ、
最近のソースを読むと、InterfaceとFactoryパターンの組み合わせが多いから、

interface Applicance {}
interface Television extends Appliance {}

class TelevisionImpl implements Televison {
}

class TelevisionFactory {
public Television createInstance() { ... }
}

みたいなコードがはやりっぽいと思うんだけど。


203 :デフォルトの名無しさん:03/08/02 21:02
プラグマティックに言えば、既に作成されているだろう家電製品、
テレビとビデオがどう設計されているかによる。
テレビとビデオがクラスなら、余計なメソッドを外に見せないためにも
コンポジションするのが妥当かと。

204 :182:03/08/02 21:28
実際の例は書けないけど、うちの学生の間で長いこと使われているコードで
[携帯電話クラス]があって、それに[計算機クラス]を継承して
[計算機付き携帯電話クラス]を作ってたんですよね。
のちにカメラ機能を追加できそうだったので、
[計算機つき携帯電話クラス]を継承して
[計算機とカメラ機能付き携帯電話クラス]を作ったんです。
さらに色々な機能を付けてたのですが
あまりにも複雑になってきたので、個人的にリファクタリングして
[携帯電話クラス]を継承して、全部has-a関係にし、
[多機能な携帯電話クラス]にしたんです。
分かりやすさは前よりも向上したのですがただ、
このあとにまた他の機能を追加したとき、今度はあまりにも多機能になり過ぎて
分かりにくくならないか?
と思いまして、このリファクタリングは本当に正しかったのか
と疑問に思ったんです。
>>202とか興味深く、もっと本読んだりして勉強したいと思います。

205 :デフォルトの名無しさん:03/08/02 22:02
>>204
基本的には203のいうとおりクラス継承でなくオブジェクトコンポジションを利用して設計しておけばいいですよ。
だからあなたのリファクタリングは正しいです。
可能であればオブジェクト継承元のクラスをインターフェースにするとさらに動的な構造を持たせることが可能です。

206 :デフォルトの名無しさん:03/08/02 22:18
よく、クラスを作るときに
そのクラス内からしか使わないメソッドをprotectedにしてあるコードをよく見ます
これは(このクラスを継承することがあろうがなかろうが)こう言う風に書いておいたほうがいいのですか?


207 :デフォルトの名無しさん:03/08/02 22:22
文字列を改行したいのですがいい方法を探してます。
たとえば1〜500の長さの文字列を
一定の文字数たとえば50文字ごとに改行を入れるような感じです。

208 :デフォルトの名無しさん:03/08/02 22:37
>>206
privateだろうが

209 :デフォルトの名無しさん:03/08/02 22:38
>>207
\n

210 :デフォルトの名無しさん:03/08/02 22:50
>>206
サブクラスがオーバーライドで動作を変えることを意識してんじゃないの?

>このクラスを継承することがあろうがなかろうが
サブクラスを禁止するクラスは final を付けるわけで
それ以外なら(現状継承されてなくても)継承されることを多少は意識すべき

211 :デフォルトの名無しさん:03/08/02 23:09
>>209>>207がエスケープを知らないと思ったのだろうか・・・

212 :デフォルトの名無しさん:03/08/02 23:16
>>211
>>207読んだだけではそう取られても仕方がない。
この程度のロジック(と言うほどのものでもない処理)さえ組めないんだから

213 :デフォルトの名無しさん:03/08/02 23:18
>>211 俺は209には「\nじゃなくてline.separatorだろ」とつっこみたい。

214 :デフォルトの名無しさん:03/08/02 23:19
>>207>>211
プ

215 :デフォルトの名無しさん:03/08/02 23:23
とりあえず207は文字数の数え方を示すべき。「MS932ベースで
全角は2文字としてカウントでよろしく」とか。

216 :デフォルトの名無しさん:03/08/02 23:23
>>212
mattakuda

>>213
mattakuda

217 :デフォルトの名無しさん:03/08/02 23:27
>>214 プ

218 :デフォルトの名無しさん:03/08/02 23:30
必死だなw

219 :デフォルトの名無しさん:03/08/02 23:43
何でオレがスカトロマニアだってバレたんだ?

220 :デフォルトの名無しさん:03/08/02 23:44
Lakeアプレットのような画像処理系のアプレットを作りたくて
3日ほど前からJavaはじめた者です。
で、現在 やさしいJavaを読み終わったぐらいのレベルなのですが、
上記のようなアプレットだけ作りたいって場合、次にやるべきことってなんでしょうか。


221 :デフォルトの名無しさん:03/08/02 23:46
やさしいJavaってなに?どこの大統領?

222 :207です:03/08/02 23:46
文字列はすべてASCIIです。
すぐ思いつくのはグルグルまわしながらsubstringで切りとって
\r\nくっつけていく方法のなのですが。
もっとましな方法があるかと思って。

223 :デフォルトの名無しさん:03/08/02 23:50
終了

224 :デフォルトの名無しさん:03/08/03 00:17
あなた、もう寝ましょ

225 :デフォルトの名無しさん:03/08/03 00:57
「Javaは1日1時間」

226 :デフォルトの名無しさん:03/08/03 01:15
>文字列はすべてASCIIです。
え?Unicodeのはずですよ

227 :デフォルトの名無しさん:03/08/03 04:27
if(return.getNull() == null){
・・・・・
}

nullなのかどうか確認しようととしているのに、NullPointerExceptionを返すなんて、sunは配慮が無い。
まる二日かけて作ったデータを直列化したものが使い物にならなくなるなんて信じられない。
どうにか対策教えてください。

228 :227:03/08/03 04:29
当然もとのデータはprivateになっているということで…。

229 :デフォルトの名無しさん:03/08/03 04:32
データ作り直すしか無いのか?

230 :デフォルトの名無しさん:03/08/03 04:39
>>227
何をしたいのかよくわからんが、NullObject パターンは使えないのか?

231 :277:03/08/03 05:19
>>230
ごめん。もうちょっとがんばってみます。

232 :デフォルトの名無しさん:03/08/03 05:27
>>230
returnが、というよりもインスタンスがnullだった。
ごめんなさい。

233 :デフォルトの名無しさん:03/08/03 07:40
例題で
Runnable hoge = new Runnable() {
public void run() {
...
}
};
new Thread(hoge).start();

new Thread() {
public void run() {
...
}
}.start();
と書いてはいけないのですか?
}

234 :デフォルトの名無しさん:03/08/03 07:57
無名クラスは分かり辛いからできるだけ却下。


235 :デフォルトの名無しさん:03/08/03 08:02
無名クラスが簡単に書けるようになるといいのに。

236 :デフォルトの名無しさん:03/08/03 10:40
書けるじゃん

237 :デフォルトの名無しさん:03/08/03 10:44

             / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
     ,__     | さらっと書けるようになれますように....
    /  ./\    \________________
  /  ./( ・ ).\       o〇       ヾ!;;;::iii|//"
/_____/ .(´ー`) ,\   ∧∧         |;;;;::iii|/゙
 ̄|| || || ||. |っ¢..|| ̄  (,,  ) ナムナム   |;;;;::iii|
  || || || ||./,,, |ゝ iii~   ⊂  ヾwwwjjrjww!;;;;::iii|jwjjrjww〃
  | ̄ ̄ ̄|~~凸( ̄)凸 .(  ,,)〜 wjwjjrj从jwwjwjjrj从jr

238 :デフォルトの名無しさん:03/08/03 12:06
さらっと書けるじゃん

239 :デフォルト名無しさん:03/08/03 14:45
JAVA初心者ですが、SUN CERTIFIED PROGRAMMER FOR THE JAVA PLATFORMに
目標を立てて挑戦してみようと思ってます。
そこで独習JAVAを薦められたんですが、自分にとってはちっと難しいみたいです。
やさしいJAVAも評判の様ですけど、これ一冊でSUN CERTIFIED PROGRAMMER FOR THE JAVA PLATFORMに
試験範囲は対応出来そうでしょうか。
お勧めの参考書等あればアドバイスお願いします。
よろしくです。

240 :デフォルトの名無しさん:03/08/03 15:00
試験用の知識が必要なので参考書を買った方がいい。
これがお薦め。
http://www.amazon.co.jp/exec/obidos/ASIN/4872804740/

まあ、マ板のスレへどうぞ。
SUNのJava認定資格ってどうよ 3
http://pc.2ch.net/test/read.cgi/prog/1047866184/

241 :デフォルトの名無しさん:03/08/03 15:42
MS−DOSプロンプトってどこにあるんですか?
スタートメニューにないのですが・・

242 :スパーハカー:03/08/03 15:45
俺が隠したからね

243 :デフォルトの名無しさん:03/08/03 15:46
一度氏んでみるのもアリですね。

244 :デフォルトの名無しさん:03/08/03 15:47
[ファイル名を指定して実行] で command か cmd

245 :デフォルトの名無しさん:03/08/03 15:47
>>241
Linuxにはついてない
ktermとかならある

246 :デフォルトの名無しさん:03/08/03 15:48
>>244
ネタにしてもつまんね

247 :デフォルトの名無しさん:03/08/03 16:35
あつい

248 :デフォルトの名無しさん:03/08/03 16:41
冷房ねーの?
貧乏人

249 :デフォルトの名無しさん:03/08/03 16:44
JTree からurlアドレスを渡してWebコンテンツを開きたいと思います。
getAppletContext().showDocument(new URL("http://www.asahi.com"), "");
だとエラーになるのですが、、おしえてください

250 :デフォルトの名無しさん:03/08/03 17:29
指定行だけを読み込む方法ってありますか?
読み込むファイルが2000行をこすので、
バッファリーダーを使うとちとつらいので・・・

251 :デフォルトの名無しさん:03/08/03 17:32
プログラミング言語Javaってあんまり読まれてないのかな。

252 :デフォルトの名無しさん:03/08/03 18:26
>>250
java.lang.RandomAccessFile
ただし、行単位ではなくバイト単位なので、
行の概念をどう扱うかは自分で解決してね。
一番楽なのは1行のバイト数を固定する方法。
実装が楽でいいけど、1行に入る文字の上限ができるしファイルに無駄ができるのが欠点。
他の方法は自分で考えて。

253 :デフォルトの名無しさん:03/08/03 19:33
indexをはればええんちゃう?

254 :デフォルトの名無しさん:03/08/03 20:47
>>250
指定行をどうやって指定してるのかそれがわかれば解決できるかもしれない
行数を指定なのか?
ある文字含まれる行なのか?

255 :ut:03/08/03 20:49
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★
<コピペ推奨>「ゆうくんストリート」
http://www.geocities.co.jp/HeartLand-Oak/1314/
まずは↑のページを見て貰いたい。ビルダーで作成しているようなのだが、
入った瞬間に様々な画像が次々に動き回り、非常に見難い。というより、
何が何だか分からない状態である。また「最近メール来ないな〜。女の子の
メール待ってま〜す」「ビルダー使ってるけど僕はタグも分かる」など、イタイ発言も
満載。管理人はゆうくん(13・リア厨2)。「中学生ちゃんねる」以来のこの極悪
ホームページを殲滅させるべく、2ちゃんねらーの者共よ、集え!
<信用できない方のために、掲示板のアドレス>
http://www.ziyu.net/~rent/bbs/pt.cgi?room=yuukun
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★



256 :_:03/08/03 20:53
http://homepage.mac.com/hiroyuki44/

257 :148:03/08/03 21:06
誰かJava3D分かる人いませんか〜
俺の悩み聞いて下さい

これは愚痴なのだがJava3Dのスレがないのが悲しい

258 :デフォルトの名無しさん:03/08/03 21:08
なくもない。
【徹底討論】Java3Dの可能性について考える
http://pc2.2ch.net/test/read.cgi/tech/1033703640/

259 :148:03/08/03 21:11
逝ってきます!

260 :デフォルトの名無しさん:03/08/03 21:13
JTabelを列ごとに編集不可にしたいですが方法がわかりません。
8列あるJTableの5〜8列を編集不可にしたいのですが。
よろしくおねがいします。

261 :超超初心者・・・:03/08/03 21:17
javaを始めた、というか始めようと思った、プログラム未経験者のものです。
さきほど、Pathの設定というものをしようとしていました。私の持っているテキストに
よると、AutoExac.batというファイルを開き、その中にPATHという設定があればその行の末尾に
"C:\j2skd1.4.0_03\BIN"という記述をするよう書かれていたのですがコンパイルがうまくいかなかった
ため、PATH=○○○○(何が書かれていたか覚えていません)の記述の
あった行の下に更にPATH=C:\j2skd1.4.0_03\BINという記述をして、再起動
しようとしたら、Windowsが開かなくなってしまいました。Dos画面のように
なってWin.Comがみつかりません。Windowsの読みこみを続けることができません
というメッセージが出てしまいました。システムの復元などができればと
思い、調べてみたのですが、Windows98の場合の復元方法が見つからず
とてもこまっています。どなたか解決方法に心当たりのあるかた、助けてください!!


262 :デフォルトの名無しさん:03/08/03 21:20
>>261
PC初心者
http://pc2.2ch.net/pcqa/

263 :ひまわり:03/08/03 21:21
http://life.fam.cx/a010/





264 :デフォルトの名無しさん:03/08/03 21:53
>>260
自作TableModelを定義し、そのクラスで
javax.swing.table.TableModel#isCellEditable(int rowIndex, int columnIndex)
を定義して、columnIndexが4〜7のときにfalseを返すようにする。
そのインスタンスをJTableのTableModelにセットする。
自作TableModelは、javax.swing.table.AbstractTableModelを継承したクラスを作るのがいい。

この話がサパーリわからんようなら、APIドキュメントのjavax.swing.JTable、javax.swing.table以下と、
http://java.sun.com/docs/books/tutorial/uiswing/components/table.html
を読んでJTableの使い方を理解する。

265 :239:03/08/03 22:11
>>240さん

レスありがとう御座います。
一回マ板のスレで聞いてみますね。



266 :デフォルトの名無しさん:03/08/04 00:02
>>264
DefautTableModelつかってるだけなら、単に、
class MyTableModel extends DefaultTableModel{
 public isCellEditable(int rowIndex, int columnIndex){
  if(columnIndex>=4 && columnIndex<=7)return false;
  return super.isCellEditable(rowIndex,columnIndex);
 }
}
でいいんじゃねえの。

267 :デフォルトの名無しさん:03/08/04 00:07
>>250
どうしてもスピードアップしたいなら、そのファイルを作成する時に、
一番頭とかオシリとかに、各行のヘッダ位置のリストを保存しとくべし。
そうすれば、読むときは、最初にそのリストだけ読んで、2000番目の
位置にジャンプすればいい。

PDFフォーマットで(行単位に対してではないけど)この方法をつかっているよ

268 :デフォルトの名無しさん:03/08/04 00:14
>>249
Appletは、普通ダウンロード元サーバ以外へのソケットコネクション生成は
できません。署名入りJarにして、ユーザに、Applet起動時に「そういうこと
をしてもいい」という認証をさせてください。

269 :241:03/08/04 01:45
>>244
cmdででてきました。ありがとうございます
超初心者だったので

270 :デフォルトの名無しさん:03/08/04 05:22
http://www.atmarkit.co.jp/fdotnet/special/java2cs/java2cs_01.html

具体的に考えてみよう。
Webのユーザビリティの低さに嫌気がさして、スマート・クライアントを作ることにしたとする。
その場合にJavaで発生するのは、GUIコントロール(コンポーネント)の
イベント・ハンドラ(リスナ)の実装をどうするかという問題だ。
フォーム(フレーム)にボタンを2つ貼り付けた場合、ボタンのイベント・ハンドラを
フォームのメソッドで実装することはできない。
同じインターフェイスなのでメソッド名が同じになってしまうためだ。
これを避けるためにはボタンA用のイベント・ハンドラを表現するクラスとボタンB用の
イベント・ハンドラを表現するクラスを作らなければならない。
貴重な労力の無駄遣いだ。嘆かわしい。



>ボタンのイベント・ハンドラをフォームのメソッドで実装することはできない。

ほんとうですか?

271 :デフォルトの名無しさん:03/08/04 06:08
>>261
稀にいる大馬鹿者だな。世間は君を必要とはしないよ。

272 :デフォルトの名無しさん:03/08/04 06:09
"04-Aug-2003 06:02" のような文字列を日付として取り扱いたいのですが、

  SimpleDateFormat df=new SimpleDateFormat("dd-MMM-yyyy HH:mm");
  Date date=df.parse("04-Aug-2003 06:02");

とすると、
java.text.ParseException: Unparseable date: "04-Aug-2003 06:02"
とエラーが出ます。
これは"Aug"という文字列で解析に失敗してるようなのですが、
何か解決方法はありませんでしょうか?

273 :デフォルトの名無しさん:03/08/04 06:30
>>270
イベントリスナの実装はフレームのコンストラクタでやるのが普通だろw



274 :デフォルトの名無しさん:03/08/04 08:30
>>270
件の記事はタコライターの日記または感想文なので、真面目に読まないほうがいいよ。
フォーラムでことごとく論破されている。

275 :デフォルトの名無しさん:03/08/04 10:07
>>274
ということにしたいんですね(w

276 :デフォルトの名無しさん:03/08/04 10:43
>>272
SimpleDateFormat("dd-MMM-yyyy HH:mm")

SimpleDateFormat("dd-MMM-yyyy HH:mm", Locale.ENGLISH)
Locale.USとどっちがいいのかな。

277 :デフォルトの名無しさん:03/08/04 11:12
>>273
多分、君は意味を取り違えている。その記事は
ボタンを2つ配置したフレームクラスがあって、
それぞれのボタンのイベントハンドラ(アクションリスナ等の処理メソッド)を
そのフレームクラス上のメソッドでは行えない、と言ってるのだろう?

まあその記者はGUIが相当弱そうだがな。
J2EE一辺倒でJavaを語るなヴォケといいたいw

278 :aaa:03/08/04 11:50
Javaを学ぼうと思っているのですが
調べてみたところ4種類ぐらいあるあるのですが
どれから始めたらよいですか?

279 :デフォルトの名無しさん:03/08/04 12:01
>>278

スタートアップぐらいは人に聞かず自分でやれよ。
>>1-14あたりににJava製作環境導入についてのリンクがあるだろ。
努力もしないで教えてばっかりいうなよ夏厨君w

280 :デフォルトの名無しさん:03/08/04 12:10
>278
逆に教えてほしいのだが、「4種類ぐらい」ってのは何と何を指している?


281 :デフォルトの名無しさん:03/08/04 12:17
>>276
サンクス。出来ました。ありがとう。好きです。

282 :デフォルトの名無しさん:03/08/04 12:48
問題:以下のコードの実行結果を1つ選択して下さい。

class Bool {
static boolean b;
public static void main(String [] args) {
int x=0;
if (b ) {
x=1;
}

else if (b = false){
x=2;
}
else if (b){
x=3;
}
else {
x=4;
}
System.out.println("x = " + x);
}
}


1.X = 0
2.X = 1
3.X = 2
4.X = 3
5.X = 4
6.コンパイルエラー

283 :デフォルトの名無しさん:03/08/04 12:56
ていうか、Sunの試験って毎日やってんの?
情報処理試験みたいに年に数回しかやってないと思った
しかも試験時間は2時間弱かよ!結果もその日にわかるらしい
全然知らなかった・・・丸一日かかってあたりまえだと思ってたよ
なんか今まで、敬遠してたけどうかうかしてられないですね

284 :デフォルトの名無しさん:03/08/04 12:57
自動車免許

285 :デフォルトの名無しさん:03/08/04 13:28
あるServletのクラスでcatchしたExceptionをString型にして、
JSPに渡してブラウザで表示させたいのですが、toStringだとバックトレースが表示されません。
どうしたらバックトレースも含めたString型(にキャストできる)のエラーメッセージ
を取得できるのでしょうか?

286 :デフォルトの名無しさん:03/08/04 13:36
>>285
StringWriter sw = new StringWriter();
PrintWriter pw = new PrintWriter(sw);
e.printStackTrace(pw);
String s = sw.toString();

287 :285:03/08/04 13:42
>>286
ありがとうございました!

288 :デフォルトの名無しさん:03/08/04 16:01
swingを使って画面を作っています。
画面数が30と多いため、画面遷移する際、パネルに張っているボタンや
リストをクリアしようと思うのですが、パネルだけをnullとするだけで
いいのでしょうか?
それとも、パネル上の要素全てnullとしなければならないのでしょうか?


289 :デフォルトの名無しさん:03/08/04 16:51
>>282
6コンパイルエラー
else if (b = false){
b == false です。

290 :デフォルトの名無しさん:03/08/04 16:53
>>289

ぎゃはははっははははははは

ひっかかったひっかかったワイワイワーイ!

勘違い野郎発見しました!!

291 :デフォルトの名無しさん:03/08/04 16:57
/   /:::::::::::::::::::::::::`'::::::::::::::::::::\ \
 \.  /::::::::::::::::::::::::::::::iVi:::::::::::::::::::::::ヽ/
   ヽ/::::::::::::::::::::::::::::::::| |::::::::::::::::::::::::::|
    l:::::::::::::::::::::i:|:::::::|:|  |/|'l:::::::: i:::::::::|、
    |::::::::::ト:从|'l:|:_::::|'!  / `ー '|:::::::/::ヽ
    N::人::| , ─、`    ,─ 、  |へ':::::::|  >>289いい?
    /:::::::r‐l 〈 i.::::|       |.::::i 〉 | 〉〉::::::| もうこんな間違いしちゃだめよ
    |::::::::l〈ヽr 、 ̄      ̄   |ノ::::::::::ト、
    |::::::::ヽ | |    '       /::l::|:::::::::ト、\
   |'i;:::::::/| |     匸)    / Tー、::::;N| ├、
    / ̄/ | ト   r‐、   イ〉  ヽ  ̄  |  |
  /    | | └ ⌒ヽ/   /   |    | /
 /     ヽ |  -'⌒ヽ〉  /   |   /

292 :デフォルトの名無しさん:03/08/04 17:02
>>282
答えは1〜6のどれでもないだろ

293 :デフォルトの名無しさん:03/08/04 17:11
>>292
え?・・・はい?

294 :デフォルトの名無しさん:03/08/04 17:31
>>288
変数にnull代入してもパネルはなくなりません。
java.awt.Container#remove(Component)を呼んで、
コンテナから明示的に削除しましょう。
また、その後でjava.awt.Container#validate()を呼ばないと
再配置したコンポーネントが表示されなかったと思います。

295 :デフォルトの名無しさん:03/08/04 18:18
コンパイル時には何のエラーもなく成功し、アプレットビューワでも正常に動作するのですが、
私がコンパイルしたアプレットが、ブラウザ上で表示されません。(デフォルトの灰色画像のまま)

既にブラウザ上でアプレットとしてきちんと表示される、本や他人のソースファイルなども、
私がコンパイラするとブラウザ上で表示されません。(私がコンパイルせず他人がコンパイルしたものはブラウザ上で表示される)

コンパイラも様々なバージョンでコンパイルし、
JREもきちんと設定し、様々なバージョンでIEやネスケで試したんですが、直りません。
どなたか解決法をご存じの方はいらっしゃらないでしょうか?

296 :デフォルトの名無しさん:03/08/04 18:24
なんでだろ〜♪なんでだろ〜♪

297 :デフォルトの名無しさん:03/08/04 18:42
>>292
>>293のために
んなこたあない。
とだけでもいっとこう。
こんな簡単な宿題も解けないんでは・・・・


298 :デフォルトの名無しさん:03/08/04 18:48
>>297
動かしたら
5.X = 4
になりました

299 :デフォルトの名無しさん:03/08/04 19:01
俺が動かしたら"x = 4"ってなったからどれにも当てはまらないと思うんだが。

300 :デフォルトの名無しさん:03/08/04 19:04
>>299
ああ、そういうことね
Xはxに読み替えてね


301 :デフォルトの名無しさん:03/08/04 19:07
出力の比較はequalsIgnoreCaseを使うことっていう注意書きがいるな。

302 :288:03/08/04 19:30
>>294
回答ありがとうございます。参考になります。

303 :デフォルトの名無しさん:03/08/04 22:20
アプレットが動きません。
appletviewerだと成功します。
IEでも成功します。
NN7.1だと
「読み込み中 -Java アプレット
 Sending events to applet.LOAD
Sending events to applet.INIT
Sending events to applet.START」
で止まっています。
ちなみに同じNN7.1でも別のアプレットは動いたりします。
どうしたらいいのでしょう?

304 :295:03/08/04 23:44
>>303
同じような質問ですね。
あなたのコンパイラのせいか、もしくはアプレット全てなのかどうかは限定できないですが。

何のヒントにもなりませんが、
私のほうでは以前IEで動作せずNNで動作するというあなたと逆のことが起こりました。
その時は、winがVMを対応しなくなったばかりでsunのJREがうまく対応していなかったみたいです。

NN7.1だと、デフォルトのjavaプラグイン(またはネスケのサイトにあるプラグイン)が古いバージョンの可能性があります。
いったんプラグインや既存のJREを削除して、最新のJREをsunからダウンロードしてインストールすることを強く勧めます。

305 :デフォルトの名無しさん:03/08/04 23:54
このスレに来るたび、アプレットをいまだにやってる人間がいることに驚き。
イントラネットなんかでは利点もあるだろうけど、いまさらアプレットをやる利点は何?
あと MS JVM の問題とか初心者はいろいろひっかかるとこも多いから
プログラミングの勉強にもあんまむいていないと思うんだけど。

306 :デフォルトの名無しさん:03/08/05 00:02
accessDBにJDBCでアクセスしたいのですが定石みたいな構文はあるのでしょうか?
あと、JDBCはJDKの中にあるのでしょうか?


307 :デフォルトの名無しさん:03/08/05 00:08
Appletは捨てケテーイ。JavaWebStartにしろ。
なんでいまさらIEのView内部で固定サイズでJavaを動かしたいのか
意味不明。頭悪い。無知蒙昧。

308 :デフォルトの名無しさん:03/08/05 00:12
>>305
勉強中だからこそアプレットやってるんでない?
入門書にもよくのってるし、GUIもそこそこ簡単だし、アプレットなら
自分で作ったオナニーソフトも配布(公開)しやすいし。
誰もが通るとまではいかないにしろ一過性なもんでしょ。

309 :デフォルトの名無しさん:03/08/05 00:13
>>306
定石:
1.JDBCドライバ実装をJVM上にロード。
2.Connection作成。
3.Statement作成。実行。
4.(検索の場合)ResultSetから必要なデータを取り出し。
5.使い終わったらConnectionクローズ。

JDKには、JDBCのAPIと、ODBC-JDBCブリッジドライバ実装しかないよ。
SunのホムペにJDBCの各種ドライバのリポジトリがあるから、君の用途
によさげなのを探してトッテコイ。
http://servlet.java.sun.com/products/jdbc/drivers


310 :デフォルトの名無しさん:03/08/05 07:56
>>305
shockwaveでも無理な死ぬほど重い処理をブラウザ上で実行するため。
・・・そのくらいしか思いつかない。

311 :デフォルトの名無しさん:03/08/05 09:02
javaでpingって作れないのか

312 :デフォルトの名無しさん:03/08/05 10:30
pingを作るにはraw socketというのが必要なんだけど標準ではついてないみたい

313 :デフォルトの名無しさん:03/08/05 11:37
java3dの視点を動かすのは簡単なんだが
その視点移動の速度が速すぎる
とにかく速い
俺がオナーニで逝くのにかかる時間並に速い
遅くする方法ない?

314 :579:03/08/05 13:42
textareaにて改行した文をDBに保存して
再度それをtextareaに取り出したら改行の<br>がついて
表示されてしまうのですが
どうしたらいいのでしょうか?

315 :デフォルトの名無しさん:03/08/05 13:43
>>314
読み込むときに切り取っておかないといけない

316 :デフォルトの名無しさん:03/08/05 13:45
それと、textareaの属性wrapも関係している

317 :デフォルトの名無しさん:03/08/05 13:46
改行もデータベースにデータとして取り込むのか
それとも、改行は削除してデータベースに取り込むのか

318 :デフォルトの名無しさん:03/08/05 15:38
>>313
2枚重ねてつければ感度は鈍るらしいよ。遅くなるかも。

319 :デフォルトの名無しさん:03/08/05 15:45
>>318
ラッピングしろってことですね!

320 :はずかしながら:03/08/05 15:52
String#compareTo() などの表記の # てなんですか。

321 :デフォルトの名無しさん:03/08/05 15:56
++
++ → #

322 :デフォルトの名無しさん:03/08/05 15:57
StringクラスのcompareTo()メソッドという意味

別にString@compareTo()とかでもいいけど
なぜ、「#」になったかは>>323あたり

323 :デフォルトの名無しさん:03/08/05 16:06
たとえば「String#compareTo()」を名前欄に入れて、
どのメソッドがトリップになっているかを当てるゲームが昔流行っていたから。

324 :String ◆Cci17thXHk :03/08/05 16:08
>>323
なるほど

325 :デフォルトの名無しさん:03/08/05 16:21
static でないメソッドという意味なの ?

326 :_:03/08/05 16:22
http://homepage.mac.com/hiroyuki44/hankaku06.html

327 :デフォルトの名無しさん:03/08/05 16:25
http://www.vesta.dti.ne.jp/~hi-lite/fe/ero.html
すごくフェチだ

328 :String ◆Cci17thXHk :03/08/05 17:01
>>325
staticは関係ないけど
たしかUMLの可視性にはそういうのあったな
publicなメソッドには「+」
privateは「‐」
protectedは「#」
packageは「~」
でもそうなると
「String#compareTo()」
は、protected?

329 :デフォルトの名無しさん:03/08/05 17:11
>>320
$JAVADOC_ROOT$/docs/ja/api/java/lang/String.html#compareTo(java.lang.String)
とかが省略されたのでは?
とか勝手に思ってたけど…

俺は static であるかどーかとか、アクセス修飾子とか関係無く "#" をつけたり "." をつけたり してる。

330 :デフォルトの名無しさん:03/08/05 17:47
遅延初期化について

public static final Stringなメンバを遅延初期化するって一般的ですか?

public static final String foo;

static {
 foo = "bar"; // プロパティファイルなどから動的に、一度だけ取得する。
}

こういった場合は、getterメソッドを用いて遅延初期化させた方がいいのでしょうか。


331 :デフォルトの名無しさん:03/08/05 18:00
>>329
> $JAVADOC_ROOT$/docs/ja/api/java/lang/String.html#compareTo(java.lang.String)
すっげー納得。

332 :デフォルトの名無しさん:03/08/05 18:32
>>329
( ・∀・)つ〃∩ ヘェーヘェーヘェー

333 :デフォルトの名無しさん:03/08/05 19:02
スレ違いだったらすみません。
Borland JBuilder9 パーソナルについてお尋ねさせてください(急ぎませんので気長にお返事待ちます)。

ボーランドからメールで受け取った許諾ファイルをインポートしようとしても
「使用許諾ファイルが壊れています」
と出てしまいます。
ファイルを受け取った際に、メールソフトがメール本文とファイルの中身を
テキストファイルとして一つに繋げてしまったためにちゃんとインポートできないのだと
思うのですが、、

ファイルの中身はこのような形↓

(改行)
-----BEGIN BLOCK-----
(改行)
*********************
*********************
*****いろんな文字*****
*********************
*********************
(改行)
-----END BLOCK-----
(改行)

でいいのでしょうか?
それとも、-----BEGIN BLOCK-----や-----END BLOCK-----という文章も
メールソフトが勝手につけてしまった文字なのでしょうか??
色々試してもだめで、ネットでも有効な情報が見つかりませんでした。
どなたか許諾ファイルを持っている方いらっしゃいましたら、元々はどのような形式だったのか教えてください。
長文ごめんなさい。よろしくお願いします。

334 :333:03/08/05 19:05
ちなみにメールソフトはBecky ver2、OSはWindows2000でファイルは
ホームディレクトリ
C:\Documents and Settings\<username>
に保存しています。

335 :デフォルトの名無しさん:03/08/05 19:21
>>333
THIS IS AN AUTO-GENERATED MESSAGE - PLEASE DO NOT REPLY TO THIS MESSAGE(改行)←1行目
(略)
-----END BLOCK-----(改行)
(改行)←100行目


てな感じだったよ。ファイル名はreg???.txt

336 :デフォルトの名無しさん:03/08/05 19:23
ていうか、本文と添付ファイルと内容一緒か

337 :333:03/08/05 19:31
>>335(=>>336?)さん、どうもありがとうございます。

でも駄目でした。。全く同じ内容の許諾ファイルなんですが^^;

本当にファイルが壊れてるのかもしれません。
とりあえず>>335さんのお陰で、そのままのファイルをインポートすれば良いことが分かったので
もう一度ファイルを取得してみます。

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


338 :デフォルトの名無しさん:03/08/05 20:04
RMIをいじっています。
java.rmi.StubNotFoundException と出ます。
どうしたらよいでしょうか?
コンストラクタ時に既に何か必要なんですか?

import java.rmi.*;
import java.rmi.server.*;

public class SampleRemoteServer extends UnicastRemoteObject {
public SampleRemoteServer() throws RemoteException { super(); }

public static void main(String[] args) {
try {
SampleRemoteServer r = new SampleRemoteServer();
System.out.println("success");
} catch(Exception e) {
System.out.println(e);
}
}
}


339 :デフォルトの名無しさん:03/08/05 20:10
>>338
その程度の知識でRMIなんて扱うな

340 :デフォルトの名無しさん:03/08/05 20:29
>>339
それはわかったのですが、クライアント側で定義したインターフェースの
名前がサーバ側で取り込めない、
あと、クライアントのmainが内部クラス内にあるんですが、その呼び出し
方法がわかりません。

341 :デフォルトの名無しさん:03/08/05 20:57
>>338
それはわかったのですが、お前の態度が気に入らない

342 :デフォルトの名無しさん:03/08/05 21:03
>>340
俺はRMIをさっぱり知らないが、今少し検索してみたらすぐわかったぞ

  自  分  で  調  べ  ろ  夏  厨  房

343 :デフォルトの名無しさん:03/08/05 21:10
>>342
本当に分かっているのならちゃんと説明できるはずだが?

344 :デフォルトの名無しさん:03/08/05 21:24
340=343

345 :デフォルトの名無しさん:03/08/05 21:33
まぁまぁ、煽らずに。初心者に優しくしてあげよう。

>>338
説明は結構細かくて面倒だからしないけど、
下のページがあなたのレベルにとってはよいと思うよ。
http://www.union-jp.net/home/yukino-t~4.html

346 :デフォルトの名無しさん:03/08/05 21:40
今、残っているのはもっと単純なことです。
>クライアント側で定義したインターフェースの名前がサーバ側で取り込めない、
ですが、下記のような状況です。
myServerの方をコンパイルしようとしたら、「シンボルを解決できません」とエラーが出ます。

別のプログラムなのに、どうしてmyRemoteInterfaceという名前が伝えられるの?
トップレベルクラスなら同じディレクトリに置いておけば使えるけど、
ここでは内部クラスや内部インターフェースとして定義した名前を別のソースから使いたい。
パッケージってのがよくわかってないのが原因なんでしょうか?

public class myClient {
 public interface myRemoteInterface extends java.rmi.Remote
 {
  <RMIメソッドの定義>
 }
・・・
}

public class myServer
 extends java.rmi.server.UnicastRemoteObject
 implements myRemoteInterface
{
・・・
}

347 :String ◆Cci17thXHk :03/08/05 21:50
基本をわかってないんじゃないか?
RMIはカンケーなしに・・・

348 :デフォルトの名無しさん:03/08/05 21:51
あるクラスの内部インターフェースを、他のクラスでimplementsしたい。
そういうことですね。

349 :デフォルトの名無しさん:03/08/06 00:23
public class myClient {
 public static interface myRemoteInterface extends java.rmi.Remote
 {
  <RMIメソッドの定義>
 }
・・・
}
public class myServer
 extends java.rmi.server.UnicastRemoteObject
 implements myClient.myRemoteInterface
{
・・・
}

あんさん、インナークラスのネームスペースやらスコープ範囲やらを分かって
ないな。
もしインナークラスがstaticじゃないなら、そのクラス型をいじるにはアウタ
ークラスの" インスタンス"が要る。
クラスフィールド、インスタンスフィールドと同じ扱いが必要なんだよ。

public class A{public classB{}}
public class C{public static class D{}}

A.B objB = new A().new B();
C.D objD = C.new D();

350 :デフォルトの名無しさん:03/08/06 01:02
突然だがな、寝る前にちょっと暇ができたんで言っとく。
お前ら上級者には
時に適切な助言をもらい、時に目から鱗の助言をもらい、
時に不適切な助言をもらい、時に意味不明の助言をもらい、
そして煽られ、無視されてきた。

しかしこのスレにきて早3週間、「コンパイルって何よ?」って状態でお手上げだった漏れも
ようやくJAVAで簡単なアプリケーションを作れるようになった。正直、ちょっと感動した。

お前らが人に感謝してほしくて初心者の質問に答えるような、
そんな殊勝な連中じゃないことぐらいよくわかってる。
だからキモいんだよオメーとか言われても仕方ない。
そして俺は素で夏厨ではない。
だけど言っとこう。

チョットシッテルカラッテ          アオリヤガッテ
 ヽ( `Д)ノ <どうもありがとう>ヽ(`Д´)ノ

351 :デフォルトの名無しさん:03/08/06 01:21
>>350
じゃあネタにマジレスしてやるよ。
人に聞くだけじゃなくて自分で調べる技術を身につけやがれ。
Javaで簡単なアプリケーションなんて、ネットで検索すりゃ出てくるんだよ。
それをいちいち人に聞いてるようじゃ、今後上達する可能性はゼロだな。

ただ、もし自発的に調べるようになった場合だ。
苦労を重ねてプログラムが動いた瞬間のうれしさを知ってしまったお前は、
現時点で絶大なポテンシャルを秘めているとも言える。
今の気持ちを今後絶対に忘れるな。そのモチベーションは本やネットでは得られないぞ。

352 :デフォルトの名無しさん:03/08/06 01:41
このスレタイがよくない

353 :デフォルトの名無しさん:03/08/06 01:44
>>352
じゃ、初心者無視スレでも立ててくれ。
前スレは閑古鳥が鳴いてたが。

354 :デフォルトの名無しさん:03/08/06 01:47
 synchronizedについて質問です。
様々なところで、synchronizedメソッドは、synchronized (this)と同じであるという記述を
目にするのですが、下記の実験ではどう考えても同じには見えません。
私の想定では、mg1(this)オブジェクトはロックがかかっているために、
何も出力されずに永久ループになるはずです。
しかし、print()と出力されます。
何故でしょうか・・・?
見づらい(インデントが全角空白です・・・)コードで申し訳ありませんが、よろしくお願いします。

次のレスで実験コードと、出力結果を示します。


355 :デフォルトの名無しさん:03/08/06 01:48
>>354の続きです。
実験コードは下記の通りです。
class Hoge {
  public void threadTestStart() {
    Mage mg1 = new Mage();
    Thread th1 = new Thread(mg1, "th1");

    th1.start();
    try {
      Thread.sleep(500);
    } catch (InterruptedException ie) {}
    
    mg1.print();
    mg1.printLoop();
    System.out.println(mg1.getLoop().reverse());
  }
  public static void main(String[] args) {
    (new Hoge()).threadTestStart();
  }
}
まだ続きます

356 :デフォルトの名無しさん:03/08/06 01:49
>>355の続きです。たくさんですみません・・・。
class Mage implements Runnable {
  private StringBuffer loop;
  
  Mage() { this.loop = new StringBuffer("eurt"); }
  void print() { System.out.println("print()"); }
  void printLoop() { System.out.println(this.loop); }
  StringBuffer getLoop() { return this.loop;}

  public void run() {
    synchronized (this) {
      synchronized (this.loop) {
        while (!"true".equals(this.loop.toString()));
      }
    }
  }
}
出力結果:
java Hoge
print()

357 :デフォルトの名無しさん:03/08/06 02:05
走っているスレッドを考えよう。
まず、main関数のスレッド。それと、君が立ち上げた"th1"スレッド。

threadTestStartの先頭でth1スレッドが立ち上がって、
synchronized(this)とsynchronized(this.loop)をロックし続ける。それは問題なし。

その次、threadTestStartでmg1.print();が呼ばれる。これも問題ない。
なぜなら、Mage#print()メソッドはsynchronizedによってロックされていないからだ。
同様に、mg1.printLoop();も呼ばれ、eurtを出力する。
そして、最後にSystem.out.println(mg1.getLoop().reverse());が実行され、trueを出力する。
これでmainスレッドは終わり。そして、th1スレッドは永遠ループにはいる。

だからその出力結果はおかしいはず。
print()
eurt
true
<無限ループ>
のはずなんだが、俺の勘違いかな…テストしてないので自信がない

358 :デフォルトの名無しさん:03/08/06 02:06
あ、StringBufferだったのか。じゃ永遠ループしないね。自己レスすまそ

359 :ネタへマジレスしてみるテスト No.1:03/08/06 02:14
>>350
噴出すほどワロタ。

お前のような自分で調べたり、本を買って独学で取得することが出来ないやろうが、
ある程度他の人に教えることができるまでの技術を身につけることは出来ないぞ。
必要ないがな。

俺の友達に、アプリのへルプが読めない香具師がいる。だからフリーソフトさえ使えない。
予断だが、そいつが12M、ADSLなのに俺がISDNしか使えない地域(数十メートル先では余裕でADSL出来るんだがな)なのだ。泣けてくるぜ。

話を戻すと、どう考えてもヘルプが読めないわけがない。なぜなら日本語だからだ。そんなに難しい日本語ではない。

それではなぜ読めないか?
読もうとしないからさ。読もうと努力することをしないからさ。

これはお前にも当てはまるわけだ。他人に教えてもらう前に、自費で本を買え。
どれがいいかなんてのは、立ち読みで選ぶんだ。まぁお勧めを買ってもいいさ。

それを一冊こなせ。意地でもこなせ。
最初はSystem.out.println("オマエモナー");程度だろう。
ひとまず例題を打ってみたら、新しいメソッドを改造してみるわけだ。
例えばSystem.out.println("俺もなー");とか。
そして実行する。
こういうことを繰り返していき、たくさんのメソッドやらを使えるようになると、
そのうち自分で実現したい機能を、自分で考えて実現することが出来るようになる。

360 :ネタへマジレスしてみるテスト No.2:03/08/06 02:15
これこそがプログラマーであろう。もちろんそこからはどれくらい効率的にできるか、コードをどこまで短く出来るか、
どれくらい実行速度を速くできるか。色々と考えれることがある。
もちろん今はネットがあるから、すぐに習えるが、それがいいのか悪いのか俺としては正直分からない。
自分でとことん考えることをしなくなるからな。
本当はそこに自分の飛躍する好機があるはずなのだが、ネットの普及でそれをやらない人も多いのかもしれない。
俺個人の考えとしては、出来るだけ最初のほうはネットで調べるのを控えたほうがいいような気がする。
主観的に見てだがな。
客観的に見れば、本を買わずに、いい勉強材料があるから絶対にいいのだが。

俺が言うネットの利用ってのは、アルゴリズム(つまり機能の実現方法)だ。
ソートやら、サーチやらのことや。
こういう機能のメソッドがあるかってのを調べるには、ネットは最高だなぁと思う。

まぁ本をこなせ。頑張れ。あと351の後半部分を頭に焼き付けておくことや。


361 :デフォルトの名無しさん:03/08/06 02:26
>>354
簡単に言うと
PrintStream#println(Object)
PrintStream#print(Object)
String#valueOf(Object)
StringBuffer#toString()
new String(StringBuffer)

の順で呼ばれて new String(StringBuffer) 内で
StringBuffer(this.loop) のロックを得ようとして固まるだけ。
synchronized (this) はあっても無くても関係ない。

362 :デフォルトの名無しさん:03/08/06 02:42
ああ、そっか、StringBufferってスレッドセーフだっけ?
synchronized(this.loop)と
StringBuffer#toString()のロックがぶつかっているのか。なら納得

363 :デフォルトの名無しさん:03/08/06 07:42
 >>354です。
答えてくれた方は>>357さんと>>361さんでしょうか?
ありがとうございます。

 ひょっとして、仮にStringBufferがスレッドセーフではなかった場合、
mg1.printLoop(); の行も動くってことでしょうか?
もし、そうであるならば納得できます。
print();が出力されるのは、print()メソッドがsynchronizedされていないから
というのは理解しました。

364 :デフォルトの名無しさん:03/08/06 07:51

☆★ 無修正DVD専門店 ★☆

安心のアト払い!ダマシ無しの裏モノです。
いまならキャンペーン中でお買得!!

http://fry.to/first
http://no1.to/first

365 :デフォルトの名無しさん:03/08/06 12:16
>>363
多分動くね。実験してみたら?

366 :デフォルトの名無しさん:03/08/06 12:52
基本ですいません。
Fileオブジェクトを作りたいのですが
File file=new file("C:\\java","test.txt");
もしくは
File file=new file("C:\\java\\test.txt");
とやってもエラーがでてしまいます。
どこが間違っているのでしょうか?


367 :デフォルトの名無しさん:03/08/06 12:55
File file=new File("C:\\java\\test.txt");

368 :_:03/08/06 12:56
http://homepage.mac.com/hiroyuki44/

369 :366:03/08/06 13:31
あ、失礼しました。 書き間違いです。
File file=new File("C:\\java\\test.txt");
としてますが
シンボルを解決できません。
シンボル:コンストラクタ File(java.lang.String)
とエラーメッセージがでてきています。




370 :デフォルトの名無しさん:03/08/06 13:39
importしなさい

371 :366:03/08/06 14:00
あぁ、
import java.io.*;
とちゃんと書いているのですが・・

372 :デフォルトの名無しさん:03/08/06 14:06
ローカルパッケージにFileクラスが存在するのではないかね。
java.io.File file = new java.io.File("c:\\java\\test.txt");
を試してみたら。


373 :デフォルトの名無しさん:03/08/06 14:24
>>354
見づらいと思うなら、コピペ前にスペースを&nbsp;で置換すればいい
俺はそうしてる


374 :デフォルトの名無しさん:03/08/06 15:13
>>373
漏れは>>354じゃないけど、ナルホド。

375 :366:03/08/06 15:30
>>372
どうもありがとうございました。
java.io.File file = new java.io.File("c:\\java\\test.txt");
でいけました^^

376 :デフォルトの名無しさん:03/08/06 15:42
>>305
> このスレに来るたび、アプレットをいまだにやってる人間がいることに驚き。
> イントラネットなんかでは利点もあるだろうけど、いまさらアプレットをやる利点は何?
JavaWebStartを使えといいたんだろうが。
AppletのそばにHTMLで文書を置いた手軽なサイトをつくるにはかなり適していると思うが。
JavaWebStartで作るにもポップアップウィンドウがウザイとおもうときや、
作るのがAppletよりも面倒で手間がかかるってことがあるだろう。

おまえのいってることはこれからの時代はペーパーレスの時代だから
紙は一切使うべきでないといってるようなものだが。

377 :StringBuffer ◆vPgUU/9cZs :03/08/06 15:52
他人のソースとか見ると、文字の連結にはStringBuffer#append(色々)
がよく使われているみたいだけど、速度量ってみたら
String#concat((=゚ω゚)ノどうも) > StringBuffer#append(ぬ) > +←これ
の順だった
結局どれが一番いいんですか?

378 :StringBuffer ◆vPgUU/9cZs :03/08/06 15:54
文字の連結ちゃうな
文字列の連結やった

379 :デフォルトの名無しさん:03/08/06 15:57
>>310
> shockwaveでも無理な死ぬほど重い処理をブラウザ上で実行するため。
shockwaveは科学技術計算が重い。
さらに、Appletほどカスタマイズされた細かいプログラムを作ることはできない。
shockwaveでネットワークプログラミングするにも限界がある。

Web3Dなどブラウザで3D表示するプラグインが、JavaAppletでできているものもある。
VRMLソースをCosmoPlayerやCORTONA VRML Clientや
M$ VRML Viewerのインストール無しで表示できるJavaAppletだ。

Appletを否定している香具師も
よく考えてみろ。

あるポータルサイトで片隅や上部に表示されるだけの3Dのバナー広告が
いちいちポップアップウィンドウで表示されたら、これほどうざいサイトはないだろう。
バナー広告やちょっとしたアニメーションを表示するためだけにわざわざ
JavaWebStartなんぞを使う馬鹿がいるか?
そういうときこそAppletが使われるときだろう。

JavaWebStartとはどう使うべきかは適材適所で使い分けろ。

380 :デフォルトの名無しさん:03/08/06 16:05
>>377 これ見れ

public String concat(String str) {
int otherLen = str.length();
if (otherLen == 0) {
return this;
}
char buf[] = new char[count + otherLen];
getChars(0, count, buf, 0);
str.getChars(0, otherLen, buf, count);
return new String(0, count + otherLen, buf);
}


public synchronized StringBuffer append(String str) {
if (str == null) {
str = String.valueOf(str);
}

int len = str.length();
int newcount = count + len;
if (newcount > value.length)
expandCapacity(newcount);
str.getChars(0, len, value, count);
count = newcount;
return this;
}

381 :StringBuffer ◆vPgUU/9cZs :03/08/06 16:06
>>380
ども
ってか今まで俺もソース読んでました
StringBufferの方が断然よかったです

382 :StringBuffer ◆vPgUU/9cZs :03/08/06 16:34
StringBuffer#ensureCapacity(いんてガー)
を使うと、もっと早くなりました...

383 :デフォルトの名無しさん:03/08/06 16:37
>>382
ループで回した場合での結果?
文字数は?

384 :StringBuffer ◆vPgUU/9cZs :03/08/06 16:53
こんなかんじです
/* 定義 */
int GURU_GURU = 50000;
String[] cat = {"目から目","手から手","手から型","手から腰","手から頭","口から口"};
/* 一回目(StringBuffer) */
public static void StrBuff() {
 StringBuffer ff = new StringBuffer();
 for(int i=0;i<GURU_GURU;i++) {
  for(int x=0;x<$cat.length;x++) {
   $_.append($cat[x]);
  }
 }
}
/* 二回目(String) */
public static void StrBuff() {
 String oh = "";
 for(int i=0;i<GURU_GURU;i++) {
  for(int x=0;x<cat.length;x++) {
   ph.concat(cat[x]);
  }
 }
}
/* 結果 */
String#concat():平均200ミリ秒
StringBuffer#append:平均300ミリ秒
StringBuffer#append + ensureCapacity():平均200ミリ秒 領域広めすぎるとOutOfMem(ry
PCの環境は.....あんまよく分からないんですが.....winXPでメモリ120MBってことは確か

385 :StringBuffer ◆vPgUU/9cZs :03/08/06 16:56
ぎゃー
変数姪間違えた
一回目のところ
$cat→cat
$_→ff
二回目のところ
ph→oh

386 :デフォルトの名無しさん:03/08/06 17:22
普通にStringBufferが早いよ。

時間の計り方等間違ってたりして。

387 :デフォルトの名無しさん:03/08/06 17:31
ensureCapacityを使えば早くなるのは当たり前ではないのか?
あらかじめ必要な領域がわかっているならね。

388 :354:03/08/06 18:34
>>365
 なるほど。どうもありがとうございますー。モチロン試してみます!
学校行く直前だったので試しもせずにレスしました。すみません。

>>373
 ありがとうございます。初めて知りました・・・。

389 :350:03/08/06 20:09
350だ。スレの趣旨と違う上に遅レスで申し訳ないのだが
今朝、>>351>>359>>360を読んで激しくショックを受けたので一言申し付ける。

確かに漏れは、プログラミング始めたばっかしで自信が持てないこともあり、
わからないことは自分でやるより人に訊いた方がいいと思い込んでたフシがある。
自分じゃ気づいていなかったが・・・

それにしてもお前ら、一度でも俺の質問にこんなマジレスくれたことありましたか?(゚Д゚)ゴルァ!
というのが一番の感想だったのだが
というか、意に反してお前らのうっぷん晴らしの格好のターゲットになってしまっただけなのだが

お前らの「自分で調べろ」発言を
>そして煽られ、無視されてきた。
に単純分類してきた自分をチョト反省した。

以上で、漏れはまたいつもの礼儀正しいデフォルトの名無しさんに戻るよ。
初心者丸出しでも(だからこそ、か?)自分で考えたり、必要な情報を探す努力が必要って事は、脳に焼印しておくよ。
よく考えたら、当たり前のことだな。
 
 トコロデヨ ネタッテナンダヨ                           マジレスデ
タシカニアノアト スグニネタガナ                           スマソー
    ヽ( `Д)ノ   <にしても何で感謝して反省してんだ俺は>  ヽ(`Д´)ノ

390 :350:03/08/06 20:13
ごめん、ageちまった。。

391 :デフォルトの名無しさん:03/08/06 20:51
つーか基本的にこのスレではマジレスなんだけどな。
初心者は煽りとかに感じるのかね。「自分で検索しろ」という言葉。
調べるのが大変な事柄は答えてやってるんだけどなぁ。

392 :初心者:03/08/06 21:00
おい愚痴んな。検索しろ。

393 :デフォルトの名無しさん:03/08/06 21:23
>>392ほらよ、検索結果↓

全2件中1 - 2件目
>>351
>>359

394 :デフォルトの名無しさん:03/08/06 22:02
>>350ってコピペだと思ってたのに違ったのか・・・
普通にいい話系かと思ってた。あんた才能あるよ。もしかしたら流行るかもね

>それにしてもお前ら、一度でも俺の質問にこんなマジレスくれたことありましたか?(゚Д゚)ゴルァ!

このスレに限ってははマジレスガ圧倒的に多いな。他は知らん


395 :デフォルトの名無しさん:03/08/06 22:56
クラスライブラリのドキュメントが
検索も無くて使いにくいのですが
他に簡単に検索できるようなドキュメントとかないんでしょうか?
Winのヘルプファイルとかになってるやつとか
あったら教えてください

396 :デフォルトの名無しさん:03/08/06 22:59
>>395
無いね。検索ならブラウザので使えばいい。

397 :デフォルトの名無しさん:03/08/06 23:11
>>395
IDE使うか、>>396が書いてるようにドキュメントはWebで公開されてるから、
「Java API [検索文字列]」
でググれば出てくる。

398 :デフォルトの名無しさん:03/08/06 23:17
>>395
http://rd.vector.co.jp/soft/win95/prog/se202146.html

399 :デフォルトの名無しさん:03/08/06 23:37
jreを入れたら
MS-IMEがおかしくなってしまいました

なんかツールバーが複数個表示されるンス。

ちなみにバージョンは1.3.06でっす。

なにか対処ほうはありますでしょうか?

400 :無料動画直リン:03/08/06 23:38
http://homepage.mac.com/miku24/

401 :デフォルトの名無しさん:03/08/07 00:06
>>397
FQCN入れて、I'm Feeling Luckyだろ。

402 :デフォルトの名無しさん:03/08/07 00:07
>>399
>ちなみにバージョンは1.3.06でっす。

なんでそんな古いものを・・・

403 :デフォルトの名無しさん:03/08/07 00:10
最近仕事で見たソースに以下のようなものがありました。
public void searchHoge() {
String sql = "select hoge from boo where baz = ?"
PreparedStatement pstmt = conn.prepareStatement(sql);
pstmt.setInt(1, piyo)
ResultSet rs = pstmt.executeQuery()
//以下検索結果を処理
}
なにかを検索するたびにこのメソッドが呼ばれてましたが、
ここでPreparedStatementを使う意味はあるんですか?
結局pstmt.executeQueryを呼び出したのは上の1回だけでした。



404 :デフォルトの名無しさん:03/08/07 00:17
>>403
一度プリコンパイルされるから、SQLの速度が速くなることが期待できる
何度も呼び出されるなら当然のパフォーマンステクニック

405 :デフォルトの名無しさん:03/08/07 00:18
>>404
同じsql文で何度もprepareStatementしたら、
毎回プリコンパイルされたりしないの?

406 :デフォルトの名無しさん:03/08/07 00:21
>>403
APサーバによっては、「PreparedStatementキャッシュ」って機能がある。
http://www.atmarkit.co.jp/fjava/rensai2/webopt11/webopt11.html

また、検索条件にユーザ指定の文字列を使うような場合、
シングルクォーテーションとかのエスケープを考えなくてすむので
かえってコードがシンプルになることも多い。

407 :403:03/08/07 00:34
このプログラムはサーバ上で動いてるものではなかったです。
PreparedStatementの説明を読んで思ったのが
PreparedStatement st = con.prepareStatement(sql);
for (int i = 0; i < 10000; i++) {
st.executeQuery();
}
見たいな処理が早くなるのかなーって。
403で書いたみたいにメソッドの中でPreparedStatementを作成していたら
for (int i = 0; i < 10000; i++) {
PreparedStatement st = con.prepareStatement(sql);
st.executeQuery();
}
みたいなことになってコンパイルを毎回することになって(?)
あまり意味がないんじゃないかと思ったわけです。


408 :デフォルトの名無しさん:03/08/07 00:38
>>407
APサーバを使っていなければ、確かに意味が無いかもしれない。
もちろんforの外でPreparedStatementを作っていれば速くなるよ。

409 :406:03/08/07 00:41
>>407
> 403で書いたみたいにメソッドの中でPreparedStatementを作成していたら
> for (int i = 0; i < 10000; i++) {
> PreparedStatement st = con.prepareStatement(sql);
> st.executeQuery();
> }
> みたいなことになってコンパイルを毎回することになって(?)
> あまり意味がないんじゃないかと思ったわけです。

だから、>>406のリンク先の記事を最後までよく読めって。

あと、JDBC3.0からは、JDBCそのものにもPreparedStatementキャッシュのための
フレームワークが用意されている。
# もちろん、JDBCドライバ側の対応が必要だが。

410 :デフォルトの名無しさん:03/08/07 00:47
JAVAアプレットについてなのですが、
テキストに書いてある文がいまいちよくわかりません。

「画像を表示する」やり方の単元で、
img=getImage(getDocumentBase(),"rrrrrr.gif");
の文の解説で、
「getDocumentBase()メソッドはAppletクラスのメソッドです。引数なしで
呼び出すと、このクラスファイル(rrrrrr.classで作りました)を呼び出した
HTMLファイル(rrrrrr.htmlで作りました)の置いてあるURLオブジェクト
を返します。つまり、HTMLファイルと同じディレクトリに画像ファイルがある
ときは{getDocumentBase()}と書けばよいのです」
と書いてありました。

「このクラスファイル(rrrrrr.classで作りました)を呼び出した
HTMLファイル(rrrrrr.htmlで作りました)の置いてあるURLオブジェクト
を返します。」
この部分のイメージがつかめません。
どういうことなんですか?

411 :デフォルトの名無しさん:03/08/07 00:47
>>406
なるほど、エスケープしなくてすむのか。それはかなり大きいな。

でもすべてのSQLをPreparedStatementすると、APサーバの負荷が重くなるのかな?

412 :デフォルトの名無しさん:03/08/07 00:50
>>410
アプレットをまったく知らない俺が勘で答えよう。
自分自身のクラスを呼び出したHTMLが置いてあるURLを返してくれるんだよ、きっと。
http://a/b/sample.htmlからtest.classを呼び出したとすれば、
getDocumentBaseはhttp://a/b/を指し示す何らかのオブジェクトを返してくれるんだろう。

413 :403:03/08/07 00:50
先ほどのプログラムは開発時のツール的な小さなプログラムで
DBから落としてきたデータをxmlのファイルとして出力するというものでした。

こういう場合、DBからデータを落としてくるクラスがあったとして、
そのクラスのフィールドとしてPreparedStatementを持つのもありなんですか?
そのクラスの中のいろんなところで条件違いのsqlが出てくる場合とか。


414 :406:03/08/07 00:59
>>411
> でもすべてのSQLをPreparedStatementすると、APサーバの負荷が重くなるのかな?

どうだろ?
あまり悪影響はなさそうな気もするけど…
# 漏れのところでは、全てのSQLをPreparedStatementで処理するフレームワークを
# 使っているが、特にパフォーマンスの悪化は感じられないよ。

>>413
> こういう場合、DBからデータを落としてくるクラスがあったとして、
> そのクラスのフィールドとしてPreparedStatementを持つのもありなんですか?
> そのクラスの中のいろんなところで条件違いのsqlが出てくる場合とか。

ありだと思うが、PreparedStatementは、元となるConnectionがcloseされた時点で
無効になってしまうことに十分注意しておくべし。

415 :デフォルトの名無しさん:03/08/07 01:13
全く同じSQLなら、どうせDBサーバがコンパイル済みSQLをキャッシュしているはずだが。

416 :デフォルトの名無しさん:03/08/07 01:19
京大受験希望の知的な女性が出演。
中学生の頃に覚えたオナニーで性感帯はしっかり開発されており
すっかりグッチョリの様子。
無料ムービーはこちらから
親切、安心サイト
http://www.j-girlmovie.com/


417 :デフォルトの名無しさん:03/08/07 01:29
>全く同じSQLなら、どうせDBサーバがコンパイル済みSQLをキャッシュしているはずだが。

他人だけど補足。
素のStatementではパラメータが違うと「全く同じSQL文」にならないが
PreparedStatmentならパラメータ部分(?部分)が違っても「全く同じSQL文」になるから
DB側のキャッシュが期待できる。(もちろんDMBSによる)

PreparedStatementのデメリットは一つもないからガンガン使うべし


418 :デフォルトの名無しさん:03/08/07 02:05
CallableStatementってツカッテマスか?

419 :デフォルトの名無しさん:03/08/07 05:59
>>418
ツカテマスガナニカ

420 :デフォルトの名無しさん:03/08/07 06:06
>>414
DB2なんかではアプリケーションヒープを適切なサイズにチューニングしておかないと
DBに接続できなくなる。無計画にPreparedStatement使うのはよくない。

あと元になるConnectionがクローズされたときでも、DBMSにPREPAREDされたSQLの
実行計画はキャッシュされるのである程度のパフォーマンスの向上にはつながる。

421 :デフォルトの名無しさん:03/08/07 10:45
Javaでsocket通信のサンプルを作ろうとしているのですが、
BufferedReaderのreadLineで読み込みを行うと
データの終了時にそこで待ち状態に移行してしまいます。
リファレンス見た限りではnullがリターンされると思うんですが・・・

あと、InputStreamでも-1が帰る前にウエィトが発生してしまいます
コレって、プロトコル解析してループを抜けるしかないんでしょうか?

Javaのバージョンは1.4.2です・・・・_| ̄|○モウダメポ

422 :デフォルトの名無しさん:03/08/07 10:47
>_| ̄|○モウダメポ

じゃなくって、そのあたりのソース見せなさい

423 :デフォルトの名無しさん:03/08/07 10:49
>>421
似たような経験あり
読み込み終わったはずなのに
ソコでずーっと終わってる
なので、読み終わる前に終了するようにしていた
つまり必要なデータ部分取り出せば後は用なしなので
ループから抜けさせてた

424 :デフォルトの名無しさん:03/08/07 11:01
> 422
すいません、確かにそうですよね
ゴメンナサイ

Socket socket = new Socket("xxx.xxx.xxx.xxx", 9999);
BufferedReader in = new BufferedReader(new InputStreamReader(socket.getInputStream()));
String str;
do {
 str = in.readLine();
} while (str != null);


Socket socket = new Socket("xxx.xxx.xxx.xxx", 9999);
InputStreamReader in = new InputStreamReader(socket.getInputStream());
StringBuffer str = new StringBuffer();
while (b != -1) {
 b = in.read();
 str.append((char) b);
}


425 :デフォルトの名無しさん:03/08/07 11:08
PSPでソニーは敗退する

426 :デフォルトの名無しさん:03/08/07 12:12
>>424
え?これだけ?
out.print("GET /index.html\n\n");
とかはどうした?

427 :デフォルトの名無しさん:03/08/07 12:22
> 426

あー。。。

BufferedReader の場合は
out.write("command");


OutputStreamReaderの場合は
out.write("command");
out.flash();

で、サーバーへコマンドを投げています。
一応、ちゃんと受信してるんですが、データの終わりを検出できず
ずっとWaitがかかってる状態になってしまいます。
本当だったら、null なり -1 が帰ってくるはずだと思うんですが・・・


428 :デフォルトの名無しさん:03/08/07 12:30
>427
BufferedReader の readLineで読んでるなら、
何らかの改行こーどを送るか、closeしてストリームの
終了になるまでは待つに決まってるような。

out.write("\n");

429 :デフォルトの名無しさん:03/08/07 12:51
コンポーネントってなんですか?
コンテナってなんですか?

430 :デフォルトの名無しさん:03/08/07 13:04
>>429
文脈を限定せよ。例えばAWTとか。

431 :デフォルトの名無しさん:03/08/07 13:05
> 428
ぐへ、commandには\r\nつけてますが
一応、closeしてみます

432 :デフォルトの名無しさん:03/08/07 13:11
>>431
え?
\r\nではなくて\n\nじゃないの?まあ、ココでは
コマンド送れてるのでまあよしとして・・・


>>423でも書いたようにそうなっちゃうみたいなの

433 :デフォルトの名無しさん:03/08/07 13:14
> 432

"\r\n"ですよ
"\n\n"ってアリなんですか?

434 :デフォルトの名無しさん:03/08/07 13:22
>>433

え?コマンド送るんだろ?改行コード送るんじゃないよね・・
コマンド送るときは\n\nですよ・・・

435 :434:03/08/07 13:23
言い方間違えた・・
改行2回送るんだろ?

436 :デフォルトの名無しさん:03/08/07 13:25
プロトコルで、文末が "\r\n" って定められてるんですよ。
0x0A 0x0D ですね

Javaの'\n'だと0x0Dだけなんじゃないんでしょうか?
それとも、システム依存部位?

437 :434:03/08/07 13:30
いや、そしたら2回送ってよ
「\r\n\r\n」ってな具合に・・・

あでも、コレ直したからといって大本の問題の解決にはならないので・・・

438 :デフォルトの名無しさん:03/08/07 13:32
> 437

ですね、仕方ないので通信を解析して抜けるようにします
ハァメンドクセ

439 :デフォルトの名無しさん:03/08/07 14:03
>434
CGIやServletの入出力とは書いてないので
そもそも「2回」の根拠は何も無いと思うのだけど。


440 :421:03/08/07 14:09
名前付け忘れてた・・・ゴメソ

> 439
一応、Servletとメールサーバーとの通信です(IMAP)
JavaMail使いたいんですが、添付ファイル読み込んだら落ちてしまったので(Out of Memory)
あきらめてSocketで通信しようかと


441 :デフォルトの名無しさん:03/08/07 14:18
>>440
そういうこと最初に言わん?

442 :デフォルトの名無しさん:03/08/07 14:21
>>439

っていうかHTTPのGETを想像してました

443 :デフォルトの名無しさん:03/08/07 15:21
普通、
>JavaMail使いたいんですが、添付ファイル読み込んだら落ちてしまったので(Out of Memory)
の対処法を聞かないか?

444 :デフォルトの名無しさん:03/08/07 16:09
>>424
InputStreamReaderをそのやり方で使うと
デフォルトの文字エンコーディングで入力されるから
よくない。それにメールだと入力がなにかというのは
かなり怪しげだし、誰もが行儀のいいメールを送ってくる
わけじゃないし、入力のエンコードを仮定してReaderを
使うよりStreamをそのまま使って自分で全部処理してしまった
ほうがいいと思うよ。

445 :デフォルトの名無しさん:03/08/07 16:20
画像ビューアを作ってみたのですが、なかなか上手く行かなくて2つほど変なことをしてみました。
よろしければご意見を聞かせてください。

作ったものは、Frameを継承したクラス(MyFrame)と、Canvasクラスを継承したクラス(MyCanvas)です。
読み込みたい画像をMyCanvasクラスにPaintメソッドで描画したあと、このMyCanvasクラスを
MyFrameクラスにaddして表示させているのですが、、

1.一度画像を表示させた後、続けて新しい画像を表示させようとしても
  古い画像が残っていて、新しい画像の上に重なって出てきてしまいます。
  対処方法として、新しい画像を表示させる前にMyFrameクラスで
  removeAll()を実行するようにしたのですが、、、荒業でしょうか?それともこれでかまわないんでしょうか?

2.removeAll()を実行して新しいMyCanvasをaddしても、フレームを引っ張ったりしていじらないと新しい画像が出てきません。
  そこで何となくemoveAll()→MyCanvasをaddの後、さらにフレームをsetVisible(true)させるようにしたら
  すぐに表示されるようになったのですが、、皆さんでしたらどう対処するのでしょうか?

※文章ばっかりでごめんなさい。

446 :445:03/08/07 16:33
不要かもしれませんが、一応>>445の作業をしている
MyFrameクラスの「開く」メニューから呼ばれるメソッドを書いておきます。

public void canvasOn() {
//開くダイアログの表示
  FileDialog dlg = new FileDialog(this);
  dlg.show();
  if((dlg.getFile() != null) && (dlg.getDirectory() != null)){
      String fileName = dlg.getDirectory()+dlg.getFile();
      //開くダイアログで指定したファイルを読み込んだCanvasを作成
      MyCanvas cv = new MyCanvas(fileName);
      removeAll();//←ここが、疑問1
      add(cv);//新しい画像を読み込んだCanvasをadd
      setVisible(true); //←ここが、疑問2
   }
}

447 :デフォルトの名無しさん:03/08/07 16:54
ContainerにComponentを追加したときは,
invalidate()する。(疑問2の答え)

だがそれ以前に、removeするほうがおかしい。
MyCanvasが、コンストラクタでしかファイル名を
指定できないのか? setFileとかメソッドを書いて、
ペイントする画像をさしかえれるように作っとくだ。
(疑問1の答え)


448 :デフォルトの名無しさん:03/08/07 16:54
update()とか呼ぶんでなかったけ?

449 :446:03/08/07 17:03
>>447どうもありがとうございます。
とりあえずinvalidate()でできただす。後でJAVA-docでメソッドよく調べてみます。

>MyCanvasが、コンストラクタでしかファイル名を
>指定できないのか? setFileとかメソッドを書いて、
>ペイントする画像をさしかえれるように作っとくだ。
なるほど。。その通りですね^^;
アドバイスどうもありがとうございました。

>>448ありがとうございました。
update()調べてみましたが使えそうだすね。勉強になりますだ。やってみます。


450 :デフォルトの名無しさん:03/08/07 17:47
質問!

JOptionPane.showMessageDialog(pane,msg,"Error",JOptionPane.WARNING_MESSAGE);
とかでダイアログ呼び出すときの
表示されるフォントって変えられるんですか?

451 :デフォルトの名無しさん:03/08/07 18:02
第二引数にJLabelオブジェクトを渡すことにして、
JLableオブジェクトのフォントをお好みのものに変更すればできるんでないかな。
swingコンポーネント(awtコンポーネント?)を渡すと
なかなか凝ったダイアログが作れるよ。

452 :450:03/08/07 18:07
>>451
第二引数結構いろいろとれるんだーなるほど…
たすかったす!さんきう!

453 :デフォルトの名無しさん:03/08/07 18:15
JavaのGUIアプリケーションを、普通のWindowsアプリケーションのようにするにはどうしたらいいんでしょうか?

ジャヴァハウスを見たら簡単なやり方として、
VBでコマンドプロンプトを起動してクラスを動かすEXEファイルを作るという方法と、
batファイルを作っておくという方法があったのですが、、

普通のアプリみたいに(見た目として)Dosの窓が開かずに動くアプリにする方法、
もしくは解説のあるサイト、書籍があったら紹介していただけないでしょうか。
よろしくお願いします。

454 :デフォルトの名無しさん:03/08/07 18:47
>>453
jar を java じゃなくて javaw コマンドで起動する。

455 :デフォルトの名無しさん:03/08/07 18:53
>>454知りませんでした(お恥ずかしい)!
どうもありがとうございます。

456 :デフォルトの名無しさん:03/08/07 18:57
え?javawコマンド打ってる時点で
窓出てますが・・・

マニフェスト作って内部的にjavawっていうならわかるが・・・

457 :453:03/08/07 19:06
>>456
Dosコマンドを実行するアプリをVBで作っていたので、
javawを実行した後、Dos窓を閉じるよう変更しました。
私は、一瞬Dosが出るだけなんでこれで満足です(笑)。

>マニフェスト作って内部的にjavaw
ちょっとわかりませんでした。。勉強します。

458 :デフォルトの名無しさん:03/08/07 19:24
Jarのなかにマンコフェストファイル作って
Main-Class: メインクラス名
ってやれば、ダブルクリックで動くんだよ!(Windows限定だが)

459 :デフォルトの名無しさん:03/08/07 19:48
JPanel に大きい画を描いてスクロールをつけたいんですけど
上手につけられません。教えてください。よろしくお願いします。

import javax.swing.*;
import java.awt.*;
import java.awt.event.*;

public class Test extends JFrame
{
public Test( String title )
{
super( title );
Container container = this.getContentPane( );

GraphicsPanel panel = new GraphicsPanel( );
JScrollPane scrollpane = new JScrollPane( panel );
container.add( scrollpane );

addWindowListener( new WindowEventHandler( ) );
setDefaultCloseOperation( WindowConstants.DISPOSE_ON_CLOSE );
setSize( 350, 200 );
setVisible( true );
}

public static void main( String args[ ] )
{
Test frame = new Test( "Test" );
}
}


460 :デフォルトの名無しさん:03/08/07 19:50
(ソース続きです。)

class GraphicsPanel extends JPanel
{
  public void paint( Graphics g )
  {
     g.setColor( Color.white );
     g.fillRect( 0, 0, 1000, 1000 );
     g.setColor( Color.red );
     g.fillOval( 100, 100, 100, 100 );
     g.drawLine( 0, 0, 1000, 1000 );
  }

  public void update( Graphics g ) { }
}

class WindowEventHandler extends WindowAdapter
{
  public void windowClosing( WindowEvent evt )
  {
    System.exit( 0 );
  }
}


461 :453:03/08/07 19:52
>>458そんな簡単な方法があったんですね(また恥ずかしい)。
一応、 Jar マニフェスト で検索して解説文も見つけました。
ありがとうございました。

462 :デフォルトの名無しさん:03/08/07 20:01
USBカメラを使って、ローカルマシンの特定のディレクトリにスナップショットを任意の秒数間毎に撮影できるJavaアプリケーションを作りたいと考えています。
おそらく、対応ドライバがないとだめとかという諸問題は存在するでしょうが、構築にあたって何か参考になる書籍等はございませんでしょうか?

よろしくご教授下さい。

463 :デフォルトの名無しさん:03/08/07 20:09
有名女優からセーラー服まで
当然、無修正
無料ムービーも充実!!
http://www.ncdonald.com/


464 :デフォルトの名無しさん:03/08/07 20:22
>>462
それはつまり、

USBマウスの制御アプリをJavaで作りたい・・・
AirH"の制御ソフトをJavaで作りたいって事と難易度同じだよね
ちょっと生半可な知識じゃ無理っぽい


465 :デフォルトの名無しさん:03/08/07 20:46
>>462
ttp://java.sun.com/products/java-media/jmf/2.1.1/formats.html#Capturers
>>464
USBのあしまわりだけならIBMが提供しているはず。
AirHもJavaCOMMつかってCOMポート経由するくらいなら
できるんじゃないのかなあ。

466 :デフォルトの名無しさん:03/08/07 21:02
>>464
>>465
情報ご提供ありがとうございました。
早速検討してみます。(^^)
引き続きみなさまからの情報をおまちしております。


467 :デフォルトの名無しさん:03/08/07 21:14
>>465
できる出来ないではない
難易度が高いよと言ったまでだよ

468 :デフォルトの名無しさん:03/08/07 22:42
カメラのUSBドライバからなら、
走査線のタイミングを見計らってメモリをコピーするだけじゃない。

469 :デフォルトの名無しさん:03/08/07 23:04
>>468
どっからそのメモリのデータもってくんの!

470 :デフォルトの名無しさん:03/08/07 23:22
>>469 IBM USB APIでできるんじゃないの? そういや、これまえは
alphaWorksにあったとおもったんだけど、いまどこにあるんだろ。
JCPにかけたみたいだから、場所移したのかな? JMFも試したことない
けどやった人いる?

471 :デフォルトの名無しさん:03/08/07 23:26
1度閉じたJavaのソースプログラムを組んだファイルの開き方を教えて下さい。

1度閉じた.classファイルや.javaファイルの開き方がわかりません

472 :デフォルトの名無しさん:03/08/07 23:26

なんだ、実際試したわけじゃないのね・・・・

473 :デフォルトの名無しさん:03/08/07 23:30
>>471
1度きりの人生大切にしてください



474 :デフォルトの名無しさん:03/08/07 23:30
>>471
何のこと言ってんだろう・・・

475 :デフォルトの名無しさん:03/08/07 23:32
>>471

俺が今まで見た質問で一番キョーレツだ!

ググレともAPI嫁とも言えないし、どうやって料理すればいいんだよ!

明日、会社行きたくない

476 :470:03/08/07 23:32
>>472 468がどういうつもりかは俺は知らんけどね。

477 :デフォルトの名無しさん:03/08/07 23:32
>>471
ソースの開き方がわからないんだな。

どうやるんだろう?

478 :デフォルトの名無しさん:03/08/07 23:34
>>475 ハゲワラ

479 :デフォルトの名無しさん:03/08/07 23:36
>>471
エディタとかでプログラムを書いて、*.javaで保存したら開けなくなっちゃったってことかな?
仮にそうだとしたら、その*.javaファイルをメモ帳とかに放り込め。

480 :デフォルトの名無しさん:03/08/07 23:38
>>479
お前の話は詰まらん!
マジレスハンターイ

481 :デフォルトの名無しさん:03/08/07 23:38
おちつけ、もまいら
まず、1行ずつやっていこう

Lesson1

「1度閉じたJavaのソースプログラムを組んだファイルの開き方を教えて下さい。 」

この文を、日本語的に解釈しよう

「・・・」を「教えてください。」

これはいいな、次

「・・・」の「開き方」を「教えてください。」

よしよし、順調だ 次


482 :デフォルトの名無しさん:03/08/07 23:40
>>479
ああーそういうことか

拡張子変わって、デフォルトで開けなくなっちゃったのか・・・
なんかかわいいな

483 :デフォルトの名無しさん:03/08/07 23:40
>>471
スゲ-教えてあげたい
どうすればいい?

484 :479:03/08/07 23:42
>>480あまりに難問で翻訳に集中しちまって
そこまで気が回らなかったよー
不意打ちされて俺がワラタ。

485 :デフォルトの名無しさん:03/08/07 23:44
先ずはWindows板に先導することが先決だ。
http://sports.2ch.net/test/read.cgi/bicycle/1056529890/l50

486 :デフォルトの名無しさん:03/08/07 23:44
>>484

ツマラン!

487 :デフォルトの名無しさん:03/08/07 23:54
今日一番の笑いでした。ありがとう。
漏れはもう寝ます。
朝までに>>471の書き込みがありますように。

488 :デフォルトの名無しさん:03/08/08 00:03
>>487

いやぁ、僕も衝撃的でした

何年ぶりだろう。。。「素」で、二度見しちゃったよ

こんな日本語なら英語のDoc読んでたほうがましですね

なんか、仕事にやる気出てきました

489 :479:03/08/08 00:08
くっそー 俺だけ真剣に悩んじまってノリノリになれなかった気分だぜ。
でもオマイラ面白かったぞ。ありがとな。

490 :デフォルトの名無しさん:03/08/08 00:34
スタンドアローンのjavaのプログラムとWebアプリに組み込むjavaプログラム
の違いは何ですか?
社員情報を登録するシステムを作成するとしたら、どちらがよいですか?
その理由は何ですか?

491 :デフォルトの名無しさん:03/08/08 00:42
>>490そんなに訊いちゃいや〜ん。
とりあえず
>スタンドアローンのjavaのプログラムとWebアプリに組み込むjavaプログラム
>の違いは何ですか?
だけ自分で調べて、残りについては自分の胸に聞くが吉。


492 :デフォルトの名無しさん:03/08/08 01:07
>>479
その方法教えて下さい。

493 :デフォルトの名無しさん:03/08/08 01:10
>>492=>>471
でいいのか?を最初に問いたい。


494 :デフォルトの名無しさん:03/08/08 01:10
>>492
あらかじめメモ帳を開いておいて、そこにファイルをドラッグ&ドロップ

495 :デフォルトの名無しさん:03/08/08 01:12
>>493
ちがうけど、同じ悩みに遭遇したのでお願いします。

496 :デフォルトの名無しさん:03/08/08 01:15
>>495同じ悩みに遭遇?????????????????????????????????????????????????????????????????????????????????????
んなバカな。。



497 :デフォルトの名無しさん:03/08/08 01:17
>>495
漏れはお前と出会って、未知と遭遇しました・・・

498 :デフォルトの名無しさん:03/08/08 01:24
この展開面白すぎ

499 :デフォルトの名無しさん:03/08/08 01:27
そんなことはどうでもいいけどさ。
>>471>>492は、まず氏んだら?

500 :デフォルトの名無しさん:03/08/08 01:28
とりあえずこの展開を見て
>>487が朝、ワラテくれるといいな。


501 :496:03/08/08 01:35
やっと落ち着いたよ。。。冷静になって自分のカキコ見直して・・・なんじゃこりゃ?
ごめんよ、マジで気が動転してたらしいや。

502 :487:03/08/08 08:16
そうきたかっ

503 :デフォルトの名無しさん:03/08/08 10:55
すごい「神」が降臨してますな
しかも2神も・・・
あのすばらしさは、ネタでは作れないな
「素」がなせる技だ。あるいはマジで小学生ぐらいだな。


504 :デフォルトの名無しさん:03/08/08 11:49
>>459-460
GraphicsPanel に
Dimension size = new Dimension(1000, 1000);
public Dimension getPreferredSize()
{
  return size;
}
てな行を追加してみては如何かと。

505 :デフォルトの名無しさん:03/08/08 12:08
ばかにしやがって

506 :デフォルトの名無しさん:03/08/08 14:16
>>462
JMFを使ったらどう?

507 :デフォルトの名無しさん:03/08/08 14:29
>>471>>492
てゆうかさ、君たちプログラムするの早すぎ。
どうせ中学生なんだろww(←リア厨とかかいてもわかんないと思うからね)

まずはPC、Windowsの勉強からどうぞ。

508 :デフォルトの名無しさん:03/08/08 14:42
JAVAでオペレータ側の任意のタイミングでクライアント側の
画像やWEBページの表示を切り替えるアプレットを作成してみたいのですが、
技術的に可能でしょうか?

現在の私のレベルは入門書を読みながら1000行程度の簡単なAI搭載オセロを
作成した程度です。

509 :デフォルトの名無しさん:03/08/08 14:52
>>507
俺は中1の頃から組んでたぞ。
中学からとか、中には小学からという奴も、
職場にはざらにいるが。。。

510 :デフォルトの名無しさん:03/08/08 15:08
配列からIteratorは作れますか?

511 :デフォルトの名無しさん:03/08/08 15:13
俺もソースプログラムを組んでくれるファイルが欲しい


512 :デフォルトの名無しさん:03/08/08 15:17
>>510
http://java.sun.com/j2se/1.4/ja/docs/ja/api/java/util/Arrays.html#asList(java.lang.Object[])
でList作ってIterator呼ぶとか

513 :デフォルトの名無しさん:03/08/08 15:26
今はList作ってIteratorを返すメソッドを使っていて
Listのかわりに配列を使おうかと思っていたので、
またList作るのは何かさびしいですね。

配列がちゃんと作れるか確認できたら
配列を返すようにしてみようと思うので、
それでやってみます。

514 :デフォルトの名無しさん:03/08/08 15:45
いーじゃんか別に

515 :デフォルトの名無しさん:03/08/08 15:49
>>514
何が?
タモリが歌わなくなったことか?

516 :デフォルトの名無しさん:03/08/08 16:10
Javaアプレットについてなんですが、
画像を左から右へスクロールさせるプログラムを
教えて下さい。

*.java,*.htmlの両方

517 :デフォルトの名無しさん:03/08/08 16:10
表示位置をかえる。

518 :デフォルトの名無しさん:03/08/08 16:19
自分の顔の位置を
右から左に移動させる

バッチグー!

519 :デフォルトの名無しさん:03/08/08 16:37
インスタンスイニシャライザってどういう場面で使うの?
普通にコンストラクタを記述するんじゃダメなの?

520 :sage:03/08/08 16:41
超初心者学生房です。
恥を忍んでお聞きします。
intの中の数値をtextfield上に表示させるにはどのように命令すれば良いのでしょうか?
ぜひお教えください。

521 :デフォルトの名無しさん:03/08/08 16:47
問いに対して真面目に答える気のない奴は書き込むな!

522 :デフォルトの名無しさん:03/08/08 16:55
>>520
import java.awt.*;

class t{
public static void main(String args[]){
TextField tf = new TextField();
int i=10;
Frame fm = new Frame();
tf.setText(Integer.toString(i));//答えはここです・・・//
fm.setSize(150,100);
fm.add(tf);
fm.setVisible(true);
}
}

523 :デフォルトの名無しさん:03/08/08 18:33
"" + i

524 :デフォルトの名無しさん:03/08/08 18:42
同じループが三つくらいあるので一つにまとめようと思うのですが
メソッドの引数にメソッドを渡すにはどうすればいいのですか?

525 :デフォルトの名無しさん:03/08/08 18:48
>>523これオモロイ。よく使う技なのか?

526 :デフォルトの名無しさん:03/08/08 18:54
>>524状況がよくわからんが、まったく同じループ?
だったら

戻り型 loop(引数){
 よく使うループ文
}

とかつくって他のメソッドの中でこのメソッドを呼び出せば。

527 :デフォルトの名無しさん:03/08/08 19:04
class ClsA {
protected int a;
public final void set(int n) {
a = n;
}
public final void display() {
System.out.println("a= " + a);
}
}
class ClsB extends ClsA {
private int b;
public void subset(int n1) {
a = n1;
}
}
public class Test {
public static void main(String[] args) {
ClsA spr = new ClsA();
ClsB sub = new ClsB();

spr.set(10);
sub.display();

sub.subset(10);
sub.display();
}
}

この場合、何故どちらもa=10にならないのでしょうか。
教えてください。

528 :デフォルトの名無しさん:03/08/08 19:18
spr.set(10);
sub.display();

spr.set(10);
spr.display();

529 :デフォルトの名無しさん:03/08/08 19:21
>>526
全く同一ではなく、for文の中身が違うやつです。
ループする回数は同じです。

for (int i = 0; .... ; i++)
for (int j = i; ... ; j++)
hoge(i, j);
このhogeを引数で渡すようにしたいのです。

530 :デフォルトの名無しさん:03/08/08 19:24
hogeをメソッドにもつクラスを引数にして
無名クラスを渡す。

531 ::03/08/08 19:30
テスト

532 :デフォルトの名無しさん:03/08/08 19:31
>>527
君は、二つ参照変数を作ってるでしょ?sprとsubと。
この2つは、別々のオブジェクトを指しているんだよ。
spr.set(10); で、sprが指すオブジェクトの int aを変えても、
subが指すオブジェクトのint aは変わらない。
したがって、
sub.display()
では何も代入されていないa(初期値で0が入ってる)がでる。

(1) spr.set(10); ← sprが指すオブジェクトのaに10を代入
(2) sub.display(); ← subが指すオブジェクトのaを表示(初期値だから0)

(3) sub.subset(10); ← subが指すオブジェクトのaに10を代入
(4) sub.display(); ← subuが指すオブジェクトのaを表示(今度は、(3)で変更されてるので10)

もしも(1)の前に
spr=sub;
と入れると、sprもsubも同じオブジェクトを指すようになるから、今のままでも両方10が出るよ。

あと、
ClsAの
protected int a;

static protected int a;
に変えると、今のままでも両方10になる。このあたりは自分で勉強しよう。
なんかすげ-長くなったな・・・

533 :デフォルトの名無しさん:03/08/08 19:38
>>527
spr.set(10);
sub.display();
どういう意図でこれをしてるか教えてほしい。

534 :デフォルトの名無しさん:03/08/08 19:48
>>533
多分、ClsAとClsBが継承関係にあるから、
spr.set(10);
sub.display();
で10が出ると思っちゃったんだよ。俺もこんな実験、勉強始めたばっかしの頃やったことある。

int aはstaticじゃないから、sprが指すaとsubが指すaは違うもの
ということだよ>>527

535 :527:03/08/08 19:51
>>532
うう。。ご丁寧にありがとうございました。
すっかり基本的なことを忘れていました。
ほんとうにありがとうございます。

>>533
ぜんぜん初心者なので、いろいろな継承パターンをあれこれしていて、
スーパークラスのメソッドを全部finalにしてオーバライドできない状態で
サブクラスからアクセスしてもいけるよなと思いやってみたら出来なかったので悩んで
いたのです。
そしたらなんと、>>532のおっしゃっている基本をすっかりさっぱり忘れていたのです。

でもほんとすっきりしました。
ありがとうございました。


536 :デフォルトの名無しさん:03/08/08 19:53
フィールドはインスタンスごとに作られるってことでいい?

537 :527:03/08/08 19:53
>>534
ああ。。まさしくその通りです。

538 :デフォルトの名無しさん:03/08/08 19:57
>>536
というか、staticなメンバかどうかという問題。
staticなメンバならインスタンスごとに作られる。

539 :538:03/08/08 19:58
>>538
間違えた。。
staticなメンバ でなければ インスタンスごとに作られる

540 :デフォルトの名無しさん:03/08/08 19:59
クラスごとちゃう?

541 :デフォルトの名無しさん:03/08/08 21:36
>>530
変数を使おうとするとfinalでないと駄目って出て、
変更できなくなるんですけど、
変更できるようにするにはどうしたらいいですか?

int foo() {
int n = 0;
Test t = new Test() {
void hoge(int i, int j) {
n++;
}
};
loop(t);
return n;
}
ってやりたいのですが。

542 :直リン:03/08/08 21:42
http://homepage.mac.com/maki170001/

543 :デフォルトの名無しさん:03/08/08 21:45
abstractクラス(またはinterface)でstaticなメソッドを
abstractにしたいときってないですか?
僕はそのような状況になってしまったのですが。
設計間違えたんだろうなあ・・・

544 :デフォルトの名無しさん:03/08/08 21:49
>>543
うわー、また変な奴らが煽りそうだよ
逃げろとにかくおまいは逃げろ



545 :デフォルトの名無しさん:03/08/08 21:54
>543
おまえはセンスがない。


546 :デフォルトの名無しさん:03/08/08 21:58
               i    ,. へ-、 __  i
               !i _,..::'"li.∧.l!  ゙_」ト、
              , j<.ー-i!  l!-―'"/\
             /゙.,へ、  ┐  i、 /   ヽ.
             .i i   >/\/)゙"‐ 、.   i
             l lレ''"  \jl!レ゙   _,...、ヽ. l
             l! rヲ――--_」Lii--――ヾ. l
キタ━━━━━━━l! // <二》 _ 《二>゙ ヾ、!、━━━━━━━━━ !!
            .j.,.ィ゙     ./ ! \_    l!\\
           /'' l!   ,.. '´ ヽ    ゙̄ーr-ノ  ゙ー-、_
         _/'´  トt-イ  ,−---    ,!/      >
        <.      ゙t'ヽ  ヽ ─ /   /,」      /
          \     `-iヽ  ヽ /  ,.r 「    _/
      .     ゙"ー―┬;L ヽ __ / ,.!┬―''"
                  !レー゙==┬==‐゙┐l
                l   テ、 ]l.l ,r= ゙.l
    ,.,..-、--ー―===ー".ヽ、  ゙r  ! ̄F" /ー--、ー-----、
  r;''/  ) ̄ ̄____ ゙ヾ=.コ l! .「"./  __ ゙̄ー--ヲ \__
  フ/,ィi」i」    ヾ====== \_ \ i! / __/,.=======ヲ  i ,. _ r、\
  / ゙"        ヾ=====   ̄    ̄   ======"   Lハ l l l トi.」
/     ,.へ     二二// ̄V ̄\\二二二゙     ,、    \

547 :デフォルトの名無しさん:03/08/08 22:00


イェロー法度のCMみた?


狙いすぎでつまんないんだけど・・・

548 :デフォルトの名無しさん:03/08/08 22:03


胃腸マン「あらわれたな!胃もたれ君!」


549 :デフォルトの名無しさん:03/08/08 22:06
>>543
素で、一体何を言っているのかよくわからない。
オマイの説明がよくワカランだけのような気がしないでもない。。
まだ逃げてなく、かつあんまり長くなければ、ソース見せてた方が早いぞ。
てか言ってると、ほぼ確実にこういうツッコミがあんだよな↓

550 :デフォルトの名無しさん:03/08/08 22:08
JAVAでスタンドアロンのアプリケーションを作ろうと
しています。
ちょっと悩んでいるので質問させてください

1.Stringの中身がすべて数字で構成されているかどうか
  調べるにはどうしたらいいか?
2.コマンドプロンプトへの出力で
  画面をクリア(DOSのCLSコマンドのような)することはできないか?


551 :デフォルトの名無しさん:03/08/08 22:15
>>550

1.Integer.parseInt()で例外発生しなければ・・・
あたまに0が付いてたらどうなるんだろう?

2.100行ぐらい改行

552 :デフォルトの名無しさん:03/08/08 22:22
実際のやつは書けないけど↓のようなもの。

abstract class SystemCorrector {
    ...
    public static abstract SystemModel createDefaultIdealSystem();
    ...
}
--------------------------------
public MachineCorrector extends SystemCorrector {
    ...
    public static SystemModel createDefaultIdealSystem {
    ...
}
...
}
--------------------------------
public MySystemCorrector extends SystemCorrector {
    ...
    public static SystemModel createDefaultIdealSystem {
        ...
    }
    ...
}

システム校正する抽象クラスがあって,
悪い状態のシステム(機械やら)を校正するっていうクラスの集まりです。
校正するにはそのシステムの理想状態がないといけないってことで
staticなクラスでその理想状態を定義しましょう。
って感じ。
インスタンスメソッドにしても良いんだけど、
とりあえず、MachineCorrectorでもMySystemCorrectorでも
全システムの理想状態ってインスタンス共通なんだよね。

553 :デフォルトの名無しさん:03/08/08 22:26
元のクラスclass SystemCorrectorのなかで
createDefaultIdealSystem()を定義すれば?ダミーで

554 :デフォルトの名無しさん:03/08/08 22:39
あーごめんなさい。
createDefaultIdealSystemのDefaultは余計でした。
defaultって書くと他にも理想状態がありそうな感じになるので。

>>553
MachineSystemModelでもMySystemModelでも理想状態は
パラメータ構成的(パラメータ数とか)に全然違うので、
その場しのぎ的な定義では意味ないっす。

抽象SystemModelクラスの派生クラス(MachineModelクラスやらMySystemModelやら)に
理想状態を定義することを義務付けるってことも考えたのですが、
プログラム的に強制するのは結局、abstract staticメソッドが必要なんですよね。
ちょっと設計やり直してみます。
駄目だったらabstractインスタンスメソッドで行こうと思います。

555 :デフォルトの名無しさん:03/08/08 22:45
よく分からんが、とにかくコードは注意して書け。

556 :543=552=554:03/08/08 22:49
>>555
うぃ。最近、デザパタの本買ったのでもっと勉強したいと思います。

557 :デフォルトの名無しさん:03/08/08 23:14
abstructでオーバーライドしたクラスを使う。

558 :デフォルトの名無しさん:03/08/09 00:55
コンパイル言語例えばC++とJavaの実行速度って
一般的にどのくらい違うもんですか?
2倍?10倍?

559 :デフォルトの名無しさん:03/08/09 00:58
>>558とりあえず、Javaもコンパイル言語だと言っておこうか。

560 :デフォルトの名無しさん:03/08/09 01:00
>>558
何を比較するかによる。起動の速さなら2〜10倍くらいJavaのが遅いし、
コードの実行速度だけなら、殆ど変らんし。

561 :デフォルトの名無しさん:03/08/09 01:11
>何を比較するかによる。
熱解析をJavaでやってみようかなあと。
これは「何を比較するかによる」にひっかかるのかなぁ。
コードの実行速度は変わらないのは以外でした。

>Javaもコンパイル言語
インタプリタ言語と区別するためにこう表現しました。
インタプリタも広義ではコンパイル言語なんですね。

562 :デフォルトの名無しさん:03/08/09 01:13
>>561
>インタプリタ言語と区別するためにこう表現しました。
>インタプリタも広義ではコンパイル言語なんですね。
それは勘違い・・・

563 :561:03/08/09 01:15
あれっ?(汗

564 :561:03/08/09 01:17
OK。*スクリプト言語ではない*ということですね。ですね?でつね?

565 :デフォルトの名無しさん:03/08/09 01:17
今SUNのダウンロードページに行くとServer Hangupになるんですが、
私のとこだけでしょうか・・・

566 :デフォルトの名無しさん:03/08/09 01:18
Javaはスクリプト言語でもインタプリタ言語でもない

567 :520:03/08/09 01:19
>>522さん
遅れましたが、レスありがとうございました。
出来ました。
専学の宿題でCPU戦の出来るオセロゲームを作っています。
自分にとっては難題ですが頑張って作ります。

568 :デフォルトの名無しさん:03/08/09 01:21
>>561
> これは「何を比較するかによる」にひっかかるのかなぁ。
起動、終了を激しく繰り返すようなプログラムにはJavaは不向き

> インタプリタも広義ではコンパイル言語なんですね。
JavaはJITコンパイラで、実行時にコンパイルする。だから、最適化
されるタイミングも、静的にネイティブコンパイルする言語と違う。
どっちがいいかは物による。

569 :デフォルトの名無しさん:03/08/09 01:26
>>566
それはJavaの変数は全て値渡しです。と言ってるのと同じだね.
実行前にnativeに変換するから,コンパイル言語と一緒だと言ってるんだろ.
漏れは惑わされないぞ!

570 :デフォルトの名無しさん:03/08/09 01:28
>>565とりあえず私はダウンロードページは見られますが。

571 :デフォルトの名無しさん:03/08/09 01:30
未だにJavaがインタプリタだと思ってる輩がいるんだなあ。
こういう輩が不当にJavaが遅いって思い込んでるんだろうなあ。

まあ起動時間は動的コンパイルの仕組み上
これ以上はあんま速くならないだろうけどね。

572 :デフォルトの名無しさん:03/08/09 01:34
JITコンパイラのコンパイル速度が飛躍的に向上すれば・・・無理ぽ

573 :デフォルトの名無しさん:03/08/09 01:37
>>395
> クラスライブラリのドキュメントが
> 検索も無くて使いにくいのですが
> 他に簡単に検索できるようなドキュメントとかないんでしょうか?
> Winのヘルプファイルとかになってるやつとか
> あったら教えてください

bashを例として(cshは面倒くさいから説明カット)

find ドキュメントが存在するディレクトリパス -name *.html
-print 2>/dev/null | xargs grep 検索したい単語

で検索しろ。Unix系じゃない? だったらcygwin入れろ。


574 :デフォルトの名無しさん:03/08/09 01:38
>>569
>それはJavaの変数は全て値渡しです。と言ってるのと同じだね。

どういう意味の発言かはわからないが、
Javaの関数呼び出しにおいては変数はprimitive型はもちろんとして
reference型もすべて値渡し(参照値の値渡し)ですが。

foo(String s) { s = "foo"; } があって
String bar = "bar";
foo(bar);
とやっても bar は "foo" にならない。

575 :デフォルトの名無しさん:03/08/09 01:40
>>395,573
namazuでも入れてみたらどうだい

576 :デフォルトの名無しさん:03/08/09 02:13
>>570
さんくすです。時間置いてみたら行けるようになってますた。

577 :デフォルトの名無しさん:03/08/09 02:23
オブジェクト配列について質問します。
Float型、Integer型、String型、Boolean型、Character型、Double型への
変換方法及び配列の作成方法と、覚えるコツを教えて下さい。
中々理解出来なくて困ってます…。

578 :デフォルトの名無しさん:03/08/09 02:34
>>577
覚えられないのか?
理解出来ないのか?

それが問題だ。

579 :デフォルトの名無しさん:03/08/09 02:43
>>578
理解出来ない、というより型が分かりません。
というより、一次元配列や多次元配列と、オブジェクト配列の
違いが分かりません。

580 :578:03/08/09 02:44
おっと、連書きごめんなさい。
違いが分かりました。でもやはり>>577で出した
型の変換方法が分からないです。。

581 :デフォルトの名無しさん:03/08/09 02:46
new Integer(1)で作る。

582 :578:03/08/09 02:49
>>581
文字列を数値に返してから変換するんですか?
それは違うと思いますが…。

583 :デフォルトの名無しさん:03/08/09 02:50
型の変換方法が何を指してるのか分からん。
何から何に変換したいんだ?

584 :578:03/08/09 02:50
>>581
ごめんなさい、自分でInteger型を入れてました。
Double,Float,Boolean,Characterでした・・・。

585 :578:03/08/09 02:53
>>583
String a = new String[3];
a[0] = "String 1";
   ・
   ・
   ・


こんな感じでString型はオブジェクト配列を作成しますよね?
これの上記に書いた型の変換(というかオブジェクト作成方法)を知りたいのです・・・。

586 :デフォルトの名無しさん:03/08/09 02:54
>一次元配列や多次元配列と、オブジェクト配列

なにがどう違うかを説明すればいいのですか?

1次元、2次元→次元
オブジェクト→中に入れるもの

587 :デフォルトの名無しさん:03/08/09 02:54
String型はオブジェクト配列を作成しますよね?

どういう意味だ?
文字の並びのことか?


588 :デフォルトの名無しさん:03/08/09 02:55
String a = new String[3];

String[] a = new String[3];

589 :デフォルトの名無しさん:03/08/09 02:58
new Integer(a[0])とかできるはずだが。

590 :578:03/08/09 02:58
>>588
すんません、忘れてました。

>>587
聞きたいのは

Double a[] = new Double[1];

Float a[] = new Float[1];

Boolean a[] = new Boolean[1];

Character a[] = new Character[1];



これでおk?って事です。


591 :デフォルトの名無しさん:03/08/09 02:59
みなさんもこの問題をといて見てはいかが?
C言語の問題です。
http://jbbs.shitaraba.com/game/bbs/read.cgi?BBS=1314&KEY=1060147851&START=115&END=200&NOFIRST=TRUE

592 :デフォルトの名無しさん:03/08/09 03:02
それでよかった気がするが、
Character[] a = new Character[1];

593 :578:03/08/09 03:04
>>592
おkなんですか・・・。
悩んでた漏れが馬鹿だった。
試せない環境にいたので助かりました。ありがとうございます。

594 :デフォルトの名無しさん:03/08/09 03:06
配列の作成は例えばBooleanの配列だったら型を単にBoolean[]だと思えばよろしい。
でコンストラクタの引数が配列の長さ。
注意すべきは普通のインスタンス作成とコンストラクタの形が違うこと。

Objectを作成するときはObject foo = new Object();
Boolean[]を作成するときはBoolean[] foo = new Boolean[10]); // new Boolean[](10) ではない

595 :デフォルトの名無しさん:03/08/09 03:07
Double d = new Double(a[0]);
Double d = Double.valueOf(a[0]);

または無駄に
Double d = new Double(Double.parseDouble(a[0]));
FloatはDoubleをFloatに変えればいい。
しかしa[0]に文字がはいってりゃだめだこりゃ。

Boolean b = new Boolean(a[0]);
または
Boolean b = Boolean.valueOf(a[0]);
またはもっと無駄に
Boolean b = new Boolean(Boolean.getBoolean(a[0]));
まあfalseになりますな。

Characterは方法がこれら以上に無数にドキュメント見て自分で
判断セヨ

596 :デフォルトの名無しさん:03/08/09 03:07
どこが変換方法なんだ?
試しながらやるのが一番いいわけで・・・。
試せずにやるのが最悪すぎます。

597 :578:03/08/09 03:11
厨な質問に付き合ってくれてありがとうございました。
やっぱり試しながらやってく事にします。

598 :デフォルトの名無しさん:03/08/09 03:13
>>597
おまえは577だろ。

599 :577:03/08/09 03:16
>>598
スマソ、寝てないのでテンパりまくりですた

600 :デフォルトの名無しさん:03/08/09 03:29
>>599
痛い言い訳ですね。

601 :577:03/08/09 03:50
>>600
まあ別にどう取られても構わないですけどね。
教えてもらうのが一番の目的でしたから。
ありがとうございました。

602 :デフォルトの名無しさん:03/08/09 11:48
必死だな

603 :デフォルトの名無しさん:03/08/09 11:54
>>602

577のカキコから何時間も過ぎてんのにそんなこと書いてんじゃねーよ
おまえみたいな奴って実際怖いよ



604 :デフォルトの名無しさん:03/08/09 12:53
>>603
俺はお前が怖い、とレスを読まずにカキコ

605 :デフォルトの名無しさん:03/08/09 13:17
>教えてもらうのが一番の目的でしたから。

こいつは一生伸びない。

606 :デフォルトの名無しさん:03/08/09 13:32
必死だなとか書いてるやつって、
逆の立場のとき、本当に必死だったんだろうなって思う。

607 :デフォルトの名無しさん:03/08/09 13:43
意味不明

608 :デフォルトの名無しさん:03/08/09 13:45
> まあ別にどう取られても構わないですけどね。

ちょっと勘にさわるようなことを言われ、
半ばやけになってるときに発する台詞。

609 :デフォルトの名無しさん:03/08/09 14:13
すみません超初心者です。誰か>>282
の解説をしてもらえないでしょうか?お願いします。

610 :デフォルトの名無しさん:03/08/09 14:17
>else if (b = false){
if文で代入しているからコンパイルエラー

つうかやってみたらイッパツダと思うが。
こんなところで何時までも待っているより、JDK落して試してミソ。

611 :デフォルトの名無しさん:03/08/09 14:20
>>609
すたてっくふぃーるどbはfalseで初期化されるってだけ

612 :デフォルトの名無しさん:03/08/09 14:25
>>610
おもんないよ

613 :デフォルトの名無しさん:03/08/09 14:32
あれでコンパイルエラーって、どんなコンパイラ使ってんのじゃろ

614 :デフォルトの名無しさん:03/08/09 14:33
>>610

>if文で代入しているからコンパイルエラー
おまえ、ネタじゃないよな?
なんでコンパイルエラーになるの?

そもそもbってbooleanなので
普通の代入と違うんだよ

つまり

if(b)って書ける

でもほかの型ならこの書き方ダメだけど・・・

言っておくけど>>282の問題はSunの認定試験の問題だよ
正解はx=4です


615 :デフォルトの名無しさん:03/08/09 14:34
シューティングゲーム作ろうと思うんだが
自機の動きのクラス とか 敵の動きのクラス とか
別々にコンパイルして作るものなんですかね?
一つのメモ帳(秀丸)で、シューティングゲームできるんでしょか・・
なんか、根本的に、理解していないい俺Rですね・・

616 :610:03/08/09 14:35
スマン。Eclipse使ってるから警告とエラーの区別つけてなかったや。


617 :デフォルトの名無しさん:03/08/09 14:36
そういう問題ではないだろ?
お前自分で判断したんだろ?
ココがエラーだって

618 :デフォルトの名無しさん:03/08/09 14:37
            ((()))   ((()))  ((()))  ((())) ((()))
            (´∈`)  (´∈`)  (´∈`)(´∈`) (´∈`)
           /⌒|/⌒ヽ./⌒|/⌒ヽ./⌒|/⌒ヽ./⌒|/⌒ヽ )))
           \ミ/彡丿\ミ/彡丿\ミ/彡丿\ミ/彡丿∈`_)
            ヽ  / . ヽ  / . ヽ  / . ヽ  / /⌒)))
            /∨ ヽ   /∨ ヽ  /∨ ヽ   /∨ ヽミイ ∈`_)
            | |  丿  | |  丿. | |  丿  | |  丿. | /⌒ )))
          .  | | / .  | | / . | | / .  | | / . ミイ ∈`_)
          ..  | | .ノ    | | .ノ .   | | .ノ    | | .ノ.   | /⌒ノノノノ
            彡彡   彡彡   彡彡   彡彡. .  ミイ ∈`_)
                                     | /⌒  )
                                       ミイ  //
                    >>600                 | ( (
                       ↓                  |  ) )
    ノノノノ            ∧∧               .       | //
     (_´∋           (;゚Д゚)                    | ノノ
    (  ⌒\          /  |                     |ノノ
    ヽヽ个彡         〜(,, UU)                 彡ヽ`
     )). |
    ((  |
     ヽヽ. |
     ( ( |
     .ゝゝ|    さぁ、帰さんぞ
     ′′ ミ

619 :609:03/08/09 14:44
ご解説ありがとうございます。
if (b) {
x=1;
}

else if (b = false){
x=2;
}

をif (b=true)に変えるとx=1になりました。これはわかります。
初期化でfalseになってるならx=2ではないでしょうか?

620 :デフォルトの名無しさん:03/08/09 14:46
else if (b = false) // b ← false

else if (b) // b の値は false

else if (false)

621 :_:03/08/09 14:48
http://homepage.mac.com/hiroyuki45/

622 :_:03/08/09 14:49
http://homepage.mac.com/hiroyuki45/jaz09.html

623 :デフォルトの名無しさん:03/08/09 14:50
>>619
b = false と b == false は違うってこと

624 :デフォルトの名無しさん:03/08/09 14:51
>>619

んだから、

>>620も言っているように

b=falseは b==falseじゃないのよ
わかる?

int x;
x=1と x==1
は、ちがうよね?

625 :デフォルトの名無しさん:03/08/09 14:53


>>623−−−>>624
結婚式のご案内です

8月20日、新高輪プリンスホテル 9階 特別展示上にて開催

詳しくは↓


626 :デフォルトの名無しさん:03/08/09 16:42
>>615
確かに根本的に理解していないようですね・・・


627 :が@Mたんちゅき p3173-ipad04fukuokachu.fukuoka.ocn.ne.jp:03/08/09 18:09
>>615たん。
そういうやりかた、strategyパターンっぽくて、かっこいいとおもう。
ついでに、ひとがいない過疎スレへ、ご招待。

デザインパターンの単純そうな質問
http://pc2.2ch.net/test/read.cgi/tech/994836140/l50

628 :デフォルトの名無しさん:03/08/09 19:00
>>627
本質的に質問を理解していないと見た

629 :デフォルトの名無しさん:03/08/09 19:29

              ┗0=============0┛
     \===========[_|_|_|_|_|_|_|_|_|_|_|_|_|_]===========/
     /三三三三三三三三三三三三三三三三三三三三\
    0 │ |∞∞∞ |::|∞∞田田田田田田∞∞|::|∞∞∞ | ::|  0
 ...[二] | ::|       |::|┏━━━━━━━━┓|::|       | ::l [二]
........|□|.│ |┌┬┐ |::|┃  /        \  ┃|::| ┌┬┐| ::|. |□|
  )三(...| ::|├┼┤ |::|┃/            \┃|::| ├┼┤| ::|`)三(´
   | ::| | ::|└┴┘ |::|┃ / ̄ ̄ ̄ ̄ ̄\ ┃|::| └┴┘| ::| | ::|
   | ::| | ::|┌┬┐ |::|┃彳 人______ ノ.┃|::| ┌┬┐| ::| | ::|
   | ::| | ::|├┼┤ |::|┃入丿ー◎-◎ーヽミ.┃|::| ├┼┤| ::| | ::|
   |: :| | ::|└┴┘ |::|┃ r   . (_ _)     )┃|::| └┴┘| ::| | ::|
   | ::| | ::|┌┬┐ |::|┃ (  ∴.ノ▽(∴  ノ ┃|::| ┌┬┐| ::| | ::|
   | ::| | ::|├┼┤ |::|┃⌒\_____ノ⌒┃|::| ├┼┤| ::| | ::|
   | ::| | ::|└┴┘ |::|┃    ┗━┛   .┃|::| └┴┘| ::| | ::|
   | ::| | ::|   ... |::|┃   . .>>577  .   ┃|::|      | ::| | ::|
.....┏━━━━━┓| .|┃          ......┃|::|┏━━━━━┓
.....┣┳┳┳┳┳┫|: |┗━━━━━━━━┛|::|┣┳┳┳┳┳┫
     ○    ●        ∫∬∫∬        ●    ○
     ○○  ●●      iiiii iii ii iiii       ●●  ○○
    [ ̄ ̄] [ ̄ ̄]   ( ̄ ̄ ̄ ̄ ̄)    [ ̄ ̄] [ ̄ ̄]
    |_○_|  .|_○_|     |_____|     |_○_|  .|_○_|
 ∧_∧ ∧_∧ ∧_∧ ∧_∧ ∧_∧ ∧_∧ ∧_∧ ∧_∧ ∧_∧
(    )(    )(,    )(,,    )    ,,)(    )(    )(,    )( ゚Д゚ )
やっと氏んでくれたね・・・引篭りで匿名掲示板でしか粋がれないデブオタこと>>577


630 :デフォルトの名無しさん:03/08/09 19:30

              ┗0=============0┛
     \===========[_|_|_|_|_|_|_|_|_|_|_|_|_|_]===========/
     /三三三三三三三三三三三三三三三三三三三三\
    0 │ |∞∞∞ |::|∞∞田田田田田田∞∞|::|∞∞∞ | ::|  0
 ...[二] | ::|       |::|┏━━━━━━━━┓|::|       | ::l [二]
........|□|.│ |┌┬┐ |::|┃  /        \  ┃|::| ┌┬┐| ::|. |□|
  )三(...| ::|├┼┤ |::|┃/            \┃|::| ├┼┤| ::|`)三(´
   | ::| | ::|└┴┘ |::|┃ / ̄ ̄ ̄ ̄ ̄\ ┃|::| └┴┘| ::| | ::|
   | ::| | ::|┌┬┐ |::|┃彳 人______ ノ.┃|::| ┌┬┐| ::| | ::|
   | ::| | ::|├┼┤ |::|┃入丿ー◎-◎ーヽミ.┃|::| ├┼┤| ::| | ::|
   |: :| | ::|└┴┘ |::|┃ r   . (_ _)     )┃|::| └┴┘| ::| | ::|
   | ::| | ::|┌┬┐ |::|┃ (  ∴.ノ▽(∴  ノ ┃|::| ┌┬┐| ::| | ::|
   | ::| | ::|├┼┤ |::|┃⌒\_____ノ⌒┃|::| ├┼┤| ::| | ::|
   | ::| | ::|└┴┘ |::|┃    ┗━┛   .┃|::| └┴┘| ::| | ::|
   | ::| | ::|   ... |::|┃   . .>>604  .   ┃|::|      | ::| | ::|
.....┏━━━━━┓| .|┃          ......┃|::|┏━━━━━┓
.....┣┳┳┳┳┳┫|: |┗━━━━━━━━┛|::|┣┳┳┳┳┳┫
     ○    ●        ∫∬∫∬        ●    ○
     ○○  ●●      iiiii iii ii iiii       ●●  ○○
    [ ̄ ̄] [ ̄ ̄]   ( ̄ ̄ ̄ ̄ ̄)    [ ̄ ̄] [ ̄ ̄]
    |_○_|  .|_○_|     |_____|     |_○_|  .|_○_|
 ∧_∧ ∧_∧ ∧_∧ ∧_∧ ∧_∧ ∧_∧ ∧_∧ ∧_∧ ∧_∧
(    )(    )(,    )(,,    )    ,,)(    )(    )(,    )( ゚Д゚ )
やっと氏んでくれたね・・・引篭りで匿名掲示板でしか粋がれないデブオタこと>>604


631 :デフォルトの名無しさん:03/08/09 20:16
unko{

String s = "";;
add(s);
System.out.println(s);
}

add(String s){
s = "unko" ;
}


これでだと、なにも表示されないのですが、
プリミティブ型やStringBufferなどのクラス型は
引数に参照の値を渡してあげると
値が変わりますよね。
なぜStringはだめなのですか?

632 :デフォルトの名無しさん:03/08/09 20:27
>>631
そういう仕様だから。不変(イミュータブル)オブジェクトという。

633 :459-450:03/08/09 21:23
>>504
レスが遅くなってすいません。
できました。本当にありがとうございました。

634 :デフォルトの名無しさん:03/08/09 22:27
JDBCを使ってORACLEから値を取得するプログラムを書いています。
取得しようとしている値に改行が含まれていて、
ResultSetのgetString()を使うとNULLになってしまいます。
そんなときは、どのメソッドで取得するといいのでしょうか?


635 :デフォルトの名無しさん:03/08/09 22:28
本当に街で見かける女子校生っぽいファッションの少女です。
スレンダーな体つきに黒い下着がセクシーです。
おもむろに男性のチンチンを咥えオマンコでも受け入れてしまう乱れ方は相当のもの!
コギャル好きにはストライクです。
無料ムービーを観てね。
http://www.pinkschool.com/


636 :デフォルトの名無しさん:03/08/09 22:34
> 取得しようとしている値に改行が含まれていて、
> ResultSetのgetString()を使うとNULLになってしまいます。

637 :デフォルトの名無しさん:03/08/10 01:17
>>631
なりゃせんぞ。
static void add( StringBuffer s ){
s = new StringBuffer( "aaa" );
}
public static void main( String args[] ){
StringBuffer s = new StringBuffer( "" );
add( s );
System.out.println( s );
}


638 :_:03/08/10 01:24
http://homepage.mac.com/hiroyuki45/

639 :デフォルトの名無しさん:03/08/10 01:36
LAN上のPCから自分が使ってるグローバルIPを得るにはどうすればいいのでしょうか?

640 :デフォルトの名無しさん:03/08/10 02:06
LANってことはプライベートIPだろうから、なにをどうしてもグローバルIPになることはない。

ルータにtelnetして内部コマンドでIPアドレスを取得
Webサーバ内蔵のルータなら、ポート80を叩いて画面出力を自力で切り出す
ネット上の環境変数を返すCGIを呼び出して、自力で切り出す。
等々。
Javaには全然関係ないね。

641 :デフォルトの名無しさん:03/08/10 02:11
>>632
>>そういう仕様だから。不変(イミュータブル)オブジェクトという。
アフォですな。

642 :639:03/08/10 02:16
>640
JAVAのプログラムでということを忘れました

643 :デフォルトの名無しさん:03/08/10 02:16
System.out.println() などでコマンドラインに出力するツールを、
jarファイルに変換するとSystem〜が出力されなくなってしまいます。

なんとか表示させる方法はないのですか?

644 :デフォルトの名無しさん:03/08/10 02:20
>>643
コンソールから起動しろよ。標準出力を画面に表示するようにしなきゃ
見えるわけねえべ。

645 :デフォルトの名無しさん:03/08/10 02:27
>>642
つまり自分のPCのアドレスとりたいのか?
java.netのServerSocketだかInternetAddressだか忘れたが
そのへんしらべろ

646 :デフォルトの名無しさん:03/08/10 02:36
自分のIPアドレスなら下でいける。

InetAddress ipAddress = InetAddress.getLocalHost();
System.out.println("MyIPAddress:" + ipAddress);

647 :デフォルトの名無しさん:03/08/10 02:36
>>643
javawで起動してないか?

648 :639:03/08/10 02:56
<646
それだとローカルのアドレス(192.168.0.1)とかが返ってくるので。
グローバルIPを知りたいのです

649 :643:03/08/10 02:56
いや、コンソールから(というかバッチファイルから)起動してるんですが・・
一応なんども確認してます。
つかもうどうでもよくなってきたんでもういいです。ごめんなさい。


650 :デフォルトの名無しさん:03/08/10 03:18
>>649

#!/bin/sh
OF=/var/hogelog_$(date +%Y%m%d).log
/usr/bin/java hoge > $OF

とかなっているとか

651 :デフォルトの名無しさん:03/08/10 03:47
>>649
そのバッチファイルの中身を貼るべし。

652 :デフォルトの名無しさん:03/08/10 04:42
>>632
なんだお前、ただの能無しだったか・・・。
どうでもいいけど、焦らすなよw

653 :デフォルトの名無しさん:03/08/10 04:42
クラス Hoge があるとき Hoge.class って書くと Class インスタンスに定数でアクセス
して速そうな気がするけど、実際のバイトコード上は毎回 Class.forName("Hoge")
をやっているということに気が付いた。

654 :デフォルトの名無しさん:03/08/10 05:01
文字列の中に半角数字があるかどうかを素早く判定する方法で
一番ローコストな方法教えて下さい。
ダサイ方法ならいくらでも思いつくんですけど。

655 :デフォルトの名無しさん:03/08/10 05:11
>>654
ローコストとは実行パフォーマンスか手間かどちらの事なのか分からないが
とりあえずそのダサい方法しかないと思われ

int len = str.length();
for(int i=0; i<str.len; i++){
  char ch = str.charAt(i);
  if(ch >= '0' && ch <= '1'){
    // 半角数字
  }
}

656 :デフォルトの名無しさん:03/08/10 05:12
>>654
不変(イミュータブル)オブジェクトを使え。


657 :デフォルトの名無しさん:03/08/10 05:13
>>656
つまんね

晒し age

658 :デフォルトの名無しさん:03/08/10 05:45
657=632

659 :デフォルトの名無しさん:03/08/10 05:51
>>655
やはりそれが一番効率良いですか。どうもでした。

660 :デフォルトの名無しさん:03/08/10 06:08
>>658 = 顔を真っ赤にした >>656

661 :デフォルトの名無しさん:03/08/10 10:59
現在、Base64でエンコードされた文字列を一部分だけ取り出してデコードを行い、
最終的に全てのデータをデコードする処理を作ってるんですがぜんぜん上手くいきません。(´・ω・`)

どうも、吐き出したバイナリを見たところ、最後に'\0'が付け足されてたり
2バイト文字なんかが入ってるとデータが壊れてしまったりしてるっぽいんです。
誰かタスケテ(つд`)

////////////////////////////////////////////////////////////////////////////
// 受け取ったStringBufferをInputStreamに変換する
////////////////////////////////////////////////////////////////////////////
private InputStream getInputStream(StringBuffer buf) {
 InputStream is = null;
 
 try {
  byte[] b = base64decode(buf.toString());
  is = (InputStream) new ByteArrayInputStream(b);
  b = null;
 } catch (Exception e) {
  e.printStackTrace(System.out);
  is = null;
 }
 return is;
}


662 :661:03/08/10 11:03
private byte[] base64decode(String str)
{
int strlen = 0;
byte[] wk = str.getBytes();
str = null;
if (((strlen = wk.length) == 0) && ((strlen%4) != 0)) return null;
ByteArrayInputStream bais = new ByteArrayInputStream(wk);
ByteArrayOutputStream baos = new ByteArrayOutputStream();
int[] enc = new int[4];
byte i, j;
boolean flg = false;

while(bais.available() > 0) {
for (i=0; i<4; i++) {
enc[i] = checkBase64Char((byte)bais.read());
if (enc[i] == -1) return null;
}
baos.write((enc[0] << 2) | (enc[1] >> 4));
if (enc[2] == -1) baos.write((enc[1] & 0x0f) << 4);
else {
baos.write(((enc[1] & 0x0f) << 4) | (enc[2] >> 2));
if (enc[3] == -1)baos.write((enc[2] & 0x03) << 6);
elsebaos.write(((enc[2] & 0x03) << 6) | enc[3]);
}
}
baos.flush();
return baos.toByteArray();
}


663 :661:03/08/10 11:03
private byte checkBase64Char(byte b)
{
boolean flg = false;// エラーフラグ

// decode base64 strings → byte
for (byte i=0; i<65; i++) {
if (b == bytemap[i]) {
if (i != 64) b = i;
else b = 99;

flg = false;
break;
}
}
if (flg) b = -1;

return b;
}


664 :デフォルトの名無しさん:03/08/10 12:58
おい、>>639
外部とつながっているブロドバンドルータの取説読めよ
おそらく、CDに入っているマニュアルに書いてある

665 :661じゃないけど:03/08/10 13:08
どうして、標準APIにBase64クラスがないんだろう・・・

666 :デフォルトの名無しさん:03/08/10 13:27
>>654
String str;
Pattern p = Pattern.compile("\\d"); // 半角数字の正規表現
Matcher m = p.matcher(str);
if (m.find()) {
  ... // 半角数字あり
}

パフォーマンスはどうか知らないが記述量はだいぶ少なくて済む。

667 :デフォルトの名無しさん:03/08/10 13:33
>>665
ネット上には
こんなのあるぜよ

パッケージ westtool.BASE64
クラスの概要
BASE64Engine
Decoder BASE64デコードクラス。
Encoder BASE64エンコードクラス。


668 :661:03/08/10 13:44
JavaMailなんかにもあったんですけどね・・・
あきらめてHDD上にバッファリングするかなぁ・・・

669 :661:03/08/10 14:14
自己レスですが、どーもデコード前のバッファリングに問題がありました・・・
(;・∀・)カコワルイ

とりあえず、ぐぐったら先人たちのイカスやつがあったんで、ちょこちょこっと修正して
動いたやつを乗せときます。

private static final byte EOF = (byte) 0xff;
private static byte[] decTbl= {
EOF, EOF, EOF, EOF, EOF, EOF, EOF, EOF,
EOF, EOF, EOF, EOF, EOF, EOF, EOF, EOF,
EOF, EOF, EOF, EOF, EOF, EOF, EOF, EOF,
EOF, EOF, EOF, EOF, EOF, EOF, EOF, EOF,
EOF, EOF, EOF, EOF, EOF, EOF, EOF, EOF,
EOF, EOF, EOF, 62, EOF, EOF, EOF, 63,
52, 53, 54, 55, 56, 57, 58, 59,
60, 61, EOF, EOF, EOF, EOF, EOF, EOF,
EOF, 0, 1, 2, 3, 4, 5, 6,
7, 8, 9, 10, 11, 12, 13, 14,
15, 16, 17, 18, 19, 20, 21, 22,
23, 24, 25, EOF, EOF, EOF, EOF, EOF,
EOF, 26, 27, 28, 29, 30, 31, 32,
33, 34, 35, 36, 37, 38, 39, 40,
41, 42, 43, 44, 45, 46, 47, 48,
49, 50, 51, EOF, EOF, EOF, EOF, EOF
};


670 :661@ソースの続き:03/08/10 14:16
public static byte[] base64decode(String str)
{
byte[] org = str.getBytes();
int strlen = org.length;
str = null;
if ((strlen== 0) && ((strlen%4) != 0)) {org = null; return null;}
ByteArrayInputStream bais = new ByteArrayInputStream(org);
ByteArrayOutputStream baos = new ByteArrayOutputStream();
org = null;
try {
byte b1=EOF, b2=EOF, b3=EOF, b4=EOF;
while(bais.available() > 0) {
if ((b1 = decTbl[(byte)bais.read()]) == EOF) break ;
if ((b2 = decTbl[(byte)bais.read()]) == EOF) break ;
baos.write(((b1 << 2) | ((b2 & 0x30) >> 4)));
if ((b3 = decTbl[(byte)bais.read()]) == EOF) break ;
baos.write((((b2 & 0xf) << 4) | ((b3 & 0x3c) >> 2)));
if ((b4 = decTbl[(byte)bais.read()]) == EOF) break ;
baos.write((((b3 & 0x03) << 6) | b4));
}
baos.flush();
}
catch (Exception e) {e.printStackTrace(System.out);}
bais = null;
return baos.toByteArray();
}

ハァヤレヤレ・・・

671 :デフォルトの名無しさん:03/08/10 14:35
>>661
自作しないで、Jakarata Commons-Codecを使えば?
http://jakarta.apache.org/commons/codec/index.html
もう遅いか

672 :661:03/08/10 15:30
おせーよヴォケ

673 :661:03/08/10 15:37
お前わざと、時間差攻撃してねーか?

674 :661:03/08/10 16:36
あ、何か偽者でてる(w

さっきのBase64の話題と直接関係は無いんですが、
StrinbBufferで文字列をバッファリングしてるんですけど
deleteメソッドで内容を消すのと、新しいオブジェクトをnewするのとどっちが早いんでしょうか?

>671

情報サンクスコ
これって、Base64の文字列の一部だけ渡してデコードを行うことが出来るんでしょうか?
たとえば、受信データが100Mとか超えるときって、そのままバッファリングしたら
Out of Memory Exceptionが発生したりするじゃないですか。
で、出来たら受信データをデコードしつつバイパスしたほうが楽かなーと思って作ってたんですよ
( ´-`).。o(もし、コレで出来たらこっちに変えよ

675 :デフォルトの名無しさん:03/08/10 16:41
>deleteメソッドで内容を消すのと、新しいオブジェクトをnewするのとどっちが
バッファの意味わかんないの?

676 :661:03/08/10 16:42
>675

サンクスコ、deleteの方がはやいっすね

677 :デフォルトの名無しさん:03/08/10 16:59
>674
部分文字列を4の倍数の長さで渡せばかまわないんじゃない。


678 :デフォルトの名無しさん:03/08/10 17:26
さんざんガイシュツかもしれませんが、
無名クラスのコンストラクタって、どう書けばいいんですか?

679 :デフォルトの名無しさん:03/08/10 17:41
classとclassをつなげるって、どうしたらいいですか?


680 :デフォルトの名無しさん:03/08/10 17:43
>679
GoF嫁


681 :デフォルトの名無しさん:03/08/10 17:50
>>678
http://www.y-adagio.com/public/standards/tr_javalang2/expressions.doc.html#253002

682 :デフォルトの名無しさん:03/08/10 17:54
public class 教えてぷりーず {
 public class 内部クラスその1 {
  public void foo {
   System.out.println("foo");
  }
 }
 public static class 内部クラスその2 {
  public void bar {
   System.out.println("bar");
  }
 }
}
この二つの内部クラス、staticにするかしないかって、どう違うの?
クソ分厚いJava言語仕様開くのが面倒臭いので、
教えて、Javaの偉い人!

683 :デフォルトの名無しさん:03/08/10 18:02
>>682
staticでない内部クラスにアクセスするには、外部クラスのインスタンスが必要。
普通のstaticフィールドと非staticフィールドの違いと同じ。

教えてぷりーず.内部クラスその1 obj1 = new 教えてぷりーず().new 内部クラスその1();
教えてぷりーず.内部クラスその2 obj2 = 教えてぷりーず.new 内部クラスその2();

684 :デフォルトの名無しさん:03/08/10 18:21
アプレットで簡単なゲーム(ロードランナーみたいの)を作ろうと思うんですが
スレッドを使うのがいいのですか?
だとしたらなぜでしょうか?
startメソッド内で描画メソッドをぐるぐる回したらダメなんでつか?

685 :デフォルトの名無しさん:03/08/10 18:22
>>681
>15.9.5.1 匿名コンストラクタ
>匿名クラスは,明示的に宣言されたコンストラクタをもつことはできない。
>その代りに,コンパイラはその匿名クラスのために自動的に匿名コンストラクタ を用意しなければならない。
>直接的上位クラス S をもつ匿名クラス C の匿名コンストラクタの形式は,次に従う。

つまり、コーディング上は、コンストラクタを記述することはできず、
コンパイラが規定のルールに従って匿名コンストラクタを用意して、
それが実行時に使われる、ってことですか?
そうすると、直接的上位クラス S をもつ個々の匿名クラス C において、
個々の初期化を、できるようにしようとした場合、
以下のような書き方にせざるをえないってことですよね。

---<S の宣言>---
public abstract class S {
 public S {
  init();
 }
 protected abstract init();
 ...
}
---<C1の宣言>---
S C1instance = new S() {
 ...
 protected init() {
  C1 固有の初期化・・・
 }
 ...

};
-----

686 :デフォルトの名無しさん:03/08/10 19:10
>>685
独自のコンストラクタが必要なような場合に、匿名インナーなんかつかうな
ということだと思うが。

687 :デフォルトの名無しさん:03/08/10 20:42
>>686
私は Singleton 継承(もどき)を実現するために、この方法を使ってるんですが、
この方法がまずいとすると他にもっとまともな方法があるのでしょうか?


688 :デフォルトの名無しさん:03/08/10 21:01
どっちかっつーと匿名内部クラスは手抜き的プログラミング用だからなー

689 :デフォルトの名無しさん:03/08/10 21:16
>>683
>教えてぷりーず.内部クラスその1 obj1 = new 教えてぷりーず().new 内部クラスその1();
>教えてぷりーず.内部クラスその2 obj2 = 教えてぷりーず.new 内部クラスその2();

下のは
教えてぷりーず.内部クラスその2 obj2 = new 教えてプリーズ.内部クラスその2();
じゃなかったか?

690 :デフォルトの名無しさん:03/08/10 21:21
>>678ほか
イニシャライザを使うとそれらしいことが可能

691 :デフォルトの名無しさん:03/08/10 23:02
コメントってコンパイル時に削除されますか?

//ヽ( ・∀・)ノ ウンコー

とか書いていても逆コンパイル時には出てこないですよね?

692 :デフォルトの名無しさん:03/08/10 23:07
System.getProperty の

path.separator
file.separator

ってなんなんでしょう?
Winなんですが、path は";"、file は"\"になります。
"\"はもちろんフォルダの区切り文字ですけど、";"てなんですか?

693 :デフォルトの名無しさん:03/08/10 23:12
>>691 たまに出ちゃうんだなこれが。
お陰で俺もクビになりかけたよ。

694 :デフォルトの名無しさん:03/08/10 23:13
>>692
パスを複数指定する場合に使う区切り文字。

695 :デフォルトの名無しさん:03/08/10 23:16
>>694
あーなるほど環境変数とかの奴ですね。了解。

696 :デフォルトの名無しさん:03/08/10 23:18
>>692 Windowsのシステム環境変数とか見てごらん。
たいていの場合、復数のパスが";"で区切られて入ってるよ。

697 :696:03/08/10 23:18
出遅れた

698 :デフォルトの名無しさん:03/08/10 23:34
>>693
まじすかぁ・・やっちまったかなぁ。私は首にはならないと思うけどw

699 :デフォルトの名無しさん:03/08/10 23:35
>>659
Jakarta CommonsのStringUtilとか
Jakarta OROとかも調べてみるとええぞ。

700 :デフォルトの名無しさん:03/08/10 23:37
>>698 無職にクビはないわな(プ


701 :デフォルトの名無しさん:03/08/10 23:39
>>698,700
なんかそうやってさらっと流すと勘違いするやつが出てきそうだ

702 :デフォルトの名無しさん:03/08/10 23:39
>>692
> System.getProperty の
こいつはFileクラスにもある。
> ってなんなんでしょう?
> Winなんですが、path は";"、file は"\"になります。
Unixでは ":" と "/" になる。

703 :デフォルトの名無しさん:03/08/11 00:49
>クソ分厚いJava言語仕様開くのが面倒臭いので、
>教えて、Javaの偉い人!

君はプログラマ辞めたほうがよい

704 :デフォルトの名無しさん:03/08/11 01:07
>>682にマジレス
>>351>>359>>360
(勝手に引用スマソ)

705 :デフォルトの名無しさん:03/08/11 01:08
>>703
本を読みたくなかったら検索くらいしろ

706 :デフォルトの名無しさん:03/08/11 02:09
URLクラスには Fileクラスの file.exists() 相当のメソッドがないのは何故ですか?

707 :デフォルトの名無しさん:03/08/11 02:23
>>687

匿名じゃないインナー使う分には自由だし、インナーじゃないクラス使うのも
自由ですが…
というか、何か頭悪いかほりがそこはかとなく…
>>706
URLの向こうにあるのがファイルだとは限らんし。
ldap://hogehoge とか rmi://hogehoge とか iiop://hogehogeとか。

JavaのURLクラスがこれらからInputStreamを引いてこれるかどうかは別問
題ですが。

708 :デフォルトの名無しさん:03/08/11 02:24
>>706
存在するか確認するだけで 1 回分の無駄な通信さすなという
髭オヤジの配慮。つーか、HEAD で 200 返ったところでエンティティ
が存在してる保障ないし。

709 :デフォルトの名無しさん:03/08/11 02:37
>>699
どうせ内部にダサいロジックを隠蔽しているだけだと思われるが。

710 :デフォルトの名無しさん:03/08/11 02:38
>>707
>>708
さんくす。納得しますた。

711 :デフォルトの名無しさん:03/08/11 12:12
ファイル名に「$」が付いているとアップロードできないんですが、どうしたらいいのでしょうか?

712 :デフォルトの名無しさん:03/08/11 12:38
>>711
前に一度見たよーな質問だなーと思って過去ログ漁ってみた。
というわけで、
http://pc3.2ch.net/tech/kako/1036/10361/1036142056.html
>>71-78 を参照するよろし。

713 :デフォルトの名無しさん:03/08/11 13:06
javaとhtmlの違いってなんですか?
よくわかりません。お願いします。

714 :デフォルトの名無しさん:03/08/11 13:57
age

715 :デフォルトの名無しさん:03/08/11 14:13
>>713
よくわかりません。お願いします。

716 :デフォルトの名無しさん:03/08/11 14:14
>>713
板違い

http://pc2.2ch.net/hp/

717 :デフォルトの名無しさん:03/08/11 14:32
>>716
え?ここじゃなかったんですか?
いいでしょう。ここは貴殿の顔に免じて引きましょう!!

718 :デフォルトの名無しさん:03/08/11 14:32
>>715
いやこっちが質問しているのですが・・・。

719 :デフォルトの名無しさん:03/08/11 14:34
Javaはえっちじゃない
htmlはえっちだ

720 :デフォルトの名無しさん:03/08/11 14:35
>>719
これ以上ないわかりやすいお答えありがとうございます!!
そうか!!そういう違いがあったんですね!!感謝です!!

721 :デフォルトの名無しさん:03/08/11 15:58
>>720























722 :661:03/08/11 16:08
>>721

なにさw

723 :デフォルトの名無しさん:03/08/11 20:00
>>712
ありがとうございました

724 :デフォルトの名無しさん:03/08/12 11:12
JAVAで、定数の定義の仕方を知りたいです。

定義の仕方のほかに、
クラスの外部で見えるような宣言の仕方、
クラス内部で見える定数、
メソッド内で見える定数、
のそれぞれの定義の仕方も知りたいです。

よろしくお願いします。


725 :デフォルトの名無しさん:03/08/12 11:18
>>724
定数:final
クラス外部で:public
クラス内部で:private
メソッド内で:メソッド内で定義しろや


726 :デフォルトの名無しさん:03/08/12 11:21
final
static final
pruvate final
final

727 :デフォルトの名無しさん:03/08/12 11:23
>>726
( ~ω~)σpruvate

728 :724:03/08/12 11:24
>>725
>>726
どもです。


729 :デフォルトの名無しさん:03/08/12 16:49
こんな書き込みで大変申し訳ないのですが、
Javaから他のアプリケーションを起動するクラスと主なメソッドを教えていただけないでしょうか?
当方パソコンの調子が悪く、ネットに接続できなくなっているんで、調べることができません。
ちなみに今は携帯からの書き込みです。

どうかお願いします。

730 :誰か教えてください:03/08/12 17:11
preverifyってどうやってやるんですか?

Error preverifying class Test
java/lang/NoClassDefFoundError: java/lang/Object

って出てきてできないんですけど。

731 :デフォルトの名無しさん:03/08/12 17:42
>>729
java.lang.Process java.lang.Runtime#exec()

732 :デフォルトの名無しさん:03/08/12 17:46
>>729
Runtime#exec()

733 :デフォルトの名無しさん:03/08/12 17:47
>>730
pre-verifying class Test だからバイトコードの正当性検査の前にエラーが出てるって事かな?
java.lang.Object すらダメってのは… 原因わからないなら、
1) 掲示板とかでなく、物理的に話せる人間に SOS
2) JREの再インストール
3) OSの再インストール
とかしてみれば?

734 :デフォルトの名無しさん:03/08/12 17:49
Javaをはじめたばかりで、脳みそがかゆいんですが、
Javaで扱う配列は、lengthメソッドを持っているってことは、クラスなんですか?
配列については、API ドキュメントのどこに書かれているのでしょうか?

735 :729:03/08/12 17:49
>>731-732
メソッドももお願いします。

736 :デフォルトの名無しさん:03/08/12 17:56
>>734
APIドキュメントではなく言語仕様に書かれている。
ttp://java.sun.com/docs/books/jls/second_edition/html/arrays.doc.html#64347

737 :734:03/08/12 18:11
>>736
ありがとうございます。
何だか不思議な感じですが、こういうものと覚えることにします。

738 :デフォルトの名無しさん:03/08/12 18:13
J-PHONEのアプリ作りたいんだけどpreverifyできないと無理ですか?

739 :デフォルトの名無しさん:03/08/12 18:16
>>735
お礼も無しで、そのアマチャンな態度はいかがなものかと。


740 :デフォルトの名無しさん:03/08/12 18:20
J-PHONEアプリの作り方がよくわかるホムペ教えてください。




741 :デフォルトの名無しさん:03/08/12 18:22
>>740
J-PHONEアプリの作り方がよくわかるホムペ調べてください。

742 :729:03/08/12 18:25
>>739
その通りです。

>>731-732
答えてくださってありがとうございます。

743 :デフォルトの名無しさん:03/08/12 18:34
>>735
java.lang.RuntimeがクラスでexecがRuntimeのメソッドだろーが。
まさかそれ以外にも使用しそうなものを全部挙げろってか?


744 :729:03/08/12 18:59
>>743
大体の使い方も教えていただけないでしょうか?

745 :デフォルトの名無しさん:03/08/12 19:57
>>744
1. java.lang.Runtime#exec()を実行。
2. 返ってきたjava.langProcessから標準出力と標準エラー出力のストリームを貰う
3. バッファが詰まらないように、スレッド作るなりしてストリームから吸い出しつつ
  終了を待つ。
4. 終了したらProcess#exitValue()で終了コード取得、あとはお好きに。

標準出力/エラー出力どちらかだけって決まってるならスレッド作る必要ないと思うけど、
両方吐き出す可能性があるなら、スレッド作って同時に処理してやらないと
片方のバッファがいっぱいになった時点で処理が止まってしまう恐れがある。


746 :729:03/08/12 20:07
>>745
ありがとうございます。

747 :デフォルトの名無しさん:03/08/12 21:10
(^o^)/...
http://pleasant.e-city.tv/


748 :デフォルトの名無しさん:03/08/12 23:01
>>730
ちゃんとクラスパスを設定してる?または -classpath つけて preverify やってる?

749 :デフォルトの名無しさん:03/08/13 00:08
FileInputStream in;
FileDialog dialog;

dialog = new FileDialog(new Frame());
in = new FileInputStream(new File(dialog.getDirectory(), dialog.getFile()));

と、

String path, filename;
File file;
FileInputStream in;
FileDialog dialog;

dialog = new FileDialog(new Frame());
path = dialog.getDirectory();
filename = dialog.getFile();
file = new File(path, filename);
in = new FileInputStream(file);

では、どっちがいいの?
動くかどうかは別として。

750 :デフォルトの名無しさん:03/08/13 00:11
>>749
どっちでも良いよ。

751 :デフォルトの名無しさん:03/08/13 00:12


752 :デフォルトの名無しさん:03/08/13 00:13
俺も上だな。
どっちがいいかは知らんけど

753 :749:03/08/13 00:34
>>750-752
レスthx。
漏れ的にも上の方がいいんだけど、下の方が明示的で分かりやすいと思うんだよなぁ…。

早さとかは変わらないんか?

754 :デフォルトの名無しさん:03/08/13 00:35
>>749
俺的には、
String path, filename;
FileInputStream in;
FileDialog dialog;

dialog = new FileDialog(new Frame());
path = dialog.getDirectory();
filename = dialog.getFile();
in = new FileInputStream(new File(path, filename);

かな。理由は、分りやすいから。
path以下にhogehoge(例えばCVSディレクトリ)があったら何するとか、
filenameだけを取りだして、ウインドウのタイトルにするとか、
filename + ".bak" をバックアップディレクトリに保存するとか、まぁ後から
いろいろといじるときに便利。
Fileのインスタンスは(pathとfilenameがあれば十分理解できるので)いちいち
変数に入れなくてもいいと思う。


755 :デフォルトの名無しさん:03/08/13 00:37
java.security.MessageDigest
の使い方、教えてくれませんか?

System.out.println(new String(MessageDigest.getInstance("MD5").digest("ハッシュテスト".getBytes())));

試しにこういう風に使ってみたのですが、文字化けしたおかしな値しか出てきません

756 :デフォルトの名無しさん:03/08/13 00:40
>>753
殆ど差はない。
その程度の差が気になるなら FileDialog とか使うのやめれ。

757 :749:03/08/13 00:42
>>754
Fileクラスのインスタンスも書いたのは例えであって、必ずそうするわけではないよ。
>>754が書いたやつが一番分かりやすいと思うし。
ただ、速度としてどっちの方が早いかなぁと思って。

もしかして、漏れ、的外れなこと言ってるかな…。

758 :749:03/08/13 00:45
>>756
あぅ…。例えが悪かったな…。

スマソ。

759 :749:03/08/13 00:45
>>756
あぅ…。
例えが悪かったな…。

スマソ。

760 :749:03/08/13 00:45
>>756
あぅ…。
例えが悪かったな…。

スマソ。

761 :749:03/08/13 00:49
スレ汚しちまった…。

762 :デフォルトの名無しさん:03/08/13 00:49
どんまい

763 :デフォルトの名無しさん:03/08/13 00:51
最近Robocodeの本を買い、やってみようかと思うのですが、
ここの人たちはRobocodoってやってますか?
昔はスレが立ってましたが・・・
あと学習教材としていい物だとどっかのサイトでいってましたがどうですか?
私は現在独習Javaを半分ほど終えたところです。

764 :デフォルトの名無しさん:03/08/13 00:51
>>755
byte[] hash = MessageDigest.getInstance("MD5").digest("ハッシュテスト".getBytes());
for(int i = 0 ; i < hash.length ; i++){
 System.out.print(((hash[i] & 0xFF) < 0x10 ? "0" : "") + Integer.toHexString(hash[i] & 0xFF).toUpperCase());
}
System.out.println();


765 :デフォルトの名無しさん:03/08/13 00:52
>>764
ぬおぉ!!!
ありがとうございます!!!

766 :デフォルトの名無しさん:03/08/13 01:00
>>749
おれも上。
変数を用意しないことで、ほんとにその場だけ必要なインスタンスだってわかるし。
妄想だと上のほうが速そうだし。
あと、classファイルもちっちゃくて済むからKVMなんかのリソース乏しいとこでも助かるから上。

767 :デフォルトの名無しさん:03/08/13 01:07
下のほうが融通が利きそうだな

768 :デフォルトの名無しさん:03/08/13 01:12
>>767
そりゃそうだろw
その融通を冗長だと感じるかどうかじゃない?
下の例で 「で、この変数はこのあとどこで使われてんだろ?」とか思いながらソース読んでって
結局、一回しか使われてなかったらちょっと萎えるな。

769 :デフォルトの名無しさん:03/08/13 01:16
たしかにそうだなw
その時の状況にあわせて使い分ければいいってことね

ちなみに俺は 上 を選ぶ

770 :デフォルトの名無しさん:03/08/13 01:27
Eclipse2.1だと黄色のアンダーバーが出るのが嫌だ
だから上

771 :デフォルトの名無しさん:03/08/13 01:30
>>749
FileDialog dialog = new FileDialog(new Frame());
FileInputStream in = new FileInputStream(new File(dialog.getDirectory(), dialog.getFile()));
ふつーこう

772 :デフォルトの名無しさん:03/08/13 01:32
>>771が一番しっくり来るな。
まあ、実際は規約にもよるんだけど

773 :デフォルトの名無しさん:03/08/13 01:36
初期化がされない状態のローカル変数は、コンパイル通ったっけ?
ローカル変数なんか、メソッド作った奴の好きに書け、と思うが。

古いCコンパイラなんかで頭悪かった頃のルールを、惰性で引きずる
必要はないと思うがなあ。

774 :749:03/08/13 01:40
>ふつーこう
それこそ妄想。

775 :デフォルトの名無しさん:03/08/13 01:41
>>770
おまえアホだろ?
使ってない一時変数の話じゃなく逐一一時変数を使うかどうかの話だろが。
それにオプションいじれば出なくなるし。

>>749
当然ながら例外を投げる可能性がある場合は逐一一時変数に入れないとまずいこともある。

776 :デフォルトの名無しさん:03/08/13 01:44
最適化されて>>771になるんじゃね?

777 :デフォルトの名無しさん:03/08/13 02:00
iアプリなんかの実行ファイルサイズが10kBとか制限厳しいとこだと
変数は極力つかわないようにしないと容量オーバーしてしまったり。
まあ、あれはJavaであってJavaでない、と言われたらそれまでだけど。。

778 :デフォルトの名無しさん:03/08/13 02:09
>>775
>当然ながら例外を投げる可能性がある場合は逐一一時変数に入れないとまずいこともある。
なにこれ?
行番号で例外判断でもするんですか?


779 :デフォルトの名無しさん:03/08/13 04:12
JavaにMFCのCDaoDatabaseクラスみたいなやつありますか?
OracleとかAccessみたいな外部DBMSを用意しないで
アプリ自体に組み込んじゃいんです。
データの源泉はテキストファイルで最初に取り込んだときに
DBができてなかったら作るみたいな感じのことがやりたいんですけど。

780 :デフォルトの名無しさん:03/08/13 04:15
テキストファイルからSQLみたいな簡単な奴使って
データ取り出せればそれでもいいです。

781 :デフォルトの名無しさん:03/08/13 04:46
>>711
に一票。

782 :デフォルトの名無しさん:03/08/13 04:55
>>779
XMLファイルでどうかな?

783 :749:03/08/13 05:32
漏れ的には変数宣言と、インスタンス生成は別の方がいいような気がする。

スレ違いっぽくなってきたな。

784 :763:03/08/13 08:33
無視された・・・どうやら質問してはいけない内容だったらしい・・・

785 :デフォルトの名無しさん:03/08/13 08:35
>784=763 こっちでやれ
http://pc2.2ch.net/test/read.cgi/tech/1058800656/


786 :デフォルトの名無しさん:03/08/13 08:41
>>777
制限は256kBだろ

787 :デフォルトの名無しさん:03/08/13 11:33
>>748
preverifyするのってただpreverify Testってやるだけじゃダメなんですか?
ちゃんとAutoexec.batってゆーやつのpathのとこにpreverify.exeがあるとこも書いといたよ。
-classpath つけて preverify やるってどうゆうことですか?
あとclasspathとpathってちがうの?



788 :デフォルトの名無しさん:03/08/13 12:15
>>787
それって、ケータイアプリ?

>あとclasspathとpathってちがうの?

違う。
CLASSPATHってJava固有のもの

789 :デフォルトの名無しさん:03/08/13 13:02
>>778
サンプルとかでありがちな、こういう場合の話じゃないの?

BufferedReader reader = new BufferedReader(new InputStreamReader(new FileInputStream(file), "euc-jp"));

これだと途中で例外発生したらまずいでしょ。


790 :デフォルトの名無しさん:03/08/13 13:45
Eclipseを使ってJavaをいろいろやってみようと思うのですが、、検索してみるとEclipseって単語すら載ってないサイトしか出てきません
良いサイトないですかねぇ…(JAVA講座系の…

791 :デフォルトの名無しさん:03/08/13 14:03
>>789
ん?それはなに?
もしかして、close()出来ないとかそういうことなのですか?
さっぱり意味わかんないです。
マジで理由教えてください。

私が見たいままでの解説書はどれも、
///////////////////////////////////////////////////////////////////////////////////
このサンプルでは分けて書きましたが意味のないことです。通常は次のようにまとめてしまいます。
InputStreamReader in
= new InputStreamReader( new FileInputStream( new File(args[0])), "EUC_JP");
OutputStreamWriter out
= new OutputStreamWriter(new FileOutputStream(new File(args[1])), "ISO2022JP");
///////////////////////////////////////////////////////////////////////////////////
というような書きかたしています。「意味のないことです」と、ハッキリ言っています!
今までもコレで納得していました
いったいどういうことなんでしょうか?



792 :デフォルトの名無しさん:03/08/13 14:31
>>789
厨な質問だったらスマソ。
そこで発生する例外ってUnsupportedEncodingException (指定された文字エンコーディングがサポートされていない場合)
だけだよね?
それをcatchすればいいだけで、逐一変数にいれとかなきゃまずいともいいきれないような。。
言ってること検討違い?

793 :デフォルトの名無しさん:03/08/13 14:31
>>790
「Eclipse Java」とかで検索した結果のページに「Eclipse」が含まれてないの?
意味わかんね。

つーか、Eclipseの使い方とJavaの勉強は別々にしろよ。<Java講座系

>>791
new InputStreamReader()で例外が発生したらFileInputStreamをcloseできない。



794 :792:03/08/13 14:36
>>793で納得。厨房でスマソした。

795 :デフォルトの名無しさん:03/08/13 15:49
すみません 質問です。

JavaのGUIアプリケーションでキー入力でいろんなアプリを起動させる
アプリケーションを作りたいなって思ってるんですがどうも
意図したとおりに作成できません・・・。

現在フレームを作成し、キーイベント取得のロジックを組み込み
普通にフレームがアクティブになっている状態ではキー取得ができるのですが、
なにかのウィンドウの裏に隠れたとき(ノンアクティブになったとき)
キーイベントを取得することができません。

ノンアクティブなフレームからでもでもキーイベントを
取得することはできるのでしょうか?
方法をご存知の方アドバイスや情報よろしくお願いします。


796 :デフォルトの名無しさん:03/08/13 15:56
>>795

そういうの難しいよね・・・
例えばWindowsボタンは他のアプリがアクティブでも
認識してスタートメニューが開く
こういう具合にやりたいと思うんだけど

たとえば、そのJavaのランチャーアプリと
いまアクティブになってるアプリのファンクションキーが同じだった場合は
当然、アクティブな方が優先される・・・
そうならないために
OSに、このキーが押されたときは、このJavaランチャーアプリからっていうのを
登録せんといかん。
これがJavaで可能なのかな?と思うと疑問
JNIで試行錯誤するしかないと思う

797 :デフォルトの名無しさん:03/08/13 16:05
以下のソースでは再宣言していると教えていただいたのですが、
いったいどのようないみなのでしょうか?
import com.nttdocomo.ui.*;

public class test001 extends IApplication{
static Panel1 f_panel;
static Panel2 s_panel;
public void start(){
Panel1 f_panel = new Panel1(this); //ここが
Panel2 s_panel = new Panel2(this); //   再宣言しているとのことです
Display.setCurrent(f_panel);
}
}


798 :デフォルトの名無しさん:03/08/13 16:28
>>795
test001のインスタンス変数s_panelとは別に、
start()メソッドのローカル変数s_Panelを宣言している、という意味です。
thisをつけて明示しない限り、同名の変数があればインスタンス変数より
ローカル変数が優先されます。

わかっていない人がやるとバグの原因になります。

799 :デフォルトの名無しさん:03/08/13 17:09
>>797
public class test001 extends IApplication{
static Panel1 f_panel;
static Panel2 s_panel;
public void start(){
f_panel = new Panel1(this); //これが
s_panel = new Panel2(this); //   正しい
Display.setCurrent(f_panel);
}
}


800 :デフォルトの名無しさん:03/08/13 17:39
>>798 799
ありがとうございます。
public class test001 extends IApplication{
static Panel1 f_panel;
static Panel2 s_panel;
と最初に宣言しているにもかかわらず、
Panel1 f_panel = new Panel1(this); //ここが
Panel2 s_panel = new Panel2(this); //   再宣言しているとのことです
で宣言しているから、コンパイラにしかられるのですね。
初めに宣言したのがインスタンス変数で、あとに宣言したのがローカル変数
ということでしょうか?

801 :デフォルトの名無しさん:03/08/13 18:30
preverify -classpath ..... Test
.....のところには何を書けばいいんですか?


802 :デフォルトの名無しさん:03/08/13 18:52
>>801

えっへっへっへぇ〜〜
俺は知っている俺は知っている
えっへっへっへぇ〜〜
お前は巨人ファンか?ん?ん?
なら答えを教えてやろう。

そのかわり、以下の質問に答えてくれわかったな

1.最近オナニーしたのは何日前?もしくは何時間前?
2.そのときの、おかずは?
3.好きなアイドルは?
4.悪いとは思うが3のアイドルで抜いたことがある?
5.元木が結構好きだ?
6.河原(巨)なら打てる気がする?
7.モー娘。は終わってる?


絶対答えろよ↑

preverify -classpath <クラスファイルのあるフォルダのパス> -d <検証後のクラスファイルの出力フォルダ> <検証を行うクラスファイルの置いてあるフォルダ>



803 :デフォルトの名無しさん:03/08/13 19:12
<クラスファイルのあるフォルダのパス>と<検証を行うクラスファイルの置いてあるフォルダ>はどうちがうの?
検証をするクラスファイルじゃないの?
あと.classってつけなくていいんですよね?

804 :デフォルトの名無しさん:03/08/13 19:21
>>803
きさま〜答えろっていっただろーがぁ〜
まあいい次は答えと一緒に書けよ

-classpath <クラスファイルのあるフォルダのパス>
って言うのは、クラスパスにするクラスファイル群を置いてあるフォルダってこと
ちなみに、普通のJavaアプリの場合
-classpathはJarをそのまま指定可能なのだが
preverifyコマンドではJarを指定することは不可能
なので、もしJarファイルなら展開してそのフォルダ指定でOK

<検証を行うクラスファイルの置いてあるフォルダ>って言うのは
自分が作ったクラスファイルの置いてある場所ってことだ
ここで注意して欲しいのは、classファイルを指定するのではない。
classファイルの入っているフォルダを指定するってことだ!

いいか、さっきの質問答えれよ!次はないぞ!


805 :デフォルトの名無しさん:03/08/13 20:41
1.昨日
2.小倉優子と仲根かすみ

806 :デフォルトの名無しさん:03/08/13 20:57
じゃ漏れが続きをば。。

3.伊藤美咲
4.うん!
5.斎藤雅が投げてる時に隠し球やったがバレバレで、
 審判に早くボール返してこいって注意された姿はワラタな・・・
6.転がせる気がする

807 :デフォルトの名無しさん:03/08/13 21:03
クラスパスにするクラスファイル群ってなんですかぁ?
1.昨日

808 :デフォルトの名無しさん:03/08/13 21:07
>>807

>クラスパスにするクラスファイル群ってなんですかぁ?

そうではない、
クラスパスにする、『クラスファイル群を置いてあるフォルダ』だ!

809 ::03/08/13 22:04
質問す。
引数を半角もしくは全角に変換するにはどうしたらいいですか?


810 :デフォルトの名無しさん:03/08/13 22:06
クラスパスにする、『クラスファイル群を置いてあるフォルダ』って?


811 :デフォルトの名無しさん:03/08/13 22:07
>>809
説明不足ゆえ氏んでくれよ

812 :デフォルトの名無しさん:03/08/13 22:17
>>809
Unicode の文字表見てマッピングしろ
>>810
読んだまま

813 :802:03/08/13 22:22

>クラスパスにする、『クラスファイル群を置いてあるフォルダ』って?

俺の説明悪いのか?それとも煽ってるのか?

そもそも>>810は元の質問者なのか?

814 :810:03/08/13 22:25
もっとわかりやすくこたえなよ

815 :デフォルトの名無しさん:03/08/13 22:28
要するに-classpathのあとになんてかけばいいんですか?いろいろ試してるんだけどぜんぜんエラ−ばっか。

816 :デフォルトの名無しさん:03/08/13 22:29
みんなぐちょぐちょだよ♪
小学生盗撮画像あり!中学生もあるよ♪
http://e-rebirth.com/af/in.cgi?id=30

817 :直リン:03/08/13 22:29
http://homepage.mac.com/maki170001/

818 :810:03/08/13 22:29
早く答えろゴルァ

819 :デフォルトの名無しさん:03/08/13 22:32
「ケツ毛ボウボウ」って書くといいよ。
俺はこれでどんなJAVAでもガッツシ

820 :810:03/08/13 22:49
>「ケツ毛ボウボウ」
できましたーーーーーーーーーーーーーーーーーーーーーーーーーーーー




821 :802:03/08/13 22:50
>>814

おいこら誰にいってんだよオイ!

おまえ、何様だ?あ?



822 :810:03/08/13 22:53
うっせしね!!!!!!!!!!!1

あはははははははははははははははははははははははははははははははははははははははははは

823 :デフォルトの名無しさん:03/08/13 22:56
>>820
だろ?俺もこれで10キロ痩せた

824 :デフォルトの名無しさん:03/08/13 23:25
>>821
禿げしくアホ。顔真っ赤だぞ? プ


825 :デフォルトの名無しさん:03/08/13 23:27
>>821
お前スゲーイイ奴だと思ったよ。
それだけなんだけどさ・・・

826 :802:03/08/13 23:40

なんだよコレ・・・

結局7番の質問誰も答えてくれね―し・・・

ムキィィィィィィィィィイ!

827 :デフォルトの名無しさん:03/08/13 23:55
終わっている物に対していちいち確認するなんて無駄な行為ですから

828 :802:03/08/13 23:55
>>815

なんて書けばいいって?
だから、環境依存だから俺が抽象的に書いてんじゃんか
基本的にお前何がやりたいのかわかんね―んだけどさ
おそらく、ケータイアプリだろ?
だから、J2ME CLDCのクラスファイル入ってるフォルダと
あとは、例えばiアプリならiアプリ用のクラスライブラリJarを展開したフォルダ
この二つを-classpathに書けばいい
(全部一緒のフォルダにまとめてもいい)

829 :802:03/08/13 23:57
>>827
何が終わってるって?
言ってみろや!

830 :825:03/08/13 23:58
>>826
そういう問題け??

それじゃ
7.キダムのサーカスが終わるまでは、終わってても終わらせない!

元木の隠し球にはマジでワロタよー
まあ 怒り静めてな・・・

831 :デフォルトの名無しさん:03/08/14 00:00
>>829
モー娘。がだろ。
お前が言い出したことだろう

832 :802:03/08/14 00:08
>>831
正直 スマンかった

問題番号書いてないので&周りも煽ってたので・・・同じような内容かと思ってました
盲目でした

833 :デフォルトの名無しさん:03/08/14 00:08
>>832
やだ

834 :デフォルトの名無しさん:03/08/14 00:14
>>832
オマイ、大したもんだよ。

835 :802:03/08/14 00:14
>>833
あ?あやまってその答えが「やだ」?
意味がわからん


836 :デフォルトの名無しさん:03/08/14 00:16
>>809
Stringオブジェクトの全ての文字を半角→全角または全角→半角に変換したいと解釈。
そんなメソッドを提供するクラスは標準では存在しないので、
どこかから探してくるか自作する。自作するならUnicode調べてみ。

837 :802:03/08/14 00:22
>>809
>>836
おい、俺さっきからこれやってるんだけど
アルファベットと違って
半角と全角って対応するように並んでないんだよな・・・
なので、一個一個マップさせるしかないな
しかも、例えば半角の濁音は、「カタカナ+濁点」と2文字みたい・・・
全角は濁音の文字も1文字で表すのだが・・・

838 :デフォルトの名無しさん:03/08/14 00:22
>>835
アッソ

839 :デフォルトの名無しさん:03/08/14 00:25
>>837
君は頭が悪いのでまともな文章が書けないらしいね。
俺が補足してやろう。

> アルファベットと違って
> 半角と全角って対応するように並んでないんだよな・・・

カタカナって、英数字と違って、半角と全角が対応するように並んでないんだよな。

840 :デフォルトの名無しさん:03/08/14 00:27
ttp://yamaguch.sytes.net/~tora/java/files/JPConverter.java.txt

ただしこのurlのプログラムには若干バグがあるので手直しして使え。
どこがおかしいのかわからないなら氏ね

841 :デフォルトの名無しさん:03/08/14 00:29
>>809
>しかも、例えば半角の濁音は、「カタカナ+濁点」と2文字みたい・・・
やっぱコレが一番のネックっぽいな。

注1)>>834は煽りじゃなくて、謝るオマイ見て大したもんだ、と思ったのだよー
注2)漏れは元木より元木の奥さんが好きなんだ!

842 :デフォルトの名無しさん:03/08/14 00:29
ん?半角⇔全角変換って
英数字だけなら、前スレに書いてあったぞ

843 :802:03/08/14 00:31
>>840

一瞬見たときコメントが中国語に見えた
なんか、漢字がやたら多いコメント

844 :デフォルトの名無しさん:03/08/14 00:32
>>837
>全角は濁音の文字も1文字で表すのだが・・・

UNICODE の規格では確か
全角においてもカナ+濁点の2文字で表してよいことになっている。
例えば「ば」と「は」+濁点は UNICODE 的には等しいと判定されなければならないとされている。
そして実際に濁音の文字をカナ+濁点で表す処理系は存在する。

845 :シナプス:03/08/14 00:33
初心者的質問です。

Javaで
"981234、、、、、"
数十文字の数字で出来た文字字列(整数)を
一文字づつ区切って掛け算をしていきたいのですが
9*8*1*2*3*4、、、
て感じに。
BigIntegerの使い方が良く分からず。
特に区切った数字をBigIntegerに入れていく方法が良く分からず。

全体的な感じを掴むために
基本を抑えたサンプルを作っていただけたら嬉しいのですが。

846 :デフォルトの名無しさん:03/08/14 00:33
>>802はJava歴一週間くらいの割にはがんばっているな

847 :デフォルトの名無しさん:03/08/14 00:35
>>837
http://oss.software.ibm.com/icu/userguide/Transform.html
とか有名どころ紹介したほうがいいとおもうけど。

848 :802:03/08/14 00:36
>>846
え?それは無いベ?
怒る気にもなれん


849 :デフォルトの名無しさん:03/08/14 00:36
>>845
BigInteger…?
なんで?

850 :802:03/08/14 00:38
おいほら>>846そこまで言うのなら

おまえ、>>845の問題やって見ろ

851 :847:03/08/14 00:39
ちなみにデモ。
http://oss.software.ibm.com/cgi-bin/icu/tr
Source1:Fullwidth
Target1:Halfwidth
にして、Inputにテキスト入力、Transformすると変換される。

852 :デフォルトの名無しさん:03/08/14 00:39
数十文字だろ?

桁あふれが・・・

853 :デフォルトの名無しさん:03/08/14 00:40
>>845
String val ="123456789";
BigInteger result = new BigInteger("1");
for(int i = 0 ; i < val.length;i++)
 result = result.multiply(new BigInteger(String.valueOf(val.charAt(i))));

System.out.println(result);

簡単じゃん。

}

854 :デフォルトの名無しさん:03/08/14 00:41
>>849
オーバーフローって知ってます?

855 :デフォルトの名無しさん:03/08/14 00:45
>>853見て思ったんだけど
一回一回val.charAt(i) ってするのと
たとえばchar[] crArr = val.toCharArray(); などとして配列に入れてから回すのでは
後者の方が早いの?

856 :デフォルトの名無しさん:03/08/14 00:46
>>853
おまえ、そのくらい>>802にやらせないと力がつかないだろ

857 :デフォルトの名無しさん:03/08/14 00:49
>>855
Stringは内部にchar[]持ってるから、差があるとすれば
#charAt()メソッドコールの「メソッドコール自身のコスト」と、
toCharArray()で内部char[]の「ディープコピー生成のコスト」の
比較になるね。
ということで、長さに依存じゃないかね。

さらにいえば、そんなことを気にするようならJavaでプログラム書く
べきではないかもね。アセでもやっててください。

858 :802 ◆o6.i7pCetw :03/08/14 00:49
>>856
ああ、「カナ」の問題考え中だったよ
でも、正直>>853ほど、サクッっとできたとは思えんが・・・

ちなみに、修正⇒for(int i = 0 ; i < val.length();i++)だよな?


859 :802 ◆o6.i7pCetw :03/08/14 00:51
>>855>>857
そういう話好きだな

860 :デフォルトの名無しさん:03/08/14 00:52
>>857
> さらにいえば、そんなことを気にするようならJavaでプログラム書く
> べきではないかもね。アセでもやっててください。

たとえどんな言語であれ、そういう部分を気にする気持ちは大切。
つーかむしろ、ただでさえ遅い遅いと言われてるJavaだからこそ
少しでも速くしたいという気持ちがあるんだが

861 :デフォルトの名無しさん:03/08/14 00:54
>>859
俺はお前が嫌い

862 :デフォルトの名無しさん:03/08/14 00:54
俺はモー娘。が嫌い

863 :802 ◆o6.i7pCetw :03/08/14 00:56
>>860

俺なんていつだったか忘れたがこのスレで

List list=new ArrayList();

@for(int i=0;i<list.size();i++)

Aint size=list.size();
for(int i=0;i<size;i++)

↑どっちが早いか質問したら、
「そんなトコに気を使うぐらいなら配列使え」とか言われた

864 :デフォルトの名無しさん:03/08/14 00:57
>>855 そっちのコストより、BigInteger(String)を使うほうがきになるなあ。
BigIntegerの内部表現ってint[]だったはずだから、charにしたんなら'0'引いて
数値をBigIntegerのコンストラクタに渡すほうが速い気がする。

865 :802 ◆o6.i7pCetw :03/08/14 00:58
>>861

ネタだと思って見逃したるわ。2回目は無いぞ

866 :デフォルトの名無しさん:03/08/14 00:58
大規模なデータベースにかかわる時なんかは、かなり大事なモンよ
>少しでも早くしようという気持ち

867 :デフォルトの名無しさん:03/08/14 00:59
>>855
JIT コンパイルなしだと下のほうが多少早いがありだと誤差程度。

しかし String.valueOf(val.charAt(i)) や String.valueOf(crArr[i]) よりも
val.substring(i, i+1) の方が JIT コンパイルありでも早い。

868 :デフォルトの名無しさん:03/08/14 01:01
>>867 下のほうは中身System.arraycopyだからネイティブメソッドで
JIT効かないんだよね。

869 :デフォルトの名無しさん:03/08/14 01:03
有名な例だけど、

お手軽に
String = "a"+"b"+・・・
ってやるより

StringBufferのappend()
使った方が断然早い、とかあるよな。。。

870 :802 ◆o6.i7pCetw :03/08/14 01:05
>>869
上で既出だが・・・

一行ですむなら
String s= "a"+"b"+・・・;
で十分だ

871 :デフォルトの名無しさん:03/08/14 01:08
>>863は単なるアホだけど「そんなトコに気を使うぐらいなら配列使え」もアホ

>>869
それは間違い。比べるなら、

String str = "a";
str += "b";
str += "c";

などと比べるべき。

872 :デフォルトの名無しさん:03/08/14 01:08
>>870激しく既出スマソ

873 :デフォルトの名無しさん:03/08/14 01:09
>>870
ガイシュツ質問のみ即答(・∀・)カコイイ!!

874 :デフォルトの名無しさん:03/08/14 01:10

>>802は単なるアホだけど

Javaって面白いよな

875 :デフォルトの名無しさん:03/08/14 01:11
勉強用にはいい。

実務ではきついよ。融通が利かなくて

876 :デフォルトの名無しさん:03/08/14 01:11
>>873

だって、あれ答えたの俺だもん
人の答えを拝借するような真似は
俺はしない

877 :802 ◆o6.i7pCetw :03/08/14 01:12
802=876

878 :デフォルトの名無しさん:03/08/14 01:12
>>876
板違いスレ違い

それ俺のガイドライン
http://that.2ch.net/test/read.cgi/gline/1051371028/


879 :デフォルトの名無しさん:03/08/14 01:15
>>878
板違い

電波・お花畑
http://etc.2ch.net/denpa/

880 :デフォルトの名無しさん:03/08/14 01:15
>>870 仕様上は`a Java compiler may use the StringBuffer class ...'
であってmustじゃないけどね。かなり期待してもいいとは思う。

881 :デフォルトの名無しさん:03/08/14 01:19
>>879=802

882 :880:03/08/14 01:20
ああ、ごめん、869の場合は引用するべきはこの文の前の、
`An implementation may choose to perform conversion and
concatenation in one step to avoid creating and then
discarding an intermediate String object. '
か。これもmayであってmustじゃない。


883 :802 ◆o6.i7pCetw :03/08/14 01:22
>>881
おもしろいか、そんなコトやって・・・
女々しいなお前
さしずめ>>879=>>881ってことか?

884 :879:03/08/14 01:26
>>883
死ね

885 :802 ◆o6.i7pCetw :03/08/14 01:27
80歳になったらな

886 :デフォルトの名無しさん:03/08/14 01:28
>>871 それも場合によってはStringBuffer.appendへの変換が期待されるから
appendとの比較だと例としては判断が難しい。

887 :デフォルトの名無しさん:03/08/14 01:33
しっかし、ザコの巣堀スレのくせによく伸びるね。


888 :デフォルトの名無しさん:03/08/14 01:36
俺のちんこは全然伸びないってのに

889 :デフォルトの名無しさん:03/08/14 01:36
String str だから
str += "a" の str + "a" の時点で StringBuffer#append に変換されたとしても
それを str に代入しなおす時点で StringBuffer#toString が呼ばれるだろ?

こんなのまで最適化して全部 StringBuffer#append 一括にまとめてくれるコンパイラはあるのか?

890 :795:03/08/14 05:17
>>796さんレスありがとうございます。

やはり難しいんですね(;_;)シクシク
JNIでつか、もちっと勉強してみます。


891 :デフォルトの名無しさん:03/08/14 10:25
パフォーマンスのことはコンパイラが考える時代になりますた。

892 :デフォルトの名無しさん:03/08/14 11:39
やった〜ついにpreverifyできますた〜〜〜♪
ありがとーございました〜☆

893 :宇宙人:03/08/14 12:13
ココッテアゲアシトリノホウコダネ・・・。
プログラマコワイデス。

ワクセイニカエリマス。 






894 :NAGA:03/08/14 12:19
http://jp.appget.com/pc/dev_tips/dev_0304/index3.html
3日かかってやっとpreverifyできたので次はjarファイルの作成ですが
jar cfm hello.jar MANIFEST.MF -C output . と打ってもjarファイルができません。
なにがいけないのでせうか?
ちゃんとoutputのなかにはpreverifyしたclassファイルが入ってます。
manifestファイルもちゃんと作ったのにぃ。。。

895 :デフォルトの名無しさん:03/08/14 12:25
いいかげんマルチやめれ


896 :802 ◆o6.i7pCetw :03/08/14 12:54
>>894
またおまえか?
どうでもええけど、おまえさんはJavaとか言う前に
なんかいろんなことがわかってないようやな

お前はそのコマンドを、どのディレクトリで実行したのか?

897 :NAGA:03/08/14 13:11
ハァ?
バカの意見は聞いてねえよ

898 :802 ◆o6.i7pCetw :03/08/14 13:18
>>897
おまえだれだ?

899 :NAGA:03/08/14 13:20
↓次の回答どうぞ

900 :802:03/08/14 13:24
>>NAGAさん
たぶんJavaの入門以前からやった方がいいです


901 :NAGA:03/08/14 13:26
 900ゲットーー!

902 :NAGA:03/08/14 13:29
V6の長野です

903 :NAGA:03/08/14 13:30
本名は、ペロリーナ斉藤です

904 :シナプス:03/08/14 14:15
853 様
ありがとうございます。
BigIntegerの使い方が大体分かりましたし問題も解決しました。

905 :NAGA:03/08/14 16:36
そのコマンドをどのディレクトリで実行したか?ってのは?
MS−DOSプロンプトでjarってやったときのカレントディレクトリってことですか?
hello.javaとかhello.classとかoutputフォルダとかmanifest.mfを入れた自分で適当に作ったフォルダです。

ディレクトリとフォルダっていっしょだよね?
あとsageってなんですか?

906 :デフォルトの名無しさん:03/08/14 16:46

>>897の発言によって、もうお前に回答してくれる奴はいない

907 :デフォルトの名無しさん:03/08/14 17:56
このスレも荒れたな…。
だなら夏房は嫌いなんだよ…(´Д`)

908 :デフォルトの名無しさん:03/08/14 18:13
どんまい

909 :デフォルトの名無しさん:03/08/14 18:14
>>857みたいなの漏れも好き。
正直コーディングしてて速度とか結構気になる。
ベンチマークとるclassとかってあんの?

910 :デフォルトの名無しさん:03/08/14 18:14
Javaのプログラミング小問題をあつかっているHP無いでしょうか?

911 :デフォルトの名無しさん:03/08/14 18:27
>>907 禿同。 各地で荒れてますからね…

912 :↑・・・と申す夏厨:03/08/14 18:29


913 :907:03/08/14 18:35
>>912
また夏房か…。

914 :デフォルトの名無しさん:03/08/14 18:37
目的の魚と違うな。外道か。

915 :NAGA:03/08/14 19:01
ってゆーかどう考えても897とか899とか、901、902、903は明らかにいたずらでしょ。
オレはまじめに聞いてるのです。

916 :デフォルトの名無しさん:03/08/14 19:42
いちいち夏厨x2言わなければいいだろ
無駄な主張でスレを埋めるなよ

夏厨言いたかっただけちゃうんかと(ry

917 :NAGA:03/08/14 19:58
ハァ?駄レスすんなや

918 :907:03/08/14 19:58
>>916
また夏房か…。

919 :NAGA:03/08/14 19:59
お前も逝け
マジUzeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee!!!!!!!!!!!!!!

920 :907:03/08/14 19:59
>>917
もうひとり…。

921 :911:03/08/14 20:00
>>912 夏厨扱いされちまったよ…鬱だ…吊ってくるよ

922 :デフォルトの名無しさん:03/08/14 20:10
>>921 ヰ`

923 :NAGA:03/08/14 20:11
つかえない阿呆はさっさと逝ってよし


924 :デフォルトの名無しさん:03/08/14 20:19
>>1-1000
自作自演ご苦労様でした。

925 :デフォルトの名無しさん:03/08/14 20:24
疲れたよ・・・。

926 :NAGA:03/08/14 20:28
import javax.swing.JFrame;
public class Main(String[] args) {
  while (true)
    new JFrame().show();
}

927 :デフォルトの名無しさん:03/08/14 20:31
>>926
何それ。

928 :デフォルトの名無しさん:03/08/14 20:35
黒いヒモパンが妙に色っぽい女性です。
ちょっと年はいっているようですが円熟味のあるSEXシーンを演出してくれています。
見てくださいフェラの時のほっぺのくぼみ。
カリ首にまとわりついて離れない強力スロートですよ。
他の援交美女も乱れてます。
無料ムービーでお楽しみ。
http://www.geisyagirl.com/


929 :デフォルトの名無しさん:03/08/14 20:42
import javaXXX.animal.mammal.human.*;
public class SexTest {
public static void main(String[] args)
Man m = new Man(Human.YelloMonkey);
Woman w = new Woman(Human.YelloMonkey);
while (true)
m.insertTo(w);
}
}

930 :デフォルトの名無しさん:03/08/14 20:44
wがない。

931 :デフォルトの名無しさん:03/08/14 20:49
>>930
ありがとうございました

932 :デフォルトの名無しさん:03/08/14 20:53
>>929
これでもいけるみたいです。

import javaXXX.furniture.*;
import javaXXX.animal.mammal.human.*;
public class SexTest2 {
public static void main(String[] args)
Bed bed = new Bed();
bed.add(new Man(Human.YellowMonkey));
bed.add(new Woman(Human.YellowMonkey));
}


933 :デフォルトの名無しさん:03/08/14 20:56
bed.add(new Man(Human.YellowMonkey), new Woman(Human.YellowMonkey));

934 :デフォルトの名無しさん:03/08/14 20:58
protected Child[] children;
をお忘れなく。

935 :デフォルトの名無しさん:03/08/14 21:11
>>934
なくても自動的にGCが回収しますよ

936 :デフォルトの名無しさん:03/08/14 21:19
バッチ処理についての質問です

200万件のレコードのDBを総なめして1レコードごとに処理を行い更新する
というバッチを作る上でなるべく高速に、かつ保守しやすいプログラムを書く上での
テクニックを教えてください。はじめてのJavaの仕事なんで文字列はStringbuffer
を使うぐらいしか思いつきません。

937 :デフォルトの名無しさん:03/08/14 21:22
Javaを使わない


938 :デフォルトの名無しさん:03/08/14 21:30
ストアドで処理する

939 :デフォルトの名無しさん:03/08/14 21:32
>>929
SexTestクラスを使うときはManクラスのメソッドsetCondom()を使った方がいいと思われ。

940 :939:03/08/14 21:37
間違えた(w
ManクラスのinsertTo()メソッド使う前にsetCondom()を使った方がいいと思われ。

だな。適当なこと書いてスマソ。

941 :936:03/08/14 21:37
言語を決められる立場じゃないのでJavaでなきゃだめです

やはりストアドですか。猶予は結構あるんで両方から攻めてみたいと思います。
その上でJavaのよいテクニックがあれば教えてください


942 :936:03/08/14 21:50
追加質問です。
バッチ実行をDBサーバと同じマシンで行う場合でもストアドのほうが早いんでしょうか?

943 :デフォルトの名無しさん:03/08/14 21:53
藻前は根本的にわかってない感じ

944 :デフォルトの名無しさん:03/08/14 21:56
しかしCondomインタフェースの実装はどのメーカーのも完璧じゃないらしい。。。

945 :デフォルトの名無しさん:03/08/14 23:14
外部JARってどこにおいとくよ

946 :デフォルトの名無しさん:03/08/14 23:21
おしっこJAR

947 :デフォルトの名無しさん:03/08/14 23:21
>>887
すくつは知ってたけど巣掘は初めてみた夏休み

948 :デフォルトの名無しさん:03/08/14 23:21
初心者はでしゃばらず、kissメソッドでも使っとけ。





insertToなんて10年早い。

949 :デフォルトの名無しさん:03/08/14 23:30
>>942
ストアド→RDBMSが、自分自身にとってもっとも効率よく実行できるよう
ある意味好き勝手にコンパイルし、内部に保存しているもの。

外部からのアクセスでストアド以上に速く動くなんて、ありえんだろ。

950 :デフォルトの名無しさん:03/08/15 06:14
>>941
プログラムによるけどまずストアドプロシージャのほうが早い。
んでJavaを利用して「なるべく高速に、かつ保守しやすい」プログラムならば次のステップがよいと思われる。

1 200万件をカーソルの先読み機能を利用して一気にメモリに読み込む。
2 カーソル閉じる。
3 更新SQLでPreparedStatementを作成する。
4 カウンタを準備する。
5 読み込んだ200万件がなくなるまでループ。
5.1 例外処理の開始。
5.2 業務処理を実行する。
5.3 PreparedStatementにパラメータをセットする。
5.4 PreparedStatement#addBatch()でバッチに追加。
5.5 カウンタを増やす。
5.6 カウンタが100件(100とか200とかは適当な数値で)を超えるまたは次の行が存在しないか?
5.6.1 PreparedStatement#executeBatch()を実行。
5.6.2 更新結果の件数が間違っているか?
5.6.2.1 ロールバック、プログラムの終了
5.6.3 コミット
5.7 例外の捕捉。
5.7.1 プログラムの終了またはバッチの続行


951 :デフォルトの名無しさん:03/08/15 11:12
sdkインストールするときに下記のエラーがどうしても出てしまいます,対処方キボンヌ
環境はRehHatLinux9です

$ su
# rpm -ivh j2sdk-1_4_1_04-fcs-linux-i586.rpm
Preparing... エラー: rpmdb: damaged header #1320 retrieved --
skipping.エラー: rpmdb: damaged header #1320 retrieved -- skipping.
エラー: rpmdb: damaged header #1320 retrieved -- skipping.
エラー: rpmdb: damaged header #1320 retrieved -- skipping.
エラー: rpmdb: damaged header #1510 retrieved -- skipping.
エラー: rpmdb: damaged header #1510 retrieved -- skipping.
エラー: rpmdb: damaged header #1510 retrieved -- skipping.
エラー: rpmdb: damaged header #1510 retrieved -- skipping.
エラー: rpmdb: damaged header #1511 retrieved -- skipping.
エラー: rpmdb: damaged header #1511 retrieved -- skipping.
エラー: rpmdb: damaged header #1511 retrieved -- skipping.
エラー: rpmdb: damaged header #1511 retrieved -- skipping.

952 :デフォルトの名無しさん:03/08/15 11:20
test

953 :デフォルトの名無しさん:03/08/15 12:25
次スレ立てときました
http://game2.2ch.net/test/read.cgi/game/1060079075/

954 :デフォルトの名無しさん:03/08/15 12:27
>953 おつ


955 :デフォルトの名無しさん:03/08/15 12:35
次スレ立てときました
http://pc2.2ch.net/test/read.cgi/tech/1060918347/

残りの点プレよろしく

956 :山崎 渉:03/08/15 15:13
    (⌒V⌒)
   │ ^ ^ │<これからも僕を応援して下さいね(^^)。
  ⊂|    |つ
   (_)(_)                      山崎パン

957 :936:03/08/15 16:05
>>950

おおここまで明確に書いてくれるとは。ありがたいです。後は自分で調べながらやってみます
ほんとありがとうございます。

958 :デフォルトの名無しさん:03/08/15 17:55
interfaceで定義されてるだけのメソッドがどこにも実装されてないのに何で使えるのじゃ?



959 :デフォルトの名無しさん:03/08/15 23:24
java

960 :デフォルトの名無しさん:03/08/16 00:25
コンピュータの中に住んでいる親切な小人さんが
interface の定義を見て、処理してくれてるんだよ。


961 :デフォルトの名無しさん:03/08/16 00:54
>>958
新しいソースは実装して無いメソッドがあるのでコンパイルエラー食らってて、
以前作ったクラスファイルがそのまま残ってたとか。

962 :デフォルトの名無しさん:03/08/16 01:31
>>960
こーゆオチではなかろうね。

public interface Suka {
 String toString();
}
public class Sample01 implements Suka {
 
 public static void main(String[] args) {
 Sample01 a = new Sample01();
 System.out.println(a.toString());
 }
}

963 :デフォルトの名無しさん:03/08/16 10:24
質問なんですが、
int x=getPoint();
というのを、その場で
int x=getPoint(){return 3;};(←もちろんコンパイルエラーですが・・・)
というようなことをやりたいのですが
どうやればいいのでしょうか?


964 :デフォルトの名無しさん:03/08/16 10:28
>>963
3を入れたいならint x=3;とすればいいでしょ・・・

965 :デフォルトの名無しさん:03/08/16 11:09
>>963
Java は局所メソッド作れないので局所クラスで似たような事するとか。
class X{ int getPoint(){ return 3; } }
int x = new X().getPoint();


966 :デフォルトの名無しさん:03/08/16 12:06
可読性が低下するような事はおやめなさい

967 :デフォルトの名無しさん:03/08/16 13:04
というか何をやりたいのかわからないんだけど。

968 :963:03/08/16 15:21
>>964
あのさ、あくまでも解りやすく書いただけだよ
そんぐらい、頭働かせろバカ

>>965
なるほど参考になります

>>966
論点が違うんだよバカ
的外れな回答してんじゃねー

>>967
理解できないのならいちいち書き込んでんじゃねー
おまえはゴチャゴチャ言いたいだけかと

969 :デフォルトの名無しさん:03/08/16 15:23
>968
釣りはやめれ。


970 :デフォルトの名無しさん:03/08/16 15:29
>>963
余計なおせっかいの回答者っているよな
「そんな質問以前に、普通そんな設計はしない」
みたいなこと。
初心者にんなこといったってわかるわけねーのに・・・
おまえがプログラミング上級者だといいたいだけじゃんと、いいたい。


971 :上級者:03/08/16 15:40
初心者は黙って従えばいいんじゃん?

972 :デフォルトの名無しさん:03/08/16 16:00

まあ、プログラマに関わらず
論点とは違うとこゴチャゴチャ言うやつって多いよな
ちょっとのことばの違いで
「いや本来●●は○○である」
みたいに言いやがる・・・特に「本来」とか「実際には」とかいう表現が好きだよな
俺なんか昔
『二の舞を踏む』って発言したら
「それは、『二の舞を●●●』っていうんだよ」
「ちなみに、『口をにごす』は本来は『●●をにごす』だよ」
「さらに、『腹が煮え繰り返る』は『●が煮え繰り返るだよ』」
とか、最初の指摘はいいのだが
余計なことプラスして言いやがって。
「お前それ言いたいだけちゃうんか?」と言う意味で、ウザ過ぎ。
このプログラム板にもいるよな、「そんなコト聞いてね―よ」的なおせっかいって

973 :デフォルトの名無しさん:03/08/16 16:07
      _|_
                       , -´  `- 、
                    ( _................_ )
                  `ー-|-一´
                       |     チリーン
                       |
                     ノ
                     / ̄7
                     /夏 /
                     /だ /
                     /な /

974 :デフォルトの名無しさん:03/08/16 16:07
長文Uzeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee

975 :デフォルトの名無しさん:03/08/16 16:07
論点はずれて自分の言いたいことだけ言う香具師は結構いるものだ。

976 :デフォルトの名無しさん:03/08/16 16:07
>>973
AAずれてますよプ

977 :デフォルトの名無しさん:03/08/16 16:09
>>973
コピーするときは、右下から左上に向かって選択しましょう

978 :デフォルトの名無しさん:03/08/16 16:11
>>ALL
>>1
論点はずれまくり(禿藁嘲笑

979 :デフォルトの名無しさん:03/08/16 16:12
>>972>>975
禿同!
特に自分の言いたいことだけ言うってやついるよな
あっそーみたいな

980 :デフォルトの名無しさん:03/08/16 16:13
あっそー

981 :デフォルトの名無しさん:03/08/16 16:14
> 『二の舞を踏む』
「二の舞を舞う+二の足を踏む」かな?

> 『口をにごす』
「言葉をにごす」が正しいらしいけど、
口語だったら「口をにごす」ぐらい大目に見ても…

> 『腹が煮え繰り返る』
「腸が煮えくりかえる」の書き間違いだとすると、
それで正しいんじゃないかと思うんだけど…

982 :デフォルトの名無しさん:03/08/16 16:16
つれた!!!!!!!!!!!!!!!!!ププププププププ

983 :デフォルトの名無しさん:03/08/16 16:17

>>981
二の舞を演ずる


984 :デフォルトの名無しさん:03/08/16 16:19
>>981
おまえみたいのを論点ずれまくりって言うんだよ

985 :972:03/08/16 16:19

>>981、983

ね、俺が隠して書いたおかげで
2匹もつれましたよ
でも、この人たちは正常です
「ウザイ」対象ではありません。

↓こういう奴がウザイのです

986 :972:03/08/16 16:19
↑こういう奴がウザイのです

987 :デフォルトの名無しさん:03/08/16 16:20
Java質問スレですよ。。。

988 :デフォルトの名無しさん:03/08/16 16:22

俺がもっと嫌なのは
あるスレで質問すると
「ここは質問スレじゃない」
それはごもっともだと思うのだが
都合よくその切り札使われるのが嫌だ


989 :デフォルトの名無しさん:03/08/16 16:26

俺がもっと嫌なのは
あるトイレで大便しようとすると
「dd(いま入ってます)」
それはごもっともだと思うのだが
都合よくその切り札使われるのが嫌だ


990 :デフォルトの名無しさん:03/08/16 16:31


>>989が賞賛のレスを待ってこのスレに集中しています


991 :デフォルトの名無しさん:03/08/16 16:38
論点もAAもズレてるレスが読めるスレはここですか?

992 :デフォルトの名無しさん:03/08/16 16:40

また来たよこういう奴。
いわゆる「・・ですか?」隊
そんなの今時流行んね―よ

993 :デフォルトの名無しさん:03/08/16 16:47
また来たよこういう奴。
いわゆる「桃色美少女収集」隊
そんなの今時流行んねーよ


994 :デフォルトの名無しさん:03/08/16 16:51
桃尻ですが何か?

995 :デフォルトの名無しさん:03/08/16 16:55
イってきまーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー

996 :デフォルトの名無しさん:03/08/16 16:55

そろそろ1000取合戦なのだが
どうせなら、最高に笑えるネタでとって欲しいものだ
「1000ゲット」等といわれたところで後世になにをもたらすのか
その辺を考えて欲しい

いいかココからは持久戦だ
しびれを切らして999取ったやつは、弱い人間だ
ましてや999、1000と連続でとった奴は道徳違反だ

997 :デフォルトの名無しさん:03/08/16 16:56
1000ホスィ
2chで取ったことないYO!!!

998 :デフォルトの名無しさん:03/08/16 16:56
アムロいっきまーす

999 :デフォルトの名無しさん:03/08/16 16:57
うぽ?

1000 :デフォルトの名無しさん:03/08/16 16:57
100000000

1001 :1001:Over 1000 Thread
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。

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

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