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

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

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

1 :デフォルトの名無しさん:03/08/15 12:32
☆★☆こんなメッセージが出たら >>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
必要な情報やコンパイラのダウンロード先へのリンクがあります。

質問はageでおねがいします。また煽り厨は放置でお願いします。
※初心者なんでよろしくです。

2 :デフォルトの名無しさん:03/08/15 12:33
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/08/15 12:33
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/08/15 12:34
■■■ 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/08/15 12:34
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/08/15 12:52
【初心者・ネタ】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/08/15 12:53
28 http://pc2.2ch.net/test/read.cgi/tech/1058408362/
29 http://pc2.2ch.net/test/read.cgi/tech/1059654451/

■■■ 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/08/15 12:53
【サーバサイドゃ;ンタープライズ】
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/08/15 12:53
【サーバサイドやエンタープライズ】
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/08/15 12:54
【その他】
クライアントサイド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/08/15 12:54
■■■ 他板の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/08/15 12:55
■■■ 民間サイト ■■■
巨大な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/08/15 12:56

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


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

15 :1:03/08/15 12:56
続きやってくれた人ありがとうです。

16 :デフォルトの名無しさん:03/08/15 12:57
>>1、続きやった人
オツ

17 :デフォルトの名無しさん:03/08/15 12:57
だまれウンコ共


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

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

20 :デフォルトの名無しさん:03/08/15 13:43
ちなみに前スレ
http://game2.2ch.net/test/read.cgi/game/1060922526/

21 :デフォルトの名無しさん:03/08/15 14:11
>>19 賛成。
http://pc2.2ch.net/test/read.cgi/tech/1059654451/31-47
http://java.sun.com/j2se/1.4/ja/docs/ja/tooldocs/win32/classpath.html
クラスパスを変更するには、JVM やその他の SDK ツールを起動するときに
Java ツールの -classpath オプションを使用するか、または CLASSPATH
環境変数を使用します。 CLASSPATH 環境変数を設定するよりも、-classpath
オプションを使用することをお勧めします。アプリケーションごとに個別に
設定できるので、ほかのアプリケーションに影響を与えたり、ほかのアプリ
ケーションからこの値が変更されたりすることがないためです。

22 :デフォルトの名無しさん:03/08/15 14:24
と、せっかく>>1がよいスレ立てをしたのに
コイツ↓はお決まりのアノ質問をしやがります

23 :デフォルトの名無しさん:03/08/15 14:29
exeにするにはどうやるんですか?

24 :ウンマンコ ◆Fu3PvkO9fs :03/08/15 14:39
           /  ̄ ̄ ̄ ̄ ̄\
          /           \
         /              ヽ  
   / ̄\ l      \,, ,,/       |
  ,┤    ト.|   (●)     (●)   | 拡張子を変える どや?!
 |  \_/  ヽ     \___/     |     
 |   __( ̄ |    \/     ノ    
 |    __)_ノ
 ヽ___) ノ  ビシッ

25 :愛川欽也:03/08/15 14:47
はい、つぎ

26 :山崎 渉:03/08/15 15:09
    (⌒V⌒)
   │ ^ ^ │<これからも僕を応援して下さいね(^^)。
  ⊂|    |つ
   (_)(_)                      山崎パン

27 :デフォルトの名無しさん:03/08/15 15:16
sdkインストールするときに下記のエラーがどうしても出てしまいます,対処方キボンヌ
環境はRedHatLinux9フルインストールです
$ 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.

新スレになってしまったのでまた貼っておきます。

28 :デフォルトの名無しさん:03/08/15 16:00
>>27
>>3
もっとよく読みましょう。インストール方法も、ルールも。

29 :デフォルトの名無しさん:03/08/15 19:10
これからjava習得しようと思ってるんだけど独習javaでいけるかな
リファレンスとかなきゃだめ?

30 :デフォルトの名無しさん:03/08/15 20:21
教えてください。
下記プログラムで
out.println(pgSql01.output());
の部分をtry-catchしなくていい方法はありませんか?
///////////////////////////////////////////////////////////////////////
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.sql.*;
public class TestServlet extends HttpServlet {
TestPostgreSQL pgSql01= new TestPostgreSQL();
public void doGet(HttpServletRequest req,HttpServletResponse res) throws IOException,ServletException{
String err= new String();
err="";
res.setContentType("text/html;charset=shift_jis");
PrintWriter out = res.getWriter();
out.println("<html><head>");
out.println("<title>Test Servlet</title>");
out.println("</head><body>");
out.println("<h1>Hello Servlet8</h1>");


31 :デフォルトの名無しさん:03/08/15 20:21
try{
out.println(pgSql01.output());
}
catch(java.sql.SQLException e){
err="java.sql.SQLException";
}
catch(java.lang.ClassNotFoundException e){
err="java.lang.ClassNotFoundException";
}
out.println("<h1>aa</h1>");
out.println("</body></html>");
}
}

32 :デフォルトの名無しさん:03/08/15 20:22
class TestPostgreSQL {
String output() throws java.sql.SQLException,java.lang.ClassNotFoundException{

Class.forName("org.postgresql.Driver");

Connection conn = DriverManager.getConnection(
"jdbc:postgresql:anken",
"postgres",
"postgres"
);

Statement stmt = conn.createStatement();
ResultSet rset = stmt.executeQuery("SELECT now();");

while (rset.next()) {
System.out.println(rset.getString(1));
}


rset.close();
stmt.close();
conn.close();

return rset.getString(1);

}
}



33 :デフォルトの名無しさん:03/08/15 21:21
>>29
いける
リファレンスはsunのAPIドキュメントみればOK


34 :デフォルトの名無しさん:03/08/15 21:39
>>30

そのTestPostgreSQLっていうクラスは自作じゃないのですか?

気になったとこ
>String err= new String();
>err="";
あんまり意味無いような

35 :デフォルトの名無しさん:03/08/15 22:37
JTree tree = new JTree(漏れ独自オブジェクト)
tree.setEditable(true)

で実際に動かして、treeのnodeをF2押下して編集すると
漏れ独自オブジェクトからキャストエラーて出るんだけど、
何が悪いんだろう・・・・

36 :デフォルトの名無しさん:03/08/15 22:58
おまえら、デバッガの使い方とスタックとレースの読み方ぐらい
おぼえろよ。

37 :ウンマンコ ◆Fu3PvkO9fs :03/08/15 23:05
      / ̄ ̄ ̄ ̄ ̄ ̄\
    /             \
   /                  ヽ 
    l:::::::::.                  | 
    |::::::::::   (●)     (●)   |  なんだよ、『スタック』と『レース』って?
   |:::::::::::::::::   \___/     |  おまえが読めてないじゃん・・・
    ヽ:::::::::::::::::::.  \/     ノ 


38 :デフォルトの名無しさん:03/08/15 23:08
他のスレで一度質問したのですが、回答がなかったのでもう一度このスレで質問させてください。
マルチポストですいません。
ttp://examples.oreilly.com/javarmi/javarmi_examples.zip
上記サンプルのコンパイルはできるのですが、実行すると
Exception in thread "main" java.lang.NoClassDefFoundError: ViewFile
と言われます。classpathとかいろいろいじったのですがうまくいきません。
誰か教えて。JREは1.4.1_04です。
できれば実際に上記サンプルを試して動いた方から回答いただきたいです。

