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

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

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

1 :vi2:02/12/18 03:42
     ∧,,∧    / ̄ ̄ ̄ ̄ ̄
    ミ゚ー゚ミ   < Java質問相談スレ パート14 修正版
   /旦 ̄ ̄/ヽ \_____
  ノ  ̄ ̄ ̄ヽ /
  ~~~~~~~~~~~~
関連情報は >>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/
パソコンの基本操作に関しては、PC初心者板で質問しましょう ⇒ http://pc.2ch.net/pcqa/

『コマンドまたはファイル名が違います』>>2
『'javac' は、内部コマンドまたは外部コマンド、
 操作可能なプログラムまたはバッチ ファイルとして認識されていません。』>>2
『Exception in thread "main" java.lang.NoClassDefFoundError: Hello』>>2

Java(TM) 2 SDK インストールガイド
http://java.sun.com/j2se/1.4.1/ja/install.html

基本的にsage進行でおねがいします。また煽り厨は放置でお願いします。


2 :デフォルトの名無しさん:02/12/18 03:42
■■■ 最近多い質問とその答え ■■■
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 :vi2:02/12/18 03:43
■■■ ダウンロードと API リファレンス ■■■
【Sun JDK 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 JDK 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 JDK 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 JDK 1.1/1.3】 (要ユーザ登録)
http://www-105.ibm.com/developerworks/tools.nsf/dw/java-devkits-byname?OpenDocument&Count=100

※JDK = Java2 SDK


4 :デフォルトの名無しさん:02/12/18 03:43
■■■ 無料の統合開発環境 ■■■
【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/


5 :デフォルトの名無しさん:02/12/18 03:44
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


6 :デフォルトの名無しさん:02/12/18 03:44
■■■ 過去スレの一覧 (1) ■■■
JAVA厨房
http://piza.2ch.net/tech/kako/966/966391052.html
Java相談室
http://piza.2ch.net/tech/kako/971/971960169.html
Java相談室 Part2
http://piza.2ch.net/tech/kako/980/980858322.html
Java相談室 Part3
http://piza2.2ch.net/tech/kako/994/994150280.html
Java相談室 Part4
http://pc.2ch.net/tech/kako/997/997791189.html
Java相談室part5
http://pc.2ch.net/tech/kako/1003/10035/1003567552.html


7 :vi2:02/12/18 03:45
■■■ 過去スレの一覧 (2) ■■■
ネタ心者歓迎!今更ながらにJavaを学ぼう!
http://piza.2ch.net/tech/kako/981/981424252.html
ネタ心者歓迎!今更ながらにJavaを学ぼう! その弐
http://pc.2ch.net/tech/kako/993/993358225.html
ネタ心者歓迎! 今更ながらにJava相談室
http://pc.2ch.net/tech/kako/1003/10035/1003569074.html
ネタ心者歓迎! 今更ながらにJava相談室 その2
http://pc.2ch.net/tech/kako/1006/10064/1006408230.html
ネタ心者歓迎!今更ながらにJava相談室 その3
http://pc.2ch.net/tech/kako/1007/10078/1007802486.html
ネタ心者歓迎!今更ながらにJava相談室 その4
http://pc.2ch.net/tech/kako/1010/10105/1010545421.html
初心者歓迎! Java相談室 その5
http://pc.2ch.net/tech/kako/1012/10129/1012968994.html
初心者歓迎! Java相談室 その6
http://pc.2ch.net/tech/kako/1015/10154/1015418174.html
初心者歓迎! Java相談室 その7
http://pc.2ch.net/tech/kako/1018/10186/1018631329.html
初心者歓迎! Java相談室 その8
http://pc.2ch.net/tech/kako/1020/10204/1020453823.html


8 :vi2:02/12/18 03:46
■■■ 過去スレの一覧 (3) ■■■ (一部 HTML 化待ち)
【初心者・ネタ】Java質問・相談スレ【大歓迎】
http://pc.2ch.net/tech/kako/1021/10218/1021817147.html
【初心者】Java質問・相談スレ2【大歓迎】
http://pc.2ch.net/tech/kako/1023/10233/1023319551.html
【初心者】Java質問・相談スレ3【大歓迎】
http://pc.2ch.net/tech/kako/1024/10248/1024885660.html
【初心者】Java質問・相談スレ4【大歓迎】
http://pc3.2ch.net/test/read.cgi/tech/1026601774/
【初心者】Java質問・相談スレ5【大歓迎】
http://pc3.2ch.net/test/read.cgi/tech/1028096225/
【初心者】Java質問・相談スレ6【大歓迎】
http://pc3.2ch.net/test/read.cgi/tech/1029774594/
【初心者】Java質問・相談スレ6【大歓迎】(本当は7)
http://pc3.2ch.net/test/read.cgi/tech/1031397913/
【初心者】Java質問・相談スレF【大歓迎】(重複の7)
http://pc3.2ch.net/test/read.cgi/tech/1032944182/
【初心者】Java質問・相談スレ8【大歓迎】
http://pc3.2ch.net/test/read.cgi/tech/1032944246/
【初心者】Java質問・相談スレ9【大歓迎】
http://pc3.2ch.net/test/read.cgi/tech/1034303501/
【初心者】Java質問・相談スレ10【大歓迎】
http://pc3.2ch.net/test/read.cgi/tech/1035570359/
【初心者】Java質問・相談スレ11【大歓迎】
http://pc3.2ch.net/test/read.cgi/tech/1036142056/
【初心者】Java質問・相談スレ12【大歓迎】
http://pc3.2ch.net/test/read.cgi/tech/1037407642/
【初心者】Java質問・相談スレ13【大歓迎】
http://pc3.2ch.net/test/read.cgi/tech/1038731106/


9 :vi2:02/12/18 03:47
■■■ Java関連スレいろいろ ■■■ (一部 HTML 化待ち)
【統合】Java開発環境スレ
http://pc3.2ch.net/test/read.cgi/tech/1038118138/
【Java/C/他】統合開発環境Eclipse GM4
http://pc3.2ch.net/test/read.cgi/tech/1039405354/
えっ?JBuilder8が発売?
http://pc3.2ch.net/test/read.cgi/tech/1038042372/
JBuilder 7日本語版発売、Personal無償7月中
http://pc3.2ch.net/test/read.cgi/tech/1023102379/
[Java]JBuilder5[Java]
http://pc3.2ch.net/test/read.cgi/tech/995044723/
【Meadow】Java開発環境(・∀・)イイ【JDEE】
http://pc3.2ch.net/test/read.cgi/tech/1017214967/
Forte for Java
http://pc3.2ch.net/test/read.cgi/tech/1016161880/

【サーバサイド】
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
■■ Servlet/JSP(EJB含む) 質問スレ ■■ <WebProg板>
http://pc.2ch.net/test/read.cgi/php/1023501812/

【携帯】
携帯JAVAのスレッド
http://pc3.2ch.net/test/read.cgi/tech/1011977260/
iアプリ
http://pc3.2ch.net/test/read.cgi/tech/1000723476/
iアプリでゲーム<ゲーム製作技術板>
http://game.2ch.net/test/read.cgi/gamedev/1005042631/


10 :vi2:02/12/18 03:47
■■■ 民間サイト ■■■
巨大な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

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


11 :vi2:02/12/18 03:48
■■■ 撲滅させたいかた、死滅を心配してるかた ■■■

CとJavaを比較した場合Cの良いとこと悪いとこ
http://pc.2ch.net/tech/kako/1009/10097/1009707596.html

Java撲滅委員会
http://pc.2ch.net/tech/kako/996/996848309.html

●●JAVAって死滅しちゃうの????●●
http://pc.2ch.net/tech/kako/1005/10051/1005159122.html
●●JAVAって死滅しちゃうの???? PART2●●
http://pc.2ch.net/tech/kako/1006/10060/1006053686.html
●●JAVAって死滅しちゃうの???? PART3●●
http://pc.2ch.net/tech/kako/1008/10081/1008162230.html


12 :vi2:02/12/18 03:52
上級者の方で教える技術が無い方は下記スレでダベりましょう。
初心者無視! Java相談室 その9
http://pc3.2ch.net/test/read.cgi/tech/1021555964/


13 :デフォルトの名無しさん:02/12/18 04:27
【言語初心者の方に】
設計思想
Java >> Python >> C++ >> C >> Perl
使い安さ/汎用性
C >> C++ >> Perl >> Python >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> J...

14 :デフォルトの名無しさん:02/12/18 04:33
>>1 おつかれさま。
  ∧w∧
  (*゚ー゚) ∬
  /  ⊃旦
@(__)

15 :デフォルトの名無しさん:02/12/18 04:35
…うーんずれた。

16 :デフォルトの名無しさん:02/12/18 04:55
Tomcat4.1.17 Stable Release あげ

http://jakarta.apache.org/site/news.html#1217.1
http://jakarta.apache.org/builds/jakarta-tomcat-4.0/release/v4.1.17/

>Tomcat 4.1.16 includes many bugfixes and ...
4.1.16かよ ( ゚Д゚)


17 :デフォルトの名無しさん:02/12/18 07:28
このスクリプトどういう意味?

function go(){wind.location=add;
fired.value++;
setTimeout("go();",inter.value*1000);}


18 :デフォルトの名無しさん:02/12/18 07:41
>>17 JavaScript…
部分的すぎて良くわかんない。


19 :デフォルトの名無しさん:02/12/18 07:45
>>17
10秒ごとに繰り返し、
wind.location=add;
fired.value++;
を実行するスクリプト

20 :デフォルトの名無しさん:02/12/18 09:12
  appletでタイピングソフトを作りたいのですが参考になるソースどっかにありませんか??
  教えてください。  


21 :デフォルトの名無しさん:02/12/18 09:50
  

22 :デフォルトの名無しさん:02/12/18 09:54
>>20
課題は自力でやりましょう。

23 :デフォルトの名無しさん:02/12/18 18:28
JDesktopPaneにframe1,frame2をくっつけてます。
frame2でframe1の位置を表示したいので、frame1のマウスイベントを
frame2に送りたいのですが、どうすればいいのか分かりません。

24 :デフォルトの名無しさん:02/12/18 18:43
>>23
MouseMotionListener

25 :デフォルトの名無しさん:02/12/18 20:10
>>13
設計思想や使いやすさは思いっきり主観が入るんだがな。
とりあえず乙 >>1

26 :デフォルトの名無しさん:02/12/18 21:25
ネットに回線繋げたままでjbuilder7 personalを終了すると
終了後にネットとのやりとりが出来なくなる・・・コレってバグ?
回線は切れないんだけどブラウザは「ページがありません」となりまふ。

環境:windows98SE + PPPoEのADSL