39 :デフォルトの名無しさん:03/08/15 23:12
>>36
嘲笑激藁

40 :ウンマンコ ◆Fu3PvkO9fs :03/08/15 23:12
       / ̄ ̄ ̄ ̄ ̄ ̄\
    /             \
   /                  ヽ 
    l:::::::::.                  | 
    |::::::::::   (●)     (●)   |  >>38 この中のどのサンプルだよ?全部試せってか?
   |:::::::::::::::::   \___/     |  せめてchapterは何番か教えれ
    ヽ:::::::::::::::::::.  \/     ノ 

41 :デフォルトの名無しさん:03/08/15 23:14
38です。すいません言葉足らずでした。chapter1のViewFile.javaです。

42 :ウンマンコ ◆Fu3PvkO9fs :03/08/15 23:18
           /  ̄ ̄ ̄ ̄ ̄\
          /           \
         /              ヽ  
   / ̄\ l      \,, ,,/       |
  ,┤    ト.|   (●)     (●)   | >>41 動くけど? ファイル選んで表示するアプリだろ?ViewFile
 |  \_/  ヽ     \___/     |     
 |   __( ̄ |    \/     ノ    
 |    __)_ノ
 ヽ___) ノ  ビシッ

43 :デフォルトの名無しさん:03/08/15 23:22
>>38
>classpathとかいろいろいじったのですがうまくいきません。
classpathいじれ

44 :ウンマンコ ◆Fu3PvkO9fs :03/08/15 23:23
       / ̄ ̄ ̄ ̄ ̄ ̄\
    /             \
   /                  ヽ 
    l:::::::::.                  | 
    |::::::::::   (●)     (●)   |  >>38 どういうコマンド打って実行したのか書いてくれないのか?
   |:::::::::::::::::   \___/     | 
    ヽ:::::::::::::::::::.  \/     ノ 


45 :デフォルトの名無しさん:03/08/15 23:26
38です。
僕のディレクトリ構成が悪いのかなあ。
ViewFile.classがあるディレクトリに移って
>java ViewFile
で良いんですよね?



46 :デフォルトの名無しさん:03/08/15 23:28
>>45
カレントディレクトリにクラスパスは通っているのか?

47 :ウンマンコ ◆Fu3PvkO9fs :03/08/15 23:36

ちがうだろ?『java -classpath . com.ora.rmibook.chapter1.ViewFile』だろ?
カレントディレクトリはcomと同階層

48 :デフォルトの名無しさん:03/08/15 23:40
38です。
おおっ。47さんの通り実行したらできました。
ちなみに環境変数にクラスパスは設定してません。
ありがとうございました。

49 :デフォルトの名無しさん:03/08/15 23:46
>>47 それちょっと余計。カレントディレクトリと同階層にcomがあるばあいは
`-classpath .'は入らない。なぜならカレントディレクトリはクラスパス
のデフォルト値だから。

50 :35:03/08/15 23:46
ここにあるソース
ttp://www.javaworld.com/javaworld/javatips/javatip97/javatip97.zip

で、DnDJTree.javaのコンストラクタに、setEditable(true);を加えて
ツリーを編集可能にしたいのですが、
実際にツリーのノードを編集したとき例外が発生します。
これはどうしてなんでしょうか。またどうすればいいんでしょうか

51 :49:03/08/15 23:49
入らない->要らない

52 :ウンマンコ ◆Fu3PvkO9fs :03/08/15 23:55
>>49
俺の環境じゃ 『-classpath . 』 がないと
38と同じエラーメッセージが出て動かない。
しいて言うなら、お前の発言が要らない。



53 :49:03/08/15 23:59
>>52 38の環境がわからんからとりあえず-classpath .を使えというなら
わからんでもないが、動かんってのは教える側としてはまずいだろ。
System.getProperties().list(System.err);
で確認してごらん。あと、
http://java.sun.com/j2se/1.4/ja/docs/ja/tooldocs/findingclasses.html
 ・デフォルト値「.」。この場合、ユーザクラスファイルは、現在のディレクトリ内のすべてのクラスファイル (パッケージ内のクラスファイルなら、現在のディレクトリ以下にあるすべてのクラスファイル) である
 ・-cp または -classpath コマンド行オプションの値。この値は、デフォルト値と CLASSPATH 値の両方をオーバーライドする
もね。

54 :49:03/08/16 00:00
ああ、確認するプロパティはもちろんjava.class.pathね。

55 :デフォルトの名無しさん:03/08/16 00:07
>>52
横レス。
環境変数やシステムプロパティにCLASSPATHが設定してある場合と
無い場合で挙動が違う。
何もないとデフォルトでカレントディレクトリにクラスパスが通る。

ってことをわかった上で
> しいて言うなら、お前の発言が要らない。
って発言があるのかな?

56 :デフォルトの名無しさん:03/08/16 00:10
こんな感じ。
E:\work\Test>type con > Test.java
public class Test {
 public static void main(String[] args){
  System.err.println(System.getProperty("java.class.path"));
 }
}
^Z

E:\work\Test>e:\j2sdk1.4.2\bin\javac Test.java

E:\work\Test>java Test
.

E:\work\Test>set CLASSPATH
環境変数 CLASSPATH が定義されていません

57 :ウンマンコ ◆Fu3PvkO9fs :03/08/16 00:18

俺は53の話は理解している。
「-classpath . 」ってかいたのは(大げさに言えば)考えられる事象を考慮して1行で書いた。

(で、俺はXMLスパイとか言うソフト入れてるのでインストール時にコイツの必要クラスが
CLASSPATHに追加されている。)

正直「要らん」言われてカチンときたよ。
補足情報が必要なら俺じゃなくて38に対して書けよと思ったよ。俺が解ってない見たいじゃんと思った。



58 :ウンマンコ ◆Fu3PvkO9fs :03/08/16 00:20
>>56
だから、そんな説明いいって。知ってるよ

59 :デフォルトの名無しさん:03/08/16 00:23
本当にわかっている人はデフォルトの動作と矛盾がないよう
CLASSPATHにカレントディレクトリを入れるけどね。
蛇足だが、こういうややこしい話がないようテンプレではCLASSPATH
非推奨にしようって話が続いているんだけどなかなか...

60 :デフォルトの名無しさん:03/08/16 00:26
>>57
おまい、いい奴

61 :50:03/08/16 00:32
助けて・・・・

62 :デフォルトの名無しさん:03/08/16 00:35
いや、考えられる事象を考慮してウンマンコは要らない
むしろ可哀想な子
失せろゴミ

63 :デフォルトの名無しさん:03/08/16 00:49
兄貴!!

class S{
public static void main(String[] args){
int i = 0;
int j = 5;
tp:
for(; ;){
if(i > j){
break tp:
}
}
}
}

forは無限ループというのは分かるのですが、
tpというのは何ですか?変数なのでしょうか?
大好きな俺の兄貴教えて下さい。

64 :デフォルトの名無しさん:03/08/16 00:52
i > j は常にfalseなので無限ループということで良いか?


65 :デフォルトの名無しさん:03/08/16 01:00
>>63
for文のラベルだよ>tp:

66 :63:03/08/16 01:04
兄貴達サンクスです。
”ラベル”で検索したら出てきました。

また何かあったらお願いします。

67 :デフォルトの名無しさん:03/08/16 01:05
>>60
おまい、、、インディアソ?

68 :50:03/08/16 01:11
役にたたねー香具師らばかりだな
これぐらい、わかんねーのかよ!

69 :デフォルトの名無しさん:03/08/16 01:17
h
http://www.iol.co.za/index.php?click_id=85&art_id=qw1055506862342B221&set_id=1

70 :デフォルトの名無しさん:03/08/16 01:18
>>68
ソースいじって例外出たのなら、どこをどういじって
どういう例外が出たかくらいは書こう。で、50だけ読んで
適当に書いてみるが、セルエディタはどうしたの?

71 :デフォルトの名無しさん:03/08/16 01:19
http://www.pornomovies.ws/free/tokyo_callgirl/callgirl1.mpg
http://www.pornomovies.ws/free/tokyo_callgirl/callgirl2.mpg
http://www.pornomovies.ws/free/tokyo_callgirl/callgirl3.mpg
http://www.pornomovies.ws/free/tokyo_callgirl/callgirl4.mpg
http://www.pornomovies.ws/free/tokyo_callgirl/callgirl5.mpg


72 :デフォルトの名無しさん:03/08/16 01:21
http://icelake.hp.infoseek.co.jp/anime/one.swf



73 :釣られてるのかw:03/08/16 01:22
50が言ったように
DnDJTree.javaのコンストラクタに、
setEditable(true);を加えて実行したが
漏れも例外出た


74 :50:03/08/16 01:23
釣られてんじゃねーよ
( ゚Д゚)バカ!!

75 :デフォルトの名無しさん:03/08/16 01:24
自作自演キタ━━━━(゚∀゚)━━━━!!

76 :デフォルトの名無しさん:03/08/16 01:25
  

77 :デフォルトの名無しさん:03/08/16 01:26
本当の50はもう寝たんだろうなw

78 :デフォルトの名無しさん:03/08/16 01:28
Javaのクラスの実装(ソース)って、見れるのでしょうか?


79 :デフォルトの名無しさん:03/08/16 01:28
w

80 :デフォルトの名無しさん:03/08/16 01:30
J2SDKだとインストール時にソースもインストールするかどうか聞かれたろ

81 :デフォルトの名無しさん:03/08/16 01:33
>>80
あれ?聞かれたかな?
ちょっとインストール先を確認してみます。なるほどそこを見ればいいわけですね。ありがとうございました。


82 :デフォルトの名無しさん:03/08/16 01:36
>>81
src.jarってのが、ソースのZIP書庫ですよ。

83 :デフォルトの名無しさん:03/08/16 01:37
>>82
最近は src.zip になってる。

84 :80:03/08/16 01:42
>>82
どうもです。それらしきものがありました。


85 :デフォルトの名無しさん:03/08/16 01:51
つられてんじゃねーよw

86 :デフォルトの名無しさん:03/08/16 01:52
>50
悪いが、わからんちん

87 :デフォルトの名無しさん:03/08/16 02:05
>>50
あくまで、応急処置。class PersonNodeの該当メソッドを以下のように変える。
public boolean isLeaf() {
PersonalInfo info = null;
try {
info = (PersonalInfo) getUserObject();
return info.isMale();
}
catch (ClassCastException e) {
return super.isLeaf();
}
}
public void add(DefaultMutableTreeNode child) {
super.add(child);
PersonalInfo childPI = (PersonalInfo) ((PersonNode) child).getUserObject();
PersonalInfo oldParent = childPI.getParent();
PersonalInfo newParent = null;
try {
newParent = (PersonalInfo) getUserObject();
}
catch (ClassCastException e) {
newParent = new PersonalInfo(getUserObject().toString(), super.isLeaf());
}
newParent.add(childPI);
}
ちなみに、子を持たないノードは『葉』に変わるのでその辺は自分でやれ。

88 :ウンマンコ ◆Fu3PvkO9fs :03/08/16 02:06
↑その後なにやるか考慮はしてないので
そのつもりで。

89 :デフォルトの名無しさん:03/08/16 02:56
>>53
>教える側としてはまずいだろ。
たかが2chでそんなコト言うなよぉ
引っ込みがつかなくなっただけだろ?

90 :デフォルトの名無しさん:03/08/16 02:57
あのー、SWINGについての本でおすすめはありますか?

91 :デフォルトの名無しさん:03/08/16 02:58
格安中古別荘販売!常時お薦め物件掲載中!
鈴蘭高原ハイエリア
東海ラジオグループ管理によるハイクラスのリゾート物件です。
温泉引湯権付き!
いつでも24時間蛇口をひねるだけで
約45℃の温泉が楽しめます。
詳しくは↓から
http://www.toukairizouto.co.jp/

92 :50:03/08/16 03:20
みなさま、ありがとうございます。
緊急処置では回復するものの、PersonalInfoが元と違うオブジェクトになるのが・・・・
セルエディタはそのままです。
これが問題なんでしょうか・・・
もうちょい研究してみまふ

93 :デフォルトの名無しさん:03/08/16 05:07
>>92 俺も勉強中なんだけど元のソースでsetEditable(true);を差し込む代わりに
TreeCellEditor editor =
 new DefaultTreeCellEditor(
   this,
   (DefaultTreeCellRenderer) (this.getCellRenderer())) {
  private boolean isLeaf;
  public boolean isCellEditable(EventObject event) {
   if(super.isCellEditable(event) && event instanceof MouseEvent){
    TreePath path =
     DnDJTree.this.getPathForLocation(((MouseEvent)event).getX(), ((MouseEvent)event).getY());
    Object obj = path.getLastPathComponent();
    isLeaf = ((PersonNode)obj).isLeaf();
    return true;
   }
   return false;
  }
  public Object getCellEditorValue() {
   Object obj = super.getCellEditorValue();
   return new PersonalInfo((String) obj, isLeaf);
  }
};
setCellEditor(editor);
setEditable(true);
を差し込むといいんじゃないですかね。

94 :93:03/08/16 05:29
あったまわり。
TreeCellEditor editor =
 new DefaultTreeCellEditor(
  this,
  (DefaultTreeCellRenderer) (this.getCellRenderer())) {
  public Object getCellEditorValue() {
   Object obj = super.getCellEditorValue();
   return new PersonalInfo((String) obj, ((PersonNode)(lastPath.getLastPathComponent())).isLeaf());
  }
 };
setCellEditor(editor);
setEditable(true);
これだけでよかった。

95 :デフォルトの名無しさん:03/08/16 07:16
>>50
>PersonalInfoが元と違うオブジェクトになるのが・・・・
コレ自分で作ったプログラムならわかってると思うけど
表示名==オブジェクト名になってるので
名前変えると、元と違うオブジェクトになるのは当然です。
なのでClassCastExceptionが出ます。
>>87、93、94さんの応急処置をすればエラーは出ませんが
オブジェクトは変わっちゃいますね。
表示と実際のオブジェクトを別に管理する設計にしてはどうですか?

96 :93:03/08/16 08:01
ああ、確かに私のだと違うインスタンスを返しているどころか、
名前と性別以外の情報も保存できていませんね。
TreeCellEditor editor =
new DefaultTreeCellEditor(
this,
(DefaultTreeCellRenderer) (this.getCellRenderer())) {
public Object getCellEditorValue() {
Object obj = super.getCellEditorValue();
PersonNode node = (PersonNode)(lastPath.getLastPathComponent());
PersonalInfo info = (PersonalInfo)(node.getUserObject());
info.setName((String)obj);
return info;
}
};
setCellEditor(editor);
setEditable(true);
性別は変更できないとしても、最低限ここまでしないといけませんか。

97 :デフォルトの名無しさん:03/08/16 08:12
>>93
ええ、一度このソース見て試行錯誤した方なら理解できると思うんですが
やっぱ、この設計の上で変更を行うのは限界があるように思えます
なので、50さんが既存のソースを改造しようとしているのかな?と、ふと思いました

98 :デフォルトの名無しさん:03/08/16 11:54
ど素人ですみません。
カレントディレクトリってなんですか?

99 :デフォルトの名無しさん:03/08/16 11:55
>>98
現在いるディレクトリ


100 :デフォルトの名無しさん:03/08/16 11:56
ど素人ですみません。
じゃヴぁってなんですか?

101 :デフォルトの名無しさん:03/08/16 12:28
>>100
風呂釜洗い

102 :デフォルトの名無しさん:03/08/16 12:56
マウスの移動にあわせて線を描くAppletとして、
public class Test extends Applet {
int xx[] = new int[500];
int yy[] = new int[500];
int ct = 0;

public void init() {
addMouseListener(new MouseAdapter() {
public void mousePressed(MouseEvent e) {
ct = 0;
xx[ct] = e.getX();
yy[ct] = e.getY();
}
});
addMouseMotionListener(new MouseMotionAdapter() {
public void mouseDragged(MouseEvent e) {
if (ct+1 >= 500) return;

xx[++ct] = e.getX();
yy[ct] = e.getY(); ←なんでyy[++ct]じゃないのか分からない
repaint();
}
});
}
public void paint(Graphics g) {
if (ct >= 1) {
g.drawPolyline(xx, yy, ct);
}
}
}
が教本に乗ってるんですが、なんでyy[++ct]じゃないのか教えて下さい。

103 :デフォルトの名無しさん:03/08/16 12:58
xx と yy は組だから。
ct が 3のときは
xx[4] と yy[4]に値が入る。


104 :デフォルトの名無しさん:03/08/16 13:06
>>102
c = c + 1;

を使ってxx[] = と yy[] = の行を書き換えてみれよ。

105 :102:03/08/16 13:17
>>103-104
せっかく教えてもらったんですが、俺が度素人すぎるのでわかりません。。。
どうしよう。
マウスを移動するたびに、xx[0]yy[0],xx[1]yy[1]ーーーxx[500]y[500]としていくには
xx[++ct]yy[++ct]でそのときどきのxとyの値を保持していくって考えちゃうんだけど、
これは間違いなのですか?


106 :デフォルトの名無しさん:03/08/16 13:26
前置 ++ についてもっと調べよう。

xx[++ct] = ...
yy[ct] = ...



ct = ct + 1;
xx[ct] = ...
yy[ct] = ...

と同じ。そのときどきの x と y の値を保持していくのはあってるけど
xx[++ct], yy[++ct] とやっちゃうと xx と yy とで ct の値がずれちゃう。

107 :50:03/08/16 13:31
ツリー上で変更するんじゃなくて、
別途ダイアログ上で変更するべきかな・・・
今回は、名前の変更だけなので>96さんのでいきます。

みなさま、ありがとうございますた

108 :102:03/08/16 13:53
>>106
ありがとうございます。
そうか、MouseEventがもってる値ってxx[]とyy[]を別々に管理してるわけじゃないんですね。
だから、>>103さんも組っていってたのか。
>>103-104もありがとうございました。

109 :デフォルトの名無しさん:03/08/16 14:23
>>108
MouseEventに限った話じゃないんだが・・・

110 :デフォルトの名無しさん:03/08/16 14:39
>>108
単に>>106のような本来は3行のはずの処理を、
かっこよく(?)2行にしただけだよ。
本に載ってるとのことなので、行数節約のためにやってるんだと思われ。

111 :デフォルトの名無しさん:03/08/16 14:54
>>102
騙されるな

112 :102:03/08/16 15:03
>>109
ええ!!??

>>110
ほんとですね。

>>111
何に!!??

113 :デフォルトの名無しさん:03/08/16 17:02

まあ、Javaプログラマに関わらず
論点とは違うとこゴチャゴチャ言うやつって多いよな
ちょっとのことばの違いで
「いや本来●●は○○である」
みたいに言いやがる・・・特に「本来」とか「実際には」とかいう表現が好きだよな
俺なんか昔
『二の舞を踏む』って発言したら
「それは、『二の舞を●●●』っていうんだよ」
「ちなみに、『口をにごす』は本来は『●●をにごす』だよ」
「さらに、『腹が煮え繰り返る』は『●が煮え繰り返るだよ』」
とか、最初の指摘はいいのだが
余計なことプラスして言いやがって。
「お前それ言いたいだけちゃうんか?」と言う意味で、ウザ過ぎ。
このプログラム板にもいるよな、「そんなコト聞いてね―よ」的なおせっかいって

114 :デフォルトの名無しさん:03/08/16 17:21
↑コピペ


115 :デフォルトの名無しさん:03/08/16 17:28
↑釣!>>114

116 :デフォルトの名無しさん:03/08/16 17:32
■■■■お前等!祭りですよ!!■■■■
〜1001ストッパーが壊れた!?〜

タバコ板のスレで、1001ストッパーが壊れ
1001以降もまだ書き込みできている模様。

1001 名前: 1001 投稿日: Over 1000 Thread
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。

1002 名前: 名無しは20歳になってから 投稿日: 03/08/15 06:25 ID:Z0CeMHS7
1000げっつ!

1003 名前: 名無しは20歳になってから 投稿日: 03/08/15 06:25 ID:am/H3sn8
>>1002 あ、お前壊したw

1006 名前: 名無しは20歳になってから 投稿日: 03/08/15 06:25 ID:Z0CeMHS7
何これ 

1014 名前: マロン名無しさん 投稿日: 03/08/15 06:25 ID:AxlwdY4A
お〜い、まだ書けるぞ?

書き込みは1100レスを過ぎた今も続けられている。
 
↓のスレに直行し、2ちゃんねるの歴史に名を残そう!
http://life.2ch.net/test/read.cgi/cigaret/1060952491/

117 :デフォルトの名無しさん:03/08/16 17:38
1183 名前: 投稿日: 03/08/15 06:25 ID:sAkrun5/3
みんなで協力して1万いこうぜ!

118 :デフォルトの名無しさん:03/08/17 12:03
具体的には書けなくて申し訳ないですが,例えば

2次元を操作出来るHoge2クラスがあります.
Hoge2を実装後,1次元しか操作出来ないHoge1も必要になりました.
Hoge1を実装しようと思ったのですが,
Hoge1とHoge2では共通部分が多かったため,
共通部分の処理内容(インスタンスメソッド)を持つCommonHogeクラス
を作ろうと思いました.
Hoge1とHoge2は,CommonHogeクラスを継承します.
しかし,CommonHogeクラスはインスタンスを作る必要もなく,
Hoge1とHoge2で使われることによって初めて意味が出てきます.

CommonHogeクラス自体を見せたくない(そして,
単独で使うような危険性を無くしたい)のですが,
インスタンスを作る意味はないので,その意味を込めて
abstractメソッドもないのに,今はCommonHogeクラスをabstractにした上で,
コンストラクタをprivateにしています.

これってどうなんでしょうか?

119 :デフォルトの名無しさん:03/08/17 12:03
ageとこ

120 :U ◆CZtFsGiu0c :03/08/17 12:10
>>118
abstractクラスにするのは良いと思います。でもコンストラクタをprivateにするのは
意味がないでしょう。

121 :デフォルトの名無しさん:03/08/17 12:13
>118
最近では、継承したがるのは素人という考え方が一般的。
CommonHogeに共通部分を括りだすのは実装上の都合だから、
集約で作るほうがよい。

集約で実現するにせよ、実装で実現するにせよ、
適切なパッケージ内で実装した上で、CommonHogeをパッケージプライベートに
するのがJava的だと思う。


122 :118:03/08/17 12:25
>>120
↓のような感じでCommonHogeクラスを生成されるのを
防げるので,privateにしました.
new AbstractSigmaStageController() {
};
ちょっと補足.デフォルトコンストラクタはprivateですが,
Hoge1, Hoge2共通のコンストラクタはprotectedにしています.

>>121
僕も継承は少しダサいと思ったんですよね.
ポリモーフィズムなども必要にならないので,
集約の方向も考えてみたいと思います.

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

123 :デフォルトの名無しさん:03/08/17 12:39
JavaでPATHなどの環境変数取り出すことって出来ないんですか〜?

124 :デフォルトの名無しさん:03/08/17 13:01
SQLコネクションってどこで実装されてるの?インタフェイスしかないよん

125 :デフォルトの名無しさん:03/08/17 13:05
>>124
たいていJDBCドライバと一緒のjarファイルに実装クラスが入っている。
実装はRDBMS依存だからな。

126 :デフォルトの名無しさん:03/08/17 13:05
>>124
JDBCドライバ。


127 :デフォルトの名無しさん:03/08/17 13:17
>>118=122
Hoge1, Hoge2 に共通のコンストラクタがあるなら
private 云々は関係なしにデフォルトコンストラクタは最初から書かなければよい。


128 :デフォルトの名無しさん:03/08/17 15:27
classをつなげたいんですけど、例えばShotクラスをつなげるには
Shot shot = new Shot();
とメインclassに書いてあげればよい?


129 :______:03/08/17 15:34
  ∋8ノノハ.∩  http://www.yakuyoke.or.jp/
   川o・-・)ノ <先生!こんなのがありました!
http://www.hokekyoji.com/
http://members.tripod.co.jp/hossyoji/index/
http://www.honmonji.or.jp/
http://www.maap.com/tanjoh-ji/
http://www.kuonji.jp/
http://www.butsuzou.com/jiten/sanmen.html
http://www.butsuzou.com/list1/sanmen2.html
http://www.butsuzou.com/list1/sanmen3.html
http://www.butsuzou.com/keitai/sanmen-kz.html


130 :デフォルトの名無しさん:03/08/17 15:53
>>128
お前が死ねばよい

131 :デフォルトの名無しさん:03/08/17 16:05
>>128
>classをつなげ
ここで証明されるのは、あなたのプログラマとしてのこれまでの歩みが間違っていたということです。
技術に関わること、特に質問文においては、自分語は絶対に使わないで下さい。

132 :デフォルトの名無しさん:03/08/17 16:53
本を見て、アプレットで魚が動く簡単なものができたので
友人に見てもらおうとDreamweaverでサイトに送ったのですが
Javaアプレットが動きません・・。
何故でしょうか。

133 :_:03/08/17 16:57
   ,.´ / Vヽヽ
    ! i iノノリ)) 〉
    i l l.´ヮ`ノリ <先生!こんなノがありました!
    l く/_只ヽ    http://www.yakuyoke.or.jp/