10回近く試して確認したのでjbuilder7 personalの終了が原因の1つ
なのは間違いないようだす。 それともコレが普通なのかな・・(^^;A

27 :デフォルトの名無しさん:02/12/18 21:45
>>26
うちのノートパソコンはメモリが少なくなるとPCカードが死にます。
で再起動だと死んだままが多いから電源を入れなおさないといけない。

28 :デフォルトの名無しさん:02/12/18 22:25
JSPで作成されたメソッドをサーブレットの中で使いたいのですが、
どのようにしてcallすれば良いのでしょうか?
JSPの場合、<%@ include file = "○○○.jsp" %>でcallすることが可能になりますが、
サーブレットの場合はどのように記述して良いのやら・・・


29 :デフォルトの名無しさん:02/12/18 22:27
request.getRequestDispatcher("/xxx/yyy/○○○.jsp").include(request, response);

30 :28:02/12/18 22:44
>29
ありがとうございます。
ついでにすいませんが、自作Bean内でCallしたい場合には
どのように記述すれば良いのでしょうか?

31 :デフォルトの名無しさん:02/12/19 00:27
Model(Bean)から直接JSP(View)を呼ぶのか?
俺ならぜってーそんなコードをメテしねーぞ。
まずは設計を見直そう。


32 :デフォルトの名無しさん:02/12/19 00:49
test

33 :28:02/12/19 02:20
>31
提供されたJSPなんすよ・・・
開発方針が各社一貫性が無くてほとほと困ってます・・・
JSPでガリゴリ実装する会社もあれば、
MVCだったり・・・
確かにM→Vは本末転倒ですよね。
基本的にはMVCで実装なんですが、肝心なファンクションが
既にJSPで実装されてしまってます。

34 :28:02/12/19 02:23
で、開発方針が変わってMVCをもっと徹底させるって話になったんですよ。

35 :デフォルトの名無しさん:02/12/19 06:30
image = createImage(11, 11);
graphics = image.getGraphics();
としてimageを作ったあとで、
imageの幅を取得したいのですが・・・。


36 :デフォルトの名無しさん:02/12/19 07:12
どなたか、よろしかったら教えてください。
突然疑問に思ったのですが、アプレット作るのに
getAppletInfo()とgetParameterInfo()っていつも
オーバーライドしてたのですが、これって何の役に
立つのでしょう?  ブラウザとかから参照する
方法ありましたっけ???
使い道がないのならメモリ節約のためにカットしよう
かなとも思うのですが.....

37 :デフォルトの名無しさん:02/12/19 07:51
JAVA使う方の年収っていくらくらいなのですか?

38 :デフォルトの名無しさん:02/12/19 07:54
年俸520万です。29歳です。
死ぬほど残業してます。(当然、残業は給与に反映されない)

39 :デフォルトの名無しさん:02/12/19 10:08
>>35
this=Component、かつイメージが全て読み込まれてるなら。
int width = image.getWidth(this);

40 :35:02/12/19 11:12
ありがとうございました。なるほど。thisってそれ自身のって意味なんだ・・・。


41 :デフォルトの名無しさん:02/12/19 17:44
モニターの解像度やブラウザの現在の縦横の表示枠に合わせて
Appletの大きさを変えたいのですが、取得のし方がわかりません。
よろしくお願いしまう

42 :デフォルトの名無しさん:02/12/19 17:47
日時をカウントダウンするプログラムってどう書けばいいんでしょうか?
教えてください。お願いします。

43 :デフォルトの名無しさん:02/12/19 18:15
>>42

抽 象 的 す ぎ

44 :デフォルトの名無しさん:02/12/19 20:14
>>41
モニタの解像度は Toolkit クラスで取得できます。
ブラウザの縦横云々は HTML タグの width, height をパーセンテージで
指定しとけば勝手にやってくれます。
例: <applet width="100%" height="100%" code="test.class"></applet>

こんなとこでどうでせう。

45 :デフォルトの名無しさん:02/12/19 20:20
>>44
なるほど。>>41ではないし、当分アプレットを作る予定もないけど、
参考になった。ありがとう。%が使えるとはいままで知らなかった

46 :デフォルトの名無しさん:02/12/19 21:04
MulticastSocketを使ったプログラムをwindowsで実行すると、
コンストラクタが、BasicSocketにさかのぼって、
BindException(だったかな?)になります。
unixでコンパイルしたものも、windowsでコンパイルしたものも動作しません。
unixでは、ちゃんと動いたのですが、どうしてですか?

47 :ass:02/12/19 22:08
public class Hello {
public static void main(String[] args) {
System.out.println("Hello!");
}
}


動かなかったんですけど・・・どこが悪いのかなあ?

Exception in thread "main" java.lang.NoClassDefFoundError: Hello

このように帰ってくるんですが・・・java.langの中の例外って・・・?

48 :デフォルトの名無しさん:02/12/19 22:15
宿題手伝ってくれるスレ教えてください


49 :デフォルトの名無しさん:02/12/19 22:16
>>47
>>2

50 :デフォルトの名無しさん :02/12/19 23:05
public void hanbetu{
if(string.equals("one")) command = 1;
}
public void paint(Graphics g){
switch(command){
case 0: g.drawLine(x1,y1,x2,y2);
case 1: g.drawRect(x1,y1,w,h);
}
}

hanbetuのところでcommandを判定して,switch文で処理選択させて描画行い
たいのですが、値の受け渡しができません。グローバル変数であらかじめcommandの値を
設定すれば、きちんとswitchで選択してくれるのですが、hannbetu()で判定→switch判定
が出来ません。
考えられる理由はどのようなものがあるでしょうか?




51 :41:02/12/19 23:15
>>44
うお、すげーよ。すごい。htmlに余計なもの含ませなければ
スクロールバーが常に沈んだままだ。
Javaって面白いですね・・。
ありがとうございました。

つうか何食ったら・・・じゃなくて
どう勉強したら>>44さんみたいにJava物知りになれるですか


52 :デフォルトの名無しさん:02/12/19 23:40
>>51
別に>>44の件はjavaとは関係ないと思うんだが

53 :デフォルトの名無しさん:02/12/20 00:45
public class Keisan {
public static void main(String[] args) {
System.out.println("加算の結果は?"+(3+2)+"です。。");
         System.out.println("減算の結果は?"+(5-8)+"です。。");
System.out.println("除算の結果は?"+(3*4)+"です。。");
         System.out.println("乗算の結果は?"+(7/3)+"です。。");
}
}


これを実行すると24個ぐらいエラーが出ます。
クラス宣言が不味いんおでしょうか?

54 :デフォルトの名無しさん:02/12/20 00:50
>>50
一行目を
public void hanbetu{
だからでは?

これではいかが?
public void hanbetu() {

// そのコードだけではよくわからないけど二行目の変数stringとかは、
//ローカル変数ではないよね?

55 :デフォルトの名無しさん:02/12/20 00:59
>>53
もしかしてソース中に全角スペースはいってない?

56 :デフォルトの名無しさん:02/12/20 01:02
>>53
あと、どんなエラーがでたのか、
そのエラーメッセージもコピペすると
適切な解答がもらえる可能性が高まるかとおもいます。。。

57 :デフォルトの名無しさん:02/12/20 01:13
すみません。J Builder 8って個人で買うといくらぐらいするんですか?

58 :デフォルトの名無しさん:02/12/20 01:24
>>55
Keisan.java:6: \12288 は不正な文字です。
         System.out.println("乗算の結果は?"+(7/3)+"です。");
^
Keisan.java:6: \12288 は不正な文字です。
         System.out.println("乗算の結果は?"+(7/3)+"です。");
^
Keisan.java:6: \12288 は不正な文字です。
         System.out.println("乗算の結果は?"+(7/3)+"です。");
^
Keisan.java:6: \12288 は不正な文字です。
         System.out.println("乗算の結果は?"+(7/3)+"です。");
^
Keisan.java:6: \12288 は不正な文字です。
         System.out.println("乗算の結果は?"+(7/3)+"です。");
^
Keisan.java:6: \12288 は不正な文字です。
         System.out.println("乗算の結果は?"+(7/3)+"です。");
^
Keisan.java:2: メソッド本体がないか、abstract として宣言されています。
public static void main(String[] args) {


こんな漢字です。。。

59 :デフォルトの名無しさん:02/12/20 01:30
>>58
やっぱり全角スペース入ってる…。
全角スペースというのは「 」これね。
半角スペース「 」かタブに置換するといいとおもう。。。

60 :デフォルトの名無しさん:02/12/20 01:36
>>57
http://www.borland.co.jp/jbuilder/jb8/description.html
いちおうJBuilderスレで聞いてとよろしいかと。。

でもJBuilderスレはバージョンごとに乱立しているから
統合されるまでは下のスレで聞くのがいいかもね。
【統合】Java開発環境スレ
http://pc3.2ch.net/test/read.cgi/tech/1038118138/l50


61 :デフォルトの名無しさん:02/12/20 02:27
楚人におまんことちんこを売る者あり。

氏曰く 「このおまんこは どんなちんこでも通さない」
又、曰く「このちんこは どんなおまんこでも突き通す」

ある人曰く
「そのちんこで そのまんこを突いたらどうなるのかね?」

楚人は答えることが出来なかった。

これぞ「おまんちん」である。

62 :デフォルトの名無しさん:02/12/20 02:43
>>61
楚人にセキュリティツールとクラッキングツールとを鬻ぐ者有り。
之を誉めて曰く「吾がセキュリティツールの堅きこと、能く陥すもの莫きなり」と。
又其のクラッキングツールを誉めて曰く
「吾が矛の利なること、物に於て陥さざる無きなり」と。

或る人曰く「子のクラッキングツールを以て、
子のセキュリティツールを陥さば如何」と。

其の人応えて曰く「バージョン情報の新しきものが勝つなり」と。

63 :デフォルトの名無しさん:02/12/20 03:15
すみません、JBOSSのプログラミングをしているのですが、
MS−DOS上でコンパイルした際に「javax.ejbが存在しません」
といわれてしまうのですが…直りますでしょうか。

64 :デフォルトの名無しさん:02/12/20 03:34
>>63
クラスパスの設定の問題ではないでしょうか?

直るかどうかを尋ねているということは、
いままではコンパイルできていたのですか?

65 :デフォルトの名無しさん:02/12/20 03:45
いえ、すみません、言葉が足りていませんでしたね。
ttp://yamaguch.sytes.net/~tora/java/jboss.html
のとおりにやっているのですが、コンパイル時に
・パッケージ javax.ejb は存在しません
と出てくるんです。
クラスパスは設定はしてあります(autoexec.batの中ということですよね?)。

66 :デフォルトの名無しさん:02/12/20 03:46
あと「直る」という表現は適切ではなかったです。本当にすみません。
はなっからできていません。

67 :デフォルトの名無しさん:02/12/20 04:12
>>66
EJBのことはよくわからないけど、
もしかしたら再起動したらコンパイル通るかも。
autoexec.batはWindowsが起動したときに実行されるから。

あとWindowsMEやNT,XPではパスの設定はautoexec.batではないから、
そこも注意してね。詳しくは>>2のリンク先を。

68 :デフォルトの名無しさん:02/12/20 04:17
ありがとうございます。
がんばってみます。

69 :デフォルトの名無しさん:02/12/20 05:18
JavaのVM上で処理された全ての命令などの実行ログをとる良い手段を
知ってる人いませんか?勿論、printlnじゃなくて。

70 :デフォルトの名無しさん:02/12/20 06:14
-Xrunhprof
-verbose:jni
-verbose:gc
-verbose:class

71 :デフォルトの名無しさん:02/12/20 10:25
<jsp:getProperty(略
で、HTMLで使っちゃいけない文字(<>&"')をエスケープすることはできますか?

72 :デフォルトの名無しさん:02/12/20 13:05
Linuxであるクラスを実行しているプロセスを調べるにはどうしたらよいですか?
AdminServerというクラスが実行されているとして、
ps -ef | grep AdminServer
とすれば引っかかると思ったのですがなぜか駄目です。
AIXだといけるのですが・・・


73 :デフォルトの名無しさん:02/12/20 13:47
GUI開発(swing)で聞きたいんですけど、
たとえばD&D可能なツリービューを作成したいとしたら、
まずはJTreeから派生クラスを作成したD&D可能なクラスを作っておいて、
そいつをコンテナにaddするってイメージでよい?

74 :デフォルトの名無しさん:02/12/20 14:14
>>72
うちではできたよ?
ちなみにバージョンは?

>>73
いいとおもうよ。
http://java.sun.com/docs/books/tutorial/dnd/index.html
がんばれ

75 :デフォルトの名無しさん:02/12/20 14:18
>>70ってなに?

76 :72:02/12/20 14:34
>>74
Red Hat Linux release 7.2 (Enigma)
Kernel 2.4.7-10 on an i686
java version "1.2.2"
Classic VM (J2RE 1.2.2 IBM build cx122-20011213was (JIT enabled: jitc))
です。

77 :デフォルトの名無しさん:02/12/20 15:19
その辺りの問題は各マシンやUNIXやJavaVMで
実装にいろいろ違いがありそうなのでやっかいそう。。。

回答がないようならLinux板のJavaスレに書き込んでみては?
あちらもそろそろ書き込みがないとdat落ちしそうですし
http://pc.2ch.net/test/read.cgi/linux/1004594459/l50

78 :デフォルトの名無しさん:02/12/20 15:45
入力された文字が半角英数字かどうかをチェックするものを
作りたいのですが、調べたんですけど、わかりませんでした。
わかる人、ご教授してくれませんか?

79 :デフォルトの名無しさん:02/12/20 16:00
String s = "abcd";
java.util.regex.Pattern p = java.util.regex.Pattern.compile("^\\p{Alnum}+$");
boolean result = p.matcher(s).matches();
System.out.println(result);

ちなみにPatternインスタンスはスレッドセーフ.

s.matches("^\\p{Alnum}+$");
でもいいけどな。

"_"も含めていいなら\p{Alnum}の替わりに\w

80 :デフォルトの名無しさん:02/12/20 16:12
>>79
早速ありがとう。
JSPから呼び出して、Beanとして使おうと思っているのですが、
>java.util.regex.Pattern p = java.util.regex.Pattern.compile("^\\p{Alnum}+$");
のcompile("^\\p{Alnum}+$")の部分は必要ですか?
ちょっとよくわからないのですが。。。

81 :デフォルトの名無しさん:02/12/20 16:14
開発ツールのお勧めって何?
Visual Jにしようとおもっますが・・・

82 :デフォルトの名無しさん:02/12/20 16:16
ネタ?

83 :デフォルトの名無しさん:02/12/20 16:23
>>81 Bean Builder

84 :デフォルトの名無しさん:02/12/20 16:24
>>81
jvim

85 :デフォルトの名無しさん:02/12/20 16:29
>>81 Eclipse

86 :デフォルトの名無しさん:02/12/20 16:44
>>83
それはなに?

87 :デフォルトの名無しさん:02/12/20 16:52
>>80
http://java.sun.com/j2se/1.4/ja/docs/ja/api/java/util/regex/Pattern.html


88 :デフォルトの名無しさん:02/12/20 17:01
えっと、Javaの資格の本を読んでいたら、

int [] myScores [];

は、正しい配列の宣言なのだそうです。これは、

int myScores []; もしくは、 
int [] myScores; と同等と見ていいのでしょうか?

89 :デフォルトの名無しさん:02/12/20 17:02
あ、もしかして2次元の配列の宣言ってことでしょうか?

90 :デフォルトの名無しさん:02/12/20 17:05
祭り板、「TIME」誌2002年の顔にアラファト議長を! 5
http://live.2ch.net/test/read.cgi/festival/1040349157/l50
で、お前らの技術をほしがっている奴らがいる。

ここでJavaを使えば、JREをインストールさせられるw

91 :デフォルトの名無しさん:02/12/20 18:04
http://live.2ch.net/test/read.cgi/festival/1040349157/78-80
のくだりにちとワロタ

しかし、Javaでタシロ砲を開発したとして、
Sunのダウンロードサイトが耐えられるかがちょっと心配(w

もし開発するのならJava web startでプログラムを作って
下からJREをインストールするのが簡単でおすすめ。
http://java.sun.com/getjava/download.html

92 :デフォルトの名無しさん:02/12/20 18:13
>>88-89
二次元配列の宣言みたい。
こういうプログラム書いたらコンパイル通ったし。

public class test {
 int [] myScores [] = new int[2][2];
}

93 :デフォルトの名無しさん:02/12/20 18:25
>>92
サンクス

94 :デフォルトの名無しさん:02/12/20 18:33
>>79

っていうか、試しにやってみたけど、ダメだったよ!

95 :デフォルトの名無しさん:02/12/20 18:36
すいません、いまファイル一覧リスト作ってまして、
でファイルサイズを得るには ファイル名.length() でバイト単位で戻ってくる・・・
という部分はいいんです。

でもWindowsのファイルのプロパティでは
158KB(161,966 バイト)
1,38MB(1,451,903 バイト)
というふうに表示されてるんですけど、これってどういう計算をすれば良いんでしょうか?

それともそんなの気にせずに上位3桁のみで残りは切捨てで良いものでしょうか?

96 :デフォルトの名無しさん:02/12/20 18:41
>>95
それはJavaの質問ではないとおもうが
1KB=1024Bなので
1024で割り算すればいいとおもうよ。

97 :デフォルトの名無しさん:02/12/20 18:44
>>95
で割り算して答えが1024以上だったら、
もういちど1024で割り算すればMBも算出できるよ。

//つーかJavaにはそのあたりのメソッドとかないのか?

98 :95:02/12/20 18:45
そっかぁ。1KB=1024B!
ありがとう>>96さん!


99 :デフォルトの名無しさん:02/12/20 18:50
readでブロックしちゃったスレッドを殺したい!

どうする?

100 :95:02/12/20 18:50
>>97
なるほど。
割り算の回数でKB,MB,GB・・・と分ければ良いわけですね。

101 :デフォルトの名無しさん:02/12/20 19:48
>>99
available() で常にブロックしないように制御、とか。
nio 使うとか。

102 :デフォルトの名無しさん:02/12/20 19:51
>>95
Windows のプロパティと完全に同じ表示にするのは面倒な気がする。
Windows関係のスレに行けば計算方法教えてくれるかも…


103 :デフォルトの名無しさん:02/12/20 20:11
>>99
前スレで話題になっていたnioは
ノンブロッキングモードをサポートしてるよ。
http://pc3.2ch.net/test/read.cgi/tech/1038731106/957-960
http://java.sun.com/j2se/1.4/ja/docs/ja/api/java/nio/package-summary.html
http://www5.airnet.ne.jp/sakuraba/java/laboratory/JDK1.4/NewIO/SocketChannel/SocketChannel.html

>>98,>>100
割り算するよりも右へ10ビットシフトしたほうがわかりやすいかも。
そもそも十進数の1024は二進数で表すと100,0000,0000。
この二進数を右へ10だけビットシフトすると1。

>>95の158KB(161,966 バイト)の例で説明すると。
十進数の161,966は二進数で100111100010101110。
これを右へ10ビットシフトすると10011110。
10011110を十進数に直すと158。

まあ二進数を右へ10ビットシフトするという操作は、
1024で割り算するということにほかならないわけですけれど。

まさに

104 :デフォルトの名無しさん:02/12/20 20:16
>>94
PatternはJavaの1.4で追加されたような気がするから、
もしかしてそれが原因では?
http://java.sun.com/j2se/1.4/ja/docs/ja/api/java/util/regex/Pattern.html

105 :デフォルトの名無しさん:02/12/20 20:23
>>99
もしかすると別のスレッドでストリームをクローズしてしまえば
IOExceptionが発生してread()メソッドのブロックが抜け出せるかも。。。

…あまり自信はないが。

106 :デフォルトの名無しさん:02/12/20 20:27
>>105
close() が IOException 食らう可能性もあるような。

107 :デフォルトの名無しさん:02/12/20 20:34
>>106
あぁそうか…。

108 :99:02/12/20 20:53
1.4が使えればそれで万事解決なんだけど
1.2までしか使えないから、1.2(出来れば1.1)で
解決したい、けど難しい・・・
たまにreadしたまま死んでることもあるんだよね

109 :デフォルトの名無しさん:02/12/20 21:16
jspとサーブレットで一番わかりやすい本はなんですか?
わかる方教えて!
自分はsunjava受かったぐらいのレベルです
理由もあったら教えて!
javaとあまり関係ない質問ですが・・・

110 :デフォルトの名無しさん:02/12/20 21:22
コア・(略
モア・(略

111 :デフォルトの名無しさん:02/12/20 21:30
>>104
>PatternはJavaの1.4で追加されたような気がするから、
>もしかしてそれが原因では?

サンクス

112 :デフォルトの名無しさん:02/12/20 22:06
はじめまして。よろしくお願いします。

クラスのパッケージ化に関してなんですが、
パッケージの階層名のつけ方に決まりというか
指針のようなものってあるのでしょうか?
仕様があるのでしたらドキュメントの場所等
教えてください。


113 :デフォルトの名無しさん:02/12/20 22:21
>>103
>そもそも十進数の1024は二進数で表すと100,0000,0000。
区切りがきもちわりー
100Mかとおもうじゃんか!

114 :デフォルトの名無しさん:02/12/20 23:00
2進数は人間には判り難いので、
人間のプログラマ向けに0-Fの16進数で記述されることが多いのです。

というわけで16進数に変換しやすいように
古来からの伝統に従って4ビットごとにカンマを打ってみました。
http://www.google.co.jp/search?hl=ja&ie=UTF-8&oe=UTF-8&q=100%2C0000%2C0000+1024&btnG=Google+%E6%A4%9C%E7%B4%A2&lr=
//4ビットごとの区切りは、わりあいメジャーだとおもう。

115 :単位まともに書けない奴に粘着するお化け ◆efCnjqFIg6 :02/12/20 23:01
>>113


116 :デフォルトの名無しさん:02/12/20 23:02
>>112
ホスト名をおしりから。

117 :単位まともに書けない奴に粘着するお化け ◆efCnjqFIg6 :02/12/20 23:02
>>115
ミス。ごめんなさい。引退します。

118 :デフォルトの名無しさん:02/12/20 23:09
>>110
http://www.amazon.co.jp/exec/obidos/ASIN/4797319895/ref%3Dpd%5Fsim%5Fdp%5F4/250-7406633-3143438
http://www.amazon.co.jp/exec/obidos/ASIN/4797314311/250-7406633-3143438

119 :デフォルトの名無しさん:02/12/20 23:15
>>108
Socket#setSoTimeout() 使えば解決する問題じゃないんだよね?

120 :デフォルトの名無しさん:02/12/20 23:23
>>112
このあたりで如何?
http://www.y-adagio.com/public/standards/tr_javalang/7.doc.htm#40169

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

121 :デフォルトの名無しさん:02/12/20 23:42
>>120
どうもありがとう。


122 :デフォルトの名無しさん:02/12/21 00:26
jbuiider7のただのやつを使ってコンパイルしようとしたところ
設定が不十分のため実行が不可能です、となります。
何をいじるべきかおしえてください。

123 :デフォルトの名無しさん:02/12/21 00:29
>>122
特に何もいじらなくてもOKだと記憶。
いったいどんな愉快なインストールを?

124 :122:02/12/21 00:33
まじっすか?
airh"で落とした以外は普通にやったつもりですが、、、
とりあえずインストールしなおしてみます、ありがとう。

125 :デフォルトの名無しさん:02/12/21 00:35
>>78って>>79が正規表現を使った回答してるけど
入力された"文字"についての判定なんだから
java.lang.Characterクラスを使ったほうがいいんでないの?
1.1でも使えるし。

126 :デフォルトの名無しさん:02/12/21 00:40
>>125
じゃあ書いてあげなよ。
とりあえず答えが一つというもんじゃなし。


127 :デフォルトの名無しさん:02/12/21 00:47
StringBufferでバッファ内に持っている文字列を消去したい場合、
JDK1.2以降はdeleteメソッドが使えますけど、
MSVMでも動作させる場合はnewでオブジェクトを新しく作るしかない?


128 :デフォルトの名無しさん:02/12/21 01:52
うーんと。null代入しちゃいけないわけ?

129 :デフォルトの名無しさん:02/12/21 04:51
>>114
コンマで区切る?
0011 0100 0110 1011
とか空白で区切らない?・・・ってリンク見たらやっぱりね


130 :デフォルトの名無しさん:02/12/21 06:17
>>78
>>125-126
じゃ、代わりに書いてみた。

//char ch に判別したい文字を入れてね。
if ( UnicodeBlock.BASIC_LATIN == UnicodeBlock.of(ch) ) {
 // ASCII文字だよ。
} else {
 // ASCII文字じゃないよ。
}
http://java.sun.com/j2se/1.4/ja/docs/ja/api/java/lang/Character.UnicodeBlock.html

131 :デフォルトの名無しさん:02/12/21 06:21
>>127
バッファ内の文字列を論理的に消したいなら setLength(0) をせれ
内部バッファを縮退させたいなら new で作り直せ

132 :デフォルトの名無しさん:02/12/21 06:40
>>129
文字と文字の区切りなら
全角スペースを使わなくてもだいじょうぶだよ。

133 :デフォルトの名無しさん:02/12/21 10:14
全角の数字を半角の数字に変換するプログラムを作りたいのですが、
いろいろ調べてみてもわかりませんでした。

どなたか教えていただけませんでしょうか。

134 :デフォルトの名無しさん:02/12/21 10:18
>>133
if(str.charAt(i) == '0')
ret = 0;
else if(str.charAt(i) == '1')
ret = 1;








135 :デフォルトの名無しさん:02/12/21 10:23
s = s.replaceAll("0", "0").replaceAll("1", "1").replaceAll("2", "2"). ... .replaceAll("9", "9");
めちゃめちゃ遅いけどな(ワラ


136 :133:02/12/21 10:31
str.charAt(i)では1バイト文字しか扱えないと勘違いしてました。
レスどもです。

137 :デフォルトの名無しさん:02/12/21 11:37
意外なことに全角数字に対してもInteger.parseIntが
使えるので以下のようなことも可能

String zen = "1234";
int i = Integer.parseInt(s); // i = 1234
String han = String.valueOf(i); // han = "1234"

138 :デフォルトの名無しさん:02/12/21 16:11
s = s.replace('0', '0').replace('1', '1').replace('2', '2'). ... .replace('9', '9');
ていうかこれでもいいな


139 :デフォルトの名無しさん:02/12/21 16:22
さらには、アラビア数字、漢数字にも有効だったり。

String zen = "W";
//もしくは  String zen = "四";
int i = Integer.parseInt(zen); // i = 4
String han = String.valueOf(i); // han = "4"

140 :デフォルトの名無しさん:02/12/21 16:43
http://www.cs.umd.edu/~pugh/java/memoryModel/archive/0262.html
のJavaソースで
(*)と(**)は特定の場合必要ない
といっています
理由も書いてありますが
具体的にどういうことか
わかりません

わかる方いらっしゃいましたら
教えてください
お願いします

141 :デフォルトの名無しさん:02/12/21 17:05
>>139
jdk1.4.1で試したけどダメっすね。
Character.isDigit('4') は true だけど
Character.isDigit('四'),
Character.isDigit('W') ともに false 返すし。
バージョンによって違うんだろか?

142 :デフォルトの名無しさん:02/12/21 17:25
おぬし、騙されておるぞ。メール欄を読むのじゃ

143 :デフォルトの名無しさん:02/12/21 18:35
>>140
新しくつけくわえるnodeの"publication safety"が保証されている
JavaVMにおいては(*)と(**)の箇所のコードは必要ない。

新しくつけくわえるnodeの"publication safety"が保証されているとは、
具体的にいうと「新しいnodeへのリファレンスを見ることができれば、
そのリファレンスの指し示す内容も見ることができる」ということ。

144 :140:02/12/21 18:44
>>143
レス ありがとうございます

それはいったい
どういうことなのでしょうか?

新しいnodeへのリファレンスは
外からは見ることができない
と思うのです

リフレクションでしょうか(あまり詳しくありません)

putとpollを外から行っているだけなら
(*)(**)は必要ないのでしょうか?

お手数かけます

145 :デフォルトの名無しさん:02/12/21 19:41
カラントディレクトリにあるファイルの一覧を取得するにはどうすればいいのですか?

146 :デフォルトの名無しさん:02/12/21 20:00
File[] files = (new File(".")).listFiles();

147 :デフォルトの名無しさん:02/12/21 20:02
File currentDir = new File("./");
File[] fileList = currentDir.listFiles();
ただし、これだとディレクトリも含まれるので注意。

148 :デフォルトの名無しさん:02/12/21 20:07
>>144
いやなんとなく読んでみただけで俺にはさっぱり。
俺にわかったことといえばsparcs, pentiumsのVMでは
*,**は省略できるということぐらい。ごめんな。

149 :デフォルトの名無しさん:02/12/21 20:12
>>144
運命へと気ままにリフレクション

150 :デフォルトの名無しさん:02/12/21 20:22
>>146-147
ありがとうございました。
うまくいきました。

151 :超〜初心者:02/12/21 20:51
質問:
OS再インストしたの、XP。そしたらjavaアプレットでPGを起動すると
(業者が作ったWEBの占い)
カーソルが点滅して次の画面(新規WINDOWは開かない)が出ると
アプレットの部分?が白くなってしまったよ。
だから次へボタンも見えなくて押せないから話が先へ進まないの。
で、今日、オプション直したの。「アプレットにjava2v1.3.1_06を使用」
ってチェックをはずしたらやっと直ったの。
PG作ったの私じゃないからさっぱりわからん。どういうこと??????

152 :デフォルトの名無しさん:02/12/21 21:17
>>151
いや俺もそのプログラム作ったわけじゃないから、さっぱり。
アプレットのURLもなければ作った本人がこのスレを覗いていたとしても、
さっぱりわからないだろうと思う。。。。。

ところでいまのWindowsXPというのはインストールすれば
SunのVMも一緒にインストールされるのか。。。

153 :超〜初心者:02/12/21 21:35
>>152
おぅ、そういえばなんか心あたりが。
実はSUNのJDKもインストールした覚えがある。
その時なんか変なことしたのかしら、私?
どのURLのものもアプレットが動くとダメになるの。
でもチェック外したら今は快適に動く。
なんなの?あの湯だったようなマークは?

154 :デフォルトの名無しさん:02/12/21 21:54
Javaをやろうと思っています。
amazonでこんな本を見つけたんですがどうでしょうか?

林晴比古「新Java言語入門 ビギナー編」
http://www.amazon.co.jp/exec/obidos/ASIN/4797318570/

155 :デフォルトの名無しさん:02/12/21 21:57
>>153
たぶんそれは湯気のたったコーヒーカップのマークだとおもう。
SUNのJavaVMのマークだよ。

いっそヴァージョンを1.4にアップグレードしてみてはいかが?
http://java.sun.com/getjava/download.html


156 :デフォルトの名無しさん:02/12/21 21:59
>>153 >>155
SUNのJavaVMというかJavaのマークね

157 :デフォルトの名無しさん:02/12/21 22:01
林晴比古ってDQNじゃなかった?読んだこと無いけど。

158 :デフォルトの名無しさん:02/12/21 22:05
>>157
マジですか?

159 :デフォルトの名無しさん:02/12/21 22:05
>>154
俺なら結城浩の例の上下巻を薦める。
Java言語プログラミングレッスンだ。

他に買ってもかまわないが
これらは読んどけ。絶対読んどけ。

160 :デフォルトの名無しさん:02/12/21 22:07
>>157
いくらなんでも読んだことないのにDQN呼ばわりはどうかとおもう。
まあ俺も読んだことがないけど結城の入門書がいいとおもう。
推薦する理由はJavaの入門書は読んでないけど
彼の書いたスレッド本はわかりやすかったから。

161 :160:02/12/21 22:08
>>159
結婚しよう。

162 :154:02/12/21 22:12
>>159-160
Thank you!

163 : ◆F52DmOxJlc :02/12/21 23:14
これがお勧め。
http://www.amazon.co.jp/exec/obidos/ASIN/4844316117/249-7410832-7970723

164 :デフォルトの名無しさん:02/12/21 23:38
JEditorPaneで
http://www.google.co.jpを表示させようとすると
java.lang.StringIndexOutOfBoundsException: String index out of range: 0

at java.lang.String.charAt(String.java:516)

at javax.swing.text.html.CSS.stringToColor(CSS.java:1099)

at javax.swing.text.html.CSS$ColorValue.parseCssValue(CSS.java:1960)

・・・
とか出るんですけど、これ、どういうことですか?

165 :デフォルトの名無しさん:02/12/21 23:52
>>164 ここを読んだ限りでは何かの文字列の処理で発生したのではなかろうか。
>>164を見る限りではCSSの処理にでも失敗していろ??
http://java.sun.com/j2se/1.4/ja/docs/ja/api/java/lang/StringIndexOutOfBoundsException.html


166 :デフォルトの名無しさん:02/12/21 23:56
いや「いろ」じゃなくているだ
下のサイトがおなじ症状なのではなかろうか。
http://www.eos.dk/pipermail/advanced-swing/2001-October/000835.html


167 :デフォルトの名無しさん:02/12/21 23:57
Googleのスタイルシートで、
hの色指定が空なのが原因ではなかろうか?
.h {color:}

168 :デフォルトの名無しさん:02/12/22 00:13
http://www.eos.dk/pipermail/advanced-swing/2001-October/000836.html
の投稿をみる限りでは、
バグパレードで報告されているもののようですね。
http://developer.java.sun.com/developer/bugParade/bugs/4334657.html
(閲覧するのには登録が必要)

最新のバージョンでは修正されているのではないでしょうか。
ところでお使いのJavaのバージョンはなんでしょう。

169 :164:02/12/22 00:45
>>166
そのページは見れます・・・じゃなくてこれと同じ症状です。。

>>167
何かでCSSの.hを読み飛ばせばいいんでしょうか?

>>168
1.3.1_b24です。JBulder7のデフォルトです。
windows2000で使ってます。


170 :デフォルトの名無しさん:02/12/22 01:12
>>164
1.4では修正ずみ。
1.3向けに開発しているのなら一度ページをStringなどに読み込んでから、
問題のcssの箇所を修正してからJEditorPaneに渡してみては?

171 :デフォルトの名無しさん:02/12/22 01:51
>>131
ありがとうございます。
setLengthのほうで行こうと思います。


172 :164:02/12/22 02:17
>>170
1.4にしたら読めるようになりました。ありがとうございます。

173 :デフォルトの名無しさん:02/12/22 04:14
voidってどんな意味ですか?
戻り値って何?どんな時につかうの?


174 :デフォルトの名無しさん:02/12/22 04:42
>>173
void
空な, 空虚な; (家・土地などが)あいた,
欠員の; …がない, 欠けた (of); 無益の; 【法】 無効の. 

戻り値。
C言語などの「構造化プログラミング言語」などで広く用いられる。
構造化言語においてはログラム全体は、いくつもの小さな関数から構成される。

JavaやC++などのオブジェクト指向プログラミング言語もまた、
Cなどの構造化言語とおなじく関数から構成されているが
これらの言語の場合、関数はオブジェクトのなかに内包される。

175 :デフォルトの名無しさん:02/12/22 05:06
キーボードからの入力ストリームは
別に閉じる必要はないのでしょうか?

176 :デフォルトの名無しさん:02/12/22 05:12
>>175
ない

177 :デフォルトの名無しさん:02/12/22 05:27
>>176
お早いレスありがとうございます。

しかし、なぜ必要ないのでしょうか・・・?


178 :デフォルトの名無しさん:02/12/22 05:48
情報を処理してCliantに送り返すServerクラスをつくり
クライアントのmainメソッド内でそのServerクラス
を実行させるとうまくいくのですが、
クライアント側で何らかの処理(ActionListenerなど)
を合図にServerクラスのインスタンスを生成したら
クライアント側の処理がエラーを出さずにその位置で
とまってしまうのですが、これの対処法ってあるんでしょうか?
やっぱり私のやり方が悪いんでしょうか…

179 :デフォルトの名無しさん:02/12/22 05:48
>>177
Java VM が終了したときに勝手に閉じられるから。

180 :デフォルトの名無しさん:02/12/22 06:02
>>178
文章がちょっと意味不明。
二行目の箇所などクライアントマシンで
サーバマシン用に作ったプログラムを実行している、
というふうに読めます。

ActionListenerでということは、
Swingのイベントディスパッチスレッドの関係で、
GUIが止まっているのではないかという予感はしますが。

念のため、わかりやすい文章に書き直すか、
それかソースの一部を貼られたほうがよろしいかと。

181 :デフォルトの名無しさん:02/12/22 06:17
>>178
イベントディスパッチャーの中でサーバソケット開いて accept() してるん
だろ。そりゃ GUI は固まるわな。actionPerformed() の中身を丸ごとス
レッド化せれ。

private Thread thread = null;
public void actionPerformed(ActionEvent e){
  if(thread != null) return;
  thread = new Thread(){
    public void run(){
      // …
      // ここに元々 actionPerformed() の中でやっていた処理を書く
      // …
    }
  };
  thread.start();
}

きれいに作りたかったら、ふつーはその Server クラスとやらをスレッド化
するんだがな。public class Server extends Thread{ ...

182 :デフォルトの名無しさん:02/12/22 06:21
>>180サン
有り難うございます。説明を読む限り大きな認識違いをしていたようですので
もう一度考え直します。>>179は意味不明でしたすみません。


183 :デフォルトの名無しさん:02/12/22 06:38
とおもいきや>>181さんの方法でできました!
>>179のような質問から…
>>180-181さんどうもありがとうございます。

とはいっても、なぜできたか全然判ってないので
もう少し勉強してきます。有り難うございました。

184 :175:02/12/22 06:42
>>177 レスありがとうございます。
でもjavaVMが終了した際に閉じるならclose()の必要性って・・・?
私は、バッファに格納されたデータがクリアされる、程度のことしか・・・

そもそもこのような質問をしたのは、ストリームに関して
私の使っている参考書やインターネット上のプログラムソースでは
ファイルストリームはすべて処理後に閉じているのに対し
キーボードストリームはそのほとんどが閉じずに終わってたからです。

この両者に何か違いがあるのでしょうか?
素人的な質問ですいません・・・。

185 :デフォルトの名無しさん:02/12/22 06:56
>>182
そもそもJavaのGUIはイベントディスパッチスレッドの仕様上、
イベント処理のコーディングしだいでは
GUIが固まってしまったり反応が重くなってしまうという罠があるのですね。

あとで「イベントディスパッチスレッド」などで
検索をかけて参考になるページなどが見つかるかと。

//そういえばJavaチュートリアルの日本語訳ってないのかな。。。

186 :デフォルトの名無しさん:02/12/22 07:44
>>184
JavaVM に限らずファイルディスクリプタなどのリソースはそのプロセスが
終了したときに開放されるようになっている。プログラムの中で明示的に
close() が必要な理由は、終了まで開きっぱなしだとリソースを圧迫する
からだ。とはいえ標準入力はシステム上に 1 つであり、それ以上開くこと
はない。

まぁ標準入出力を閉じないってのは慣例的な意味合いが強いがな。自分が
開いたものだけをクローズする、システムから貰ったものはシステムに
任せる、が基本だ。

もし明示的に close() する必要があるとすれば、標準入力が別のプロセス
にパイプされていたり、ファイルやデバイスからリダイレクトされていたり
するケースくらいか。それも苦肉の策だが。

187 :164:02/12/22 08:00
うう・・・。
setPane(URL)
って内部でどういう処理してるんですか?

>>170
>一度ページをStringなどに読み込んでから、
>問題のcssの箇所を修正してからJEditorPaneに渡してみては?
が気になって一晩中悩んだですがどうなってるのか
よくわからなくて・・・。
http://www.naklab.dnj.ynu.ac.jp/~aron/java/web/htmlparser.html
このへんの読んでもよくわからんです・・・。

いい例ありませんか?

188 :175:02/12/22 08:09
>>186
レスありがとうございます!
とりあえず標準入出力ストリームのクローズ処理は考えなくてもいいってことですね。

本当にありがとうございました。素朴な疑問が解けました!!

ここのレスにはしばらくお世話になりそうな予感。。。
また後の機会があれば宜しくお願いします〜。

189 :デフォルトの名無しさん:02/12/22 10:12
>>188
自分で調べられない人は死んでください。

190 :デフォルトの名無しさん:02/12/22 10:15
         (⌒⌒⌒)
        ( △ △ )
        (  / \  )
        _( /´_ゝ`\) ..マターリしろや....
      /      )           _     _
     / ,イ 、  ノ/    ∧ ∧―= ̄ `ヽ, _
    / / |   ( 〈 ∵. ・(   〈__ >  ゛ 、_―<<189
   | !  ヽ  ー=- ̄ ̄=_、  (/ , ´ノ
   | |   `iー__=―_ ;, / / /
    !、リ  -=_二__ ̄_=;, / / ,'
        /  /       /  /|  |
       /  /       !、_/ /   〉
     / _/             |_/
     ヽ、_ヽ

191 :菊地桃子:02/12/22 10:45
ここって、厨房ばっかりでほんっと
つかえない

192 :デフォルトの名無しさん:02/12/22 11:18
>>191
だって初心者大歓迎って書いてあるやん。
読めんの?

193 :デフォルトの名無しさん:02/12/22 11:23
>>192
心配するな。マルチだ。

194 :デフォルトの名無しさん:02/12/22 13:46
今学校でJavaとSQL使ってウェブショッピングサイト作ってるんだが
ウェブショッピングサイト作るぐらいで就職できるんですか?
スレ違いスマソ。

195 :デフォルトの名無しさん:02/12/22 14:22
それを元手に就職するのは構わんけど、
それしかやれないのなら単なる小間使いで終わりだろうなあ

196 :デフォルトの名無しさん:02/12/22 21:55
というか、それくらいも作れないやつは就職しないでくれって感じ?

197 :デフォルトの名無しさん:02/12/22 21:56
>>194
大阪工業大学?

198 :デフォルトの名無しさん:02/12/22 22:01
javaを覚えるためにアプレットでインベーダを作成中です

アプレットクラスを継承したメインクラス内で自機と敵の画像を取得したり
敵や自機の表示・キー判定等全て行なわせてました

が、見難くなるので敵クラスと自機クラスを作って、そのクラス内で
それぞれの位置取得や当たり判定をさせるようにしました
画像の表示はスレッド内で行なうとして、敵・自機クラス内で画像を
取得させたくgetImage(getDocumentBase(), "jiki");
と使いたいので、敵・自機クラスにアプレットを継承させたのですが
エラーが出てしまいます

アプレットクラスはメインクラス以外のクラスには継承させれないのでしょうか


199 :デフォルトの名無しさん:02/12/22 22:05
>>198
設計が根本的に間違ってると思う。


200 :デフォルトの名無しさん:02/12/22 22:11
>>198
根本的に間違ってますか

手探りでなんとか動かしてるという状態なので、答えをきいても、その答えを理解できない
と思いますが、上の考え方でいうとどこが間違ってるか教えていただけないでしょうか
よろしくお願いします

201 :デフォルトの名無しさん:02/12/22 22:13
>敵・自機クラス内で画像を取得させたくgetImage(getDocumentBase(), "jiki");

これはどういうこと?
キャラクタークラスで描画しようとしてる?それともキャラクタークラスに画像を持たせたい?

202 :デフォルトの名無しさん:02/12/22 22:23
>>201
キャラクタクラスに画像を持たせたいということです
描画はスレッドないで行なわせてますので、
drawImage(teki.tekigazou,・・・);

のようにキャラクタクラス内に画像・位置を持たせてやりたいのです

203 :デフォルトの名無しさん:02/12/22 22:40
>>198
> エラーが出てしまいます
どんなエラー?
書き込みから推察するにコンパイルエラーっぽいけれど。
とりあえず、そのエラーきぼんぬ。

それから敵クラス、自機クラスを
Appletのサブクラスにする必要はないとおもうよ。

204 :デフォルトの名無しさん:02/12/22 22:59
Eclipseが表示するエラーなので書かなかったのですが、
//敵クラス
class Teki extends Applet {
  int intPosX,intPosY;
  Image imgTeki;

  //コンストラクタ
  Teki (int intX,int intY,String strURL) {
    intPosX = intX;
    intPosY = intY;
    imgTeki = getImage(strURL,"teki.gif");
  }

  //敵の移動位置メソッド(intImgW:敵のグラフィック幅,intFrmW:フレームの幅
  void setLocation(int intImgW,int intFrmW) {    ←ここでエラー表示
   int intX;//移動幅
    ・
    ・
  }
"java.awt.componentから継承されたメソッドの表示レベルを下げることはできません。"
とでます

getImageを使いたいのでAppletのサブクラスにしたのですが、する必要がないのは
何故でしょうか 基本がまだ分かっておらずご迷惑おかけします

205 :デフォルトの名無しさん:02/12/22 23:04
>>204
自分でgetImageを実装するかコンストラクタでアプレットのインスタンスをを渡してもらうか。

206 :デフォルトの名無しさん:02/12/22 23:19
getImageを実装とはgetImageの処理を書き出すということですね

ファイルパスを引数にしてその画像を戻り値にすればいいのですかね

いまいち解らないです...

>>コンストラクタでアプレットのインスタンスを〜

すみません。それも言ってる意味がよく解らないです 申し訳ございません.

207 :デフォルトの名無しさん:02/12/22 23:20
そのエラーの原因はAppletクラスのスーパークラスであるComponentに
 //敵の移動位置メソッド(intImgW:敵のグラフィック幅,intFrmW:フレームの幅
 void setLocation(int intImgW,int intFrmW)
と名前も引数のタイプも同じだが"public"なメソッドがあるからだとおもう。
http://java.sun.com/j2se/1.4/ja/docs/ja/api/java/awt/Component.html#setLocation(java.awt.Point)

208 :デフォルトの名無しさん:02/12/22 23:25
かってに>>205の補足。
こんな感じではいかが?

public class Invader {
 public Invader(Applet applet) {
  // 引数として受け取ったappletインスタンスを用いて画像を読み込む。
 }
}

209 :デフォルトの名無しさん:02/12/22 23:28
でも、キャラ毎に画像持つのってメモリ的によろしくない気もする。
キャラクラスにはキャラクタIDの様な物だけを持たせておいて、
実際の画像をひっぱてきたりするのは描画処理がやる方がいい気もする。

210 :デフォルトの名無しさん:02/12/22 23:29
Classname aaa = new Classname(bbb)

の"new"と位置で「シンボル解釈処理できません」って出るのですが、
どういった原因が考えられますか?

211 :デフォルトの名無しさん:02/12/22 23:29
>>210
セミコロンがない。

212 :デフォルトの名無しさん:02/12/22 23:35
Classname aaa = new Classname(bbb);

の"new"と位置で「シンボル解釈処理できません」って出るのですが、
どういった原因が考えられますか?


213 :デフォルトの名無しさん:02/12/22 23:36
>>212
bbbが宣言されていない。

214 :デフォルトの名無しさん:02/12/22 23:42
>>212
じゃおれはClassnameが宣言されていないか、
大文字・小文字などのスペルの書き損じに1じゃばこ。

215 :デフォルトの名無しさん:02/12/22 23:46
>>214
俺の老後の楽しみが・・・

216 :212:02/12/22 23:47
>>213-214
ぶー、不正解

217 :デフォルトの名無しさん:02/12/22 23:48
>>216
なめてんのか。消えろ。

218 :デフォルトの名無しさん:02/12/22 23:50
gaburidukeの使用方法教えてください

219 :デフォルトの名無しさん:02/12/22 23:53
>>218 ワラタ

220 :デフォルトの名無しさん:02/12/22 23:54
>>207
あら、全く同じメソッドがあったのですね、キャラクタ位置を決めるためにsetLocationと
つけたのですが..

>>208
引数として受け取ったappletインスタンスを〜
例えばapplet.getImage(URL,"teki.gif");
ですか?

とりあえず両方ためしてみることにします
メソッド名を変更する方向でいこうと思ってるのですが

>>209
キャラごとはまずいです?
キャラIDが1なら〜の画像、2なら〜の画像としたほうがいいですかね
そのやり方だと上で悩んでた部分がはしょれて、すっきりしますね^
一度検討してみて、そちらのほうを活かしていきたいと思います。
付き合っていただき、有難うございました。

設計が根本的に〜というのはキャラごとに画像を持たせることだったのかな?

221 :デフォルトの名無しさん:02/12/22 23:57
>>219
本気です

222 :デフォルトの名無しさん:02/12/22 23:58
>>220
いや、何も考えずに親クラスにAppletを選択したこと。

223 :デフォルトの名無しさん:02/12/23 00:07
>>209 >>220
イメージをstaticなフィールドにして
すべての敵インスタンスで共有させてはどうだろう。

224 :デフォルトの名無しさん:02/12/23 00:12
>>223
こういうのもありだなと思った。

images[] characterImages;//キャラ画像

class character
{
private Image image;

public character(Image img)
{
image = img;
}
}

225 :デフォルトの名無しさん:02/12/23 01:36
>>144
Reflectionは全く関係ない。

移植性のあるコードで(*)と(**)が必要となる理由は、
有名な"Double-Checked Locking is Broken"での話と同じ。
http://www.cs.umd.edu/~pugh/java/memoryModel/DoubleCheckedLocking.html
を一通り読んだ後、
http://java.sun.com/docs/books/jls/second_edition/html/memory.doc.html#28325
辺りとにらめっこしながらコードを読めば、問題点がわかるだろう。

また、pentiumなどで(*)と(**)が不要となる理由は、
"Cache Coherency"とかのキーワードで検索してみるとよろし。

226 :140:02/12/23 02:57
>>225
こんな夜遅くに
レスありがとうございます
今から読みます

227 :デフォルトの名無しさん:02/12/23 04:09
ファイルから読み込んだデータをハッシュテーブルに格納して
それをEnumerationを用いて出力した時、結果は読み込んだデータと
異なる順で出力される場合があるのですが、これはなぜなんでしょうか…?

例えば、読み込むファイルが
 1,aaa/2,bbb/3,ccc/ ( / は改行) という内容の場合、その出力は
 3,ccc/2,bbb/1,aaa/ ってなります。

228 :140:02/12/23 04:24
>>225
アドバイスされた通り考えてみました
まだ完璧に理解できていないと思いますが
現時点での考えを書きます

(*)と(**)が無いと,考えられる振る舞いは
Thread Aが
put内で
last.next = node;
(ここで メインメモリ上でnode != null です
しかし node.objectは初期化されていない)

headとlastが同じで
そのときThread Bがpollを実行すると
firstにさきほどのnodeが代入され
返り値xはさきほどのnode.objectなので
初期化されていない値が返ってしまいます


(*)と(**)があれば,
putによってnodeが追加されて
仕様によると,unlockより前にnode.objectメインメモリに
書き込まれるので
別のスレッドがその後pollをしてもOK!

言われたとおり
"Double-Checked Locking is Broken"と同じですね

正しいか間違っているか,指摘していただけると
嬉しいです

pentiumなどの話はまた考えてご報告したいと思います 

229 :デフォルトの名無しさん:02/12/23 09:20
>>227
ハッシュテーブルはListじゃなくてSetなんじゃないかな。

230 :デフォルトの名無しさん:02/12/23 10:43
>>227
そもそもHashtable/HashMapは要素を挿入順に取り出せることを保証するものではないから。

1.4ならLinkedHashMapを使えば挿入順で取り出せる。
1.3ならListを内蔵したHashMapサブクラスを自作。高々十数行のコードで作れる。


231 :デフォルトの名無しさん:02/12/23 12:18
マウスリスナーでmouseDoubleClicked(MouseEvent e) っていうのが無いのですけれど、
どうかしてダブルクリックを使いたいんです。
何か良い方法ありますか?

232 :デフォルトの名無しさん:02/12/23 12:19
たとえば、

"yellow".equals(s) = s.equals("yellow")
 
こう書けるんだったら、
「yearに空文字が入ってる場合、trueを返すって意味を表す」
year.equals("") という表現は
"".equals(year) と表すこともできますか?

いつも思っていたんですが、比べる対象を
equalsの前に置こうが後ろに置こうが、
いいのですよね?

233 :デフォルトの名無しさん:02/12/23 12:37
>>229,230
レスありがとうございます。
1.3を使っているので、その方法で自作クラスを作ってみます。

234 :デフォルトの名無しさん:02/12/23 12:37
そのequalsが対称律を満たすならどっちでもいいでしょ。
ただし、 year.equals(...) はyearがnullだとぬるぽで落ちる。

235 :デフォルトの名無しさん:02/12/23 12:40
質問です。

BufferedReader br = new BufferedReader(なんとかかんとか)
とか、
String str = new string("なんとかかんとか")
のように、
class 変数 = new class(なんとかかんとか)

というようにして、オブジェクトを作成する場合、
「なんとかかんとか」のところは、
どこでどのように受け取れるんでしょうか?
コンストラクタで受け取れるんでしょうか?メソッドでしょうか?
手元にある初心者向けの書籍には明示的に書いてなくて。

236 :デフォルトの名無しさん:02/12/23 12:41
getClickCount() == 2

237 :デフォルトの名無しさん:02/12/23 12:43
>>235
コンストラクタです。
良くない本だね、その初心者向けの書籍。

238 :デフォルトの名無しさん:02/12/23 12:45
>>237
ありがとう。コンストラクタではどのように記述するのが正しいのでしょうか?


239 :デフォルトの名無しさん:02/12/23 12:46
すさまじく初歩的なことで恐縮なんですが、
int型をString型に変換する場合どう書いたらいいですか?

int intHensuu = 1;
System.err.println("Err" + intHensuu);

これでもコンパイルは通るのですが、変換するにはどうするのかなーって
思いまして。

240 :デフォルトの名無しさん:02/12/23 12:52
>>239
String.valueOf(intHensuu);


241 :239:02/12/23 12:55
>>240
おお!さんきゅー

StringクラスのStaticメソッドですか。
どういえば昨日せんせーにならったYO!

242 :デフォルトの名無しさん:02/12/23 12:59
>>238
Foo foo = new Foo( "miso" );
の場合は、
Foo( String s){
 // s の処理
}
ってな具合になる。書き方メソッドに似てるポ。

243 :デフォルトの名無しさん:02/12/23 13:01
>>242
サンクスコ。いま「やさしいJava」って本読んでるんですが
コンストラクタの項にはカッコの中は「引数」って書かれてるだけで
それが何でどのようにするもんなのかサパーリ書いてない。泣きました。
ありがとう。

244 :デフォルトの名無しさん:02/12/23 13:02
>>234
>そのequalsが対称律を満たすならどっちでもいいでしょ。
>ただし、 year.equals(...) はyearがnullだとぬるぽで落ちる。

そうだったんだー。ありがとう。
year.equals(...)の...は何か適当な文字を表してるんだよね?
で、yearがnullだとエラーが出ちゃうと?

245 :デフォルトの名無しさん:02/12/23 13:05
対象律って何?

246 :デフォルトの名無しさん:02/12/23 13:07
>>243
おれもやさしいJAVAから入ったよ。
その本は、わからなくてもどんどん進み、
一通り学んだら、4,5回繰り返し読んだらいいと思うよ。


247 :デフォルトの名無しさん:02/12/23 14:15
いま参考書を読みながらサーバーの勉強をしています。
クライアントが
int i=10,j=20;
Socket s=new Socket(server,port);
// サーバーに値を渡す
BufferedWriter out=new BufferedWriter(new OutputStreamWriter(s.getOutputStream()));
out.write(i+" "+j);
でサーバー側で読み込もうとして
BufferedReader in=new BufferedReader(new InputStreamReader(incoming.getInputStream()));
boolean done=false;
String line=null;
while(!done){
line = in.readLine();
if(line==null){
done=true;
System.out.println("nullダポ");
}
else{
System.out.println(line);
}
}
してもlineにはnullしか入らないのですがどこか間違っていますか?

248 :デフォルトの名無しさん:02/12/23 14:21
>>247
サーバ側のソケットは?

249 :デフォルトの名無しさん:02/12/23 14:23
マダワカランノカオマエラハ…
  ( ・∀・)   | | ガッ
 と    )    | |
   Y /ノ    人
    / )    <  >__Λ∩
  _/し' //. V`Д´)/
 (_フ彡        /  ←>>244 >>234

250 :デフォルトの名無しさん:02/12/23 14:27
>>248
あ・・・
incomingが
ServerSocket s=new ServerSocket(port);
Socket incoming=s.accept();
です。すみません書き忘れました

251 :デフォルトの名無しさん:02/12/23 14:32
>>247
サーバ側のクライアントは?

252 :すみません:02/12/23 14:47
>>251
サーバ側のクライアントとは?
今調べてみたのですがよくわからなかったのですが…
ファイルにはほとんどこれ以外書いていません。

253 :デフォルトの名無しさん:02/12/23 14:49
>>247
out.close(); してないとかじゃないよね?

254 :すみません:02/12/23 15:01
>>253
本当にすみません。それでした( ・∀・)
2日これについて調べていたのですが・・・
助かりました。みなさん有り難うございます

255 :デフォルトの名無しさん:02/12/23 15:23
(String A, int B, int C)
という引数のメソッドを呼び出すときに
(HashTableX.get("hoge").toString(), (Integer)HashTableX.get("fuga"), Integer.parseInt(StringX))
とやっています。で、コンパイルすると
(java.lang.String,int,int) は (java.lang.String,java.lang.Integer,int) に適用できないとの
エラーメッセージを受けました。エラー箇所はInteger.parseIntを指しています。

何故int同士なのにだめなのか、第二引数はintとIntegerで違っててもいいのか、というのが疑問なのですが・・・。

256 :デフォルトの名無しさん:02/12/23 15:25
>>255
int プリミティブ型
Integer クラス

257 :255:02/12/23 15:55
プリミティブは実体を持たない型なんですよね。で、オブジェクトを作る場合にはwrapperを使うと。
この場合、intで宣言してるのでIntegerは投げられない。でしょうか。ということは
Hashtable.getはObjectを返すから、Integerからintを作らないといけない・・・? うーん(T∀T

258 :デフォルトの名無しさん:02/12/23 16:08
>>255
>(HashTableX.get("hoge").toString(), (Integer)HashTableX.get("fuga"), Integer.parseInt(StringX))
(HashTableX.get("hoge").toString(), ((Integer)HashTableX.get("fuga")).intValue(), Integer.parseInt(StringX))
こんな感じっすか?

259 :デフォルトの名無しさん:02/12/23 16:09
>>255
あ、あと 怒られてるのは第二引数だよ。

260 :255:02/12/23 16:21
なるほど!いままでintとIntegerの違いを気にしないでリファレンス読んでたので
気づきませんでした。もうちょっと読んでみます。ありがとうございます。

261 :デフォルトの名無しさん:02/12/23 16:22
>>258
http://java.sun.com/j2se/1.3/ja/docs/ja/api/java/lang/Integer.html

お前はリファレンスも読まんのか?

262 :デフォルトの名無しさん:02/12/23 16:28
>>261
???

263 :デフォルトの名無しさん:02/12/23 16:45
ぐぐるのTOPが変わっtage

264 :デフォルトの名無しさん:02/12/23 17:14
>>263
ああ、ゴスリングがサンタのコスプレして
デュークの引くソリに乗っているやつだろ。俺も見たよ。

265 :デフォルトの名無しさん:02/12/23 17:51
JAXP1.1ってもう入手できないんでしょうか?

266 :デフォルトの名無しさん:02/12/23 17:56
>>265
他にもDOM/SAXなクラスライブラリはあるけれど。


267 :デフォルトの名無しさん:02/12/23 18:24
2ch自体にも初心者なんですが、
ここで携帯アプリ(のプログラム)について質問してもいいですか?

268 :sage:02/12/23 18:25
すいません、ageちゃいました・・・申し訳ないっす

269 :267:02/12/23 18:26
ほんとゴメンなさい・・・

270 :267:02/12/23 18:27
いや、やっぱageとこう

271 :デフォルトの名無しさん:02/12/23 18:31
>>267
携帯の質問は専用スレあるけど、
とりあえず、ここでもいいんじゃない?

//つーかsageでもageでもどちらでもいいから、
//さっさと質問書いたらどうか?。
//俺は携帯のJavaは、よくわからいから役にはたてそうもないが。

272 :デフォルトの名無しさん:02/12/23 18:31
>>267
別に専門スレあるよ。

273 :267:02/12/23 18:33
>>271
なるほど、「携帯」で検索かけるべきだったんですね。
一応そちらに書き込んでおきますんで、
よろしかったら見てやってください。 > みなさん

ちなみに 270 は偽者ですんで。失礼しました。

274 :デフォルトの名無しさん:02/12/23 18:46
>>273
もともと、この板は2chのなかでも特に騙りが多い。

http://piza.2ch.net/tech/kako/980/980603763.html
http://pc.2ch.net/tech/kako/1002/10024/1002425670.html
http://piza2.2ch.net/tech/kako/1001/10010/1001010470.html

275 :デフォルトの名無しさん:02/12/23 19:28
javaAppletからファイルの書き込みしたいのですが、
たとえば、abc.txtというファイルに”あいうえお”と書き込むには
JavaAppletで実現するにはどうしたらいいのでしょうか?

276 :275:02/12/23 20:00
もういいです。

277 :デフォルトの名無しさん:02/12/23 20:06
>>276
俺の偽者消えろ!

278 :デフォルトの名無しさん:02/12/23 20:09
>>275
できないことはないけどセキュリティの問題があるから、
アプレットは@ちょっとやっかいだよ。

もしWebサーバの上にアプレットを設置するのなら、
アプレットからサーバに保存したいデータを送信して
サーバ側のマシン内に保存させるという方法があるよ。

クライアント側に保存させたいのならアプレットよりも、
JavaWebStartを使うなどしてアプリケーションにしたほうがいいと思う。

それか小さいデータなら
クッキーを使ってブラウザに保存させるという手もあるが。

279 :デフォルトの名無しさん:02/12/23 20:11
あ、関係のないアットマークが文中にはいってしまった・・・逝くか

280 :デフォルトの名無しさん:02/12/23 20:11
>>278

>もしWebサーバの上にアプレットを設置するのなら、
>アプレットからサーバに保存したいデータを送信して
>サーバ側のマシン内に保存させるという方法があるよ。

上記の方法が知りたいです。
どうすればよろしいでしょうか?

281 :デフォルトの名無しさん:02/12/23 20:12
>>278
ありがとうござ@いま@す

282 :デフォルトの名無しさん:02/12/23 20:13
javaScriptからjavaへ通信したいのですが。
javaアプレットでないとjavaScriptから通信はできないのでしょうか?

283 :デフォルトの名無しさん:02/12/23 20:14
>>276=281
うざいよ。


284 :デフォルトの名無しさん:02/12/23 20:22
>>283
>>274

285 :デフォルトの名無しさん:02/12/23 20:22
>>282

何を送信したいかによる。

286 :デフォルトの名無しさん:02/12/23 20:24
>285
HTML上のボタンをクリックしたっていう情報をjava(FLAME)で書いたプログラムに渡したいのです。

287 :デフォルトの名無しさん:02/12/23 20:30
Appletつかてください。

288 :デフォルトの名無しさん:02/12/23 20:34
Appletだと都合が悪いんですが、Flameじゃできないですかね・・・?

289 :デフォルトの名無しさん:02/12/23 20:34
>>280
この方法を実現するためには、
サーバ側のマシンで、
データを保存するプログラムを走らせておく必要があるのね。

あなたの質問の感じからすると
一番手軽な方法として、アプレットからデータを送って、
CGIとPerlのスクリプトを使ってサーバに受け取らせて
保存させるのがいいとおもうよ。

CGIをとくに推めるわけではないが、
これなら多くのWebサーバで利用できるだろうし。

とりあえずgoogleで、Socket、Java、CGIで検索をかけてみては?

290 :275:02/12/23 20:35
Appletでのやり方が知りたいのですが。。

291 :275:02/12/23 20:37
>>289
直接、Appletからファイルに保存することは出来ないのでしょうか?

292 :デフォルトの名無しさん:02/12/23 20:38
>>290
サーバ側にデータを保存させるためには、
サーバ側のマシンで、なんらかのソフトを走らせておく必要がある。

それゆえ、もっともポピュラーな方法としてのCGIも使えないのなら、
>>278のブラウザのクッキーを使うのがよいかとおもう。

293 :デフォルトの名無しさん:02/12/23 20:40
>>291
Security Policyを勉強すてください。

294 :275:02/12/23 20:41
>>292
サーバにAppletのプログラムを動かすんだけど、
それでも直接、ファイルにデータを保存させることはできないのでしょうか?

295 :デフォルトの名無しさん:02/12/23 20:43
>>291
アプレットが走っているのは、あくまでもクライアントのマシン。
ゆえにアプレットを使ってサーバにデータを保存することは不可能。

もちろんアプレットを使ってサーバ側にデータを送信することなら可能。
そしてCGIなどをつかうなり、サーバ側でなんらかのソフトを走らせておけば、
ネットワークから送られて来たデータを受信して、それをサーバに保存することも可能。

そこで、問題になってくるのは、>>275さんが、
サーバでそのようなソフトを走らせることが
許されているかどうかということなわけです。

296 :デフォルトの名無しさん:02/12/23 20:46
>>295
>>294

297 :275:02/12/23 20:47
>>295
なるほど!
理解できました。

一応CGIは使った経験はありますので、
なんとかなりそうな気がしてきました。
CGIでデータを受け取ってファイルに書き込めばいいんですね。
なるほどねぇ〜。
今日は一つ偉くなりました。
どうもっす。

298 :デフォルトの名無しさん:02/12/23 20:48
プー

299 :デフォルトの名無しさん:02/12/23 20:51
サーバーに複数の処理をさせなくてはいけないとき
どうやるのが一番賢いのでしょうか?

例えば適当な数字をサーバーにおくったら
二乗、三乗、四乗した値を別々のフィールドに返すとか。
調べてみたんだけど一つの情報のやり取りしかなくて
現在ではいくつかの情報を一つに一度に書いて
StringTokenizerで分け直すといった
アホっぽいやり方なので賢い方法教えてください

300 :名無し@沢村:02/12/23 20:53
ヌヒ等よ、Javaの話ならプログラム板より、Web制作板のほうがいいぞ。

301 :デフォルトの名無しさん:02/12/23 20:58
>>299
DataIn/OutputStreamは?

302 :デフォルトの名無しさん:02/12/23 20:58
>>299

返したい値を持ったクラスを作って、それを返す。

303 :デフォルトの名無しさん:02/12/23 21:02
>>299
ん? 複数のデータをサーバへ、ひとまとめに送信して、
それをサーバ側で分割してから処理をして、
その処理の結果をクライアントにもどすうえでスマートな方法を知りたいということか?

ならばシリアル化可能なクラスをつくり、
そのインスタンスにデータを全部ぶちこんでサーバに送信し、
サーバ側でそのインスタンスを復元してはいかがか?

304 :デフォルトの名無しさん:02/12/23 21:05
>>299
http://java.sun.com/j2se/1.4/ja/docs/ja/api/java/io/ObjectOutput.html
http://java.sun.com/j2se/1.4/ja/docs/ja/api/java/io/ObjectInput.html

このあたりをご参考に。

305 :デフォルトの名無しさん:02/12/23 21:10
>>301-304
みなさんありがとう。
返す値を全部クラスに突っ込んで渡す
というのが一番頭よさそうですね。
出来ないとは思いますが。ない頭つかって頑張ってみます。
ほんとありがとう。

306 :デフォルトの名無しさん:02/12/23 22:24
>>305
Javaでなら、さほど難しくはないよ。
とっても簡単。

public class SerialData implements Serializable {
 String s;
 int i;

 public SerialData(String s, int i) {
  this.s = s;
  this.i = i;
 }
}

public class SerialClient {
 public static void main(String[] args) {

  try {
   Socket socket = new Socket("192.168.0.2", 7743);
   ObjectInput in =
    new ObjectInputStream(socket.getInputStream());
   SerialData data = (SerialData) in.readObject();
  } catch (Exception e) {
  }
 }
}

307 :デフォルトの名無しさん:02/12/23 22:25
>>306のつづき。
public class SerialServer {
 public static void main(String[] args) {

  SerialData data = new SerialData("あいう", 10);

  try {
   ServerSocket server = new ServerSocket(7743);
   try {
    Socket connection = server.accept();
    ObjectOutput out =
     new ObjectOutputStream(
      connection.getOutputStream()
     );
    out.writeObject(data);
    out.flush();
   } catch (IOException e) {
    server.close();
   }
  } catch (IOException e) {
  }
 }
}

308 :デフォルトの名無しさん:02/12/24 06:35
unko.class←mainでmankoパッケージ
tinko.class

manifest.mf
Main-Class: manko.unko

jar -cvfm manko.jar manifest.mf *.class

ってやってできたmanko.jarをjavaw.exeに放り込んでも動きません。

classpassはコマンドプロンプトで
set classpassとやったところ、javasdkのものに全て通ってます。
windows2000です。

309 :デフォルトの名無しさん:02/12/24 06:36
どうすれば動くようになりますか

310 :デフォルトの名無しさん:02/12/24 06:40
>>308 おまえさんなぁ…
manifestファイルの一番下に空いた行が1行無いとか

311 :デフォルトの名無しさん:02/12/24 07:01
>>310
manifestファイルの最後の空行はわりと陥りやすい罠だが、
こんな質問に即座の的確なレスで、ちとワロタ。

312 :308:02/12/24 07:09
>>310
それでも動きません
javawが駄目なようなので
java -jar manko.jarとしてみたところ

Exception in thread "main" java.util.zip.ZipException: error in opening zip file

at java.util.zip.ZipFile.open(Native Method)
at java.util.zip.ZipFile.<init>(ZipFile.java:112)
at java.util.jar.JarFile.<init>(JarFile.java:117)
at java.util.jar.JarFile.<init>(JarFile.java:55)

というエラーが出ました。

313 :デフォルトの名無しさん:02/12/24 07:38
>>312
>>1読め。な。

314 :313:02/12/24 08:48
読みましたがわかりません。
http://www.dmz.hitachi-sk.co.jp/Java/Tech/jre/execution.html
ここ読んでもわかりません。

もうJavaやめます。それでは。

315 :デフォルトの名無しさん:02/12/24 11:00
>>314
やめる前に、俺の話を聞け。
jarファイルの作り方が間違っているとは思わないのか?
mankoパッケージに入っているのだったら、

jar -cvfm manko.jar manifest.mf manko/*.class

だろ。こんなミスをしているということは、
コンパイルも問題があるのだろう。

javac -d . *.java

とやってみろ。パッケージ階層ができるから。

316 :デフォルトの名無しさん:02/12/24 13:22
メソッドの定義の中で引数keyによって要素数が変わるString配列h[]を初期化し、
h[]に文字列を格納したあと、
参照すると値がnullになってしまっているんですが、
何が問題なのでしょうか。
変数はメソッドの外で宣言しています。

public static String h[][];

public void test(int key)
{
for(i = 0; i < key; i++)
{
h = new String[key];
h[i] = word[j];

//ここでh[i]の値は正常に表示される。
System.out.println(h[i]);
}

for(j = 0; j < key; j++)
{
//ここではh[j]の値はnull値になっている。
System.out.print(h[j]);
}

お願い致します。

317 :デフォルトの名無しさん:02/12/24 13:27
最初のループでhを毎回上書きしてるのは何か意味あるんかいな?

318 :デフォルトの名無しさん:02/12/24 13:32
public static String h[][];
なら h[j][a] とでもしなきゃいけないんじゃないの?

319 :316:02/12/24 13:39
すんません、
自分で何書いてんだかわかんなくなっちまったです。
出直します。
申し訳なく恥ずかしい。

320 :デフォルトの名無しさん:02/12/24 14:51
あれ、(int)とか(double)とかでキャストすると符号って全部正になる?

321 :デフォルトの名無しさん:02/12/24 14:53
>>320
んなわけねーだろ

322 :デフォルトの名無しさん:02/12/24 14:55
だよねぇ、ちょっと考えなおそ。

323 :316:02/12/24 15:20
>>317氏、318氏のレスが大いにヒントになり、解決と相成りました。
ありがとうございましたw。
以下のようにしなければならなかったんですね(恥。

public static String h[][];

public void test(int key)
{
h = new String[n][];
for(i = 0; i < key; i++)
{
h[i] = new String[key];
h[i] = word[j];

//ここでh[i]の値は正常に表示される。
System.out.println(h[i]);
}

for(j = 0; j < key; j++)
{
//ここではh[j]の値はnull値になっている。
System.out.print(h[j]);
}


324 :314:02/12/24 16:00
>>315
jarファイルの作り方が間違ってました。間違えまくってました。
anus/(root)
anus/manko/tinko.class
anus/manko/unko.class
anus/manifest.mf
とやって、rootでjarを実行しなきゃならんかったのですか。

てっきり
anus/manko/tinko.class
anus/manko/unko.class
anus/mankomanifest.mf
anus/manko/をルートにして、jarで逝けると思ってました。

jar.exeはanusに入れても痛いというだけでmankoに導いてくれないんですね。
早漏ですいませんでした。

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

325 :デフォルトの名無しさん:02/12/24 17:08
>>324
頭のわるそうな文章でワラタ(w

326 :314:02/12/24 19:49
>>325
あなたもよく笑われてますよ。

327 :デフォルトの名無しさん:02/12/24 20:40
Eclipseについての質問なのですが、
前回終了時にフリーズしてワークスペースの保管をしないまま
今回起動したら"MS932のエンコードはサポートされていません"
のエラーメッセージがエディタ上に表示されてソースが見れなく
なってしまいました。

328 :デフォルトの名無しさん:02/12/24 20:44
すいません327ですが続けます。
環境はWin2000でEclipse自体は日本語化しています。
対処としては編集>>エンコーディングでMS932にしてもだめ。
設定>>エンコーディングの部分をMS932にしてもだめ。
しょうがないのでソースを秀丸でutf-8に保存してから開いてますが、
できればMS932も使用したいのですが、同じ体験したかたいらっしゃいますか?

329 :デフォルトの名無しさん:02/12/24 22:25
すでに存在しているファイルに文字を追加したい処理をしたいんだけど
うまくいきません。ソースは以下の通りです。
try{
String str="逝ってよし";
file=new File("aiueo.txt");
FileWriter fw=new FileWriter(file);
fw.write(str);
fw.close();
}

330 :デフォルトの名無しさん:02/12/24 22:31
>>329
>FileWriter fw=new FileWriter(file);
FileWriter fw = new FileWriter(file,true);


331 :デフォルトの名無しさん:02/12/24 23:25
>>329
http://java.sun.com/j2se/1.3/ja/docs/ja/api/java/io/FileWriter.html

取りあえずリファレンスくらい見てから物言え。


332 :329:02/12/24 23:51
330のように修正してもうまくいきません。
>>331
リファレンスは見ましたが、やはりうまくいきません。
そこに答えはあるのですか?

333 :デフォルトの名無しさん:02/12/25 00:00
答えがあるから教えたのであって
見つけられないのであれば見ていないのと同じ

334 :デフォルトの名無しさん:02/12/25 00:07
>>332
うまくいかないというのは、どのようにうまくいかないの?
一口に「うまくいきません」と言っても
いろいろな事象が考えられるでしょ?

そこの所をあなた以外のひとにも、
わかるように説明していただけますか?

335 :329:02/12/25 00:07
>>333
FileWriterのコンストラクタの引数がFileオブジェクトではなく、
Stringであることは分かりましたがまだ動きません。
せめてヒントでも下さい。

336 :デフォルトの名無しさん:02/12/25 00:11
>>335
FileWriterクラスのコンストラクタは、ざっと>>331のリンク先を見る限り、
いろいろあるようだが……?

コンストラクタの概要 FileWriter(File file)
File オブジェクトを指定して FileWriter オブジェクトを構築します。 FileWriter(FileDescriptor fd)
ファイル記述子に関連した FileWriter オブジェクトを構築します。 FileWriter(String fileName)
ファイル名を指定して FileWriter オブジェクトを構築します。 FileWriter(String fileName, boolean append)
書き込まれたデータを追加するかどうかを示す boolean とファイル名を指定して、FileWriter オブジェクトを構築します。
http://java.sun.com/j2se/1.3/ja/docs/ja/api/java/io/FileWriter.html

337 :329:02/12/25 00:16
>>336
はい、そうなのですが今回の場合はすでに存在しているファイルに
新たに追加する処理なので上から三つ目のコンストラクタだと思います。

338 :デフォルトの名無しさん:02/12/25 00:24
最近、プログラミングに凄く興味を持ったので、何か自作したいのですが、
何を作ればいいのかわかりませんwレベルは初心者です。
こんなのを作ってみては?というのがあったら教えてください。

339 :デフォルトの名無しさん:02/12/25 00:27
人工衛星を北朝鮮に落とすプログラムなんかが手頃で良さそう。

340 :デフォルトの名無しさん:02/12/25 00:27
>>338
とりあえず始めてならば
各種Hello Worldと表示するプログラムを作ってみては?

SwingでHello Worldから、ファイルにHello World、
ネットワーク越しにHello Worldとか。

341 :デフォルトの名無しさん:02/12/25 00:28
こんなのは? 楽そうでしょ。
○┃×┃○
━┼━┼━
×┃○┃
━┼━┼━
×┃○┃


342 :デフォルトの名無しさん:02/12/25 00:33
>>329
これならどうか?
上のレスにもあるが、動かないとだけ言っても、
コンパイルすら通らないから思うように動かないケースから、
ファイルになにも書き込まれないというケースから、
書き込まれることは書き込まれるが、上書きしてしまうケースまで、
色々あるので、これでうまく動くようになるかは、何とも言えないが。

try{
 String str="逝ってよし";
 FileWriter fw = new FileWriter("aiueo.txt",true);
 FileWriter fw=new FileWriter(file);
 fw.write(str);
 fw.close();
}

343 :デフォルトの名無しさん:02/12/25 00:33
お隣さんにHello Worldとか。

344 :342:02/12/25 00:34
おおすまん。いまおれの書いたのは、
どうみてもうまく動きそうにないわ(w

345 :デフォルトの名無しさん:02/12/25 00:37
逝ってよし

346 :342:02/12/25 00:39
逝ってくる。

try{
 String str="逝ってよし";
 FileWriter fw = new FileWriter("aiueo.txt",true);
 fw.write(str);
 fw.close();
}


347 :338:02/12/25 00:39
>>341
なんですか、それ?ヌンチャクですか?
本当に楽しいんですか?

348 :329:02/12/25 00:41
>>344
コンパイルは通るのですがファイルに何も書き込まれません。
例外も発生しません。

この処理はサーバサイドでやっているのですがそれが問題なのでしょうか?
今クライアント側で動く簡単なサンプルを作ってみたら動くのですが・・・

349 :デフォルトの名無しさん:02/12/25 00:43
×楽
○簡単

350 :デフォルトの名無しさん:02/12/25 00:48
{
public static void main(String args[])
{
final int SUNDAY = 1;  //曜日の変数
final int MONDAY = 2;
final int TUESDAY = 3;
final int WEDENESDAY= 4;
final int THURSDAY = 5;
final int FRIDAY = 6;
final int SATURDAY = 7;



¥1288は不正な文字ですって出るのですがなぜですか?

351 :デフォルトの名無しさん:02/12/25 00:48
>>350
¥12288でした

352 :デフォルトの名無しさん:02/12/25 00:49
きっと君の目には見えない余分な文字があるからではないかな?

353 :342:02/12/25 00:49
>>348
んー、それだけでは状況がよくわからんので、
俺にはなんとも。

もうすこし状況を詳しく書き込んだら、
なにか意味のある回答ももらえるとおもうよ。

とりあえず予想としては
ファイルのパーミッションの問題に1デューク。

354 :342:02/12/25 00:50
>>350
それは、きっと「全角スペース」という
目にはみえないものの仕業たとおもうよ。

355 :デフォルトの名無しさん:02/12/25 00:50
>>350
` '

356 :329:02/12/25 00:55
とりあえずレスをくれた方々に感謝

357 :デフォルトの名無しさん:02/12/25 00:55
>>340
画面にHello World なら出来ますw

チャットシステムでも作ってみようかな・・。



358 :デフォルトの名無しさん:02/12/25 00:58
無理

359 :デフォルトの名無しさん:02/12/25 01:02
>>354
ありがとうございます。
¥12288ってのは意味があるのですか?


あとくだらない質問(無理と思いますが)しますが
変数の型に日本語は入れれないんですか?
i
nt ○○○←日本語
(こんなカンジで)

360 :デフォルトの名無しさん:02/12/25 01:04
試してみれば良いんじゃねえの?

361 :デフォルトの名無しさん:02/12/25 01:04
>>340
簡単なチャットなら100行程度で書けるからいいテーマかも知れないなあ
Javaはじめたばかりというのが、ちょっと気になるが
まあ検索エンジン上手につかえば、どうにかなると思うよ。

とりあえずチャットのまえに
まずキーボードから打ち込んだ文字を画面に表示させる
コンソールアプリが作ることかな。

362 :デフォルトの名無しさん:02/12/25 01:06
>>360
よく考えたら全角はエラーがでるんですね。
¥12288ってのは意味はあるのですか?

363 :デフォルトの名無しさん:02/12/25 01:06
>>359
私は試したことはありませんが、
ソースをユニコードで記述すれば可能であるとは聞いたことがあるような。

364 :340:02/12/25 01:07
>>361
それって
System.out.print(””)とは違うんですか?

365 :357:02/12/25 01:09
>>364
まちがえますたw

366 :デフォルトの名無しさん:02/12/25 01:11
なにいってんだこいつ

367 :ほんとの340に粗忽者の361:02/12/25 01:12
>>364
んー。つまりプログラムを実行中に、
なにか文字を入力してリターンキーを押せば、
その入力した文字とおなじ文字が、
またふたたび画面に表示されるプログラム

//すまんなあ。うっかりものの俺のために名前まで変えさせてしまって。。。

368 :357:02/12/25 01:15
>>367
コンソールアプリって言葉、早速、検索かけてみますた!
なるほど。やってみます。どうも!

369 :デフォルトの名無しさん:02/12/25 01:34
>>359 >>362
コンピュータで扱われる文字には、
アルファベット、漢字、ひらがな、はては全角スペースなどにいたるまで、
すべてに何らかの識別コードが割り振られています。

\12288とは全角スペースを表す識別コード。

370 :デフォルトの名無しさん:02/12/25 01:57
なに?識別コードって

371 :デフォルトの名無しさん:02/12/25 02:04
>>370
http://dictionary.goo.ne.jp/cgi-bin/dict_search.cgi?MT=%BC%B1%CA%CC&sw=2
http://dictionary.goo.ne.jp/cgi-bin/dict_search.cgi?MT=%C9%E4%B9%E6&sw=2

372 :デフォルトの名無しさん:02/12/25 02:07
>>371
で、結局なんだ?

373 :デフォルトの名無しさん:02/12/25 02:08
>>372
識別するために割りふられたコードのことでは?

374 :デフォルトの名無しさん:02/12/25 02:17
文字コードで良いじゃん

375 :デフォルトの名無しさん:02/12/25 03:11
hage

376 :デフォルトの名無しさん:02/12/25 03:15
>>375
http://images.google.com/images?q=gosling+java

377 :デフォルトの名無しさん:02/12/25 03:34
>>376
誰?

378 :デフォルトの名無しさん:02/12/25 03:35
すみません。また前スレがすぐに1000になってしまったもんで。。
貼らして頂きます。ちょっとでも知ってることでもお願いします。

4つ質問があります。
つまらないことで悩んでますが、おながいします。

response.encodeURL()でURLパラメータにセッションIDを埋め込んだ場合、セッションIDを次のページで取得することはできるのでしょうか?
取得の仕方ってありますか?セッションとセッションIDがちょっとごっちゃになってるんで、混乱してます。。


セッションIDはクッキーが有効になっていないときにだけ、URLパラメータに埋め込まれると何かの本で読んだのですが、
クッキーを有効にしても、セッションIDがURLパラメータに埋め込まれたと友達が主張してました。そんなことってありますか?


あと、携帯電話では、携帯電話でクッキーを無効にしているとき(そんな機能があるかどうかわかりませんが)、
セッションIDはURLパラメータに埋め込まれ、そのセッションIDが埋め込まれた
URLを携帯電話の表示画面から見ることができますか?
もし見ることができるんだったら、セッションIDを使っても、携帯電話でセッションID付きのURLを
打ち込んだら、直接、画面が表示されると思いましたので。
携帯電話はinputタグでgetメソッドしか使えないから、パラメータ付きのURLを直打ちされたら、画面が表示されますよね?
セッションIDもそうなのかなって思って質問しました。


携帯電話では、普通、JavaScriptは使えませんが、これまた、友達が一部のものは使えると言っておりました。
これは本当でしょうか?すみません。携帯電話持ってないので、確かめようがなくて。

以上、ちょっとでもわかることがありましたら、お願いします。

379 :デフォルトの名無しさん:02/12/25 03:35
返事ありがとう。
987。

>>988
>URL?
>クッキー!?
>携帯電話!!?

おかしなこといってましたか。。

>>987
>携帯電話にクッキーはないと思うよ。
そうなんですか。やっぱり騙されてました。

>あと、POSTメソッドも使えるよ。JPHONEの古い機種はダメだけど。
>JavaScriptは無理でしょう。俺は使えるなんて聞いたことない。

JavaScript使えないんですか。それに関しては、一部使えると思っていたのですが。
携帯でPOSTメソッドが使えるなんて思ってませんでした。
上司が携帯では、GETメソッドしか使えないと言っていたので
信じてましたです。ありがとう。

380 :376:02/12/25 03:35
じゃばこの父ちゃん。

381 :378:02/12/25 03:37
>>380
・・・なんですか??

382 :376:02/12/25 03:39
>>381
すまそ。>>380>>377へのレス。
サーバサイドの話?

383 :デフォルトの名無しさん:02/12/25 08:08
>>378
1.SessionIDは"jsessionid"という名前のクッキーで送られるから取得できるよ。
2.初回のリクエストではブラウザがCookieを使えるかどうかをServletコンテナが
 判断できないのでとりあえずセッションIDを埋め込む。2回目以降のリクエストで
 クッキーとしてセッションIDがかえってきたらそれ以降はパラメータに埋め込むのをやめる。
3.携帯電話のブラウザは最近のものはクッキーが使えるものもある。一概に使えないとは言い切れない。
 セッションIDを含んだURLを打ち込むことは可能。
4.これも機種による。

384 :デフォルトの名無しさん:02/12/25 15:11
沢山の画像を一括してサムネイルを作成する仕組みを作りたいのですが、
どのクラスのどのメソッドが有用でしょうか?
よろしくお願いいたします。

385 :デフォルトの名無しさん:02/12/25 15:12
Image
getScaledInstance

386 :デフォルトの名無しさん:02/12/25 21:48
「オブジェクト指向」ってのがいまいちよく理解できません。
でも他の言語でなくjavaを続けて勉強したいんですが、
なにかいい書籍やHPあったら教えてください
よくわかるように説明してくれたら越した事ありませんが。

387 :デフォルトの名無しさん:02/12/25 22:05
>>386
本屋さんで「Javaの絵本」買ってこいや

388 :デフォルトの名無しさん:02/12/25 22:46
>>387
ああ。いま検索かけてみたけど、たしかにおもしろそう。
まだ新しい本なので感想のたぐいはみつからなかったが。
読み終わったらJavaの絵本の感想きぼんぬ。>>386-387

389 :デフォルトの名無しさん:02/12/25 23:55
あるメソッド内で、そのメソッドを呼び出したメソッド名を得る方法ってありますか?

390 :初心者:02/12/26 00:30
JPanelに追加されている画像をファイルに出力したいのですが
どうすればいいのでしょうか?


391 :デフォルトの名無しさん:02/12/26 00:36
JPanelに追加されている画像?

392 :デフォルトの名無しさん:02/12/26 00:49
>>389
まっとうな方法では無理。

例外を投げて、直後に捉えて、スタックトレースをStringWriterに吐いて、
その文字列を解析して上から二番目のメソッドを抽出って感じで調べられるが、
スタックトレースの出力形式なんて仕様じゃ決まってないだろうしなぁ。

393 :デフォルトの名無しさん:02/12/26 01:02
>>392
例外投げんでもExceptionのインスタンスを作ればスタックトレースは得られる。
どっちにしろ問題の解決にはならないか・・・。

394 :デフォルトの名無しさん:02/12/26 01:10
>>390
StackTraceElement st[] = e.getStackTrace();
if (st.length > 0) {
 String name = st[1].getMethodName();
}
でいいんじゃないかな。ただしJDK1.4

395 :394:02/12/26 01:12
もちろん、eは、Throwableのインスタンス。

396 :デフォルトの名無しさん:02/12/26 01:14
>>389
まっとうな方法というと、JVMDI経由で自分自身のスレッドの
スタックの情報を集めてくる、かな?
JDWP動かしっぱなしでよいならね。激しく重いけど。

397 :初心者:02/12/26 01:47
>>391
わけわからない質問になってすいません。
JPanelにJMFPlayerのヴィジュアルコンポーネントを追加?(JPanel.add〜)
して動画像を再生してるんですけど、プレイヤー停止時の画像を
ファイルに出力(静止画像をファイルに保存)したいのです。
JMFにも実現手段があると思うのですがいまいちわからなくて・・・

394の方法でやってみます。ありがとうございます

398 :デフォルトの名無しさん:02/12/26 01:49
>>397
>>394 のは >>389 へのレスだ。多分。

399 :デフォルトの名無しさん:02/12/26 02:09
メソッドを宣言するときにstatic宣言するかどうかで困ってしまいます。
どういう風に使い分ければよいのでしょうか?

400 :デフォルトの名無しさん:02/12/26 02:14
>>399
http://pc3.2ch.net/test/read.cgi/tech/1038731106/684

401 :初心者:02/12/26 02:24
がーん・・

402 :デフォルトの名無しさん:02/12/26 02:28


>>684 名前:デフォルトの名無しさん 投稿日:02/12/12 12:13
>>>>679
>>そのメソッドがインスタンスを必要とするかだろ。
>>
>>必要としない場合でも、オーバーライドできるようにしたい場合や、
>>どちらがいいか悩むくらいなら迷わず非static。

どちらがいいかで迷うくらいなら迷わず非staticというのはどうしてなんでしょうか?


403 :デフォルトの名無しさん:02/12/26 02:38
>>402
俺はその >>679 じゃないけど
迷っても取り合えず非staticでやってみれば?

使い分けの条件を完全に列挙して教えるなんて無理だと思うし、
そーゆー事は失敗しながら学習するもんだと思うけど。

404 :デフォルトの名無しさん:02/12/26 02:43
>>403
レスありがとうございます。おっしゃるとうりですね。
とにかく経験つんでがんばってみます。

405 :デフォルトの名無しさん:02/12/26 02:44
>>402

staticメソッドは良く考えてから、作れということだろ。
staticメソッドを良く見かけるのは、関数の集まりになっているものや、
singletonパターンなど。

関数の集まりの例としては、java.lang.Mathが良い例だ。
singletonパターンというのは、インスタンスの作成をクラスで制御したい
場合に使います。getInstance()というメソッドがあると、singletonパター
ンになっていることが多い。


406 :394:02/12/26 03:00
>>401,397
わわわわ、ごめんなさい。
>>398
サンクスコ

407 :デフォルトの名無しさん:02/12/26 03:28
>>389,392
リフレクション( java.lang.reflectパッケージ )でうまくいきませんか?


408 :デフォルトの名無しさん:02/12/26 05:05
すいません、今Linuxサーバーに置いてあるZipファイルをServletで
ダウンロードさせるプログラムを組んでいるのですが、最初に

File file = new File( "/home/pub/ZIP/TEST_download.zip" );
response.setHeader("Content-Disposition", "attachment ;filename="+ file.getName() +"" ) ;
response.setHeader("Content-Length: ", String.valueOf( file.length() ) );
response.setContentType("application/octet-stream") ;
response.sendRedirect( file.getPath() );

とやっても実際ファイルがそこにあるのにも関わらずファイルをダウンロード
してくれないという状態です。(パスはあってるけどパスがないって返ってきます・・・)
とあるページでsendRedirect();を呼べばファイルを読み込まなくても
ダウンロードできるとのことでしたがうまくいかないので、sendRedirect();を
外して処理を書いたところダウンロード画面はでるのですが中身が空っぽという状態です。
どうしたらファイルをダウンロードできるでしょうか?

409 :408:02/12/26 05:18
更にですいません。
その後ファイル自体が空っぽだったので

// ファイル読み込み??
BufferedInputStream bis = new BufferedInputStream( new FileInputStream( file ) );
DataInputStream dos = new DataInputStream( bis );

StringBuffer sb = new StringBuffer();
String line = "";
while ( ( line = dos.readLine() ) != null ) {
sb.append( line );
}
out = new PrintWriter( new OutputStreamWriter( response.getOutputStream(), "Shift_JIS") ) ;
out.println( sb.toString() ) ;
out.close() ;
bis.close();
dos.close();

などとやってみましたが中身が破損してしまいうまくいきません・・・
どうやったらサーバーからクライアント側にダウンロードできるかわかんないので
ほんとにすいませんがどなたかご助力お願いします・・・

410 :デフォルトの名無しさん:02/12/26 05:34
>>408
もしかしてこのコードを
> File file = new File( "/home/pub/ZIP/TEST_download.zip" );

こう書いたらうまく動いてはくれないだろうか。
File file = new File( "home/pub/ZIP/TEST_download.zip" );
全然、見当ちがいのレスならごめんな。

411 :デフォルトの名無しさん:02/12/26 05:42
>>409
バイナリを出力すんだったら

InputStream in = new FileInputStream(file);
OutputStream out = response.getOutputStream();
byte[] buf = new byte[1024];
int len;
while( 0 <= (len=in.read(buf)) )
 out.write(buf,0,len);

みたいにした方が良いと思われ…

412 :デフォルトの名無しさん:02/12/26 05:46
in.close();
out.close();
忘れた…


413 :408:02/12/26 05:51
>>410
こんな早い時間にレスありがとうございます
どうやらパス自体はシステム管理者曰く間違いない正しいフルパスだそうです。
思ったのですが response.sendRedirect( file.getPath() );
とやっているのですが直接ファイルを参照させるという使い方で間違っているのでしょうか?

414 :デフォルトの名無しさん:02/12/26 05:58
>>413
ドキュメントちゃんと読もう。

http://java.sun.com/j2ee/sdk_1.3/ja/techdocs/api/javax/servlet/http/HttpServletResponse.html#sendRedirect(java.lang.String)
>指定されたリダイレクト先の URL を使用して、
>一時的なリダイレクト応答をクライアントに送信します。
>このメソッドは、相対 URL を受け入れることができます。
>サーブレットコンテナは、応答をクライアントに送信する前に、
>相対 URL を絶対 URL へ変換する必要があります。
>先行「/」のない相対 URL の場合、
>コンテナは現在の要求 URL に対する相対位置としてその URL を解釈します。
>先行「/」付きの相対 URL の場合は、
>コンテナはサーブレットコンテナのルートに対する相対位置としてその URL を解釈します。

415 :408:02/12/26 06:06
わわわ
書いている間に答えを書いてくださった411・412様感謝します!
なんとかできました、本当にありがとうございます!
いつもこのStream系っていうのでどれをどの場合で使えばいいのかっていうのを
もうちょっと勉強し直して見ます。
本当にありがとうございました!


416 :初心者:02/12/26 14:41
解決方法見つかりました
お騒がせして申し訳ありませんでした

417 :デフォルトの名無しさん:02/12/26 17:01
>>416
ならその解決法のヒントだけでも書いたほうがいいとおもう。
後にこのスレが過去ログ倉庫に収められたとき、
おなじ悩みをかかえたひとがgoogleとかでこのスレにたどりついたとき

「解決しました」

とだけしか書いてなければ、そのひとがかわいそう。

418 :デフォルトの名無しさん:02/12/26 18:03
>>417
2ch の初心者相談スレなんだし、
解決に貢献(?)してないし、目くじら立てる事も無いのでは?

419 :デフォルトの名無しさん:02/12/26 18:59
>>418
いやあ、目くじらたててるんじゃなくて、
実は俺も知りたいのよ。ごめんちゃい。

いろいろ気になって調べてみたんだが、
ちょっとわからんかった。

420 :417改めかわいそうなひと:02/12/26 19:10
聞くばかりではあれなので、
とりあえず俺にもわかった質問の回答を。

>>83
たぶんこれのことだと思う。http://java.sun.com/products/javabeans/beanbuilder/index.html

BeansBoxの拡張版なのかな

421 :デフォルトの名無しさん:02/12/26 19:24
>>419
ファイルシステム全体をHTTPで公開してると思ってるのか?
sendRedirect()で使えるのは、ContextRoot以下での相対パス。

/var/tomcat/webapps/testにWebアプリを配布したとするだろ?
んで、これのURLがhttp://localhost/test/だったとする。

sendRedirect()に"/home/pub/ZIP/TEST_download.zip"を指定したとすると、
リダイレクト先は"http://localhost/test/home/pub/ZIP/TEST_download.zip"になるから、
ファイルとしてのパスは"/var/tomcat/webapps/test/home/pub/ZIP/TEST_download.zip"になる。

422 :417改めかわいそうなひと:02/12/26 19:43
>>421
ん。誤爆?

>>415
ストリームはおおまかに分けて4種類。
入力用が出力用かの2種類*バイナリか文字かの2種類=4種類ね。

俺がいいかげんな説明をするよりも、
こっちのほうがよさそう。
http://www.borland.co.jp/tips/jbuilder/jb006/
http://www.wakhok.ac.jp/~tatsuo/JavaWorld/8th/class.html

423 :デフォルトの名無しさん:02/12/26 22:10
>>422
同意。

424 :デフォルトの名無しさん:02/12/26 22:15
eclipseでwindowClosingを実装しないクラスを実行しちゃったんですけど
どうやったら終わってくれますか?

425 :デフォルトの名無しさん:02/12/26 23:46
eclipseだったらconsole部とかに停止ボタンがある

426 :デフォルトの名無しさん:02/12/26 23:49
>>424
ConsoleウインドウにあるTerminateという四角い赤いボタン。

427 :デフォルトの名無しさん:02/12/26 23:52
>>416 >>397
俺もその解決方法、気になるからage

428 :デフォルトの名無しさん:02/12/27 02:11
>>425, 426
とまった。ありがとうー

429 :デフォルトの名無しさん:02/12/27 11:54
API作るとき、エラーリターンと例外処理の使い分けってどうしてる?

こういうときはエラー値を返す、こういうときは例外を投げるべき
みたいな簡単なガイドラインないかな
なんでもポンポン例外投げたくなるけど使うとき困るし

430 :デフォルトの名無しさん:02/12/27 12:15
致命的エラー

431 :デフォルトの名無しさん:02/12/27 12:52
>>429
明らかに処理の中断が必要ならthrowしてる。
処理の継続が呼び出し元で任意な問題ならreturnする。

432 :デフォルトの名無しさん:02/12/27 12:57


エラーと例外の違いだろ

433 :デフォルトの名無しさん:02/12/27 13:04
>>432
ん?catchできるかできないかの違いじゃないの?

434 :デフォルトの名無しさん:02/12/27 13:11
>>432
バーカ!!

435 :429:02/12/27 13:16
>>431
>処理の継続が呼び出し元で任意
やっぱこのあたりかな、ポイントは

>>432
ThrowableなErrorとExceptionの話じゃないです。
エラーと例外の話です。
うまく説明できなくてすまんです。

・・・と、そうか、エラー値リターンというのは
Javaには無い概念として考えていけばいいのか。

436 :デフォルトの名無しさん:02/12/27 13:17
>エラー値リターンというのはJavaには無い概念
「例外を投げる」がそれを包含している

437 :デフォルトの名無しさん:02/12/27 13:34
>・・・と、そうか、エラー値リターンというのは

きちんと考えればきれいにフレームとしてまとめられるよ。
ここじゃ書かないけど。

ヒントだけ
public class ValidationResult{
 private boolean valid;
 private String result;
}


438 :デフォルトの名無しさん:02/12/27 13:37
あ、エラー値リターンとは違うな。
未だにそんなことしてる奴はVBに戻ってください(w

439 :デフォルトの名無しさん:02/12/27 13:37
Exception継承すれば良いじゃんか。。。

440 :デフォルトの名無しさん:02/12/27 13:51
なんにもわかってない439

441 :431:02/12/27 13:56
エラー値リターンの意味について誤解してんのかな俺?
java.sql.Statement.executeUpdate(String)がintで更新行数返す様に、
「一応SQL実行して正常に流れたけどあんたの更新したかった行数はこれで
いいんかい?間違ってんなら勝手にrollback()しな」
ってなかんじのモノを想定してたんだが。


442 :デフォルトの名無しさん:02/12/27 13:58
>>441
要は従来通り戻り値で関数の成功、失敗を判断するか例外を投げまくるかどっちにしましょう?って話だろ?

443 :429:02/12/27 14:14
うん、よく考えたらやっぱりJavaには
エラー値リターン というのは存在しないね
ここにヒントがあったよ
みんなありがとう!

>>441
そんな感じ

>>437
悪いけど、それはダサいや。

444 :デフォルトの名無しさん:02/12/27 14:39
うん。ダサいね。
真似するヤシがいたらどうしようかと思ってたよ。(w

445 :初心者@416:02/12/27 15:02
質問するだけして「解決しましたどうも」はおかしいですね・・・すいませんTT
海外のHPをずーっと探索してたらそれらしいソースが見つかりましたので
適当に加工して自分のキャプチャプログラムに取り組んだだけなので完全に
理解はできていません(Graphics2Dとか・・何それって感じ)
なので、ソースを、、、リスナクラス?にあるのがそうです。


446 :初心者@416:02/12/27 15:03
mport java.io.*;
import java.util.Vector;

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

import javax.media.*;
import javax.media.util.*;
import javax.media.protocol.*;
import javax.media.format.*;
import javax.media.control.*;

import com.sun.image.codec.jpeg.*;


447 :初心者@416:02/12/27 15:03
public class PhotoTest{

static Player player;

public static void main( String[] args ) throws Exception {

Vector deviceList = CaptureDeviceManager.getDeviceList( new YUVFormat() );
CaptureDeviceInfo info = (CaptureDeviceInfo)deviceList.elementAt(0);
DataSource source = Manager.createDataSource( info.getLocator() );
CaptureDevice cd = (CaptureDevice)source;

FormatControl [] fcs = cd.getFormatControls();
FormatControl fc = fcs[0];
fc.setFormat( new VideoFormat( VideoFormat.YUV ) );

player = Manager.createRealizedPlayer( source );

448 :初心者@416:02/12/27 15:04

JFrame frame = new JFrame();
JPanel panel = new JPanel();
JButton button = new JButton("Capture");
Component vc = player.getVisualComponent();

panel.setLayout( new BorderLayout() );
panel.setSize( 320, 300 );
button.addActionListener( new MyWindowAdapter() );
panel.add( button, BorderLayout.SOUTH );
panel.add( BorderLayout.NORTH, vc );

frame.getContentPane().add( panel );
frame.addWindowListener( new MyWindowAdapter() );

frame.pack();
frame.setVisible( true );

player.start();
}
}


449 :初心者@416:02/12/27 15:04
class MyWindowAdapter extends WindowAdapter implements ActionListener{

public void windowClosing( WindowEvent e){
PhotoTest.player.stop();
PhotoTest.player.close();
System.exit(0);
}

public void actionPerformed( ActionEvent e ){
FrameGrabbingControl fgc =
(FrameGrabbingControl)PhotoTest.player.getControl("javax.media.control.FrameGrabbingControl");
Buffer buf = fgc.grabFrame();
BufferToImage btoi = new BufferToImage( (VideoFormat)buf.getFormat() );
Image img = btoi.createImage( buf );

BufferedImage bi = new BufferedImage( img.getWidth( null ),
img.getHeight( null ),
BufferedImage.TYPE_INT_RGB );
Graphics2D g2 = bi.createGraphics();
g2.drawImage( img, null, null );

450 :初心者@416:02/12/27 15:04
FileOutputStream out = null;
try{
out = new FileOutputStream("c:/test.jpg");
}
catch(FileNotFoundException io){
System.exit(-1);
}

JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder( out );
JPEGEncodeParam jparam = encoder.getDefaultJPEGEncodeParam( bi );
jparam.setQuality( 0.5f, false );
encoder.setJPEGEncodeParam( jparam );

try{
encoder.encode( bi );
out.close();
}
catch(IOException io){
System.exit(-1);
}
}
}

451 :初心者@416:02/12/27 15:10
class MyWindowAdapter extends WindowAdapter implements ActionListener{

public void windowClosing( WindowEvent e){
PhotoTest.player.stop();
PhotoTest.player.close();
System.exit(0);
}

public void actionPerformed( ActionEvent e ){
FrameGrabbingControl fgc =
(FrameGrabbingControl)PhotoTest.player.getControl("javax.media.control.FrameGrabbingControl");
Buffer buf = fgc.grabFrame();
BufferToImage btoi = new BufferToImage( (VideoFormat)buf.getFormat() );
Image img = btoi.createImage( buf );

BufferedImage bi = new BufferedImage( img.getWidth( null ),
img.getHeight( null ),
BufferedImage.TYPE_INT_RGB );
Graphics2D g2 = bi.createGraphics();
g2.drawImage( img, null, null );

452 :初心者@416:02/12/27 15:10

JFrame frame = new JFrame();
JPanel panel = new JPanel();
JButton button = new JButton("Capture");
Component vc = player.getVisualComponent();

panel.setLayout( new BorderLayout() );
panel.setSize( 320, 300 );
button.addActionListener( new MyWindowAdapter() );
panel.add( button, BorderLayout.SOUTH );
panel.add( BorderLayout.NORTH, vc );

frame.getContentPane().add( panel );
frame.addWindowListener( new MyWindowAdapter() );

frame.pack();
frame.setVisible( true );

player.start();
}
}


453 :初心者@416:02/12/27 15:10
JFrame frame = new JFrame();
JPanel panel = new JPanel();
JButton button = new JButton("Capture");
Component vc = player.getVisualComponent();

panel.setLayout( new BorderLayout() );
panel.setSize( 320, 300 );
button.addActionListener( new MyWindowAdapter() );
panel.add( button, BorderLayout.SOUTH );
panel.add( BorderLayout.NORTH, vc );

frame.getContentPane().add( panel );
frame.addWindowListener( new MyWindowAdapter() );

frame.pack();
frame.setVisible( true );

player.start();
}
}

454 :デフォルトの名無しさん:02/12/27 15:18
そりゃ437そのままつかったらダサいわな

455 :417改めかわいそうなひと:02/12/27 15:56
>>416
なるほどありがとう!!

こちらこそ尋ねるほうの身で、
目くじら立てるようなことを言って申し訳ない。

456 :デフォルトの名無しさん:02/12/27 16:21
あるオブジェクトがExceptionを発生した場合、
そのオブジェクトからエラー内容を取得すればいいんじゃない?

457 :デフォルトの名無しさん:02/12/27 16:46
SELECT ID, 名前, TO_CHAR(入社日,'YYYY"年"MM"月"DD"日"') FROM 社員表;

SQLで↑の文を実行するとうまくいくのですが、
Javaの中で書くとなぜかうまくいきません。
一応、↓のように書いたのですが、
何か間違ってるところありますか?

String sql ="SELECT "+
  " ID "+
       " 名前 "+
" TO_CHAR(入社日,'YYYY"年"MM"月"DD"日"') "+
" FROM "+
" 社員表";

458 :デフォルトの名無しさん:02/12/27 16:47
>>457
System.out.println(sql);

の実行結果書いて。

459 :デフォルトの名無しさん:02/12/27 16:57
>>458
System.out.println(sql);しましたが、
SQL文は表示されずにエラーがでます。
そのエラーは
" TO_CHAR(nyuusyabi,'YYYY"??"MM"??DD"??"' ) ,"+
^
というものです。
YYYYのところでエラーが出てるようです。
TO_CHAR関数の書式が間違ってると思い確認してみたのですが、
??です。



460 :デフォルトの名無しさん:02/12/27 17:00
>>459
エラーエラーとそのエラーメッセージをどうして書かない・・・。

461 :デフォルトの名無しさん:02/12/27 17:15
文字列の中で"を使う場合は、ちゃんとエスケープしろ。

" TO_CHAR(入社日,\'YYYY\"年\"MM\"月\"DD\"日\"') "

462 :デフォルトの名無しさん:02/12/27 17:25
>>460
英文なため、意味不明で確認してみませんでした。
ほんとに??です。

463 :デフォルトの名無しさん:02/12/27 17:26
>>462
・・・が今プログラマやってるんだっけか?

もしかして俺の未来は明るいやもしれん。


464 :デフォルトの名無しさん:02/12/27 17:30
>>462
だからなんでその英文を書かない・・・。
それとも「??」と出たのか?


465 :デフォルトの名無しさん:02/12/27 17:33
>>464
英語環境で日本語javacと言ったところでしょうか。

466 :デフォルトの名無しさん:02/12/27 17:45
>>465
日本語が表示できるように環境を構築しなおすか、
英文でエラーコードを吐き出すようロケールを設定しなおすか、
それか「ひとたび書けばどこでも動く」の思想に乗っ取って、
日本語環境でプログラミングしたほうがよいのでは。。。。

467 :デフォルトの名無しさん:02/12/27 17:46
J2SEは環境に応じて日本語、英語を切り替えてくれるはず。


468 :デフォルトの名無しさん:02/12/27 17:50
>>462
意味がわからないからといって
コピペくらいはデキルだろ
いくら名医でもあんたがわからないからといって体みせてくれなきゃ診断はできんよ。


469 :デフォルトの名無しさん:02/12/27 17:58
>>468
いや。>>462は文字化けでほんとに??????????????って表示されているのだとおもう。
そんなものをここに貼られても対処の仕様がない。
そもそもそんな環境で仕事しようというのが間違っているのだが。

>>462
使っているOSがなにかしらないがUnix系なら環境変数をいじれば、
英文でエラーコードを出力してくれるとおもうよ。

470 :デフォルトの名無しさん:02/12/27 18:11
Windows2000で、エディタ+JDKでやってるんですけど
makeファイルってどうやって書けば良いんですか?

471 :デフォルトの名無しさん:02/12/27 18:20
>>470
mainのあるクラスをコンパイルすれば
芋づる式にコンパイルされるから、makeなんていらないよ。

いや、本当はあった方がいいけど、今はいらないと思うよ。

472 :デフォルトの名無しさん:02/12/27 18:26
Javaって何ですか?

473 :470:02/12/27 18:31
>>471
make要らないんですか。それは簡単で良いですね。
ありがとうございました。

474 :デフォルトの名無しさん:02/12/27 18:31
>>470
ant使え。

475 :デフォルトの名無しさん:02/12/27 18:31
学生の内にJ2EEを学んでおこうかと思っているのですが、とっかかりと
して良い文献もしくはページ無いでしょうか?

476 :デフォルトの名無しさん:02/12/27 18:42
>>471
なぁ、でもantの事くらい教えてやっても罰は当たらんと思うよ。

477 :デフォルトの名無しさん:02/12/27 19:09


478 :デフォルトの名無しさん:02/12/27 20:15
実際にプログラムを書いて、実行しながらSWINGと
ネットワークプログラミングを完璧にマスターしたいと思っています。
お奨めの書籍か講習会をご存知でしたら教えて下さい。

479 :デフォルトの名無しさん:02/12/27 20:19
Swingならここだな。
単純な英語なので機械翻訳でなんとでもなる。
実践的なプログラムもたくさんある。
http://java.sun.com/docs/books/tutorial/uiswing/


480 :デフォルトの名無しさん:02/12/27 20:21
>>478
Swing と ネットワーク関係 どっちかに絞った方がよさげ。

481 :デフォルトの名無しさん:02/12/27 20:34
>>480
そだね。結局ビューがGUIになるかちゃちいコンソールになるかの違い。ロジックは一緒なのだから。

482 :デフォルトの名無しさん:02/12/27 20:39
私の買ったのは初版のほうでしたが、
実践的なソースコードも掲載されているし、
そのソースで使われているネットワーク用APIの説明もあるので、
Javaのネットワークについて、一通りのことを学ぶのならお勧め。
http://www.amazon.co.jp/exec/obidos/ASIN/4873110610/qid=1040988735/sr=1-4/ref=sr_1_2_4/250-8304509-0092217

483 :デフォルトの名無しさん:02/12/27 20:56
ディレクトリの中のたくさんのjarの中から、
クラスを探せるツールってありませんか?
よろしくお願いします。

484 :デフォルトの名無しさん:02/12/27 20:57
>>483
なんだかんだ言って結局zipファイルなのでその手のツールでできない?

485 :483:02/12/27 21:02
では、全部.zipにリネームして全部解凍して検索します。
javaでやるよりそのほうが手っ取り早いかもしれないですな。
ありがとうございました。

486 :デフォルトの名無しさん:02/12/27 22:00
画面をスプリットして、splitPane.setDividerLocation(0.5d);とすると
50%ずつに分割されるはずなのですが、効果が無いようです。
どうすればスプリットバーの初期位置を決定できますか?

487 :デフォルトの名無しさん:02/12/27 22:47
>>483
ClassLoader使って、指定のクラスを呼び出せるかどうかで
チェックするロジック組んだらエエヤン。

488 :デフォルトの名無しさん:02/12/27 23:31
classpathの値を取得するにはどうすればいいのでしょうか?

489 :デフォルトの名無しさん:02/12/27 23:43
>>483
Jar Inspector

490 :デフォルトの名無しさん:02/12/27 23:47
これ。クラス、インターフェイスを取り出して、
UMLのクラス図で描写するJavaアプリケーション。
ttp://www.yworks.com/en/products_yfiles_practicalinfo_demos.htm

491 :デフォルトの名無しさん:02/12/28 00:44
JXTAってどう?

492 :デフォルトの名無しさん :02/12/28 01:32
色々なプログラミングがありますけど やっぱりJavaって良いんですか?
種類の多さに何がなんだか分からない状況なんで。


493 :デフォルトの名無しさん:02/12/28 01:39
Javaでプログラム作っても配布が難しいよなぁ
JREの最新版をいれて{い|くれ}る人がどれだけいるか・・・

494 :デフォルトの名無しさん:02/12/28 01:41
>>488
String classpath = System.getProperty("java.class.path");

>>493
俺はそういう場合 JDK1.1 で組んで jview.exe で使わせる。

495 :デフォルトの名無しさん:02/12/28 01:55
>>493
どうせ、おまえは最新の機能を使っていないだろ?

496 :デフォルトの名無しさん:02/12/28 01:57
>>494
いーかげん MSJVM は忘れよーよ。

497 :デフォルトの名無しさん:02/12/28 01:59
いまJREって、Flashとかのプラグイン同様に「なければDLインストール」
させることができるようになってなかったっけ?

498 :デフォルトの名無しさん:02/12/28 02:46
>>497
ブラウザでのJavaAppletの話?
ならブラウザによるね。
Netscape7は、なければ自動的にJVMをダウンロードするウィンドウが
現れ、クリックすると自動インストールされる。Flashとほとんど同じだね。


499 :デフォルトの名無しさん:02/12/28 03:08
>>485
> では、全部.zipにリネームして全部解凍して検索します。
> javaでやるよりそのほうが手っ取り早いかもしれないですな。
わざわざzipにリネームしなくても解凍できるんじゃない?

explzhでは解凍できますよ。解凍ソフトインストールしたからといって
(関連付け設定により)jarファイルをダブルクリックしても解凍できるとは限りませんが
デスクトップのexplzhか "解凍" にjarをドロップで解凍できます。
というのはWindowsでの話です。

コマンドラインでもjar -xvf jarファイル名で解凍できます。

もっと楽なのは
jakarta-antで Unjar タスク使って解凍してfindコマンドまたは普通に検索ツールで検索すると楽でしょう。
いちいちbuild.xmlファイル書くの面倒くさいかな...?

500 :デフォルトの名無しさん:02/12/28 13:59
ディレクトリ内のファイル数を調べることができるクラスおよびメソッドは
ありますか?

また、その読み取り時に、拡張子等でカウントするファイルの種類を限定することはできますか?

501 :デフォルトの名無しさん:02/12/28 14:06
>>500
java.io.File あたりをチェック汁。

502 :デフォルトの名無しさん:02/12/28 14:09
ファイルの種類を限定するのはFileFilterみたいですね。ありがとうございます。
Fileクラスのjavadoc(1.4)は一応見たのですが、ファイル数を返すものが
見つけられませんでした。


503 :209.233.221.202.xf.2iij.net:02/12/28 14:13






        http://freeweb2.kakiko.com/dengeki/indexf.htm






504 :デフォルトの名無しさん:02/12/28 14:38
>>502
File.listFiles() で子供の配列が返ってくるから、配列のサイズ見れ。
それと 返ってきた File を FileFilter で検査すれば、
必要なファイルの数も分かんべ?

505 :デフォルトの名無しさん:02/12/28 14:40
なるほど。
丁寧な回答、ありがとうございました。M(_ _)M

506 :デフォルトの名無しさん:02/12/28 23:55
MySQLに接続しようとしているのですが、まず接続する前にドライバを認識してくれません。
以下のエラーがでてしまいます。

java.lang.NotFoundException : "org.gjt.mm.mysql.Driver"

当方、mm.mysql-2.0.4-bin.jar、mysql-connector-java-2.0.1.4-bin.jarのドライバで
以下のように接続を試しました

Class.forname("org.gjt.mm.mysql.Driver");

Classpathはとおっているのにどうしてでしょうか?

507 :デフォルトの名無しさん:02/12/29 00:02
>>506
怪しいよなぁ。。。
java.lang.NotFoundExceptionなんて例外クラスも、
Class.fornameなんてメソッドも存在しないし。

どうせくだらない理由なんだろうな(w

508 :デフォルトの名無しさん:02/12/29 00:11
>>507
すいませんエラーは、 java.lang.ClassNotFoundException でした。
(つってもnotfoundの時点で誰でもわかると思うけど)

あとjava.lang.Class.forname();はありますよ。
だって私Class.forname("sun.jdbc.odbc.JdbcOdbcDriver");でJDBC-ODBC接続使って、
ACCESSには接続できましたよ。
SQL文だってきちんと発行できたし・・・・・・・・・・・つーか両方ともAPIドキュメントにでてますよ。

ってんなことはどうでもいい。誰かわかる人いませんでしょうか?

509 :デフォルトの名無しさん:02/12/29 00:17
CATALINA_HOME/common/lib

510 :デフォルトの名無しさん:02/12/29 00:19
正確には、Class.forNameだよね。
でも、コンパイルが通っているなら、ソース上は正しいのでしょう。
どうも、チョイミスっぽい予感。

511 :デフォルトの名無しさん:02/12/29 00:24
>>510
確かにODBCの方には接続できるんですよね。
mysqlの方ができなくて・・・・・・・・コンソールからならmysqlはつながるから・・・う〜ん
って言うかmysql動かす前にドライバ認識してないからどうしょうもないけど。


512 :デフォルトの名無しさん:02/12/29 00:26
SDKインストールしたらアプレットが遅くなるんですけど
どうしたらいいですか?

513 :デフォルトの名無しさん:02/12/29 00:27
508って何でそんなにえらそうなんだろう


514 :デフォルトの名無しさん:02/12/29 00:28
>>508
mysql-connector-java-2.0.1.4-bin.jarは
Class.forname("org.gjt.mm.mysql.Driver");
ではダメ。
Class.forName("com.mysql.jdbc.Driver");
でやってみて。





515 :デフォルトの名無しさん:02/12/29 00:30
>>513
ごめんなさい

>>514
なるほどやってみます

516 :デフォルトの名無しさん:02/12/29 00:34
>>514
java.lang.NotFoundException : "com.mysql.jdbc.Driver"
でてしまいますた。

517 :デフォルトの名無しさん:02/12/29 00:36
>>516
classpathっぽい

518 :デフォルトの名無しさん:02/12/29 00:40
>>517
classpathなんでしょうか・・・でもclasspathは設定してあるんだけどなぁ・・・・・
ちなみに環境変数で実行ファイルの場所にclasspathを設定してまして、おんなじとこにMySQLのドライバをおいてます。
もう一度確認してみますね。

519 :デフォルトの名無しさん:02/12/29 00:41
>>509でもう答えが出てるのに何をやってるんだろう?

520 :デフォルトの名無しさん:02/12/29 00:43
CATALINA_HOME/common/libでいいんですか?
ちなみにこのパスってどう使うんですか?


521 :デフォルトの名無しさん:02/12/29 00:50
jarファイルにcom.mysql.jdbc.Driverあるか調べた?

522 :デフォルトの名無しさん:02/12/29 00:52
実行時の例外で、どうしても原因がわからんなら、デバッガ使って追い詰めろ。

523 :デフォルトの名無しさん:02/12/29 00:59
>>521
jarファイルにってよくわからないのですが。。(汗
当方classpathの通っているところにドライバのjarファイルをおいておりまする

>>522
System.out.println();はさんでエラー箇所を出してます。
コンパイルも通ってるし、ODBCの方には接続できて、このエラーだから
原因は確実にドライバを認識していないってことはわかるのですが・・・・・・

524 :デフォルトの名無しさん:02/12/29 01:02
ちゃんとjarファイル名までclasspath通してる?
CATALINA_HOME/common/lib/mysql-connector-java-2.0.1.4-bin.jar
かな?

525 :デフォルトの名無しさん:02/12/29 01:05
>>524
なるほど、要するにドライバが置いてあるところじゃなくてドライバまで指定するんですね。

ところでCATALINA_HOMEってでてきてますけど、これってWebエンジンですよね。
ちなみに私の環境はスタンドアロンでApplication作ってます。
JSPやsevletじゃないです。w(Tomcatだけは入れてあるけど)

526 :デフォルトの名無しさん:02/12/29 01:08
ごめんなさい、jarファイルまでの正しいパスでOKです。
classファイルならディレクトリ名までで良いのですが。


527 :デフォルトの名無しさん:02/12/29 01:12
>>526
いきました。
みなさんありがとうございました。

つーか再起動したら動いたのかもしれません(藁
さっきまでpass設定しても再起動してなかったような気が・・・・・・・setで確認しるの忘れてた

528 :デフォルトの名無しさん:02/12/29 01:21
>>527
そういうことのないよう、毎回-classpathオプションで
指定する方が良いと思いますよ。
何かのアプリ上から実行しているなら、設定箇所がある
はずなので、ヘルプとか見てみてください。

529 :デフォルトの名無しさん:02/12/29 01:37
cやらvbやらwindows系のヘルプといったらMSDNだと思うのですが、
javaでそれに相当するようなヘルプはありますか?
やっぱりSunの「JavaTM 2 SDK, Standard Edition ドキュメント」になるのでしょうか?
それとも、試してないからわからないのですが、複数ある統合開発環境で
各々が用意しているヘルプというものにjavaの部分で違いがあったりしますか?

530 :デフォルトの名無しさん:02/12/29 01:39
<SCRIPT language="JavaScript">
<!--
imgnum=1;
function changeImage(){
if(imgnum==1){
document.myimg.src="http://www.p.or.jp/top/1.jpg";
imgnum=2;
}else if(imgnum==2){
document.myimg.src="http://www.p.or.jp/top/2.jpg";
imgnum=3;
}else if(imgnum==3){
document.myimg.src="http://www.p.or.jp/top/3.jpg";
imgnum=1;
}
setTimeout("changeImage()",3000);
}
// -->
</SCRIPT>

とりあえずよそからかっぱらって来たやつなんですが、
1.jpgから100.jpgまでなんか1行か2行くらいで表示する
構文あったらおしえてください

531 :デフォルトの名無しさん:02/12/29 01:53
>>529
すみません。言葉が足りませんでした。
まず>>528のリライトします。

環境変数を変更し、再起動する手間を省くため、実行時のみの
クラスパスを設定する方法をお勧めします。
もしJDKのみインストールしてコマンドから実行してるなら、
下記のように-classpathオプションを付けてください。
毎回書くのが面倒ならそれだけのバッチファイルでも作ると
良いと思います。(私はそうしてます)
「java -classpath .;C:\\xx\\xx.jar;C:\\yy\\yyy zz.zz.zz」

アプリケーション(統合開発環境)から実行しているなら、
上記のような実行時のクラスパスを設定する箇所はそれぞれ
違うはずです。何をお使いか分かりませんので、そのアプリ付属
のヘルプを参照してくださいとしか言えません。すみません。

532 :デフォルトの名無しさん:02/12/29 02:00
そしてJavaのヘルプですが、SUNのドキュメント以外では、
>>1のFAQやJavaHouseなどでしょうか。
統合開発環境のJavaの部分のヘルプというか、コーディングに
関するヘルプが存在するのか分かりませんが、設定方法などは
結構違いますよね?はずしてたらすみません。

533 :529:02/12/29 02:02
>>531
すみません。
なにかややこしくなっちゃいましたね。
classpathの人とは別人で、529は新規の質問です・・
書き込んだ後、ちょっと進行状況が気になってたので
補足しておけばよかったですね。反省

534 :デフォルトの名無しさん:02/12/29 02:12
>>530
1行は厳しいな。(imgnum%3)をイメージ数に変えてみてください。
imgnum=0;
function changeImage(){
document.myimg.src=myImage("http://www.p.or.jp/top/"+(imgnum%3)+".jpg");
imgnum++;
}
setTimeout("changeImage()",3000);


535 :デフォルトの名無しさん:02/12/29 02:15
>>534
ミスった。訂正。
document.myimg.src=myImage("http://www.p.or.jp/top/"+(imgnum%3)+".jpg");

document.myimg.src="http://www.p.or.jp/top/"+(imgnum%3)+".jpg";

次からはhttp://pc3.2ch.net/hp/にね。

536 :529:02/12/29 02:45
>>532
本腰いれてjavaの勉強を始めようと思い、とりあえず、
Oracle JDeveloperというのを入れてみたのですが
目次だけ見てると、ヘルプが独自っぽく見えます。
(設定がうまくいってないようで内容は見えない・・)

で、統合開発環境でヘルプ機能に差異があるんだったら
一番いいやつというか、好評なものを使いたいなぁと。
以前、仕事でちょっとだけjavaの時には、
javadoc+googleで乗りきったのですが、やっぱりこれが標準なんでしょうか?

537 :初心者:02/12/29 03:06
RTPで送受信したいのですが、ローカルネットワークで
テストする場合は受信側も送信側も
"RTP://127.0.0.1:port/video"みたいなURLでいいのでしょうか?


538 :デフォルトの名無しさん:02/12/29 03:50
>>537
1台のPCで、送受信するのであれば、それで良い。

539 :デフォルトの名無しさん:02/12/29 09:50
>>536
javadoc + src.zipで乗り切ってください。
それ以上の情報はどこにも書いてありません。

540 :デフォルトの名無しさん:02/12/29 15:08
WindowsAPIやMFCで言うListViewコントロールって、JAVAのJTableと
考えて良いんですか?
なんかこれ、ちょっとのリスト作るだけでも長い準備必要ですね・・・。

541 :デフォルトの名無しさん:02/12/29 15:27
>>540
>なんかこれ、ちょっとのリスト作るだけでも長い準備必要ですね・・・。
?DefaultTableModel使えば割とお手軽だけども。

542 :デフォルトの名無しさん:02/12/29 15:54
javaに関係あるから質問するけど、
コールドフュージョンって今後どうですか?
現場で使ってる人のアドバイスでも、まだ使ってないけど
見解を持ってる人のアドバイスでもいいのでください。
私的に今度をその技術を学ぶことになり、これってどうよ?って思ってて
不安だったり。簡単そうな言語だからいいんだけど、あんまり無駄にいろんな
言語に手を出したくないって思って宝。

543 :デフォルトの名無しさん:02/12/29 16:20
>>542
この業界、無駄な知識なんて無いんだよ。と。

544 :初心者@RTP:02/12/29 16:38
>>538
ポート番号も送受信側で同じものを指定して大丈夫でしょうか?

545 :デフォルトの名無しさん:02/12/29 16:52
まー、それも含めて、javaに関したコールドフューってどうかと。
聞きたいなって思って。

546 :デフォルトの名無しさん:02/12/29 16:54
「この文に制御が移ることはありません。」
UZeeeeeeeeeeeeeeeeeeeeeeeeeeeeee

547 : :02/12/29 16:54
http://hentai.s1.x-beat.com/sample1.wmv
http://hentai.s1.x-beat.com/sample2.wmv
http://hentai.s1.x-beat.com/

548 :デフォルトの名無しさん:02/12/29 17:29
>>542 もしかして FlashとかJRunとかFireworksとかDreamWeaverとかFreehandとか
使っている?

549 :デフォルトの名無しさん:02/12/29 17:55
>>548
スマン。そんなの使ってないです。

550 :デフォルトの名無しさん:02/12/29 20:00
>>542

ColdFusion for WebSphereは面白そうだな。

551 :デフォルトの名無しさん:02/12/29 20:02
Velocity使え

552 :デフォルトの名無しさん:02/12/29 22:55
>>549
コールドフュージョンというとFlashとかド派手なものが思い浮かんでくるんだよね。
スマンが俺は見解を持ってません。やったこと無いんで。
だが不安がるべきじゃないと思うな。いい経験になるんじゃないかな。
仕事だったらお金を貰いながらそういう経験できるなら羨ましいね。

JSP/Servlet/struts/カスタムタグライブラリとの違い、共通点を実感できる経験になるんじゃないか。

553 :デフォルトの名無しさん:02/12/30 02:40
>>552

そか、マジレスありがとう。
もちろん、仕事ですることになったんだよ。
ただ、おれとしては、もういいじゃん、今までのようにやろうよ〜
なんて思ってたりして。別に新しい技術に興味ないわけじゃないけど、
まだまだ今までのやり方をちゃんと理解してないから
もうちょっと深くやりたくてさ。で、コールドフューは学ぶに値するのかなー
なんて思って、ここで質問したわけです。

554 :デフォルトの名無しさん:02/12/30 10:50

JProfiler のサイトから評価版試用キーのメールが届かないんだけど、俺だけ?


555 :デフォルトの名無しさん:02/12/30 11:50
>>554
なんかセールス部にメール出さなきゃもらえないみたいよ。

556 :デフォルトの名無しさん:02/12/30 13:21
MacOSXで濁点が付いたファイル名が化けてしまいます。
デフォルトエンコーディングのShift_JISに変換して扱いたいのですが
その前に何かやっておくべき事はありますでしょうか。
宜しくご教授お願いします。

import java.io.File;
import javax.swing.JFileChooser;
public class sample {
private sample() {}
public static void main(String[] args) throws Exception {
JFileChooser chooser = new JFileChooser();
if (chooser.showOpenDialog(null) != JFileChooser.APPROVE_OPTION) return;
String chosenFile = chooser.getSelectedFile().getPath();
String encodedFile = new String(chosenFile.getBytes());
File file = new File(encodedFile);
boolean success = file.exists();
System.out.println("selected " + chosenFile);
System.out.println("encoded " + encodedFile);
System.out.println("exsists " + success);
System.exit(0);
}
}


557 :デフォルトの名無しさん:02/12/30 13:27
>>556
JavaのデフォルトエンコードはSJISじゃないぞと。

>String encodedFile = new String(chosenFile.getBytes());
意図がわからない。


558 :デフォルトの名無しさん:02/12/30 13:40
お返事感謝です。

getBytes()を使ってUTF-16からShift_JISに変換して
その後でもファイルが存在出来る様に出来ますでしょうか。
当方の誤解でしたら済みません。

559 :デフォルトの名無しさん:02/12/30 13:41
>>558
http://java.sun.com/j2se/1.3/ja/docs/ja/api/java/lang/String.html

ときに、リファレンスはお読みになりましたか?

560 :デフォルトの名無しさん:02/12/30 14:02
でた!!

561 :デフォルトの名無しさん:02/12/30 14:17
済みません。
せっかく教えていただいたのに当方の無知のせいで理解出来ませんでした。
ソースを簡略しました。この状態でも、
「がぎぐげご.txt」->「か?き?く?け?こ?.txt」と表示されてしまいます

import java.io.File;
import javax.swing.JFileChooser;
public class sample {
private sample() {}
public static void main(String[] args) throws Exception {
JFileChooser chooser = new JFileChooser();
if (chooser.showOpenDialog(null) != JFileChooser.APPROVE_OPTION) return;
String chosenFile = chooser.getSelectedFile().getPath();
System.out.println("selected " + chosenFile);
System.exit(0);
}
}

562 :デフォルトの名無しさん:02/12/30 14:19
  ∋8ノノハ.∩
   川o・-・)ノ <先生!こんなのがありました!
__/ /    /   
\(_ノ ̄ ̄ ̄\
||ヽ|| ̄ ̄ ̄ ̄||
 ...|| ̄ ̄ ̄ ̄||
http://web2001.kakiko.com/koma/

563 :デフォルトの名無しさん:02/12/30 14:22
Mac OS X版のバグ

564 :デフォルトの名無しさん:02/12/30 14:33

WIndows の J2SE 1.3.1 から変換テーブルの入ったファイルだけ引っこ抜いて
MacOSX J2SE 1.3.1 に上書きすればうまく行きますでしょうか。
もしできるとすれば、そのファイル名は何でしょうか。

565 :デフォルトの名無しさん:02/12/30 15:07
>>556
昔、新・Mac板のjavaスレで同じような質問に答えた覚えがあるのだが・・・
ひょっとして同一人物?
まず、556は、根本的にJavaで扱う文字コードのことについて誤解していると思うよ。
間違った知識を前提に質問を繰り返しているから、
回答もしにくいし、せっかく回答をもらっても、生かすことが出来ないのでは。

結論から言うと、これは変換テーブルをこさえて、一つ一つ変換していくしか
ありません。

なんでかっていうと、
1.MacOSXは、ファイル名を、ユニコードで持っている
2.しかし、MacOSXは、濁点つきの文字を、一つのユニコード文字ではなく、
 二つのユニコード文字で表現している。
 例えば、「が」は、「304b 3099」
 ユニコードで、「が」をあらわす文字は、他に「304c」というのがあるけど、
 MacOSXは、2文字で表す方式を選択したみたい。なんでなのか知らんけど。
3.MacOSXのJavaは、MacOSXのファイル名を取得するときは、ユニコードを素直にそのまま取り込む。
 ような実装になっている。
 つまり、「が」をそのまま「304b 3099」として取り込むわけね。
4.次に、これをShift_JISに変換しようとすると、文字化けがおこる。
 Javaが持っているユニコード->Shift_JIS変換テーブルでは、「304c」->「が」
 という変換はできるけど、「304b 3099」->「が」という変換はできないから。

これを、うまく処理するためには、まずファイル名を取得したら、すべての濁点付き文字の
ユニコードを変換してやらなければならない。
「304b 3099」という文字を見つけたら、「304c」に変換、という具合に。

もし分からないところがあれば質問して。今日は暇だからつきあってあげるよ。

566 :デフォルトの名無しさん:02/12/30 15:16
付き合ってください!!(*>_<*)

567 :565:02/12/30 15:20
>>566
いやだ。死ね、ブサイク。

568 :デフォルトの名無しさん:02/12/30 15:28
お返事ありがとう。
同じ者です。おさわがせしています。

> MacOSXのファイル名を取得するときは、ユニコードを素直にそのまま取り込む。
WIndowsでは2文字を1文字に結合する処理はされていないのでしょうか。
NTFS4/5でもユニコードのファイル名が使われています。

> 変換テーブルをこさえて、一つ一つ変換していくしかありません。
もしこの方法しかないのなら、大変膨大な量の作業が必要になってしまいます。
実は、日本語以外にもサポートしたい言語が複数あるためです。
ヨーロッパ言語などにも2文字分であらわす発音記号などがあります。

そこで、思い付いたのが>>564のような、荒技でした。
もし、Windows版のi18n.jarやclass.jar内にこの変換処理のクラス java.io.* が含まれていれば
そっくりMacOSX版のものと差し替える事が出来るかどうかです。

569 :デフォルトの名無しさん:02/12/30 15:33
読解力ねえな、このバカ

570 :NK:02/12/30 15:35
javax.swing.filechooser.FileSystemViewのgetSystemIcon(File file)を
使ってファイルシステムアイコンを取得しようとしているのですが、
最初の数百回は正しくアイコンを取得できるものの、500回前後取得を繰り返すと
正しく取得できなくなります。
具体的には下記のプログラムを実行すると、始めのうちはアイコンが正しく取得され
"MS-DOS バッチ ファイル" と表示されるものの500回前後で
"javax.swing.plaf.metal.MetalIconFactory$TreeLeafIcon@6b13c7"
となってしまいます。
1度こうなってしまうと他のファイル(下の例ではAutoexec.bat以外)でも
正しくアイコンが取得できなくなってしまいます。
また、プログラムを実行するたびに正しく取得できなくなる回数が微妙に変わります。
原因が一切不明で解決策がわかりません。
原因or解決策がわかる方、教えて頂けないでしょうか?

環境:
Windows98 SE
JDK 1.4
//テストプログラム
import java.io.*;
import javax.swing.filechooser.*;
import javax.swing.*;
class FileIcon{
public static void main(String[] argv){
FileSystemView view = FileSystemView.getFileSystemView();
File file = new File("C:\\Autoexec.bat");
Icon icon;
for(int i= 0; i < 1000; i++){
icon = view.getSystemIcon(file);
System.out.println(i + " "+ icon);
}
}
}

571 :565:02/12/30 15:54
>>568
調べていないのではっきりしたことは言えないのだけど、
おそらくWindowsでは濁点付きの文字は1文字のコードで持っているのでは
ないかな。
こういうのって、昔からユニコードの問題点としてあげられているらしくて、
ある文字を表現するのに、何種類かの選択肢がある場合があって、
どれを選択するかは、会社ごとに統一がとれてないみたいです。
つまり、WindowsとMacOSXでは、同じ濁点付きの文字を表現するのに、
違うコードを選択してしまっているということ。
他にこの問題で有名なのは、「〜」や「−」なんかがあります。

そんなわけなので、ヨーロッパ言語とかで、2文字で表現するものがあったとしても、必ずしもこの問題がでるとは限らないよ。
多分、こういう問題を抱えている文字は、ごくわずかだと思っています。

ここまで読めば、>>564の方法が無意味なことは、分かるよね?

572 :デフォルトの名無しさん:02/12/30 15:55
キャーッ付き合ってください!!(*>_<*)

573 :デフォルトの名無しさん:02/12/30 16:11
よく分かりました。ありがとう。

ヨーロッパ(特にドイツフランスイタリアは発音記号を多用しています)の利用者からの声で
現在のApple Java 1.4.1-pre8では、この問題は半分解決されています。
これは、Javaが文字の絵画命令を出す直前に、
2文字から1文字への変換テーブルが搭載されました!
1.3.1では「か゛」だったものが1.4.1では「が」と正しく表示される様になりました。
ただ、これは表面上の変更であって、依然としてファイル名を獲得する時は2文字分です。
デフォルトロケールの文字エンコードに変換する時はまだ化けます。

もう一つの荒技なのですが、この1.4.1の変換テーブルのクラスをライブラリとして
1.3.1に組み込み、使用する事は可能でしょうか。

574 :デフォルトの名無しさん:02/12/30 16:17
あなた日本語が可笑しいですよ?

575 :565:02/12/30 16:53
>>573

> もう一つの荒技なのですが、この1.4.1の変換テーブルのクラスをライブラリとして
> 1.3.1に組み込み、使用する事は可能でしょうか。

やったことないんで知りません。
つーか、なんでそういう変なことばっかりやろうとするんだ。

Java1.4.1のことはよく知らないので教えてほしいんだけど、
それって、コードそのものの変換なの?
それとも、フォントを割り当てを変換しているの?

「304b 3099」というコードを、「が」というフォントに割り当てるのと、
「304b 3099」というコードを、「304c」に変換することとは
違うと思うんだけど。
後者の方をやらないと、デフォルトエンコーディングの問題は
解決できないよね?

576 :デフォルトの名無しさん:02/12/30 17:02
>>570
http://developer.java.sun.com/developer/bugParade/bugs/4622892.html
これが原因かも。

577 :デフォルトの名無しさん:02/12/30 17:18
コードそのものの変換の様です。
複数の言語をあまり手間をかけないで変換しようと思ったら、
変に思われるかもしれませんが(^^;
一から変換処理作るよりこういった既存の変換処理を再利用した方が、
効率的かなと思いました。



578 :565:02/12/30 17:40
>>577
>コードそのものの変換の様です。
そうですか。それならいいです。教えてくれてありがとう。

既存の変換処理を再利用するっていう発想は正しいけど、
1.4のライブラリを1.3で使おうとするのは、あんまりまともな
発想とは思えないよ。
その1.4のライブラリの中で、1.4のその他のライブラリに依存している部分が
あれば、おかしくなるのは目に見えているし。
個人的には、自分で変換テーブルこさえるか、
1.4ベースで動くようにアプリを適合させた方が無難じゃないかと
思うんだけど、まあこれ以上は余計なお世話だわな。
ローカライズは大変だろうけどがんがってください。

579 :デフォルトの名無しさん:02/12/30 17:49
サンキュウ!

580 :デフォルトの名無しさん:02/12/30 18:57
linuxでjavaやってみたんだけど、コンパイルとかwindowsよりめちゃめちゃ
はやい!!!
すげーなlinux!


581 :デフォルトの名無しさん:02/12/30 19:54


  linuxマンセーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー?


582 :デフォルトの名無しさん:02/12/30 21:14
とあるサイトのカスタムタグのサンプルのソースと同じフォルダに、
「xxxxx.ucd」というxml形式のファイルが入っていたのですが、
これはどういう時に参照されるのでしょうか?

583 :デフォルトの名無しさん:02/12/30 22:48
今、java.sun.com 落ちてる?
APIドキュメントいつもネットで見てるからこういうときに困る・・・・

584 :デフォルトの名無しさん:02/12/30 22:54
>>570
俺の環境だとコピペして実行したら普通に取得できたぞ!

WindowsXP
RedHatLinux7.3

585 :デフォルトの名無しさん:02/12/30 23:01
>>583

おっ!ほんとだ〜
落ちてる

586 :NK:02/12/30 23:33
>>576
サンクスです。調べてみます。

>>584
できたんですか!!
Windows98の問題なのだろうか・・・



587 :デフォルトの名無しさん:02/12/30 23:45
>>583
妙なページが独自に訳してないか?

588 :デフォルトの名無しさん:02/12/30 23:51
>>586
「MS-DOS バッチ ファイル」って奴が999まで、合計1000回出たらいいんだろ?

普通になんのエラーもなく出力されたぞ!
Linuxはファイル指定を変えたけど1000回出力された!

589 :NK:02/12/31 02:45
>>588
環境を教えてくれませんか?


590 :デフォルトの名無しさん:02/12/31 03:35
抽象クラスやメソッドを継承するのは何のために?
定義だけして処理を書いてないなら継承する必要
無いと思うのだけど..

591 :デフォルトの名無しさん:02/12/31 03:39
クラスにメソッドが"存在する"ことが保証される

592 :デフォルトの名無しさん:02/12/31 04:42
>>581 最近OS板のスレッドが面白い。
LinuxとWindowsで加熱している。
さあ、どっちのOSがいいんだろ。
すごいWindows狂とLinux狂がいる

593 :デフォルトの名無しさん:02/12/31 05:55
>>589
>>576 のも WinMe で発生するらしーので
Win9x じゃないと再現しないのかも。

594 :デフォルトの名無しさん:02/12/31 05:59
>>590
実装の継承でなくて インターフェイスを継承するの。
>>591 を別の言い方にしただけだけど。

595 :デフォルトの名無しさん:02/12/31 07:54
>>589
WindowsXP + jdk1.4.1 で下のテスト使って試したけど
>4975 javax.swing.plaf.metal.MetalIconFactory$TreeLeafIcon@1006d75
とかでたっす。>>576のによれば GDIリソースを解放しないとか書いてあるので
メモリの量とかビデオメモリの量とかに左右されるのかも。


596 :デフォルトの名無しさん:02/12/31 07:54
import java.io.File;
import javax.swing.Icon;
import javax.swing.filechooser.FileSystemView;
public class test{
 private static int count;
 public static void main(String[] args){
  FileSystemView view = FileSystemView.getFileSystemView();
  File[] roots = File.listRoots();
  count = 0;
  for(int i = 0; i < roots.length; i++){
   Icon icon = view.getSystemIcon(roots[i]);
   System.out.println((count++) + " "+ icon);
   func(roots[i], view);
  }
 }
 private static void func(File dir, FileSystemView view){
  File[] files = dir.listFiles();
  if(files != null){
   for(int i = 0; i < files.length; i++){
    Icon icon = view.getSystemIcon(files[i]);
    System.out.println((count++) + " "+ icon);
    if(files[i].isDirectory()){
     func(files[i], view);
    }
   }
  }
 }
}


597 :デフォルトの名無しさん:02/12/31 08:19
>>595
GDIとメモリ及びVRAM容量に直接的な関係は無いことはPC初心者板では定説です。

598 :デフォルトの名無しさん:02/12/31 09:28
Xerces+XalanでXPath使ってXMLを取得してるんだけど(SAX)、XPathで取得した結果、対象ノードが0件かどうか判断する良い方法ってありますか?


599 :590:02/12/31 12:40
うーん 寝すぎた 駄目だな俺 来年からは休みの日でも9時には
起きるように頑張ろっと

インターフェイスがいまいち理解できてないので、それをまず理解
します..

600 :デフォルトの名無しさん:02/12/31 13:04
>>597
あ、そうなんですか。 知らなかった(恥)
詳しい解説してる場所とかあったらポインタ教えて欲しいっす。

タスクマネージャで見てたら GUIオブジェクトが 9996 で止まってるので
1プロセスに対するGUIオブジェクトの最大数とか決まってるのかも(?)

601 :デフォルトの名無しさん:02/12/31 13:04
>>599
Javaのインターフェースではなく広義のインターフェースだよ。彼らが言ってるのは。

602 :デフォルトの名無しさん:02/12/31 15:27
>>601
広義のインターフェース??
広い意味のインターフェース...ごめん、よく解らない..

603 :デフォルトの名無しさん:02/12/31 16:48
Java歴数ヵ月の者です。質問です。
リトルエンディアンのマシンで、ビッグエンディアン2バイト整数型の
バイナリファイルから数値を読み出すには、どんな方法があるでしょうか。
以前C言語で書いていたときは、共用体を作って
上下のバイトを入れ換えていました。(こんな感じ)
int main(int argc, char *argv[]) {
FILE *InFp, *OutFp;
int i;
union {
short v;
unsigned char temp[2];
} a;

InFp=fopen("InputFile", "rb");
OutFp=fopen("OutputFile", "w");
for(i=0; i < 30; i++) {
a.temp[1] = (unsigned char)fgetc(InFp);
a.temp[0] = (unsigned char)fgetc(InFp);
fprintf(OutFp, "%d\n", a.v);
}
fclose(OutFp);
fclose(InFp);
return 0;
}

Javaには共用体が無いみたいなので、上記の様なことが出来ない様なのですが、
こんなときは、皆さんどうしてますか?
文字列の場合は解決策があるようなのですが…

604 :デフォルトの名無しさん:02/12/31 16:54
>>602
入り口出口を決めておくって事。要するに他の何かとやりとりする時に、
「ここではこういう処理をやるので、こんな引数キボンになるよな」とか
「ここは結局こういうモノを返す事になるヨ」とかだけ決めておけば、
後の実装は「そのインターフェースを守る限り」どうコーディング(ていうか誰がコーディング)しても
最終的に結合した時、同じように動く(はず)でしょ?(...ただし「性能」はまた別の話)

そういう取り決め(?)を明示的にあらわすのが、例えばJavaならInterface(=つまりこれが狭義)による、
宣言だったりする。...って、どこか間違いがあれば突っ込みキボン>識者


605 :デフォルトの名無しさん:02/12/31 16:56
COM書くときのIDLとか勉強すると意味が良く(以下略)

606 : ◆J2EE/XIRXY :02/12/31 16:57
>>589

俺 >>588 だけど・・・
なんで俺のだけ出力されるの?
環境は、

FMV-BIBLO NB9/1000L
O S : WindowsXP Pro SP1
CPU : Pen3 1GHz
Mem : 256MB(本体購入時から変更無し)
JDK : J2SDK1.4.1_01

特別手を加えた環境じゃないんだけど・・・
5回ほど実行し直して見たけど、一回もエラーなんてでなかったぞ?

607 :デフォルトの名無しさん:02/12/31 17:30
>>603
対象をiとする。

i と 0xF0とのANDを取ってそれを8ビット右シフトしたものをaとする。
i と 0x0FとのANDを取ってそれを8ビット左シフトしたものをbとする。

aとbのORを取る。


608 :デフォルトの名無しさん:02/12/31 17:37
ハァ?

609 :デフォルトの名無しさん:02/12/31 17:38
>>608
煽るだけなら誰でもできる。
それよか正しい答えを書いて相手を完膚無きほどにたたきつぶした方が気持ちいいし感謝もされる。

610 :デフォルトの名無しさん:02/12/31 17:40

性格良さそう。。。

611 :デフォルトの名無しさん:02/12/31 17:41
で?

612 :デフォルトの名無しさん:02/12/31 17:49
>>603
java.nio。
FileChannelからByteBufferを得る。ByteBuffer#order(java.nio.ByteOrder);
で、ByteOrderを指定して(この場合、読み出し元という意味でByteOrder.BigEndian)、
ByteBuffer#asShortBufferからShortBufferを取り出して読み出す。
で、どうよ。

613 :デフォルトの名無しさん:02/12/31 17:57
書き方の質問なんですけど、

public class nantara {

}

っていうのと、

public class nantara
{

}

っていうのはどっちのほうがポピュラーなんでしょうか?
自分は下のほうで慣れてしまったんですけど、本等を読む限りでは上の方が多いような・・・

614 :デフォルトの名無しさん:02/12/31 17:59
上が正解(J2SEのAPIドキュメントのどっかに、コーディング規約がある)。
下は、C#の規約で、C++の慣習(別に規約は無い)。

615 :614:02/12/31 18:00
http://java.sun.com/docs/codeconv/html/CodeConventions.doc5.html#381

616 :デフォルトの名無しさん:02/12/31 18:21
>>606
ヒマだったら >>596 やってみて。
おそらく途中から
>4975 javax.swing.plaf.metal.MetalIconFactory$TreeLeafIcon@1006d75
みたいになると思うよ。

617 :デフォルトの名無しさん:02/12/31 18:22
>>604
なるほど。よく解りました ような解らないような...

一人で造るぶんには覚えときゃいいけど、みんなで
造るようなら作成しといたほうがわかり易くていいよ」
ということですね

618 :デフォルトの名無しさん:02/12/31 18:24
>>605
勉強してみます。でもIDLって何だっけか(恥)

619 :デフォルトの名無しさん:02/12/31 18:25
>>617
いや、一人で作るときもちゃんとしておくと便利だよ。

MVCとか。

620 :デフォルトの名無しさん:02/12/31 18:31
>614
レスサンクス。参考になったYO。

621 :603:02/12/31 18:51
遅レスすいません。
>>607 ありがとうございました。
基本ですね。ビットシフトと論理演算。
下手に凝ろうと思ってどつぼに嵌まってました。(Java初心者なのに…)

>>612 ありがとうございました。
ちゃんと理解出来ていませんが、書いたらうまく行きました。
でも、訳分からんまま使うのは恐いので、
もう少しjava.nio.ByteOrderクラスを勉強してみます。
ありがとうございます。

622 :デフォルトの名無しさん:02/12/31 18:55
>>614
そーだったのか。今まで下で書いてた。
でもC++とそろえないのはなぜだろう

623 :デフォルトの名無しさん:02/12/31 19:02
>>617

java.util.ArrayListはjava.util.CollectionというInterfaceをimplementしている
ので、次のように使うことが出来る。

Collection c = new ArrayList();

こうしておいて、c.add(XXX);などCollectionで定義しているメソッドを使うこ
とができる。こうしておくと、Collectionをimplementしているクラスなら、
将来ArrayListの代わりに他のクラスに置き換えてもソースの修正は少なくて
済む。

また、JDBCのjava.sql.ResultSetなどもInterfaceになっています。
ResultSetの実装はDBのベンダー任せになっているが、Interfaceで統一する
ことにより、コーディングする方はそのあたりを気にする必要がなくなって
いる。

624 :デフォルトの名無しさん:02/12/31 19:05
みなさん、EJBはどうやって覚えたのですが、
どこかいいHPや本があれば教えて下さい。

625 :デフォルトの名無しさん:02/12/31 19:07
>>624
自分で勉強しようとする気0だな。


626 : ◆J2EE/XIRXY :02/12/31 19:36
>>616
共有ディレクトリ参照しようとしてセキュリティに阻まれて
FileNotFoundException と ヌルポ が出てストップ・・・

でも3000近くまで何の問題もなく実行できたぞ?
Samba共有を外すのめんどくさいからこれでいいか?
どうしてもって言うのなら外してリトライするけど・・・


もう一度言うけど、俺特別なチューニングしてねーぞ!

627 :デフォルトの名無しさん:02/12/31 19:58
>>626
ありゃま…

バグを再現させたい場合は >>570 の奴を
for を 10000 回にしてやってみてください。
多分、それで再現すると思う。たぶん。

628 : ◆J2EE/XIRXY :02/12/31 20:33
>>627
10000回じゃなんだから、どうせなら100000回くらいにして実行してみる・・・

629 : ◆J2EE/XIRXY :02/12/31 20:36
なった〜♪

記録4976回♪

なんだかウレシイぞ!

630 :デフォルトの名無しさん:02/12/31 20:40
>>629 おめでとう。
大晦日に言うのもなんだが。

631 : ◆J2EE/XIRXY :02/12/31 20:46
いや〜ありがとう♪

でっ!これから俺はどうすりゃいいんだろ?






















とりあえず >>576 でも見てみるか・・・

632 :デフォルトの名無しさん:02/12/31 20:53
JARファイルをダブルクリックすると、解凍ソフトが起動してしまいます。
コマンドラインから
java -jar test.jar
みたいにやれば動きます。
ダブルクリックで起動するようにするにはどうしたらいいんですか?

633 :MVC ◆J2EE/XIRXY :02/12/31 20:58
>>632
とりあえず、拡張子の関連付けを外せ!
話はそれからだ

634 :632:02/12/31 21:01
>633
外しました。

635 :デフォルトの名無しさん:03/01/01 03:15
>>634

http://www.vector.co.jp/soft/win95/prog/se082512.html
これなんかどうでしょ? ただしwindows上でしか動きません。

636 :604:03/01/01 04:34
>>617
>>623氏も言ってるけど、
例えば今、CFoo#someMethodというクラスとメソッドを書いているとして、
そのメソッドは「どこぞから来た一連の文字列や数値を加工する」という目的が
ある場合、で、しかもその「どこぞ」というのが、
「ファイルかもしれない、DBかもしれない、又それ以外かもしれない」時、
ここで、その引数として受け取る形(クラス)の方を、処理する側の都合で、interfaceとして
受け取るようにしておけば、
このCFoo#getMethodは、そのinterfaceの「約束されたメソッド」だけ意識して
コーディングすればいい事になる。
実際の値群が、「どこから、どのようにして来たのか」意識する必要が無くなる。

由来は全然違うけど、同じような値を、同じように取り出して、
同じように処理したい場合、便利だったりするよ。


637 :632:03/01/01 06:16
>635
やってみました。でもコンソール実行型が起動できないってのがのが微妙でした。
レスサンクス。

638 :デフォルトの名無しさん:03/01/01 12:24
> 「がぎぐげご.txt」->「か?き?く?け?こ?.txt」と表示されてしまいます

これ使え
http://www.amug.org/~glguerin/sw/index.html#macbinary


639 :デフォルトの名無しさん:03/01/01 17:31
なぁ、これはどう思う?
http://starry.night.nu/etc/diary.php?key=267

試しに実行速度の計測をしてみたが、
誤差レベルの差しか出なかった。(JDK1.4.1_01)


640 :デフォルトの名無しさん:03/01/01 17:41
俺は、実行速度に大きな影響を与る場所でないなら、
多少実行速度を犠牲にしても、
ソースを見る人がわかりやすいソースを書くことにしてるんで
キャストするかな。>639の場合だと。

641 :デフォルトの名無しさん:03/01/01 17:47
>>639
速度的には大差ないと思うよ。
String の toString() って this 返してるだけだし。

642 :デフォルトの名無しさん:03/01/01 17:57
>試しに実行速度の計測をしてみたが、
何回でやったの?

643 :デフォルトの名無しさん:03/01/01 18:09
>>639
JDK1.4.1_01。
Iterator使わずに配列から直に取り出したり、ArrayList#get(int)
で回して実行してみたけど、「toString()」使う方が1.3倍ぐらい遅い。
バーチャルなメソッド呼び出す方がオーバヘッドでかいのかも。

どうせJavaは他で負荷がかかるんでキャストのオーバヘッドなんて
屁みたいなもんでしょ。

644 :デフォルトの名無しさん:03/01/01 19:53
>>642
500000回ループを10回ほど試してみたが、
どちらも大体 140ms 前後だった。

やっぱソースコード的にはキャストの方が読みやすいんかね?

キャストはなんか心理的に嫌な印象があるんだよなぁ。
キャスト使わないといけない場面が出てくると
設計がまずいのかな〜 とか思わない?

645 :デフォルトの名無しさん:03/01/01 19:54
まったく思わない。

646 :デフォルトの名無しさん:03/01/01 19:56
少し思う。

647 :デフォルトの名無しさん:03/01/01 20:00
やや思わない。

648 :デフォルトの名無しさん:03/01/01 20:01
どちらとも言えない。

649 :デフォルトの名無しさん:03/01/01 20:10
コレクションクラス使うなと?

650 :デフォルトの名無しさん:03/01/01 20:19
多態性を捨てろと?

651 :デフォルトの名無しさん:03/01/01 20:28
Jakarta Avalonを使うなと?
 #多態性は捨てることになるのか?

652 :デフォルトの名無しさん:03/01/01 20:29
>>650
キャストせずに使えるのが多様性じゃないのか?

653 :デフォルトの名無しさん:03/01/01 20:30
×多様性
○多態性

654 :650:03/01/01 20:41
>>652
...あ、素で間違った。(恥&寒
「引数Objectで」っていうのと「メソッドのオーバーロード」を混同しちったい。
失礼しました。

655 :デフォルトの名無しさん:03/01/01 20:46
じゃ、interfaceは使うなと。

656 : :03/01/01 22:04
ポリモーフィズム

657 :デフォルトの名無しさん:03/01/01 22:10
Object#toString() は「オブジェクトの文字列表現を返す」。
メソッドの実装から判断するのはカプセル化の概念に反するし
どう考えてもキャストする方が正解。

658 :デフォルトの名無しさん:03/01/01 22:30
>>657
とにかく何か文字列が帰ってくることを期待するメソッドですな。
デバッグ用としてはかなり便利ですが。

659 :SHO:03/01/02 01:50
JAVA初心者の質問です。

JPEG画像ファイルをピクセル単位で操作したいんだけど、
最初、Image クラスのオブジェクトでgetImageしますよね。

それで、直後にその画像の幅と高さサイズを知りたいときに、

width = image.getWidth(this);
height = image.getHeight(this);

(引数はthisでいいんんですよね)

とやっても、width 、height には-1しか入っていないのです。

画像をdrawImageでそのまま画面表示してから、
image.getWidth、image.getHeightを実行すると、
ちゃんと画像サイズを取得できるのですが、
表示する前に画像サイズを取得するには、どうしたらよいのでしょうか。
さっぱりわかりません。
だれか教えてください。

660 :デフォルトの名無しさん:03/01/02 01:57
MediaTrackerした?

661 :SHO:03/01/02 01:58
MediaTrackerって?

662 :デフォルトの名無しさん:03/01/02 02:00
知らなかったら検索するか、ドキュメント探してね

663 :デフォルトの名無しさん:03/01/02 02:03
>>659
-1が返ってくるのはgetImageした時点ではまだ画像が取得できていないから。
>>660のMediaTrackerを使うのがよろしいかと。
わからない言葉はすぐ検索。

あとここもおもしろそうだ。
http://www5.airnet.ne.jp/sakuraba/java/laboratory/JDK1.4/Graphics/ImageIO/ImageIO.html

664 :SHO:03/01/02 02:04
あっ!イメージをロードし終わるまで、
MediaTrackerで待機するというやつですか。
さがしてみます。どうもありがとうです!。

665 :SHO:03/01/02 02:08
>>660
>>663
できました!!
ありがとうございます。


666 :デフォルトの名無しさん:03/01/02 03:22
スレ違いかもしれませんがjavaが勉強できる
フリーのソフトってないですか??

667 :デフォルトの名無しさん:03/01/02 03:30
>>666
きっとそれ、Sun JDK とかって、つっこみはいるぞ。

668 :デフォルトの名無しさん:03/01/02 03:32
>>667
文法とかを覚えるのはナイですかねぇ??

669 :デフォルトの名無しさん:03/01/02 03:46
Java Tutorialってサイトがあったけど、英語しかないな。
しかも、わかりやすいとは言えない。文法は学べる。

ttp://java.sun.com/docs/books/tutorial/
Getting Startedってリンクが入り口。

670 :デフォルトの名無しさん:03/01/02 03:53
>>668
Vectorで探しても、全然無いね。
それっぽいのもダウンロードして試してみたけど不発


671 :デフォルトの名無しさん:03/01/02 05:26
>>666 >>668
ここはどうか?

ム板のみんなでRobocode (・∀・)ヤローウヨ!1台目
http://pc3.2ch.net/test/read.cgi/tech/1020161792/l50

672 :デフォルトの名無しさん:03/01/02 05:35
高機能のロボット格闘シミュレーション・エンジンで、Javaプログラミング学習がずっと楽しくなる

Sing Li (westmakaha@yahoo.com)
Author, Wrox Press
2002年1月
弾丸から身をかわしたり、高精度攻撃訓練を行ったりしながら、
継承、多相性 (ポリモフィズム)、イベント処理、内部クラスなどを学習することは果たして可能でしょうか。
Robocodeという名の学習ツール兼大流行のゲームのおかげで、
世界中のJava開発者にとってそれが現実のことになっています。

闘え、Robocode (ロボコード) !
http://www-6.ibm.com/jp/developerworks/java/020329/j_j-robocode.html


//このスレの住人にはあまり参加者がいないのかも。
//おなじ2chのなかでもRobocodeスレのほうはなかなかもりあがっているけど、
//Java質問スレではRobocodeの話題を見たことがないし。

673 :デフォルトの名無しさん:03/01/02 09:30
>>672
結局処理時間命だからstaticメソッド使いまくりとかの方が速くなりそうな予感。

674 :JAVA初心者です:03/01/02 14:32
昨日始めたばかりです。初歩的な質問でスイマセン。

import java.io.*;

class test3_4
{
public static void main(String args[])throws IOException
{
System.out.println("円周率はいくつですか?");

BufferedReader br=
new BufferedReader(new InputStreamReader(System.in));

String str=br.readLine();

double pi=Double.parseDouble(str);

System.out.println("円周率の値は"+pi+"です。");
}
}

というソースを書いたのですが。
test3_4.java:14: Method parseDouble(java.lang.String) not found in class java.lang.Double.
double pi=Double.parseDouble(str);
^
というエラーが出ます。ある入門書に書いてある通りに書いたのですが、どうしてもこのようなエラーが出ます。
誰か間違いを指摘してくれませんかお願いします。


675 :デフォルトの名無しさん:03/01/02 14:36
JDK1.1.xなんじゃない?

676 :JAVA初心者です:03/01/02 14:39
>>675
コンパイラはjdk1.1.8です。
これが原因なんですかね・・・(汗


677 :デフォルトの名無しさん:03/01/02 14:43
代替案をドキュメントから探すべし。

678 :デフォルトの名無しさん:03/01/02 14:45
>>674
動くけど。むしろなんで?
つーか、エラーの内容が妙。なんでメソが無いの?
こんなメソッド、別にバージョンの影響も無いでしょ。

679 :デフォルトの名無しさん:03/01/02 14:46
>こんなメソッド、別にバージョンの影響も無いでしょ。
ドキュメント嫁

680 :678:03/01/02 14:47
...うかつだった、JavaDocに以下の記述が..

導入されたバージョン:
JDK1.2


681 :デフォルトの名無しさん:03/01/02 14:51
そんなの分かってて>>675が指摘してんだからさ。。。

682 :デフォルトの名無しさん:03/01/02 15:11
>>681=>>675な訳だが。

683 :デフォルトの名無しさん:03/01/02 15:35
恥かきっぱなしw

684 :678:03/01/02 15:55
恥ずかしーーっ!(脱走

685 :603:03/01/02 18:18
スーパー遅レスすいません。
>>612 で書いてもらった事を、やらないでもうまく行くので、
????と思っていたら、どうやらJavaはリトルエンディアンマシンでも
ビッグエンディアンで読み込む模様。
CやC++で書いてたときは、このことでよく頭を抱えてたのですが…(^^;

これも、VMのおかげですかね〜
お騒がせしました。

686 :デフォルトの名無しさん:03/01/02 20:37
hage

687 :大木凡人:03/01/02 21:54
netbeansのインストールの仕方が良く分かりません誰か教えてください

688 :デフォルトの名無しさん:03/01/02 22:12
JRE 1.4.1にWindowsをクラッシュさせるバグがあるって
聞いたんだけど、ソース知りませんか?

689 :デフォルトの名無しさん:03/01/02 22:36
>>688
ソースは知りませんが、今まさに私の WinXP で起こっています。

690 :デフォルトの名無しさん:03/01/02 22:50
htmlをスクロールスクロールバーをなしで全画面表示させたいのですが、
教えてください。
お願いします。

691 :デフォルトの名無しさん:03/01/02 23:03
690さん、いたちがいです。
こちらへどうぞ。
http://pc3.2ch.net/hp/

692 :デフォルトの名無しさん :03/01/02 23:09
691>>
すみませんでしたw

693 :688:03/01/02 23:13
>>689
どんな感じのバグ?

694 :デフォルトの名無しさん:03/01/03 02:48
リトルエンディアンの方が便利だと思うんだけど
なぜビッグエンディアンを採用したんだろう・・・

695 :デフォルトの名無しさん:03/01/03 02:56
ビッグエンディアンの方が便利だから

696 :デフォルトの名無しさん:03/01/03 02:57
桁とメモリの位置が同じ方が理解しやすいからでわ?

697 :デフォルトの名無しさん:03/01/03 05:27
>>694
ビッグエンディアンを採用したって、java.io.DataInput/DataOutput の話?
それだったら多分ネットワークバイトオーダーがビッグエンディアンだからだと思うけど。

698 :大木凡人:03/01/03 08:23
netbeansのインストールの仕方が良く分かりません誰か教えてください


699 :デフォルトの名無しさん:03/01/03 08:47
>>698
あなたがインストールの仕方についてどこまで判っていないのかが、
私には判らないので教えるのはとても難しいことだ。

700 :デフォルトの名無しさん:03/01/03 09:46
>>693
ATIのビデオカードの一部で落ちるってやつかな。

701 :д:03/01/03 11:56
プログラマーになりたいです!!
手取り足取り教えてください。
お願いします

702 :デフォルトの名無しさん:03/01/03 11:58
>>701
プログラムを書け。
プログラムを書ける奴がプログラマーだ。

703 :デフォルトの名無しさん:03/01/03 12:10
>>701
http://www.geocities.co.jp/SiliconValley-SanJose/5667/#CHAPTER002

704 :д:03/01/03 12:27
>>703
ありがd!
これから頑張って勉強して行きたいと思います
そいではっ

705 :デフォルトの名無しさん:03/01/03 12:54
>>704
>>702もお前ごときに貴重な時間を割いてアドバイスしてる訳で。
どうして無視するのかが理解できない。

706 :デフォルトの名無しさん:03/01/03 13:05
レスしないことが非難される。。
2chも住みにくくなったものよのぉ。

707 :デフォルトの名無しさん:03/01/03 13:14
>>706
非難は初期の2chにもあった。
2chは相手に非があるとみれば如何様にも匿名で難じることができ、
そしてそれが意味のないAAや空白の連続投稿や個人情報などでもない限り、
削除されることのない所だ。

もちろんその非難をおかしいとおもえば、その非難に対して
如何様にも非難をし返すことが許されている所だ。

かといってスレの本題から外れるようならその非難の応酬は、
より適切なスレに移るべきではあるが。

708 :デフォルトの名無しさん:03/01/03 13:18
それはそうと、
>>704はほんとうに>>703のURLを読んだうえで
「ありがd!」と言っているのか小一時間問詰めたいのだが…。

…本人がよろこんでいるのだから、まあいいか。

709 :デフォルトの名無しさん:03/01/03 15:17
ぱっと見親切そうなレスが帰ってきたらお礼を言うという
ぬるいコミュニケーション方法を使っているのだろう。

710 :デフォルトの名無しさん:03/01/03 15:19
2ちゃんも/.化するべきだな

711 :デフォルトの名無しさん:03/01/03 16:49
public class Singleton {
private static Singleton singleton = new Singleton();
private Singleton() {}
}

これが何故できるのかわかりません。
再帰になってしまうように思えるのですが・・・
教えてください。


712 :デフォルトの名無しさん:03/01/03 16:53


staticフィールドにインスタンスを一つ作ってるだけ

713 :デフォルトの名無しさん:03/01/03 16:54
>>711
http://www.y-adagio.com/public/standards/tr_javalang/8.doc.htm#37544

>フィールドを static 宣言した場合,そのクラスのインスタンスが
>いくつ生成されても(まったく生成されなくてもよい),そのフィールドの実体は,
>一つだけ存在する。 static フィールドは,クラス変数(class variable)とも呼ばれ,
>クラスが初期化(12.4)されるときに,実体が生成される。



714 :711:03/01/03 17:20
>>712, >>713
ありがとうございます。

ということは、staticでない自分自身のクラスをメンバとして持つことはできないですよね?
その場合再帰になると思うのですが


715 :デフォルトの名無しさん:03/01/03 17:24
linuxでjavaしようとしてj2sdk1.4インストールしたんだけど、
アプレットビューアーが起動しない
Mozillaでも見れなかった。
なぜ?

716 :デフォルトの名無しさん:03/01/03 17:25
どのlinuxかを書いてみるとか
どんなメッセージが出るとか

717 :デフォルトの名無しさん:03/01/03 17:32
>>715
PATHが設定されてないとかそーゆー事じゃなくて?

718 :デフォルトの名無しさん:03/01/03 17:33
>>714

public class Unko
{
  private String name;
  private Unko maki;
  private Unko bichi;

  public Unko()         { maki = new Unko("まき"); bichi = new Unko("びち"); }
  public Unko(String name) { super(); this.name = name; }
  
  public static void main(String[] a)
  {
    Unko unko = new Unko();
    System.out.println(unko.getMaki());
    System.out.println(unko.getBichi());
    System.out.println(unko.getMaki().getMaki());
  }

  public Unko getBichi() { return bichi; }
  public Unko getMaki() { return maki; }
  public String getName() { return name; }
  public String toString() { return name; }
}


719 :718:03/01/03 17:35
まき
びち
null


再起にはならないみたい なんでだろね 不思議だね


720 :デフォルトの名無しさん:03/01/03 17:38
>>714
できる。再帰になる可能性もあるけどコンパイルエラーにはならない。
再帰になった場合は実行時に StackOverflowError 食らって落ちる。

721 :デフォルトの名無しさん:03/01/03 17:39
>>718
再帰にしたければ
>public Unko(String name) { super(); this.name = name; }
public Unko(String name) { this(); this.name = name; }


722 :718:03/01/03 17:40
superってなんだよ thisの間違いでした
thisにしたらめでたくスタックオーバーフロー

失礼しました



723 :715:03/01/03 17:44
redhat8.0を使っています。
appletviewer a.htmlと打つとcommand not foundってでました。。。
PATHがちゃんと、通ってないのかな?
アプリケーションはできたんだけど、
プラグイン入れないとだめ?

724 :デフォルトの名無しさん:03/01/03 17:46
command not foundとかだったらpathだろうねえ。
残りは犬板で聞いてきな

725 :711:03/01/03 17:53
なるほど、スタックオーバーフローですか
まぁ使うことは無いですよね。
とりあえずSingleton理解できました。
みなさんありがとうございました。


726 :デフォルトの名無しさん:03/01/03 21:48
こんなんでホント理解できたのかと(略

727 :デフォルトの名無しさん:03/01/03 21:52
>>723
JDKをインストールしただけではMozillaでアプレットが起動するようには
ならなかったとおもう。
MozillaやJDKのバージョンによっても違うとはおもうが。

Mozillaのプラグインを入れる場所にlnコマンドなどでリンクをはるか、
プラグイン自体をコピーしてしまうか。

アプレットビューワーのほうは知らないが。

728 :デフォルトの名無しさん:03/01/03 22:08
>>727
俺の場合プラグイン自体をコピーしたのでは上手く動かなかったです。

http://java.sun.com/j2se/1.4/ja/install-linux.html#plugin
↑の通りにシンボリックリンクを張ってやったら上手くいきましたけど。

729 :723:03/01/03 23:01
アプレットビューワーのほうはPATHをrootの方のbash_profileに書いていたので
rootなら起動しました。
Mozillaのほうはプラグインですか
ありがとうございました

730 :デフォルトの名無しさん:03/01/04 07:41
>>729
JDKインストールしたのなら、
そのJDKのどこかのディレクトリのなかにプラグインもはいっているよ。
詳しくは>>728のリンク先とかを見てね。

731 :デフォルトの名無しさん:03/01/04 10:28
>>711じゃないですが、便乗質問。

こんな感じ(後参照)のソースをどこかで見ました。synchronizedされているあたりで、
スレッドセーフな匂いを感じるんですが、Singletonパターンって要するに、
「全スレッド中でただ一つのものを作成する」みたいなものなんでしょうか。

class Singleton {
  private static Singleton instance;

  private Singleton() {
  }

  public static synchronized Singleton getInstance() {
   if (instance == null) instance = new Singleton();
   return instance;
  }
}


732 :デフォルトの名無しさん:03/01/04 10:50
>>731
そうそう。Javaにおけるシングルトンパターンで、
getInstanceメソッドでsynchronizedが使われるのは、
マルチスレッドに対応するため。

このsynchronizedがないと、スレッドがひとつなら問題ないけど、
マルチスレッドだと、複数のインスタンスを作ってしまうおそれがあるため。

733 :デフォルトの名無しさん:03/01/04 10:56
>>731
さらに言えば、コンストラクタをプライベートにするのは、
コンストラクタをgetInstance()以外からは呼び出せないようにして、
Singletonクラスのインスタンスを勝手に作れないようにするため。

まあ
「全スレッド中でただ一つのものを作成する」というよりは、
「複数スレッドが同時に働いていたとしても、
ただ一つのインスタンスしか作成しない。作成できないようにする」
といった感じだが。

734 :デフォルトの名無しさん:03/01/04 11:30
>>733
まぁ、グローバル変数の再来な訳だが。

735 :デフォルトの名無しさん:03/01/04 11:31
俺も ついでに便乗質問。

class Singleton {
  private static final Singleton instance;

  private Singleton() {
  }

  public static Singleton getInstance() {
   return instance;
  }
}

みたいな初期化の仕方って
スレッドセーフである事が保証されてたっけ?

736 :デフォルトの名無しさん:03/01/04 11:33
うわ… 一番重要な部分間違ってるよ。
> private static final Singleton instance;
 private static final Singleton instance = new Singleton();
ですた。


737 :デフォルトの名無しさん:03/01/04 11:38
>>735
クラスの初期化時にstaticフィールドが一緒に初期化されるならば、
クラスの初期化は同期化されてるはずだから安全でしょう。

738 :デフォルトの名無しさん:03/01/04 11:48
>>737
ありがとーございます。
っつーことはスレッドセーフと考えて良いみたいですね。

http://www.y-adagio.com/public/standards/tr_javalang/8.doc.htm#24510
>宣言子がクラス変数(つまり static フィールド)に対するものならば,
>クラスが初期化される(12.4)ときに,変数初期化子が評価され,
>代入が一度だけ実行される。

739 :731:03/01/04 12:35
>>732-738
ありがとうございます!なるほど。と、ここで
>>734さんが

>まぁ、グローバル変数の再来な訳だが。

と言っていますが、これって「複数スレッドが同時に働いていたとしても、ただ一つのインスタンスしか作成しない」から
利用法を考えるに、どっちかと言うとセマフォ(ミューテックス?)みたいな使い方が
できると思っていいんですね。

740 :731:03/01/04 12:38
...って自分で言っといてなんだけど、これって"Thread"でしたよね。
Processじゃないって。 ...氏のう。

741 :デフォルトの名無しさん:03/01/04 12:49
Java の Singleton って、
Java はダイナミックローディングだから、
getInstance() 以外の public な static メンバーが無い限り、
lazy initialize ってあんま意味無いよな?

そうすると getInstance() に同期のコストかけるよりは、
素直に >>736 のようにしちゃった方が、
大抵の場合モアベターなのかな。

742 :デフォルトの名無しさん:03/01/04 12:53
クラスがロードされただけで、たとえば定数フィールドを参照
しただけでインスタンスが作られるのはもったいない、かもしれない。
そういう場合は最初のgetInstance()まで遅延したほうがいいね。

まずは736にしておいて、↑のような事情が判明したときに
遅延にすればいい。使う側の変更はないし。

743 :デフォルトの名無しさん:03/01/04 12:55
>同期のコストかけるよりは

でもたった一回だけでしょ?って、>>731の方法だといちいち「たった一回かどうか」の評価が
行われるから無駄って事か。
そうか、モアベター(自己完結)

744 :デフォルトの名無しさん:03/01/04 13:37
> でもたった一回だけでしょ

731の方法ではgetInstance()の度にsynchronizeに飛び込むことになる。

745 :デフォルトの名無しさん:03/01/04 17:37
>>744
同期少なくする方法ってこれで良かったっけ?
public static Singleton getInstance() {
  if (instance == null) {
   synchronized(Singleton.class) {
    if (instance == null) {
     instance = new Singleton();
    }
   }
  }
  return instance;
}

746 :デフォルトの名無しさん:03/01/04 18:37
>>745
それは泥沼に落ち込む罠ですぞ。
#SolarisとIntelはOKで、だめなCPUもあるからどうたらこうたら……

747 :745:03/01/04 19:28
>>746
サンクス。
「不運にも、そのコードは、コンパイラーの最適化あるいはシェアード・メモリー・マルチプロセッサー
がある状態でまったく働きません。それは作動しません。」って文献あった。

ttp://www.cs.umd.edu/~pugh/java/memoryModel/DoubleCheckedLocking.html


748 :デフォルトの名無しさん:03/01/04 21:53
結局、どう書くのが一番いいのだろうか?

749 :デフォルトの名無しさん:03/01/04 21:55
その程度ならこれでイイんじゃない?
ダブルチェックするまでもないような。
public static Singleton getInstance() {
 synchronized(Singleton.class) {
  if (instance == null) {
   instance = new Singleton();
  }
  return instance;
 }
}


750 :デフォルトの名無しさん:03/01/04 21:57
>>749
それってそのメソッド自体をsynchronizedにするのとどう違うの?

751 :デフォルトの名無しさん:03/01/04 22:01
>>750
同じです。但し、staticメソッドをsynchronizedにしたときの動作を、
昔のJVMは規定していなかったんです。

752 :デフォルトの名無しさん:03/01/04 22:06
シングルトンのインスタンスへの参照を、使うたびにgetInstance()で
引っ張り出すようなことをしなきゃいけないような仕組みでなくせば
いいんじゃないの?
参照自身のコピーなら大してコストかからんわけで。

753 :デフォルトの名無しさん:03/01/04 22:08
参照を持ちまわられるのはなんとなく嫌だなあ。

754 :デフォルトの名無しさん:03/01/04 23:06
先日誤ってprogram filesにある「Java」というフォルダを丸ごと削除してしまいました。
そのためしばしばネット中にJAVAを含むページを開くと「インストールオンデマンド」という
ウインドウにJava仮想マシンをインストールしろと出てダウンロードしても
IEのページに行ってしまいます。厨な質問ですが解決方法を教えてください。
よろしくお願いします。

ちなみにwin98SEです。

755 :デフォルトの名無しさん:03/01/04 23:08
インストールすりゃいいんじゃない。多分。それで直りそ。

756 :デフォルトの名無しさん:03/01/04 23:22
java.sun.comとか逝って、任意婆ジョンのVM入れろ。


757 :デフォルトの名無しさん:03/01/05 00:01
>>752
不必要な参照はバグの元。getInstance()がstaticメソッドなら、設計者の意向を
反映して少なくともフィールドに格納すべきじゃない。

758 :デフォルトの名無しさん:03/01/05 00:12
>>757
設計者の意向が、
「クラス名.getInstance()でとってこれて便利だから」だけという
アホなことがおおいけどね〜、Singletonパターンの利用状況って。

759 :デフォルトの名無しさん:03/01/05 00:14
>>758
でも、全体で一つあれば事足りるオブジェクトを至る所で生成し直したり引数で渡すのもなぁ・・・。

760 :デフォルトの名無しさん:03/01/05 00:19
>少なくともフィールドに格納すべきじゃない。
そんなローカルルールが要らない設計を考えているのでは?

761 :デフォルトの名無しさん:03/01/05 00:20
>>759
いたるところで生成することが間違いなく、それでいてSingleton
を利用すべきパターンなら、

public class Singleton{
 private static final Singleton INSTANCE = new Singleton();
 private Singleton(){}
 public static Singleton getInstance(){return INSTANCE;}
}

でいいと思うけど〜。

762 :761:03/01/05 00:21
これじゃまるっきりグローバル変数とカワランねえ〜。

763 :デフォルトの名無しさん:03/01/05 00:23
>>762
アンチパターンではグローバルの再来として忌み嫌われているとw

764 :761:03/01/05 00:28
マルチスレッドなら、単に参照引っ張ってくることだけ気にするん
じゃなくて、クライアント側で参照更新をおこなう一定期間の排他
ロックが必要なことが多いだろうから〜…

とか考えると、安易にSingleton使うのはキケンだよね〜。
本当に全体で一個しかインスタンスイランのかどうかは、設計段階じゃ
分からんことなのかもねー。



765 :デフォルトの名無しさん:03/01/05 02:06
なんか、配列の個数がlengthで取得できるのが
気持ち悪いと思ったのは自分だけでしょうか?
JSPを触る必要があり急遽JAVA触りだした
元Cプログラマーです。


766 :デフォルトの名無しさん:03/01/05 02:21
Cをバリバリ超人的にやってた人ならそう感じるかもしれません。
きっと、Javaの文字列の扱いも効率が悪く感じるでしょうな。

767 :座敷荒氏:03/01/05 02:42
こんばんば。
今年の春に基本情報を受けようと思い、
JAVAの勉強を始めたいと思うのです。

以前挫折したときの本「10日でおぼえるJAVA」(2001年3月発行)
ってのが手元にあるのですが、これで始めてしまっていいでしょうか?

古いから新しい本に買いなおしたほうが良いとか
こっちがお勧めというのがあればご指導下さいませ。

あ、言語の知識は皆無です。
初級シスアドとCCNAがあるくらい。
でもJAVAをマスターしたいので宜しくお願い致します。

768 :デフォルトの名無しさん:03/01/05 02:48
>>767
挫折したにしろなんにしろ、一度手に取ったその本。もう一度読み返すべき。
そして(多分乗ってるであろう)サンプルとか打ってみるべし。
で、一個一個自分の中の問題点を洗い出すべし。
「これ読んだら完璧」なんて本は存在しない。

769 :デフォルトの名無しさん:03/01/05 02:49
>>767
「○○日でおぼえる」とか「簡単○○」とかって本は結局上っ面なめてるだけだよ。
悪いこたいわないからSunの「プログラミング言語Java」「Java言語仕様」、
せめて「独習Java」オライリーの「Javaプログラムクイックリファレンス」
あたりを腰すえて読んだ方がいいよ。

770 :デフォルトの名無しさん:03/01/05 02:51
言語仕様の大枠はそんな変化してないから多少古くても問題ないが。

http://www1.neweb.ne.jp/wa/yamdas/column/technique/21-daysj.html

無難に結城たんのJava言語プログラミングレッスンを勧めておく。

771 :座敷荒氏:03/01/05 02:55
返答ありがとうございます!
>768
わかりました。まずはこの本を読んでみます。
良い本か悪い本かはそのあと自分で判断することにしますね。

>769
そのあたりが初心者にお勧めでしょうか?
まずは手持ちの本でJAVAって?という部分を
読んでみて、ご推薦頂いた本が少しでも理解できるように
してみます。

ちょくちょくご相談に伺いますが
宜しくお願いいたします。

772 :デフォルトの名無しさん:03/01/05 02:56
>>767
基本情報処理試験の内容を見るに、その本だけでは足りなそうだ。
基本的なパッケージ(java.io、java.util、java.lang)の問題が出るようなので、
これらの対策も練ること。

773 :デフォルトの名無しさん:03/01/05 03:01
>>772
試験問題は知らないが、これらがメインに来るような問題って、
結局基本的な言語仕様学んだ上でAPIのJavaDocとか読めばわかるんでない?
ていうか、問題内容まで調べたんか、あんた。

優しいヤツだな。(惚

774 :座敷荒氏:03/01/05 03:18
(^○^)みなさん、ありがとうございます。
>770
本屋さんにはたくさん並んでいますよね〜。
新しいものがたくさんあったのでつい
心機一転新しい本が欲しくなったけど
768タソのいうとおり、まずは手元にあるので
初めてみます。次に選ぶときに参考にします。

>772・773
うむー、まだなんのことやらわかりませぬ。
チンプンカンプンです。でも頑張るので今後とも
ご助言頂きたいデス。

夜も遅くにご返答、ありがとうございました。

775 :デフォルトの名無しさん:03/01/05 03:33
>>765 配列嫌ならVector使ってみれば少しは気持ち悪さも減るんでない? 配列より処理重くなるけど。
Javaの配列はCの配列より神経質に取り扱う必要が無く変なことするとコンパイラやJVMがCより丁寧に注意してくれるから楽だとは思うんだけど。

776 :デフォルトの名無しさん:03/01/05 03:35
アドヴァイスください。
Swingでステータスバーを実現するにはどうすればいいですか?

こんな感じのステータスバーを実現したいのですが。。。。。
ttp://www.nol.info.kanagawa-u.ac.jp/research/1999/kanemitsu/screen.jpg

777 :デフォルトの名無しさん:03/01/05 03:40
JLabel

778 :776:03/01/05 03:48
即レスありがとうございます。

JLabelでBorderを設定して見よう見まねでやってたんですけど、
やっぱりその方法しかないですね。


779 :デフォルトの名無しさん:03/01/05 06:14
>>765
Cの配列だって結構気持ち悪いよ。
関数に渡したらポインタに降格しやがるし。

780 :デフォルトの名無しさん:03/01/05 06:55
>>777
UnEditableなJTextFieldをならべたほうが、ステータスバーの感じ出るかも。

781 :デフォルトの名無しさん:03/01/05 07:09
>>765
Javaの配列は、Cの配列と同じ文法で使用できますが、中身はぜんぜん違います。
特殊なオブジェクトの一種です。配列自身の実体は必ずヒープに確保されます。
Cの配列は、単なる連続したメモリ領域ですよね。

ぜんぜん違うものですので、気持ちわるいもヘッタクレもないです。


782 :デフォルトの名無しさん:03/01/05 09:32
悪いこと言わんから基本情報はCやっとけ。

オブジェクト指向理解できてるならjavaは確かに簡単だがわかってないと地獄だ。

783 :世直し一揆:03/01/05 11:15
<血液型A型の一般的な特徴>(見せかけの優しさ(偽善)に騙されるな!)
●とにかく気が小さい(神経質、臆病、二言目には「世間」、了見が狭い)
●他人に異常に干渉する(しかも好戦的・ファイト満々でキモイ)
●自尊心が異常に強く、自分が馬鹿にされると怒るくせに平気で他人を馬鹿にしようとする
(ただし、相手を表面的・形式的にしか判断できず(早合点・誤解の名人)、実際にはたいてい、内面的・実質的に負けている)
●「常識、常識」と口うるさいが、実はA型の常識はピントがズレまくっている(日本の常識は世界の非常識)
●権力、強者(警察、暴走族…etc)に弱く、弱者には威張り散らす(強い者に弱く、弱い者には強い)
●あら探しだけは名人級(例え10の長所があってもほめることをせず、たった1つの短所を見つけてはけなす)
●基本的に悲観主義でマイナス思考に支配されているため、性格がうっとうしい(根暗)
●一人では何もできない(群れでしか行動できないヘタレ)
●少数派の異質、異文化を排斥する(差別主義者、狭量)
●集団によるいじめのパイオニア&天才(陰湿&陰険)
●悪口、陰口が大好き(A型が3人寄れば他人の悪口、裏表が激しい)
●他人からどう見られているか、体裁をいつも気にしている(「世間体命」、「〜みたい」とよく言う)
●自分の感情をうまく表現できず、コミュニケーション能力に乏しい(同じことを何度も言う、知障)
●表面上意気投合しているようでも、腹は各自バラバラで融通が利かず、頑固(本当は個性・アク強い)
●人を信じられず、疑い深い(自分自身裏表が激しいため、他人に対してもそう思う)
●自ら好んでストイックな生活をし、ストレスを溜めておきながら、他人に猛烈に嫉妬する(不合理な馬鹿)
●執念深く、粘着でしつこい(「一生恨みます」タイプ)
●自分に甘く他人に厳しい(自分のことは棚に上げてまず他人を責める。しかも冷酷)
●男は、女々しいあるいは女の腐ったみたいな考えのやつが多い(他人をけなして相対的に自分の立場を引き上げようとする等)


784 :デフォルトの名無しさん:03/01/05 13:26
>>782
分かってないと難しいの?
あんなん、基礎の基礎つーか…ただの文法テストじゃねーか(;´Д`)。
俺が受けたのは1年目だからなぁ…それ以降は傾向が代わったんだろうか。

785 :デフォルトの名無しさん:03/01/05 13:45
>>784
俺が見たのはポリモルフィズムとかの問題とかあったけど。

786 :デフォルトの名無しさん:03/01/05 14:01
ポリモルフィズムってなんかファイナルファンタジーに出てきそう。
強そうだよな。 くさい息 とか。 リボンが無いとつらい。

787 :デフォルトの名無しさん:03/01/05 15:09
理科の教師のあだ名がモルだったな

788 :デフォルトの名無しさん:03/01/05 21:06
>>787
うちの技術の教師はホモだった。

789 :デフォルトの名無しさん:03/01/06 23:07
本スレage

790 :デフォルトの名無しさん:03/01/07 00:08
msのjvmじゃなくてsunのjvmのを優先させる方法はあるの?

791 :デフォルトの名無しさん:03/01/07 00:28
>>790 JVMのパスを変更すればいいんでない?
特定のディレクトリ直下にpathが通っていると変更だけでは通用しがたいので、どこかにある重複したjava.exeを消す。
検索して探してくれ。Windowsディレクトリにあったと思う。

IEとNetscapeからコントロールパネルのJava plug-inでもどうにかなるが。
それ以外のブラウザでは上記のやり方が必要になる可能性がある。
少なくともOperaはそうだった(別にM$のJVMが優先されていたわけではない。JVMのバージョンが古かった)。

というかこの質問とこの答えは古いスレッドで語られていなかったか?

792 :790:03/01/07 03:01

見つからない

793 :デフォルトの名無しさん:03/01/07 03:04
いままでコマンドラインのプログラムばかりを作ってきたのですけど、
swing に手を出してみたら、何がなにやらさっぱりで、、、

少しずつ慣れていくしかないのですか?
GUI 専用の本を一冊は持っておくべきですか?

794 :デフォルトの名無しさん:03/01/07 03:05
>>792 どれに対するレス? レスするなら番号つけよう。
これがもし>>791 に対するレスなら、

検索で自分のHDDのどこを探してもjava.exeが見つからないことがわかったらSun純正JREを自分でインストールしてみる。
JavaプログラミングするならSun純正J2SDKをインストール

795 :デフォルトの名無しさん:03/01/07 04:17
>>792
態度悪いな。
>>791にたいするレスなんだろうけど、どの文に対するレスかわからん。
1:JVMのパスが見つからない
2:java.exeが見つからない
3:古いスレッドで同じ情報が見つからない
4:その他


796 :デフォルトの名無しさん:03/01/07 08:17
>>793
良い本があればそれを一通り読んでおいたほうがいいとおもう。

作って慣れるのもいいけれど
最低でも下のサイトに書いてあるようなことだけは、
作り始める前に把握しておいたほうが、なにかとスムーズにことが進むとおもうよ。
http://java.sun.com/docs/books/tutorial/uiswing/index.html

またSwingについての解説書を買うのなら、
やはり上のサイトで書かれていることぐらいは、
すべて解説している本でなければ買ってもしょうがないとおもう。

具体的にはどの本がお奨めなのかは俺にはわからんが。

797 :デフォルトの名無しさん:03/01/07 17:07
>>790

「ファイル名を指定して実行」でregsvr32 /u msjava.dll
を実行してMicrosoft VMをアンインストール。

798 :デフォルトの名無しさん:03/01/07 18:21
すいません、Windowsだと同ドライブ内のファイル移動は renameTo() で
出来るのは解ったんですが、他のOSでもこれは当てはまりますでしょうか?

799 :デフォルトの名無しさん:03/01/07 22:35
>>798
/usr/bin/とかにあるmvコマンドのソースを見れば判るんでないかな

800 :デフォルトの名無しさん:03/01/08 02:37
>>798
え、mvコマンドですか・・・
検索してみます(汗)

801 :798:03/01/08 02:39
間違えちゃった。
>>799さん
レスどうもです。

802 :デフォルトの名無しさん:03/01/08 12:07
Windows98 IE5.0 ランタイム1.4.0以上を使っているのですが、
ブラウザからアプレットを印刷すると、アプレット領域全体が真っ黒になり
アプレット自体はその真っ黒の領域の左上に小さく出てしまいます。

アプレットが画面解像度72dpiで出てしまってプリンタの解像度と一致していないため
かと思いますが、この問題をクリアする方法はあるでしょうか?
ちなみにIE6.0ではちゃんと領域いっぱいに印刷されるのですが・・・

803 :デフォルトの名無しさん:03/01/08 12:36
>>802
前スレあたりでもアプレットの印刷について、
似たような質問があったけど、そのときも未解決のままだったかと。
なにか方法がわかったらまとめてupきぼんぬ。

804 :デフォルトの名無しさん:03/01/08 17:18
まほろばって何でしょう?
開発環境???

805 :デフォルトの名無しさん:03/01/08 19:06
JDk1.4.1ってダウンロード無料ですか?

806 :デフォルトの名無しさん:03/01/08 19:10
ダウンロードは無料だけど、使うときは従量課金制。
1時間につき1ドル(約120円)ずつかかる。

807 :デフォルトの名無しさん:03/01/08 19:13
>>806
ヽ(`Д´)ノ ウワァァァンモウツカワネーヨ!

808 :デフォルトの名無しさん:03/01/08 19:27
>>806 誰だデマを流しているアフォは
市場に投入しない限り無料。
個人で勉強したり研究教育目的に使うには無料。

809 :デフォルトの名無しさん:03/01/08 20:22
>>808
どの時点で市場に投入した事になるんだろ?

810 :デフォルトの名無しさん:03/01/08 20:40
>>809 自分で調べろ厨房

811 :IP記録実験:03/01/08 21:18
IP記録実験
http://qb.2ch.net/test/read.cgi/accuse/1042013605/

1 名前:ひろゆき ◆3SHRUNYAXA @どうやら管理人 ★ 投稿日:03/01/08 17:13 ID:???
そんなわけで、qbサーバでIPの記録実験をはじめましたー。

27 名前:心得をよく読みましょう 投稿日:03/01/08 17:20 ID:yL/kYdMc
SETTING.TXT管轄でないということは全鯖導入を視野に、か?

38 名前:ひろゆき ◆3SHRUNYAXA 投稿日:03/01/08 17:22 ID:rLfxQ17l
>>27
鋭いです。

73 名前:ひろゆき ◆3SHRUNYAXA 投稿日:03/01/08 17:27 ID:rLfxQ17l
>ところで、IPが抜かれて何か今までと変わることってあるのでしょうか?
・今までより、サーバが重くなる。
・裁判所や警察からの照会があった場合にはIPを提出することがある。

812 :デフォルトの名無しさん:03/01/09 02:45
>>618
誣告が読めない

813 :デフォルトの名無しさん:03/01/09 03:27
あっはっは

814 :デフォルトの名無しさん:03/01/09 04:09
test

815 :デフォルトの名無しさん:03/01/09 13:51
JBuilderってdelphiに比べると死ぬほど遅い・・
キーボードを打ち込んでから文字が表示されるまでに
10秒以上かかるってどういうことよ。

早くかきかき出来るようになるコツとかないっすか?

816 :デフォルトの名無しさん:03/01/09 14:00
>>815 Eclipseやantを使え

817 :デフォルトの名無しさん:03/01/09 14:32
アプレットでユーザ認証画面を作っています。
ユーザ認証に成功したときに、アプレット上の表示を更新したいのですが、
どのようにすればいいのでしょうか?

818 :デフォルトの名無しさん:03/01/09 14:35
>>817
アプレット上の表示を更新すればいいと思います。

819 :815:03/01/09 14:36
>>816

ぅへ、やっとJBuilderの使い方を覚えたところなのに・・
ありがとございまふ、早速落として使ってみまふ。 はぁ・・・

820 :815:03/01/09 14:37
this.repaint;

..とかいうメソッドはありませんか?
わたしゃdelphiしか知らないからよく知りまへんが...

821 :デフォルトの名無しさん:03/01/09 14:38
>>234
君はヘタレが嫌いなようだが
ヘタレのニーズがあったから
2chはここまで伸びたんだと思うよ(w

そのことの良し悪しは抜きにしてね

822 :815:03/01/09 14:44
あ・・ >>820 は >>817へのレスです。

823 :デフォルトの名無しさん:03/01/09 15:04
jdbcで、ログイン中にも
タイムアウト時間をときどき延長したいんだけど
どうしたらいいの?
DriverManager.setLoginTimeoutでいいの?

824 :デフォルトの名無しさん:03/01/09 15:29
>>823
たまにSQL実行したら

825 :デフォルトの名無しさん:03/01/09 17:20
======2==C==H======================================================

         2ちゃんねるのお勧めな話題と
     ネットでの面白い出来事を配送したいと思ってます。。。

===============================読者数: 138720人 発行日:2003/1/9

年末年始ボケがそろそろ収まり始めた今日このごろのひろゆきです。

そんなわけで、年末に予告したIP記録ですが実験を開始しています。

「2ちゃんねる20030107」
こんな感じで各掲示板の最下部に日付が入ってるんですが、
20030107以降になってるところはログ記録実験中ですー。

んじゃ!

────────────────────────Age2ch─
■この書き込みは、Age2chを使って配信されています。
────────────────────────────
Keep your thread alive !
http://pc3.2ch.net/test/read.cgi/software/1041952901/l50
────────────────────────────

826 :デフォルトの名無しさん:03/01/09 18:15
>>815

メモリをたくさん積んで、速いCPUにしろ。

827 :デフォルトの名無しさん:03/01/09 21:38
JDBCで、DriverManager.getConnection() で
URL(というか相手先のIPアドレス)を間違えたとき
デッドロックするみたいなんですけど・・・
このときのタイムアウト値って設定できます?
DriverManager.setLoginTimeout() で設定できるのって
最大ログイン時間であって接続時のタイムアウトじゃないし

828 :デフォルトの名無しさん:03/01/09 22:02
import java.io.*;

public class HowOldAreYou {
public static void main(String[] args) {
System.out.Println("あなたの名前を入力してください。");
BufferedReader reader = new BufferReader(new InputStreamReader(System.in.in),1);
try {
String line = reader.readLine();
System.out.prinfln(line + "さん、こんにちわ。");
System.out.println("年齢を入力してください。";
        line = reader.readline();
int age = Integer.parseInt(line);
System.out.println("いま" + age + "歳とすると、10年後は"+(age + 10) + "歳ですね。");
} catch (IOException e) {
System.out.println(e);
} catch (NunberFormatException e) {
System.out.println("年齢が正しくありません。");
     }
}
}


829 :828:03/01/09 22:05
^
HowOldAreYou.java:9: パッケージ system は存在しません。
system.out.prinfln(line + "さん、こんにちわ。");
^
HowOldAreYou.java:10: パッケージ system は存在しません。
system.out.println("年齢を入力してください。";
^
HowOldAreYou.java:13: パッケージ system は存在しません。
system.out.println("いま" + age + "歳とすると、10年後は"+(age
+ 10) + "歳ですね。");
^
HowOldAreYou.java:15: パッケージ system は存在しません。
system.out.println(e);
^
HowOldAreYou.java:16: シンボルを解釈処理できません。
シンボル: クラス NunberFormatException
位置 : HowOldAreYou の クラス
} catch (NunberFormatException e) {
^
HowOldAreYou.java:17: パッケージ system は存在しません。
system.out.println("年齢が正しくありません。");
^
エラー 24 個
}

こんなエラーがでます。ハンラック、全角の違いというkとなんでしょうか?

830 :デフォルトの名無しさん:03/01/09 22:08
>>828

systemはSystemの間違いだ。
大文字小文字はきちんとするように。

831 :デフォルトの名無しさん:03/01/09 22:12
>>827

そういうケースはデッドロックとは言わないです。
ネットワークのタイムアウトの設定はjavaではできないです。OS側で設定するべきだろう。

832 :828:03/01/09 22:14
>>830
あー、忘れてましたです。830さんありがとうがおざいます!

833 :828:03/01/09 22:46
^
HowOldAreYou.java:4: \12288 は不正な文字です。
        
^
HowOldAreYou.java:4: \12288 は不正な文字です。
        
^
HowOldAreYou.java:4: \12288 は不正な文字です。
        
^
HowOldAreYou.java:4: \12288 は不正な文字です。
        
^
HowOldAreYou.java:4: \12288 は不正な文字です。
        
^
HowOldAreYou.java:4: \12288 は不正な文字です。
        
^
HowOldAreYou.java:4: \12288 は不正な文字です。
        
^
エラー 8 個残りました。この場合は何が可笑しいんでしょうか?

834 :デフォルトの名無しさん:03/01/09 22:49
>>833
全角スペースが入っているのでは?

835 :デフォルトの名無しさん:03/01/09 23:01
すごいラインナップだな(藁
>tmp鯖

836 :デフォルトの名無しさん:03/01/09 23:23
アプレットにGIFのアニメーションする奴乗っけるともしかして動いちゃう?

837 :デフォルトの名無しさん:03/01/09 23:30
どうしてこうもGUIプログラミングする香具師が多いんだろう。
Javaの仕事でGUI作ることなんてあるのか?せいぜい携帯アプリぐらいだろ?
何でサーバーサイドやらないんだろう????

838 :デフォルトの名無しさん:03/01/09 23:34
>>837
つまらないから。

839 :デフォルトの名無しさん:03/01/09 23:36
>>815 >>826 マシンスペックあげるまえに余計な常駐プログラムとかを閉じるとかしたほうがいいと思う。
Eclipseはおぼえるの大変な気がする。俺はantに慣れてしまった。Eclipseは軽くてよいが、なかなか移れない。いまのところGUIプログラミングする予定無いから。

>>828 凄い数の誤字脱字ですな。
>>833を見るとすでに直っているとは思うが、
NumberがNunber, BufferedがBuffer inがin.in などになっている
>>833ほかに考えられるとしたら文字コードが違うとか?

>>837 GUIにあこがれる人が多いんではないかと思う。俺もGUIにあこがれた事があった。
が、自分のWebページ作ってから徐々に考え方が変わってきたような気がする。
Webがあれはある程度はGUIのかわりになるのではないかと思い始めた。
Webだけでは操作性に問題があるけどね。
おれstruts, cocoon使ってるよ。サーバサイドはWebProg板の方に多いんじゃないかな?
たまにレンタル鯖板でもみかけるけど---「Servlet/JSP使えるレンタルサーバ探しています...」
他はプログラマ板だろうか?

840 :デフォルトの名無しさん:03/01/09 23:37
>>837
ネタが見つかりにくいって言うのもあるんじゃない?
あと、仕事でさんざんやってるし、家帰ったら気楽に小物でも作るかってなもんで。

841 :デフォルトの名無しさん:03/01/09 23:41
>>836
GIFはUnisys特許の問題があるから使わない方がいいと思う。特許料払えるなら問題ないが。
PNGがいい。GIFアニメーションをAppletで使ったことは無いが
試しにやってだめだったらGIFアニメを分割して自分でコマ送りするプログラムを作ればいいと思う。

842 :デフォルトの名無しさん:03/01/09 23:45
>>841
了解しました。
でも、GIFの特許料取られるケースって実際にあるのでしょうか?

843 :デフォルトの名無しさん:03/01/10 00:13
GIFの特許って今年で切れるんじゃなかったっけ?
いつだったかは、忘れますた・・・

844 :デフォルトの名無しさん:03/01/10 00:53
>530
俺はマンコとかいてるがIPとられても怖くないぞ。もし文句あってもやめないからな!!

845 :デフォルトの名無しさん:03/01/10 01:10
>>838
そうか、つまらんのか。
俺はStrutsとかcommonsといったJakartaのパッケージ使ってると
面白くてやめられないんだがな。
開発環境はもちろんAnt+テキストエディタ。

ネタか・・・・
家計簿をApache + Tomcat + PostgreSQL + RedHatLinux で作って使ってる
人間はさすがに自分をのぞいて見たことないな・・・・・
出先からでも記入、参照できて便利だよ。
出張や旅行から帰ってから何日分もつけるの面倒だしね。

846 :デフォルトの名無しさん:03/01/10 02:19
>>843
6月半ばに切れたはず。
PNGはそれまでのいのちだね。

それにあれは圧縮の特許なので、表示する分には問題ないです。

847 :デフォルトの名無しさん:03/01/10 02:21
>>846
へえ、そうなんだ。<GIF特許

そういえば、米のどこだかの会社が業績不振を理由に、JPEGライセンス料の
徴収を云々って、話はどうなったんだろう。

848 :デフォルトの名無しさん:03/01/10 02:23
SONY が金払ってたね。

849 :デフォルトの名無しさん:03/01/10 02:28
>>848
あと、東芝だっけ?(違うか)
なんか日本のデジカメメーカが、何社か払ったって聞いた。なんだよ、それって感じ。

漏れはこのニュース聞いた時、JDKのJPEGパッケージ(IBM製)の今後をマジで
心配してしまった。(笑

850 :デフォルトの名無しさん:03/01/10 02:32
東芝は訴訟に弱いから。
フロッピーの件で。

851 :デフォルトの名無しさん:03/01/10 02:34
>>846
延長だってさ。ミッキーマウスといっしょだよ。

852 :デフォルトの名無しさん:03/01/10 02:34
あとダイナブック。

853 :デフォルトの名無しさん:03/01/10 05:52
JDK1.3以前では正直画面描画が遅すぎて動画を扱う気がしなかったなあ。

JDK1.4でVolatileImageつかってシューティングゲームでも作ってみるかな。
VRAM直接書き込みマンセー。

854 :デフォルトの名無しさん:03/01/10 09:29
>>22 内容証明が届いた日からの利子もつけて、賠償汁!って判決なんだから、
内容証明による削除要請があり次第、片っ端から消せ!ってことでしょ?

855 :デフォルトの名無しさん:03/01/10 09:45
>>22 内容証明が届いた日からの利子もつけて、賠償汁!って判決なんだから、
内容証明による削除要請があり次第、片っ端から消せ!ってことでしょ?

856 :デフォルトの名無しさん:03/01/10 09:49
>>22 内容証明が届いた日からの利子もつけて、賠償汁!って判決なんだから、
内容証明による削除要請があり次第、片っ端から消せ!ってことでしょ?

857 :デフォルトの名無しさん:03/01/10 10:07
ちがいます。

858 :デフォルトの名無しさん:03/01/10 10:43
ヤブ医者ヤブ医者ヤブ医者ヤブ医者ヤブ医者ヤブ医者ヤブ医者ヤブ医者ヤブ医者ヤブ医者
ヤブ医者ヤブ医者ヤブ医者ヤブ医者ヤブ医者ヤブ医者ヤブ医者ヤブ医者ヤブ医者ヤブ医者
ヤブ医者ヤブ医者ヤブ医者ヤブ医者ヤブ医者ヤブ医者ヤブ医者ヤブ医者ヤブ医者ヤブ医者
ヤブ医者ヤブ医者ヤブ医者ヤブ医者ヤブ医者ヤブ医者ヤブ医者ヤブ医者ヤブ医者ヤブ医者


これだけ連呼しておいて、
「フザケるなァ!」って言ってきたら
そいつがヤブ医者だよ。

859 :デフォルトの名無しさん:03/01/10 11:25
ひろゆこも大変やナ。
コミケから被害届けも出されるし…

860 :デフォルトの名無しさん:03/01/10 11:34
>>851
え、ほんと?
ソースってどこかない?

861 :デフォルトの名無しさん:03/01/10 11:47
>>473
事実上、運営者が責任を負っているという状態は可哀想だし、
IPを晒すのを非難してるわけじゃない。

運営者に圧力をかけている団体に腹が立っているけど、
何も出来ないから書いてるの。



862 :デフォルトの名無しさん:03/01/10 12:42
IP取られてもいいから
アホニシを何とかして欲しいよ。

863 :デフォルトの名無しさん:03/01/10 12:44
どうして256色しか使えないようなカスフォーマットにこだわるのかわからん<GIF

864 :デフォルトの名無しさん:03/01/10 13:15
>>863 軽いからでない?
JPEGは圧縮すると劣化するし。PNGは重たいし

865 :デフォルトの名無しさん:03/01/10 15:01
長めのIF文を16個つけた関数を作ったのですが、
これを使うと極端に動作が重くなります。
if(m_x> 0&&m_y< 0&&(m_x+m_y<=-3||m_x+m_y>=3)&&-m_y>m_x) return 1;
見たいなのが16行あるのですが、JAVAとはそういうものなのですか?

866 :デフォルトの名無しさん:03/01/10 15:04
さん
スイマセン 移動しました。
http://qb.2ch.net/test/read.cgi/sakud/1028262850/405-407n

以降 このスレでは この件は放置をお願いします。m(_ _)m。

867 :デフォルトの名無しさん:03/01/10 15:06
>>865
なわけない。

868 :デフォルトの名無しさん:03/01/10 15:09
importで、任意のUserBeanを読み込む場合、以下の書式はOKなんでしょうか?
サンプルはこうなってるんですが、自分の環境でコンパイルするとエラーが帰ってくるんで
困っています。
へるぷ みー

import UserBean;
 ↓
.......\login.java:7: '.' がありません。

869 :865:03/01/10 15:13
ですが、上で説明した関数を使わないと動作がぜんぜん違うんです。
アプレットを作っているんですが、その関数を使うと、場面が飛んでしまうんです。

870 :デフォルトの名無しさん:03/01/10 15:19
>>865 失礼ですが、美しいとは言いがたいコードです。
16個もあるならもっと数式をコンパクトに折りたためないのか?
重くなったのをJavaのせいにしないで重複した部分をうまくなとめましょう。
if分を複数に分割するとか、if文を入れ子にするとかね。

m_x + m_y を
mxmy = m_x + m_yでまとめるくらいのことはしておきましょう。

>>868 そのクラスのパッケージ名は?
login.javaのソース内のクラス名は? login.javaにあるクラスはいくつ? publicになっているクラスは?

871 :デフォルトの名無しさん:03/01/10 15:20
>>869
>上で説明した関数
じゃなくて、「上で説明したコードを含む関数」でしょ
その関数の他の部分はどうなのよ?

872 :868:03/01/10 15:26
>870
あぅえぅ・・・勉強しなおしてきます


873 :865:03/01/10 15:28

if(m_x==0&&m_y< 0) return 0;
if(m_x> 0&&m_y< 0&&(m_x+m_y<=-3||m_x+m_y>=3)&&-m_y>m_x) return 1;
if(m_x> 0&&m_y< 0&&(m_x+m_y>=-3&&m_x+m_y<=3)) return 2;
if(m_x> 0&&m_y< 0&&(m_x+m_y<=-3||m_x+m_y>=3)&&-m_y<m_x) return 3;

if(m_x> 0&&m_y==0) return 4;
if(m_x> 0&&m_y> 0&&(m_x-m_y<=-3||m_x-m_y>=3)&&m_y<m_x) return 5;
if(m_x> 0&&m_y> 0&&(m_x-m_y>=-3&&m_x-m_y<=3))return 6;
if(m_x> 0&&m_y> 0&&(m_x-m_y<=-3||m_x-m_y>=3)&&m_y>m_x) return 7;

if(m_x==0&&m_y> 0) return 8;
if(m_x< 0&&m_y> 0&&(m_x+m_y<=-3||m_x+m_y>=3)&&m_y>-m_x) return 9;
if(m_x< 0&&m_y> 0&&(m_x+m_y>=-3&&m_x+m_y<=3)) return 10;
if(m_x< 0&&m_y> 0&&(m_x+m_y<=-3||m_x+m_y>=3)&&m_y<-m_x) return 11;

if(m_x< 0&&m_y==0) return 12;
if(m_x< 0&&m_y< 0&&(m_x-m_y<=-3||m_x-m_y>=3)&&-m_y<-m_x)return 13;
if(m_x< 0&&m_y< 0&&(m_x-m_y>=-3&&m_x-m_y<=3))  return 14;
if(m_x< 0&&m_y< 0&&(m_x-m_y<=-3||m_x-m_y>=3)&&-m_y<-m_x)return 15;
return 15;
関数の中身はこうなっています。引数はm_xとm_yだけです。

874 :デフォルトの名無しさん:03/01/10 15:30
>>865
それ以外の部分で遅いだけでしょ。。。
ためしに
if(m_x==0&&m_y< 0) return 0;
の前に
return 0;
とでも置いて実行してみたら?

875 :865:03/01/10 15:35
>>874
あ、軽くなりました・・・

876 :デフォルトの名無しさん:03/01/10 15:35
ここで、サーブレット/JSP系の質問はだめぽ?

877 :デフォルトの名無しさん:03/01/10 15:36
何度も呼び出してるとか再帰とかいうオチじゃないだろうな…

878 :デフォルトの名無しさん:03/01/10 15:37
>>873 うわっ、すっげー無駄が多すぎ ^^;
15がreturn されるとき一番時間がかかりそう。

やり方は何通りもあるけどもう一個関数作ると楽そう。

すくなくともこれくらいはやっておいていいかと
boolean a = m_x > 0 && m_y< 0;
boolean b = ( m_x + m_y <= -3 || m_x + m_y >= 3 );



879 :865:03/01/10 15:39
>>877
そういう落ちではないんですが・・・
>>878
ありがとうございます。それでやってみます。

880 : :03/01/10 15:39
こんなIF文使うな。

881 :デフォルトの名無しさん:03/01/10 15:40
>>873 あなたには、「Javaの鉄則」という本を読むことをお勧めします。
うーん。今ならほかにももっといい本やサイトがあるかも。

882 :デフォルトの名無しさん:03/01/10 15:43
if文てそんなに重くなるものなの?

883 :デフォルトの名無しさん:03/01/10 15:57
>>882 いや、>>873のコードはif文が思いのではなくアルゴリズムに問題があるだけ。

884 :デフォルトの名無しさん:03/01/10 16:05
>>873
まず、

1.m_x == 0の場合
2.m_x < 0の場合
3.m_x > 0の場合

の3通りにわけて、それぞれのブロック中で残りの条件を
判定するようにすべき。毎回毎回全部の変数を評価したら
そりゃあ遅くなるのは当然。

885 :デフォルトの名無しさん:03/01/10 16:08
>>879
==がついた部分を先に実行すると速くなる可能性は高まります。
例えば
int x = 4; のとき、
x % 2 == 0 を判定してから
x == 4 を判定するのは時間の無駄ですから。

if(m_x==0&&m_y< 0) return 0;
if(m_x> 0&&m_y==0) return 4;
if(m_x==0&&m_y> 0) return 8;
if(m_x< 0&&m_y==0) return 12;
大抵の場合、仕事は簡単なものから片付けたほうがいいからこういうのは前面に押し出しでしょう。

886 :885:03/01/10 16:09
>>884 ですでに説明されていた...。

887 :デフォルトの名無しさん:03/01/10 16:21
>>873 こんなふうに。全角スペースを半角スペース2個に置き換えてどうぞ。
if(m_x == 0){ //m_x = 0の場合の処理
  if(m_y < 0) return 0;
  if(m_y > 0) return 8;
} else {
  if(m_x > 0) { //m_x が0より大きい場合の処理
    if(m_y == 0) return 4;
    if(m_y < 0){
      if((m_x+m_y<=-3||m_x+m_y>=3) && -m_y > m_x) return 1;
      if((m_x+m_y>=-3&&m_x+m_y<=3)) return 2;
      if((m_x+m_y<=-3||m_x+m_y>=3)&&-m_y<m_x) return 3;
    } else {
      if((m_x-m_y<=-3||m_x-m_y>=3)&&m_y<m_x) return 5;
      if((m_x-m_y>=-3&&m_x-m_y<=3))return 6;
      if((m_x-m_y<=-3||m_x-m_y>=3)&&m_y>m_x) return 7;
    }
  } else { //m_xが0より小さい場合の処理
    if(m_y == 0) return 12;
    if(m_y > 0) {
      if((m_x+m_y<=-3||m_x+m_y>=3)&&m_y>-m_x) return 9;
      if((m_x+m_y>=-3&&m_x+m_y<=3)) return 10;
      if((m_x+m_y<=-3||m_x+m_y>=3)&&m_y<-m_x) return 11;
    } else {
      if((m_x-m_y<=-3||m_x-m_y>=3)&&-m_y<-m_x)return 13;
      if((m_x-m_y>=-3&&m_x-m_y<=3))  return 14;
      if((m_x-m_y<=-3||m_x-m_y>=3)&&-m_y<-m_x)return 15; //この行は不要だと思う
    }
  }
  return 15;
}

888 :デフォルトの名無しさん:03/01/10 16:29
atan2 使えば良いじゃんと思う俺は DQN ですか?

889 :デフォルトの名無しさん:03/01/10 16:38
程度の低い質問ほどレスも多いですね。無駄に。

890 :デフォルトの名無しさん:03/01/10 16:41
>>888 なるほど、やはりatan2でしたか。
http://www.sra.co.jp/people/miyata/algorithm/atan.txt
これをJavaで書き直すという手もあり。こいつにx,yの符号に応じて90度回転させたりと。

>>889 2chだから仕方が無い。我慢我慢。

891 :デフォルトの名無しさん:03/01/10 16:47
>>890
なに、平常心ぶってんの?
程度の低い質問ってのはお前のことだよ。
低学歴はこれだから学歴が低いんだ。

892 :デフォルトの名無しさん:03/01/10 17:16
>>891
2chだから仕方がないんだよ(´ー`)y-~~

893 :デフォルトの名無しさん:03/01/10 17:34
>>887 どうせなら
double xy = m_x + m_y;
double xy = m_x - m_y;
まとめた方がもっと速くなるでー。

>>891 俺は個のスレッドも一度も技術的な質問をしたことはないね。
>なに、平常心ぶってんの?
これこそ程度の低い質問に該当してるよ。
じゃ、お前も程度の高い質問をしてみたら?
こういうレスするお前がいることも2chらしいね。それもachだから仕方が無いからねぇ。

894 :デフォルトの名無しさん:03/01/10 17:38
>>893
まあまあ。
彼は過去に質問をしたけどレスがもらえなかったのではなかろうか。

たしかにあまり難しい質問だとレスがかえってこないことってあるよね。
まあ質問の仕方が下手で、なにを尋ねているのかわからないから
レスが返ってこない場合もあるが。

895 :865:03/01/10 18:00
もう一度よくコードを見直してみます。
お手数おかけしました。

896 :デフォルトの名無しさん:03/01/10 18:10

既出覚悟で質問です
JavaTM 2 SDK, Standard Edition Version 1.3.1_06
を使ってるんですがjavac.exeがどこにもみあたりません
そんなもんですか?コマンドプロンプトで
javaなら読んでくれるんですが
javacはよんでくれません…
何故なんですか..

897 :デフォルトの名無しさん:03/01/10 18:12
そんなもんです。

898 :デフォルトの名無しさん:03/01/10 18:13
>>896
えーと。もしかしてさっきの携帯Javaスレのひと?
とりあえず>>2のリンク先を一度じっくり読んでみてはどうか?

899 :デフォルトの名無しさん:03/01/10 18:15
>>896
OSはなにを使っているの?
たいがいのOSにはファイルを検索するためのソフトがあるから、
それで探してみては?

Windowsなら、f3キーで出たろうか。

900 :デフォルトの名無しさん:03/01/10 18:22
はい,携帯Javaスレの301です>>898さん
またjava初心者の方に書いたんでそっちで解答していただければ幸いですm(_ _)m
>>2のリンクは目を通したのですが…
C:\1.3.1_06が存在しないのです…
OSはwindows2000です>>896さん


901 :デフォルトの名無しさん:03/01/10 18:27
暇だからってマルチのお相手かよ

902 :デフォルトの名無しさん:03/01/10 18:28
>>901
答えがもらえてないからこっちに来たんだろう
まぁ大目にみてやんなよ

903 :デフォルトの名無しさん:03/01/10 18:29
>>896 >>900
じゃこちらのスレッドに。

windows2000は使ったことがないが、
タスクバーの「スタート」をクリックして、
つぎに「検索(C)」をクリックして「ファイルやフォルダ(F)」をクリック。

するとおそらくファイルやフォルダを検索するためのウインドウが開くだろうから、
とりあえずは、それをつかって「javac.exe」というファイルを探すのがよいかと。

904 :896:03/01/10 18:31
すみません,解決しました!!
親切にレスくれた方々ありがとうございましたっ!

905 :デフォルトの名無しさん:03/01/10 18:35
>>896 >>904
やはりJREのまちがえだったか。。。
あとマルチポストは回答が返って来たときに
その回答へレスをしてまわるあなた自身も手間かかるだろうし
おなじ投稿を何度も読んだり何度も回答する周囲も手間なので、
やめたほうかいいかと。

//まあこのスレの>>2へのリンクを張り付けたのは俺だけど。

906 :デフォルトの名無しさん:03/01/10 22:37
IPプロトコルを使用して書き込まなければいいのです。
念写を応用して書き込む方法を開発しよう。

907 :デフォルトの名無しさん:03/01/10 22:45
今のところ実験ですが
うまく動いていますよ

これからトラブルは当事者間で解決してもらう方針です。



908 :デフォルトの名無しさん:03/01/10 23:11
>やめたほうかいいかと。
ぬるいな


909 :デフォルトの名無しさん:03/01/11 00:04
言いたいことも言えないなんて。ポイズン

910 :デフォルトの名無しさん:03/01/11 00:12
実社会じゃ色々な理由でブチまけられないことがインターネットでは
見ず知らずの人らとしゃべりあえたの糞な世の中になりましたね
規制されまくって自分に嘘つかなきゃやってけない日本が少し嫌いになりましたまる


911 :デフォルトの名無しさん:03/01/11 09:34
P2P掲示板をまともにつくった方が遙かに楽だと思うよ。がんがって。

912 :デフォルトの名無しさん:03/01/11 09:35
まともなスレ立てるのが面倒なら立てるなよ、うぜぇ

913 :デフォルトの名無しさん:03/01/11 10:09
======2==C==H======================================================

         2ちゃんねるのお勧めな話題と
     ネットでの面白い出来事を配送したいと思ってます。。。

===============================読者数: 139038人 発行日:2003/1/10

なにやら、連日メルマガだしてるひろゆきです。

そんなわけで、ログ記録実験ですが、いちいちサーバ指定するのが面倒なので、
全部のサーバに入れてみました。

重くなって落ちたりしてもご愛嬌ってことで。。。

んじゃ!

────────────────────────Age2ch─
■この書き込みは、Age2chを使って配信されています。
────────────────────────────
Keep your thread alive !
http://pc3.2ch.net/test/read.cgi/software/1041952901/l50
────────────────────────────

914 :デフォルトの名無しさん:03/01/11 11:02
ザンネンネ(σ゚ω゚)σ

915 :デフォルトの名無しさん:03/01/11 11:31
(´・ω・`)ドッチ…無知で御免

916 :デフォルトの名無しさん:03/01/11 12:34
さりげなく自スレの宣伝するんじゃねー
でも、良かったらさんもさんもマァヴさんも
おいらの立てたスレに遊びに来てね。

どうせIP記録されるんならふしあなさんしようぜ
http://live.2ch.net/test/read.cgi/festival/1042199282/l50

917 :デフォルトの名無しさん:03/01/11 15:54
そんなことはない。
2ちゃんねるだからなのです。

918 :デフォルトの名無しさん:03/01/11 15:59
170 名前:ひろゆき ◆3SHRUNYAXA 投稿日:03/01/08 17:42 ID:rLfxQ17l
負荷が高そうなサーバにも入れて見ます。

ココカナ?

919 :デフォルトの名無しさん:03/01/11 19:27
 

920 :デフォルトの名無しさん:03/01/11 20:41
なんか違う話題がしばらく続いていますがここは質問すれですよね?相談させて下さい。

Swingを使って、ある図を入力を行うものを作っています。
その図はツリーみたいなもんで、一番大きな四角の中に四角が0〜n個あって、
そのそれぞれの四角の中にまた四角が0〜n個あって・・・・・・という構造です。
それをマウスでお絵描きソフトみたいに四角を描いて入力させたいのですが、
どうするのがいいんでしょう。
現段階の候補は下記3つですが、これは良い、悪いという話があったらお願いします。

1,四角のクラスとして、JInternalFrameを継承する:
 リサイズ機能などが付いてくるのは嬉しいけど、
 JInternalFrameの中にまたそれを入れなければいけないわけで・・・・・・。
 これでちょっと作りはじめてみたけど複雑or汚くなりそう。
2,四角のクラスとして、JComponentを継承する:
 これ継承して、頑張ってリサイズとか実装する。大変そう。
 マウスがコンポーネントの外に出てもちゃんとリサイズ動くかな?
3,四角のクラスにはGUI機能を持たせず、キャンバスに相当する一枚のJComponentに描く:
 自力で殆んどやるという点では2と同じ。どっちがいいのかは経験不足で分からないです。


921 :名無し@沢村:03/01/11 20:50
ぬぽくっへぽくへぽくへぽくっヌヒ等よ、大変だぞ!!
俺はふと思って2ちゃんねるのあっちこちの板を見て回ったのよ。
格闘技板とかアナウンサー板とかプログラマー板とかをな。
そうしたらな、どこのスレ開いても最近ひろゆきの話題が出てる板はプログラム技術板だけだったぞ!!
ヌヒ等よ、ここは2ちゃんねるいっちゃん恥ずかしい板だぞ!!


922 :デフォルトの名無しさん:03/01/11 21:08
>>920
>ある図を入力を行うものを作っています。

この説明が意味不明なんですが、取りあえず3が妥当かと。

>マウスでお絵描きソフトみたいに

と説明にある通り作るなら、マウスの選択範囲を逐一描画したりしない
といけないんで、結局Graphics2Dのメソッド弄くる処理書かないといけ
ないかと。そもそも、マウスドラッグに併せてSwingコンポーネントリサ
イズさせるなんて無茶。

923 :デフォルトの名無しさん:03/01/11 21:13
質問いいですか?
floatとかdoubleなどは32bitとか64bitとかいてあるのですが
その中で、指数部と値の部分はそれぞれ何bitなんですか?
たとえばlongをdoubleに変換したとき余分なところが
削られてしまうような気がするのですが。

924 :デフォルトの名無しさん:03/01/11 21:19
>>920
選択肢3でしょう。それが一番簡単でしょう。

925 :デフォルトの名無しさん:03/01/11 21:22
>922 まあ、意味不明なのはデフォルトの名無しさんなので。(知合いも一人くらい見てそうだし)
Swingはそういうものではないわけですね。ありがとうございます。

>923
実際に削られます。
速度より精度が大事ならBigIntegerはどうでしょうか。
分数にすれば有理数も行けますね。
http://www.y-adagio.com/public/standards/tr_javalang/4.doc.htm#9208
http://java.sun.com/j2se/1.4/ja/docs/ja/api/java/math/package-summary.html

926 :923:03/01/11 21:32
>>925
丁寧なレスありがとうございます。
勉強します。

927 :デフォルトの名無しさん:03/01/11 23:10
質問があります

複数のクラスのインスタンスを作って返したいのですが、
それぞれ一個ずつでいいんです。
CやC++なら
void method(A** ppA, B** ppB, C** ppC);
とするのですが、同じことをJavaでやるにはどうすればいいでしょう。

void method(Object[] a, Object[] b, Object[] c);
void method(Object[] return_values);
は配列じゃないのに配列を使ってるのが変ですし・・・

引数受け渡し専用クラスを作るという手もありますが、
似たようなのが何パターンかあるので、手間がかかります。

928 :デフォルトの名無しさん:03/01/11 23:25
>>927
あぶすとらくとふぁくとり? みたいな感じで。

929 :デフォルトの名無しさん:03/01/11 23:30
「自分」がヤバイと思ったら、使わなええんちゃいますのんw

930 :デフォルトの名無しさん:03/01/11 23:30
>>927
Object[] method(){
 A a = ...;
 B b = ...;
 return newObject[]{ a,b };
}
とか。Vector に入れて返すとか。

931 :デフォルトの名無しさん:03/01/11 23:31
ラウンジに行けばわかる

932 :デフォルトの名無しさん:03/01/11 23:32
ポインタ代りに配列を使いますか。なるほどねぇ。

似たようなのが何パターンもある、というのが気になります。設計が改良出来る予感。
「似たような」ものならば abstract,extends,implements で何とかならないものでしょうか。

933 :デフォルトの名無しさん:03/01/11 23:41
ここで3人くらいが「大丈夫だよ」と言ったら、それを信用して
そういう書き込みを続けるんですか?
まあご自由にとしか言いようがありませんね。
どうせなら「授業料」を支払うことになる限界がどこにあるか見つけてください。

934 :デフォルトの名無しさん:03/01/11 23:46
>>927
基本的には手間がかかっても
引数受け渡し用クラスを作った方がいーんだろーね。

もしくは一つのメソッドで一つのインスタンスを生成して返すように変更するとか。
まぁ、それらの対応が不可能だから質問してるんだろうけど。

935 :デフォルトの名無しさん:03/01/11 23:46
>933 誰に言ってるの? とりあえず文体からしてカルシウムを薦める。

936 :デフォルトの名無しさん:03/01/11 23:51
>20
サンプルソースではないが、作ってる人がいたぞ!<タイピングゲーム
http://www13.org1.com/~taro/typing/index.html
明らかにアプレットで動いてる。

937 :デフォルトの名無しさん:03/01/11 23:53
>>935
http://pc3.2ch.net/test/read.cgi/tech/1033433728/141
とかにも同じ文あるし。

938 :927:03/01/11 23:59
返答ありがとうございます。単純な解決法はなさそうですね。

>>928
すいません、よくわかりませんでした

>>930
戻り値から値を取り出すためのインデックスが
数値として直に見えるのはあんまりうれしくないかも、です。
Listにしても同じですね

>>932
ここのインターフェースは大幅には変えられないんです...

>>934
> 引数受け渡し用クラスを作った方がいーんだろーね。

静的な型安全を重視するならそうなりますね。
(eclipse等のIDEの補助も受けられますし)
あと、C++に慣れてるので、どうしてもコレが気になってしまいまする。

939 :デフォルトの名無しさん:03/01/12 00:21
>937 むー。この板はもはやコピペボットだらけなのですか。

940 :デフォルトの名無しさん:03/01/12 00:24
>>939
みたいっす。

941 :デフォルトの名無しさん:03/01/12 00:51
>>927
型安全を気にするなら、やっぱり引数クラスがいいと思うなあ。
いろんなパターンのものを気にするのがいやなら、
全パターンのクラスを網羅する、一つの引数クラスを作るとか。
型安全を気にしなくていいなら、配列やVectorよりもMapの方が
向いているんじゃないかな。



942 :デフォルトの名無しさん:03/01/12 01:57
>>927
>void method(Object[] a, Object[] b, Object[] c);

ところで、意図どおり動くのか?
void method(Object[] a){
a = new Object{"test",new Integer(1)};
}
void hoge(){
Object[] param = null;
method(param);
}
とやったところでparamはnullのままだぞ、おい。

>>932も「なるほど」って言ってる場合じゃないよ、おい。

943 :デフォルトの名無しさん:03/01/12 01:59
>>942
ネタだろーが、一応。

void method(Object[] a){
 a[0] = ....;
}

void hoge(){
 Object[] param = new Object[1];
 method(param);
}

とかってやるんでしょ。

944 :942:03/01/12 02:08
>>943
あ、そういうことね。


ところでさぁ、可変長配列にVectorっていうのなら連想配列にはHashtableで、連想配列にMapっていうのなら可変長配列にはListっていったほうが対応がよいのだが、どうか。

とはいえ、VectorとMapっていうのがいちばんしっくりくるんだけどね。
 Vector v = new Vector();
だけど、Mapは
 Map m = new HashMap();
って書くことがおおいね。

もれはVectorとHashMapをよく使うんだけど、おまえらはどうですか?



945 :デフォルトの名無しさん:03/01/12 02:15
近藤朋(享年15)
今日午前4時前、幸田駅の線路脇の道路でキャッチボールしていた中学3年生4人組がいた。
ところが、ボールが線路に入った。
幸田駅の線路に、ボールを取りに入った、中学3年生の女子1名が、貨物列車に
ばばばばばピィー―  きゃ〜!  ブァプアあああああああー―――――――ン!!!!!!



946 :942:03/01/12 02:19
「Java」といっしょにGooglingしてみたらこんなん出た。
Vector     462000
ArrayList    34700
LinkedList   20900
Hashtable    87000
HashMap     28000
LinkedHashMap 1040

ちなみにHashableは1230あった。Googleに「Hashtableじゃねーの?」って言われた。
LinkedHashMapより多いところがイカス。

>>945
午前4時に道路で手袋まるめてキャッチボールするか?

947 :デフォルトの名無しさん:03/01/12 02:19
はいよ

948 :デフォルトの名無しさん:03/01/12 06:25
Borland JBuilder 7 Personalインストール中に
http://www.borland.co.jp/jbuilder/webreg/jb70per.html
このページの最後の
 4.[次へ] をクリックします。
の通りに次へ進むと、完了画面にならずに起動直後の
 2.以下の [使用許諾コードの取得] ダイアログが…
の画面になって、再起動してみてもやっぱり登録出来てないんです。
なんとかならないですか?

この症状意味不明すぎてどうしようもないとは思うんですけど。

949 :デフォルトの名無しさん:03/01/12 06:49
>>944
>ところでさぁ、可変長配列にVectorっていうのなら連想配列にはHashtableで、
>連想配列にMapっていうのなら可変長配列にはListっていったほうが対応がよいのだが、どうか。
全然対応がよくない。そもそもインターフェースを理解していないあなたは氏ね。


950 :デフォルトの名無しさん:03/01/12 09:42
GCCでもJavaがコンパイルできるとあったのですが
これはJDK互換のバイナリを出力するの?
くわしく説明してください。

951 :デフォルトの名無しさん:03/01/12 09:45
キタ─wwヘ√レvv〜(゚∀゚)─wwヘ√レvv〜─!!!!             

952 :デフォルトの名無しさん:03/01/12 09:45
もうネタなんていっていいレベルじゃない
はっきり 馬  鹿 って言ってあげようよ。

953 :デフォルトの名無しさん:03/01/12 09:49
4ndってたぶんネタじゃなくて素の馬鹿だと思う

954 :デフォルトの名無しさん:03/01/12 10:37
遅レスだが
>void method(Object[] a, Object[] b, Object[] c);
>void method(Object[] return_values);
Object[] method(似たようなパターンのどれにあたるのか識別するための何か);
じゃダメだろうか。

>950 Yes/No で答えられる質問をしながら、いつもの癖で「詳しく」がついてますね。
何を詳しく聞きたいのか詳しく言いなさい。

955 :デフォルトの名無しさん:03/01/12 10:39
初心者質問行きます。
アプレットがブラウザで表示できません。
ローカルとネット上でいろいろ試しましたが、結果としていずれの場合も
IE6、ネスケ(プラグイン入っている)なら見れる。
IEコンポーネントブラウザはほぼ全滅。(Moon,Sleipnir,MDIbrowserでテスト)
explorerをIEに化けさせたときも見れない。
といった感じになりました。
自分の作ったアプレット以外のどこかのだれかが作った
ネット上に置いてあるアプレットは上のどの方法を使っても表示できました。
htmlはこんな感じで

<html>
<head>
<title>Foo</title>
</head>
<body>
<applet code="Foo.class" width=600 height=500></applet>
</body>
</html>

Foo.class はこのhtmlと同じディレクトリに置いてあります。
何がまずいのか教えて下さい。


956 :デフォルトの名無しさん:03/01/12 11:16
ブラウザよりもそれぞれで使っているJava VMが問題なのでは。
解決策は私も同じ所で引っかかっているため示せません。
いまのソフトが完成したら試そうと思っていたのですが、
src.zipからソースを引っ張って来るとどうなるんだろう?
1、うまくいく 2、けどライセンス違反 3、ダメ
結果知ってる方(or他の解決策)いらっしゃいましたら、よろしくです。

あと、設定いじってJavaコンソール表示させてエラーを読みましょう。


957 :デフォルトの名無しさん:03/01/12 11:18
Vectorってベクトルのことだよね。
ベクトルって、Listの一種って考えるのは正しいの?
数学に詳しい人、解説キボン

958 :デフォルトの名無しさん:03/01/12 11:29
スカラーの順序付き集合をリストと定義すれば同じじゃないかな?
ただ、(分野にもよるが)数学でベクトルと言われると次元(length)が固定な気がするね。
加減算や内外積が定義できたりするようなのを思い浮かべる。
数学に詳しい人、ツッコミキボン

959 :955:03/01/12 11:34
IEでは見られるがIEコンポーネントブラウザでは見えない原因がわかりました。
j2reのプラグインがIEだけに適用されるようになってたからですね。
結論として私の書いたコードのみどの環境でも見られないと・・・
htmlの書き方がおかしいのか何なのか・・・

960 :956:03/01/12 11:36
>959 JDKのバージョン問題じゃない?

961 :デフォルトの名無しさん:03/01/12 11:40
>>959
「自分が作ったアプレット」って、ローカルで .htmlをダブルクリックした状態と解釈していいの?
それとも自前サーバに置いて、ブラウザから覗いてるの?

後者なら「他の人」と同じ状態じゃないの?

962 :955:03/01/12 11:41
>>960
1.4.1-rcですが・・・
古いバージョンしか一般のVMは対応してないとかでしょうか。

963 :955:03/01/12 11:42
>>961
前者でも後者でも自作アプレットだけ見られません。

964 :デフォルトの名無しさん:03/01/12 11:45
>>962
コンパイル時に -target 1.1 つければ?

965 :955:03/01/12 11:51
>>964
解決しました。それですね。
1.1だと随分機能がなくなってしまってるみたいですが・・・
結局広く外に公開する奴は機能制限するしかないんでしょうかねえ・・・

966 :デフォルトの名無しさん:03/01/12 11:53
見られないって、例えば「どうもブラウザ内に領域だけはある」つまり「真っ白(灰色?)」
にはなっているの?


967 :955:03/01/12 11:55
>>966
appletタグで指定したサイズの灰色の領域が存在する、って感じです。

968 :デフォルトの名無しさん:03/01/12 11:58
>>957
コンテナとしてのVectorは数学的なVectorじゃないよ。
ただの入れ物。

969 :デフォルトの名無しさん:03/01/12 11:58
一足遅かったようだが貼っとく。まあ、互換性のあるアプレット作成の参考にはなるか?
http://java.sun.com/j2se/1.4/ja/docs/ja/guide/plugin/developer_guide/compatibility.html


970 :デフォルトの名無しさん:03/01/12 12:01
あ、解決したのね...。善き事。

つーか、>>965
>1.1だと随分機能がなくなってしまってるみたいですが・・・

所詮Appletには誰も期待していないと。悲しいが。

971 :955:03/01/12 12:08
>>969
参考にさせていただきます。
>>970
まだJavaはじめて1ヶ月くらいで作った500行程度の習作なわけですが、
とりあえずどの部分が新しい機能なのかを探しております。
バージョンダウンのための努力ってむなしい・・・

972 :デフォルトの名無しさん:03/01/12 12:13
Appletなんて所詮、砂場遊び。1.1.xで十分。

973 :デフォルトの名無しさん:03/01/12 12:26
Applet個人的には好きなんだけどな。
インストールするまでもないソフトって絶対良いと思うのだが・・・・・・何でこう衰退したんだ?

>971 これもダメ?
クロスコンパイルの例
http://java.sun.com/j2se/1.4/ja/docs/ja/tooldocs/solaris/javac.html#crosscomp-example
上位JDKのクラスとくっつけて下位VM用バイトコードを生成できるのでは。


974 :デフォルトの名無しさん:03/01/12 12:38
>インストールするまでもないソフトって絶対良いと思うのだが

COMマンセー

975 :デフォルトの名無しさん:03/01/12 12:44
>>973
これからはJava Web Startでしょ。
ttp://java.sun.com/products/javawebstart/ja/index_ja.html

976 :デフォルトの名無しさん:03/01/12 12:45
次スレいっとく?

977 :デフォルトの名無しさん:03/01/12 12:53
>>973
やっぱ、最初の頃のApplet=糞重いっていうイメージが
悪かったんじゃないかな。
今はマシン性能も、VMの性能も上がっているから
複雑なアプリじゃなければそこそこ使い物になると思うんだけど。

978 :デフォルトの名無しさん:03/01/12 13:42
>>977
あと、個人的には見てくれがちょっと...って感じ。Appletに限った話じゃないけど。
AWTにしろSwingにしろ、なんかイマイチ好きになれない。

そういう意味では(Appletだと厳しいけど)SWTにマンセー。

979 :デフォルトの名無しさん:03/01/12 14:21
>>976
少々、お待ちを。
>>1-10あたりに貼る関連スレあつめてみます。

もし関連スレ集まるまえに1000いった場合は、
一時的に下のスレッドへ批難ということでよろしいか?

http://pc3.2ch.net/test/read.cgi/tech/1032944182/l50
【初心者】Java質問・相談スレF【大歓迎】

980 :デフォルトの名無しさん:03/01/12 14:54
【初心者・ネタ】Java質問・相談スレ【大歓迎】
http://pc.2ch.net/tech/kako/1021/10218/1021817147.html
【初心者】Java質問・相談スレ2【大歓迎】
http://pc.2ch.net/tech/kako/1023/10233/1023319551.html
【初心者】Java質問・相談スレ3【大歓迎】
http://pc.2ch.net/tech/kako/1024/10248/1024885660.html
【初心者】Java質問・相談スレ4【大歓迎】
http://pc3.2ch.net/tech/kako/1026/10266/1026601774.html
【初心者】Java質問・相談スレ5【大歓迎】
http://pc3.2ch.net/tech/kako/1028/10280/1028096225.html
【初心者】Java質問・相談スレ6【大歓迎】
http://pc3.2ch.net/tech/kako/1029/10297/1029774594.html
【初心者】Java質問・相談スレ6【大歓迎】(本当は7)
http://pc3.2ch.net/tech/kako/1031/10313/1031397913.html
【初心者】Java質問・相談スレF【大歓迎】(重複の7)
http://pc3.2ch.net/test/read.cgi/tech/1032944182/l50
【初心者】Java質問・相談スレ8【大歓迎】
http://pc3.2ch.net/tech/kako/1032/10329/1032944246.html
【初心者】Java質問・相談スレ9【大歓迎】
http://pc3.2ch.net/tech/kako/1034/10343/1034303501.html
【初心者】Java質問・相談スレ10【大歓迎】
http://pc3.2ch.net/tech/kako/1035/10355/1035570359.html
【初心者】Java質問・相談スレ11【大歓迎】
http://pc3.2ch.net/tech/kako/1036/10361/1036142056.html
【初心者】Java質問・相談スレ12【大歓迎】
http://pc3.2ch.net/tech/kako/1037/10374/1037407642.html
【初心者】Java質問・相談スレ13【大歓迎】
http://pc3.2ch.net/tech/kako/1038/10387/1038731106.html
【初心者】Java質問・相談スレ14【大歓迎】
http://pc3.2ch.net/test/read.cgi/tech/1040150533/l50

まずは>>8の過去スレの修正版。

981 :デフォルトの名無しさん:03/01/12 15:35
■■■ Java関連スレ ■■■
【IDE 統合開発環境】
【統合】Java開発環境スレ
http://pc3.2ch.net/test/read.cgi/tech/1038118138/l50

【サーバサイドやエンタープライズ】
EJB(初心者歓迎)
http://pc3.2ch.net/test/read.cgi/tech/1017240849/l50
■■ Servlet/JSP(EJB含む) 質問スレ ■■ (WebProg板)
http://pc.2ch.net/test/read.cgi/php/1023501812/l50
TOMCAT
http://pc3.2ch.net/test/read.cgi/tech/998525941/l50
Servlet/JSPのフレームワークを語るスレ
http://pc3.2ch.net/test/read.cgi/tech/1001950590/l50
EJBは終わってる
http://pc3.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

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

982 :あべし:03/01/12 15:35
Borland JBuilder7 Personalでトラブっています

メニュー 実行→プロジェクトの実行すらできずに困っています。
実行させようとしているのは最初に出てくるサンプルアプリのwelcome.jpxで
ソースはいじってません。

最初にc:\program\ にJBuilder7をインストールした後
アンインストールしてからc:\program1\ にインストールし直しました
JBuilder7の設定でjdkのパスやレジストリが一部c:\program\のままになっていたので
JBuilder7の設定でパスを書き直したり、レジストリエディタでprogram\JBuilder7で検索して
パスをすべてprogram1\JBuilder7に変えても直りません
サンプルすら実行できないのでアプリ実行は全滅、アンインストールしてもダメ、の大ハマリ状態です
誰か解決方法を知らないでしょうか?

983 :あべし:03/01/12 15:38
書き忘れました、エラーはこんな感じです

-- Java プロセスを起動中に IOException が送出されました --

java.io.IOException: CreateProcess: C:\Program1\JBuilder7\bin\javaw -classpath "C:\Program1\JBuilder7\samples\
Welcome\classes;C:\Program1\JBuilder7\jdk1.3.1\demo\jfc\Java2D\Java2Demo.jar;C:\Program1\JBuilder7\jdk1.3.1\jr
e\lib\i18n.jar;C:\Program1\JBuilder7\jdk1.3.1\jre\lib\jaws.jar;C:\Program1\JBuilder7\jdk1.3.1\jre\lib\rt.jar;C
:\Program1\JBuilder7\jdk1.3.1\jre\lib\sunrsasign.jar;C:\Program1\JBuilder7\jdk1.3.1\lib\dt.jar;C:\Program1\JBu
ilder7\jdk1.3.1\lib\htmlconverter.jar;C:\Program1\JBuilder7\jdk1.3.1\lib\tools.jar;C:\Program1\JBuilder7\lib\a
〜(略)
こんな感じのメッセージが出てきます

984 :デフォルトの名無しさん:03/01/12 15:39
welcome.jpxって単なる説明じゃないんですか?

985 :デフォルトの名無しさん:03/01/12 15:46
【その他】
クライアントサイドJavaどうよ? part2
http://pc3.2ch.net/test/read.cgi/tech/1032665721/l50
ム板のみんなでRobocode (・∀・)ヤローウヨ!1台目
http://pc3.2ch.net/test/read.cgi/tech/1020161792/l50
Java 高速GUI SWT
http://pc3.2ch.net/test/read.cgi/tech/1032448424/l50
【徹底討論】Java3Dの可能性について考える
http://pc3.2ch.net/test/read.cgi/tech/1033703640/l50
★お前らJavaはJNIで組もうぜ★
http://pc3.2ch.net/test/read.cgi/tech/1033795664/l50
Javaアプレットのゲームの限界は! (ゲーム製作技術板)
http://game.2ch.net/test/read.cgi/gamedev/1005230153/l50

■■■ 撲滅させたいかた、死滅を心配してるかた ■■■
CとJavaを比較した場合Cの良いとこと悪いとこ
http://pc.2ch.net/tech/kako/1009/10097/1009707596.html
Java撲滅委員会
http://pc.2ch.net/tech/kako/996/996848309.html
●●JAVAって死滅しちゃうの????●●
http://pc.2ch.net/tech/kako/1005/10051/1005159122.html
●●JAVAって死滅しちゃうの???? PART2●●
http://pc.2ch.net/tech/kako/1006/10060/1006053686.html
●●JAVAって死滅しちゃうの???? PART3●●
http://pc.2ch.net/tech/kako/1008/10081/1008162230.html
Javaって死滅しちゃうの?
http://pc3.2ch.net/test/read.cgi/tech/1042268758/l50
スレを建てるかたは、できれば下のスレも過去ログの一覧に収納して、
あと新スレのタイトルは重複のFをふまえて
「【初心者】Java質問・相談スレ16【大歓迎】」あたりでお願いします。あと最大32行までしか書き込めないようです。
初心者無視! Java相談室 その9
http://pc3.2ch.net/test/read.cgi/tech/1021555964/l50

986 :あべし:03/01/12 15:53
welcome.jpxは単なる説明です
手元にあるJBuilderではじめるJavaプログラミング入門という本を見ながらやってまして
「プログラムを実行しよう」なる所にこれを実行すると
スケルトンみたいな何も無いウインドウが表示されるようです。

ただ、パスを変えて再インストールしたあたりから環境がガタガタになっていまして
サンプルの実行すらできない状態です。
ちなみに環境はwin2000です

987 :デフォルトの名無しさん:03/01/12 16:00
>>986
とりあえずコマンドプロンプトから「set」と打ち込んで、
その出力などをみられては?
>>971
SunのサイトでJDK1.1のドキュメントをダウンロードしてくるのがよろしいかと。

988 :デフォルトの名無しさん:03/01/12 16:13
む。1.1の日本語版ドキュメントが見つからぬ…。

989 :デフォルトの名無しさん:03/01/12 16:27
本家にはもう無いのか?
ドキュメンテーション jdk 1.1 で検索すると見つかります。
旧Java毒懐かスィ(w

990 :デフォルトの名無しさん:03/01/12 20:22
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

関連スレの追加。
>>989
つい数ヶ月前にも1.1の日本語版ドキュメント
ダウンロードしてきたばかりだったのに。
あれはいったいどのページからダウンロードしてきたか、
もう、よくわかんないや。

991 :デフォルトの名無しさん:03/01/12 20:36
ひろゆきが守ったとか見限ったとかアホか。
ひろゆきはお前たちの親でも友達でもない、ただの他人じゃないか。

992 :デフォルトの名無しさん:03/01/12 20:40
なら裁判に勝てる方法を理論的かつ具体的に示せよタコ。と釣(ry
んでモマエが弁護しろ。てかもう無理か?上告の棄却とかはもうでたの?

993 :デフォルトの名無しさん:03/01/12 20:49
おつかれーしょん>ばんそこう

994 :デフォルトの名無しさん:03/01/12 21:24
次スレ立てる人へ
>>1>>2は必ず入れてくれ。このおかげで無意味なclasspathの質問がかなり減った。

995 :デフォルトの名無しさん:03/01/12 22:22
このスレもあったか。
サーバーサイドの関連スレに、もひとつ追加。

《The Jakarta Project》
http://pc3.2ch.net/test/read.cgi/tech/1019996589/l50

// とりあえず邪魔がはいらないように早朝にでも建てにきます。
// ほかに付け加えたいスレや文章などがあれば、
// このスレか下のスレにでも書き込んでおいてください。
http://pc3.2ch.net/test/read.cgi/tech/1032944182/l50
【初心者】Java質問・相談スレF【大歓迎】

996 :デフォルトの名無しさん:03/01/12 22:32
>>995
>// とりあえず邪魔がはいらないように早朝にでも建てにきます。
あ、それじゃ新スレよろしくお願いします。

>http://pc3.2ch.net/test/read.cgi/tech/1032944182/l50
の l50 は無い方が良いかも?

997 :デフォルトの名無しさん:03/01/12 23:26
このスレは避難先が決まっているので安心して埋められる方向で。

昨日、四角の中に四角が〜で質問した者ですが、結局JInternalFrame使ってます。
返事をもらって、納得しておきながら何ですが、自分が作っているものは
ウィンドウの積み上げに非常に近いことに確信を持ったので。
(メモリの消費?知るか(藁
JInternalFrameのタイトルバーを消したり、ペイン内をドラッグして
フレームを移動させてみたりして遊んでます。(本質のプログラミングが進まねぇ)

>996
専用ブラウザならどっちも同じだと思うが、2chの処理・通信負担の軽減に協力する為には
l50 か -100 を付けるべきだと思われるが?

998 :デフォルトの名無しさん:03/01/13 00:32
>>997
わかるわ、それ。JInternalFrameって面白いよね。

JInternalFrameは、
バージョン1.3の時、あまり使わないほうが良いとか、
非推奨とかいう文面をみたことがある。
多分Sunのドキュメント。

今はどうなってるんでしょう。

999 :デフォルトの名無しさん:03/01/13 00:47
Vector, Hashtable は今はまったく使う意味がない。
ArrayList/LinkedList, HashMap を使いましょう。

1000 :デフォルトの名無しさん:03/01/13 00:48
ついでに1000

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

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

read.cgi ver 05.04.00 2017/10/04 Walang Kapalit ★
FOX ★ DSO(Dynamic Shared Object)