http://www.hokekyoji.com/
http://members.tripod.co.jp/hossyoji/index/
http://www.honmonji.or.jp/
http://www.maap.com/tanjoh-ji/
http://www.kuonji.jp/
http://www.butsuzou.com/jiten/sanmen.html
http://www.butsuzou.com/list1/sanmen2.html
http://www.butsuzou.com/list1/sanmen3.html
http://www.butsuzou.com/keitai/sanmen-kz.html

134 :デフォルトの名無しさん:03/08/17 18:56
厨房的質問で申し訳ございません。 Javaでマルコフチェーン論を使って強化学習のプログラムを書きたいんですが、それ系のサンプルが掲載されている教本は無いでしょうか?

135 :デフォルトの名無しさん:03/08/17 19:17
>>122
高々メソッドを共有するだけの理由でオブジェクトコンポジションやるのもでたらめな気がするけど。
オブジェクトコンポジションはデータの継承をやらないのならそれほど意味はない。
抽象化クラスにメソッドをまとめるリファクタリングで問題ないんじゃないの。
まぁコンストラクタをprivateにするのはわけわからんが。
protectedコンストラクタがあるならおんなじじゃん。

136 :デフォルトの名無しさん:03/08/17 20:04
Javaとは関係ないかもしれないけど、
一回しか使わない複雑なコードはメソッドとして書いとくべき?
分かりやすさとしたらメソッドにしとくほうがいいとは思うけど。





オシエテクラハイ(゚听)

137 :デフォルトの名無しさん:03/08/17 20:47
>>136
複雑なコードだから一回しか使わないのであって、
できるだけ簡単なコードに分割しておけば再利用性が高まる。
分割の仕方はメソッド分割でもいいしクラス分割でもいい。

138 :デフォルトの名無しさん:03/08/17 20:51
>>136
メソッドに分ける理由付けには、何度も(あちこちで)使うということの他に、
他のメソッドで丸々置き換えるから、という場合もある。
そうする予定が無くても、どっからどう切り離すべきか考えるのは勉強になる。

139 :デフォルトの名無しさん:03/08/17 20:54
>>136
「Smalltalk ベストプラクティスパターン」 を読め

140 :デフォルトの名無しさん:03/08/17 20:55
とりあえずデザインパターン呼んでみます。

141 :デザインパターン:03/08/17 21:23
呼ばれそうなので来てみますた。

142 :デフォルトの名無しさん:03/08/17 21:54
>>136
もちろん「Smalltalk ベストプラクティスパターン」 も良いんだが、
Java厨には、それより先に「リファクタリング」を読めと薦めてくれ。


143 :デフォルトの名無しさん:03/08/17 23:05
JNI を使いたいのですが、以下のコードで二度目のJNI_CreateJavaVMが失敗するのは何故でしょうか?
OSはWin98seでJDKは1.4.2です。

options[0].optionString = "-verbose:jni";
vm_args.version = JNI_VERSION_1_4;
vm_args.options = options;
vm_args.nOptions = 1;
vm_args.ignoreUnrecognized = true;
JNI_CreateJavaVM(&jvm, (void**)&env, &vm_args); // 0 が返る
jvm->DestroyJavaVM();
JNI_CreateJavaVM(&jvm, (void**)&env, &vm_args); // -1 が返る

144 :デフォルトの名無しさん:03/08/17 23:12
>>143
vm_args は JNI_GetDefaultJavaVMInitArgs() を使って初期化してるか?

145 :デフォルトの名無しさん:03/08/17 23:15
>>143
> jvm->DestroyJavaVM();
これは成功してんのか?

146 :143:03/08/17 23:21
>>144
してます。が、初期化した場合もしない場合も同じ結果でした。

>>145
すみません、書き忘れていました。
DestroyJavaVMは0を返していますので、成功しているはずです。

147 :デフォルトの名無しさん:03/08/18 00:17
>>143
1プロセスからVM2回生成は出来ません。
第一、2個作る必要ないでしょ。スレッド2本準備すればいいだけ。

148 :143:03/08/18 07:13
>>147
できないんですか。
もちろん二個は必要ないんですが、VMをロードした後に起動オプションを変えたくなった場合はどうしたらいいですか?

options[0].optionString = "-verbose:jni";
JNI_CreateJavaVM(&jvm, (void**)&env, &vm_args);
jvm->DestroyJavaVM();
options[0].optionString = "";
JNI_CreateJavaVM(&jvm, (void**)&env, &vm_args);

こんな感じで。


149 :30-32:03/08/18 17:58
>34

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

つまり、自作クラスのインスタンスメソッドでは
Try-catchするほかないのですね。

亀レスですいませんでした。




150 :デフォルトの名無しさん:03/08/18 18:18
神様お願いします。

class Test{
    private String ss = "abc";

    Test(){
        ss = ss + "def";
    }

    public void method(){
        System.out.println(ss);
    }

    public static void main(String[] args){
        Test c1 = new Test();
        c1.method();
    }
}

実行結果 abcdef

これを実行するとコンストラクタが実行され"abcdef"と表示されるというのは
わかるのですが、なぜメソッドが呼び出されないのでしょうか?
すいませんどなたかお願いします。

151 :デフォルトの名無しさん:03/08/18 18:25
>150
method()が呼び出されたから"abcdef"と表示されたんじゃないのか???


152 :150:03/08/18 18:33
ああー! そっか
>>151さんありがとうございます。

コンストラクタ内でSystem.out.println();がてっきり定義されていると
勘違いしてました。

お騒がせしました。また何かあったらお願いします。


153 :デフォルトの名無しさん:03/08/18 18:55
ワラタ
近年稀に見る(ry

154 :デフォルトの名無しさん:03/08/18 21:38
あのさ、

public class OHSADAHARU extends BonCurry{
private int hrCount;
public void getHrCount(){
return hrCount;
}
public int setHrCount(int hrCount){
this.hrCount=hrCount;
}
}

っていうのを
public class OHSADAHARU{
public int hrCount;
}

にしたらダメなの?
外部から値変更してもいいプロパティなら
publicなプロパティにしてもよさそうなものだけど・・
こういうのはJava的ではないのですか?

155 :デフォルトの名無しさん:03/08/18 21:39
スイマセン訂正

public class OHSADAHARU extends BonCurry{
public int hrCount;
}


156 :デフォルトの名無しさん:03/08/18 21:45
>>154
Java的だ/でない、っつーより
直接フィールド読み書きすると、
値の保持の仕方とかを変更する時に大変って事で
オブジェクト指向言語全般で「良くない」とされてる。
絶対に値の保持の仕方とかを変更しないって自信があるなら
直接フィールド読み書きしてもいーんじゃない?

157 :デフォルトの名無しさん:03/08/18 22:16
というかみんなほとんどデフォルトではないでしょうか?
変数に修飾子なんて使ってる人あんまりいないんじゃない?
クラスだってほとんどpublicだし・・・
ま、用はそのクラスがどういう使われ方をするかを考えて後々のために、
privateにしている。というか後で他の人が使うときに後ろ指を刺されない為?

158 :デフォルトの名無しさん:03/08/18 22:59
日記書くなよ

159 :デフォルトの名無しさん:03/08/18 23:01
プラグインってどういう仕組みよ?

160 :デフォルトの名無しさん:03/08/18 23:05
質問する態度じゃねーな
次ぃ〜

161 :159:03/08/18 23:12
>>160
答えられないならいいよ。
別にお前だけに聞いてるわけじゃないし。

162 :デフォルトの名無しさん:03/08/18 23:15
>>159
実際、GIMPとかEclipseのコード見たこと無いのでわかんないけど
ポリモーフィズムの応用だと思うよ

163 :デフォルトの名無しさん:03/08/18 23:20
>>159 http://dev.eclipse.org/help21/topic/org.eclipse.platform.doc.isv/reference/api/org/eclipse/core/runtime/Plugin.html

164 :159:03/08/18 23:23
>>162-163
thx。
参考にするよ。

165 :デフォルトの名無しさん:03/08/18 23:34

スイマセンご教授ください
セットとイテレータの関係なのですが
Set set=・・・;
Itaretor it=set.iterator();
while(it.hasNext()){
HogeObj obj=(HogeObj)it.next();
it.remove();
...
...
...
}
というコードを見つけたんですがいったい何をやってるんでしょうか?
なんで、remove()しないといけないのだろう・・・
ちなみにjava.nio.channels.ServerSocketChannelを使ったサーバーのサンプルで見ました
というよりも、selectorの概念があまりピンと来ないので理解に苦しみます


166 :きゅうり:03/08/19 00:06
JavaでBluetoothを制御したいのですが、そういったライブラリはありますでしょうか?

167 :デフォルトの名無しさん:03/08/19 00:08
EJBのスレ、のきなみ終わっちゃってますが、
ここで聞いていいでしょうか?
それとも新スレ立てるべき?

168 :デフォルトの名無しさん:03/08/19 00:24
>>165

Set set=...;
List list = new ArrayList(set);
for(int i=0;i<list.size();i++){
 HogeObj obj=(HogeObj)list.get(i);
 list.remove(obj);
}

文脈からすると、こんなようなことがしたいということはわかるかな?
で、これを行うのに↑のように書くと、トンデモナイことになるって
のも分かるかな?

#remove()操作をサポートするIteratorは、要素を削除した後のイテ
レート操作に影響を与えずに、元Setから安全に要素削除ができるの
です。便利でしょ

169 :デフォルトの名無しさん:03/08/19 00:42
>>168
ありがとうございます
安全なやり方をやったということですか?

なぜ、それ(>>168)が安全でなくて>>165が安全でないのかまだ理解してないので勉強します

170 :デフォルトの名無しさん:03/08/19 00:58
>>165

Stack に対する pop 操作のようなことをしてると思えばいい。

171 :デフォルトの名無しさん:03/08/19 02:03
>>169
for回ってるあいだに、list.size()が変わるし、listの中身も変わるよ。

まぁ、168のはあきらかにバグだから、

int size = list.size();
for (int i = 0; i < size; i++){
HogeObj obj = (HogeObj) list.remove(0);
.....
}

ってのと比べた方がいいと思うけど。文脈によっては、こっちの方が
いい事もあるし、165のがいい事もある。
もとのsetの使われ方による。


172 :デフォルトの名無しさん:03/08/19 02:25
>>171
Iterator 使っとくと、ConcurrentModificationException を期待できるので良さげ。
個人的には
for (int i = 0; i < size; i++){
 HogeObj obj = (HogeObj) list.remove(0);
 .....
}
にしとくメリットって思いつかないんだけど。

173 :デフォルトの名無しさん:03/08/19 04:55

AudioClip で同じサウンドを重ねて再生するにはどうしたら良いのでしょうか?

174 :デフォルトの名無しさん:03/08/19 07:47
 ━━━━━━━━           ━━━━━━━━
,-==ニ二・二ニ==-、          ,-==ニ二・二ニ==-、

               |
               |
               |
               |
                   ̄ ̄

               ( ̄ ̄ ̄\
               |(二二二) )
                  \__/


あ〜ねむい・・・・

175 :デフォルトの名無しさん:03/08/19 12:09
          ━━━━━━━━━
          ,-==ニ二・二ニ==-、

               |
               |
               |
               |
                   ̄ ̄

               ( ̄ ̄ ̄\
               |(二二二) )
                  \__/


あ〜ねむい・・・・

176 :デフォルトの名無しさん:03/08/19 12:45
>>171-172
こんなのも。
for (int i = list.size() - 1; i >= 0; i--){
HogeObj obj = (HogeObj) list.remove(i);
.....
}
これは好みかなぁ。iでiterateしてるのに常にindex:0で取り出すのはなんか気持ち悪い。
やっぱIterator使っとこう

177 :デフォルトの名無しさん:03/08/19 13:00
ゲームを作る際には、GOFの23のパターンのうち、どれがお勧めですか?
classは、4,5個を予定です

178 :デフォルトの名無しさん:03/08/19 13:06
>>177 AbstractFactory

179 :デフォルトの名無しさん:03/08/19 13:17
>>177
FlyWeight

180 :デフォルトの名無しさん:03/08/19 13:21
>>177 Singleton

181 :デフォルトの名無しさん:03/08/19 13:23
ガベージコレクションが動くタイミングって
 周期
それとも
使用メモリが規定値を超えたら
どっち??

できれば、参考になるサイトがあれば教えていただけると助かります。

教えてエロイ人!

182 :デフォルトの名無しさん:03/08/19 15:16
>>181
エロイ答え:精巣細胞の gc は俺的には(ry

ちゃんとした答え:VMの実装による

183 :デフォルトの名無しさん:03/08/19 15:39
>>181
うる覚えだが、New世代のメモリがいっぱいになると通常のGC
Old世代もいっぱいになったら、フルGCだったと思う。

184 :181:03/08/19 16:09
>>182>>183

185 :181:03/08/19 16:11
>>184
あう、みすった・・・・・

>>181 >>182
ありがとん! (・∀・)ノミ

186 :181:03/08/19 16:13
ミスしまくり・・・逝ってきます・・・・・


λ......


187 :デフォルトの名無しさん:03/08/19 17:09
Javaのプログラムからブラウザを操作するにはどうしたら良いのでしょうか?
例えば、
ローカルにあるドキュメントをJavaのプログラムで加工してその結果をブラウザへ出力する
といったような場合です

よろしくご教授願います

188 :デフォルトの名無しさん:03/08/19 17:52
>>187
ブラウザにもよるが、Runtime#exec() でも使っておけばいいんじゃない?
TMP なファイルに書き出すか、一旦保存させて、
コマンドラインのオプションでファイル名を指定。

189 :デフォルトの名無しさん:03/08/19 18:26
>>178
ありがと それで逝ってみます。

190 :デフォルトの名無しさん:03/08/19 18:28
>>188
「Runtime#exec()」でググったところ
こんなのも出てきました
ttp://developer.apple.com/ja/qa/java/java12.html

これで試してみたいと思います
どうもありがとうございました

191 :デフォルトの名無しさん:03/08/19 21:05
>>187

http://www.mobster.jp/wiki/index.jsp?pid=SWT
これイイんでないか

192 :デフォルトの名無しさん:03/08/19 22:21
>>183
うる覚えであってるよ

193 :デフォルトの名無しさん:03/08/19 22:30
うろ覚えだろ。

194 :デフォルトの名無しさん:03/08/19 22:44
>>192
あってるあってる。

195 :デフォルトの名無しさん:03/08/20 00:22
サーバーサイド(っていうかEJB)の話ですが、
VO と DAO と DTO の違いって、何でしょう?
 

196 :デフォルトの名無しさん:03/08/20 00:32
データ転送オブジェクト(DTO)?
http://www-6.ibm.com/jp/developerworks/java/030502/j_j-sdao.html
>DAOが操作するオブジェクトは通常値オブジェクト (value objects)と
>呼ばれますが、 しかし、データ転送オブジェクト (DTO) という用語の方が
>内容をよく表しています。

↑ならValueObject(VO)とDTOは同じもの。DAOは全然違う

197 :デフォルトの名無しさん:03/08/20 07:00
>>195
DAOはオブジェクトの永続化に関する処理をカプセル化する。

198 :デフォルトの名無しさん:03/08/20 19:57
ArrayListから取り出したオブジェクトの型によって
処理を分けたいのですが
ArrayList arr;
if (arr.get(1) == ClassA) hogeA();
if (arr.get(1) == ClassB) hogeB();

のようにするにはどのようなコードを書けばよいでしょうか?

199 :デフォルトの名無しさん:03/08/20 20:13
>>198
if (arr.get(1) instanceof ClassA) hogeA();
if (arr.get(1) instanceof ClassB) hogeB();

200 :デフォルトの名無しさん:03/08/20 20:37
>>199
神様、仏様、199様
ありがとうございます。


201 :デフォルトの名無しさん:03/08/20 20:58
任意のI/Oアドレスに対してデータ出力する方法が
どうしても分かりません。。。

202 :デフォルトの名無しさん:03/08/20 22:54
教えてください。

プログラムを書き換えてコンパイルして実行しても
実行結果が何も変わりません。
何度やっても同じものばかりでてきます。
これはどうしてですか?

だれか教えてください。
お願いします。

203 :デフォルトの名無しさん:03/08/20 22:57
プログラムが実は書き換えてない。
コンパイルが実は成功していない。
実行がいつも失敗してる。

クラスファイル消してコンパイルしなおしてみれば?

204 :デフォルトの名無しさん:03/08/20 23:13
>>203
レスありがとうございます。

クラスファイルを消してコンパイルしなおしてみたのですが
やっぱり同じ結果がでました。
同じ結果というのは
「スペースキーが押されたら指定されたブロックを削除する」というものです。
削除するというところのプログラムを消したり変えたりしても、
すべてのブロックが消えてしまいます。

205 :デフォルトの名無しさん:03/08/20 23:15
まちがえました・・・

スペースキーが押されたら指定されたブロックを消したいのに
プログラムを書き換えてもいろいろやってみても
指定されたものだけでなく、すべてのブロックが消えてしまう。です。
失礼しました・・・

206 :デフォルトの名無しさん:03/08/20 23:29
ロジックがヘボイ

207 :デフォルトの名無しさん:03/08/20 23:43
消したブロックと消したいと思っているブロックのオブジェクトが同一のものでないかも

てか、ソース見せなきゃわからんて

おれたちは、超能力者じゃない

208 :デフォルトの名無しさん:03/08/21 00:00
テキトウに書くと

Block a = new Block();
Block b = a;
Block c = a;

a.deleteBlock();

みたいなことをやっている

209 :デフォルトの名無しさん:03/08/21 00:42
>>201
I/Oアドレスってナンデスカ?

210 :デフォルトの名無しさん:03/08/21 00:44
>>208
aもbもcも同じ物を指してるんだから
a.deleteBlock()ってやったら全部消えるのは当たり前

211 :デフォルトの名無しさん:03/08/21 00:51
>>209
デバイスの識別アドレス

212 :デフォルトの名無しさん:03/08/21 01:13
>>196
>>197
ありがとうございます。
まとめると、こんな感じでしょうか。

・DAO は永続化に関する処理をカプセル化する。
 (つまり、JDBC操作などの隠蔽?)
DAOを使ったデータの出し入れに使うのがVO(DTO)
・VOとDTO は同じもの


213 :デフォルトの名無しさん:03/08/21 01:18
>>212
何の略か考えればよくわかる
DAO⇒データアクセスオブラート
VO⇒バリューセット Oコース
DTO⇒データトポロジー

214 :デフォルトの名無しさん:03/08/21 01:21
DTO⇒デラックスティーチャーオニヅカ

215 :デフォルトの名無しさん:03/08/21 01:37
簡単な麻雀ソフトを作ろうと思っているものですが
ソフトというのはどうやって作るものなのかを
教えてくれるHPのURLを教えてください。

216 :213:03/08/21 01:37

>>214
負けた・・・


217 :デフォルトの名無しさん:03/08/21 01:38
>>215
まず、自分で思考すれ


218 :デフォルトの名無しさん:03/08/21 01:40
>>217
Googleで調べてもなかなかこれっていうのが見つからないんですよね。

219 :デフォルトの名無しさん:03/08/21 01:47
キャストというのが今一つ分からないので教えて下さい。

あるインスタンスをどんな型にキャストしようが、
そのインスタンス自体に変化はないのでしょうか?
つまり、メモリ上にあるインスタンスのデータは何も変わらず、
そのインスタンスを指す変数だけが変わるようなイメージでしょうか?

それとも、キャストによってインスタンス自体が変わったり
するんでしょうか?(フィールドやメソッドが無くなったりとか)


トンチンカンなことを言ってたらすみません。
こういうことが分かるようなオススメの本もあれば教えて下さい。

220 :デフォルトの名無しさん:03/08/21 01:52
親クラス

221 :デフォルトの名無しさん:03/08/21 02:12
StringとStringBufferのオブジェクトをequalsで比較した場合の動作が
わからないので教えてほしいのです。

以下のソースですが、
s.equals(s1),s1.equals(s)がfalseとなるのはなぜでしょうか?

class testEquals{
public static void main(String args[]){
String s="abcde";
StringBuffer s1=new StringBuffer("abcde");
boolean sb,sb1;
sb=sb1=false;
if(s.equals(s1)) sb=true;
if(s1.equals(s)) sb1=true;

System.out.println(sb+","+sb1);
}
}

222 :デフォルトの名無しさん:03/08/21 02:23
>>221
StringとStringBufferは別のクラスです。ハァ。

223 :デフォルトの名無しさん:03/08/21 02:37
>>210
ごめんごめん、勘違いされそうな書き込みだった
>>208は単なる予想で、>>202とは別人だよ

224 :デフォルトの名無しさん:03/08/21 07:59
JAVAコンについて詳しく書いてある本
もしくは
HPって知ってますか?

225 :__:03/08/21 08:02
http://homepage.mac.com/yamazaki8

226 :デフォルトの名無しさん:03/08/21 08:23
>>219
>つまり、メモリ上にあるインスタンスのデータは何も変わらず、
なにも変わらん。

>そのインスタンスを指す変数だけが変わるようなイメージでしょうか?
もちろん代入したんだから変数はかわるよ。

>こういうことが分かるようなオススメの本もあれば教えて下さい。
java関連の本でいいのあるかな?
c++のポインタがわかればわかると思う。

227 :デフォルトの名無しさん:03/08/21 10:41
Javaでブラウザのアクションをトリガーにするにはどうしたらよいでしょうか?
ブラウザで「戻る」を押すとJavaでウィンドウを開いたりしたいのですが
よろしくお願いします

228 :デフォルトの名無しさん:03/08/21 12:11
>>227
>Javaでブラウザのアクションをトリガーにするにはどうしたらよいでしょうか。
できない。

>ブラウザで「戻る」を押すとJavaでウィンドウを開いたりしたいのですが
JavaScript ならできるかもしれない(知らない)。
Applet の stop() メソッド なら似たようなことができるかもしれないが、
君のしたいことが、ユーザに親切な設計になってるかもう一回どうか、
考えた方がいいと思う。

229 :デフォルトの名無しさん:03/08/21 15:42
JScrollPane の中に配置する JComponent のサイズを、
幅は JScrollPane にあわせ、高さは表示内容に合わせて設計にしたいのです。
(下部のスクロールバーは出ない、上下だけは出る可能性がある、もしくは必ず出る)
とりあえずこういう感じにしてあるのですが・・・

JScrollPane sp_; //インスタンス変数

sp_.setViewportView(new JComponent() {
 public Dimension getPreferredSize() {
  Dimension d = super.getPreferredSize();
  d.width = sp_.getViewport().getWidth();
  return d;
 }
});

何か API が用意されてたり、もっと美しい実装はあったりしますか?

230 :デフォルトの名無しさん:03/08/21 16:16
>>229
それ難しいよね〜
俺もハマリまくった
で、しょうがないので自分でサイズ調整しようと
中のコンポーネントをsetLayout(null)にすると、
今度は何も表示されない

おれも、そのやり方知りたい
誰か教えてくれ

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

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

read.cgi ver 05.02.02 2014/06/23 Mango Mangüé ★
FOX ★ DSO(Dynamic Shared Object)