トップページ⇒tech
1002コメント373KB

Java相談室 Part4

レス数が1000を超えています。これ以上書き込みはできません。
0001デフォルトの名無しさんNGNG
Java関連の質問はここでお願いします。

Java相談室 Part1
http://piza.2ch.net/test/read.cgi?bbs=tech&key=971960169.html
Java相談室 Part2
http://piza.2ch.net/test/read.cgi?bbs=tech&key=980858322.html
Java相談室 Part3
http://piza2.2ch.net/test/read.cgi?bbs=tech&key=994150280
0002名無しさんNGNG
ここまでくると興味も薄れるのかな?
0003デフォルトの名無しさんNGNG
というか、いいかげんスレ統一してくれ。
0004デフォルトの名無しさんNGNG
米国 Sun の Java サイト
http://java.sun.com/

Java2 SDK 1.3 日本語ドキュメント
http://java.sun.com/j2se/1.3/ja/docs/ja/

Java House メーリングリスト
http://java-house.etl.go.jp/ml/

Java FAQ のページ
http://www.gimlay.org/~javafaq/javafaq.html

Java FAQ (英語)
http://www.afu.com/javafaq.html

Java 言語規定
http://www.y-adagio.com/public/standards/tr_javalang/index.htm
0005デフォルトの名無しさんNGNG
下のコードで、オーバーライドしたはずのメソッドが呼び出されません。

MyClass m1 = new MyClass("ぎこ", "はにゃーん") とすると MyClass の
equals が呼び出されるのですが、
Object m1 = new MyClass("ぎこ", "はにゃーん") とすると、MyClass の
equals が呼び出されてくれないみたいですが、何故だか分かりません。

3つめの equals で true にするにはどうすればいいのでしょうか、
詳しい方、教えて下さい、よろしくお願いします。

import java.util.*;

class MyClass {
public String a;
public String b;

MyClass (String a, String b) {
this.a = a;
this.b = b;
}

public boolean equals(MyClass o) {
System.out.println("MyClass#equals 呼ばれてるよん");
return (a.equals(o.a)) && (b.equals(o.b));
}
}
00064。長いので続きNGNG
class Test2 {

public static void main (String[] args) {

try {
Object s1 = new String("Hello");
Object s2 = new String("Hello");
System.out.println(s1 + "\n" + s2 + "\n" + s1.equals(s2));

MyClass m1 = new MyClass("ぎこ", "はにゃーん");
MyClass m2 = new MyClass("ぎこ", "はにゃーん");
System.out.println(m1 + "\n" + m2 + "\n" + m1.equals(m2));

Object obj1 = new MyClass("ぎこ", "はにゃーん");
Object obj2 = new MyClass("ぎこ", "はにゃーん");
System.out.println(obj1 + "\n" + obj2 + "\n" + obj1.equals(obj2));

} catch (Exception e) {
System.out.println(e);
}
}
}


---- 実行結果 ----

Hello
Hello
true
MyClass#equals 呼ばれてるよん
MyClass@2f6684
MyClass@738798
true
MyClass@4b222f
MyClass@3169f8
false
00074NGNG
---- 実行結果 ----

Hello
Hello
true
MyClass#equals 呼ばれてるよん
MyClass@2f6684
MyClass@738798
true
MyClass@4b222f
MyClass@3169f8
false
0008デフォルトの名無しさんNGNG
それはオーバライドではなくオーバロードです。
APIドキュメントを見直しましょう。
0009デフォルトの名無しさんNGNG
JLS読め。
00104NGNG
>>8 >>9 レスどうもありがとうございます

とりあえず、こうした

public boolean equals(Object o) {
System.out.println("MyClass#equals(Object) 呼ばれてるよん");
if (o instanceof MyClass) {
MyClass x = (MyClass)o;
return (a.equals(x.a)) && (b.equals(x.b));
} else {
return false;
}
}

けど、気に入らないので引続き調べます。
0011おれも厨房NGNG
>>4=10

基本的なMyObejct.equals(Object o)の実装は以下の流れがいいよ。

public boolean equals(Object o){

 if (this == o) { return true; }

 if (obj != null && this.getClass() == o.getClass()) {

  MyObject mo = (MyObject)o;

  if( ここでthisとmo属性を比較 ) {
   return true;
  }

 }
 return false;

}

特に派生クラスについて考えがないうちは、
instanceofよりgetClass() がいいと思う。
このあたりは「Javaの鉄則」という本にかなり詳しい。
00124NGNG
>>11
ウヒョー、ありがとうございます!!

たしかにここで instanceof を使うとマズイですね、
派生クラスでも true になるときがあるからダメなんだ。

「Javaの鉄則」調べてみたらなかなか良さそうな本だった、今度読んでみます。
こういうTips集を読んで、いろいろ理解した方が良いかも > 自分
0013Java厨房@近況報告NGNG
先日は大変有り難うございました!
自分は、今日からJTable戦線に突入します。

以上
(プツ)
0014デフォルトの名無しさんNGNG
>>13
Swing山塊の中でもJTable戦線は非常にゲリラの抵抗が強い地帯である。

中心にあるJTable山を始め
TableModel岳
TableCellRenderer渓谷
TableEvent回廊 など
守るに易く攻めるに難し地形である。注意されたし。

しかし、貴殿の力をもって慎重かつ大胆にコードーすれば、
やがて、ゲリラも貴殿の配下となり、優秀な部下となってくれるであろう。
健闘を祈る。
0015デフォルトの名無しさんNGNG
コアAPIライブラリ内で、最初はわけがわからんので手をつけ
ない人が多いだろうけど、慣れると楽しいもの一覧

Javaプレイヤーの醍醐味:
java.rmiパッケージ
omg.org.CORBAパッケージ

初級:
java.textパッケージ
javax.swing.tableパッケージ
java.awt.imageパッケージ

中級:
java.awt.dndパッケージ
javax.namingパッケージ

上級:
java.securityパッケージ

穴場:
java.lang.refパッケージ
(使ったことない人多いかも知れないが、実は美味しい)
0016デフォルトの名無しさんNGNG
javax.swing.plafパッケージで、
オリジナルLookAndFeel造ったことある人っています?
0017デフォルトの名無しさんNGNG
>>15
RMI楽しいのか。
今から、サーバー&クライアントを作らねばならなくて、
Socketでシコシコ作るか、RMIか迷ってたんだけど、RMIにしよう。サンキュー

java.rmiパッケージ
omg.org.CORBAパッケージ
java.textパッケージ
javax.swing.tableパッケージ
java.awt.imageパッケージ
java.awt.dndパッケージ
javax.namingパッケージ
java.securityパッケージ
java.lang.refパッケージ

のうち、tableとimageしか使ったことないや。
もっといろんなものを試さねば、、。
0018デフォルトの名無しさんNGNG
javax.swing.text
も面倒。
0019デフォルトの名無しさんNGNG
Windows XPのIEにVMが付かなくなって良かった。
つーわけで、アプレット開発でもSwingを使っていこう。
そのために
http://java.sun.com/j2se/1.3/ja/jre/download-windows.html
http://homepage1.nifty.com/emk/vmselect.html
0020デフォルトの名無しさんNGNG
Windows上でコンパイルし動作確認した JAVA のソースコードを
Unixにもっていき、コンパイルしました。
でも動作結果はWindows版と異なりました。

Windows上でコンパイル済みの CLASS ファイルを UNIX に
もっていって実行したらちゃんと動きました。何故ですか。
0021デフォルトの名無しさんNGNG
コンパイラのバージョンの違いは?
0022デフォルトの名無しさんNGNG
>>20
どんなふうに違うのだろう?
スレッド周りは、気をつけてコーディングしないと全く違った動きになるらしいよ。
002322NGNG
あ、オレぼけてる。VMの動作とかそういう意味じゃないのね、スマソ。
002420NGNG
通信対戦オセロのプログラムだったんですけど、
「どの石がひっくり返せるか」の判定部分の動作が異なっており、
ありえない位置の石が勝手にひっくり返ったりしてたんですが。
通信部分はなんでもなかったです。
0025デフォルトの名無しさんNGNG
>>24
漢字コードの違いが影響しているとか?
単なる思い付きだけど。
0026デフォルトの名無しさんNGNG
それぞれのJDKのバージョンは?
0027デフォルトの名無しさんNGNG
20は典型的なオシエテ君なので放置よろしく>ALL
0028デフォルトの名無しさんNGNG
>>27
すくなくともあんたよりは向上心ありそうだから、継続
002920NGNG
懲りずにレス

>通信対戦オセロのプログラムだったんですけど、
>「どの石がひっくり返せるか」の判定部分の動作が異なっており、

判定部分ってことは、基本的に
【計算・条件分岐・ループ】しかないんだろうなぁ。
確かに、違いがあると思いにくいところではある

決定的に、「この行で○○と××というふうに結果が違うんだ!」といった
目星がつかない状態なのか?>20

あと>26さんのいうJDKのバージョンは、オレも知りたい。
java -version してくれい。
003029NGNG
上の20は間違いで、28=23=24です。やっぱりボケテル、寝ます。
003130NGNG
また間違った
上の28=23=24は間違いで、29=23=24です。

こりゃ冥界にでも逝ってきますわ
003220NGNG
UNIXは学校にあるものを利用しており、なぜかtelnetが繋がらない
ので java コマンドは実行できないのですが
手元にあるプリントに、コンパイラのパスが
/usr/java/jdk1.3.0_02/bin
と書いてあります。

WINDOWS のほうは

java version "1.3.0_02"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.3.0_02)
Java HotSpot(TM) Client VM (build 1.3.0_02, mixed mode)

でした。
0033デフォルトの名無しさんNGNG
booleanの変数名ですが
isTrueとかbe動詞をもてるものは良く使われますが、
動詞だとdoUseとかdoShowになるんでしょうか?
0034デフォルトの名無しさんNGNG
int i = 0
としたときにループを使わずに、
iの数だけ空白文字列を表示することできますか?
0035デフォルトの名無しさんNGNG
>>33
特に変数にはその辺の規定はないみたいだから好きにすれば?
canUseとかmayUseとかhaveToUseとか

SUN公式コーディング規約
http://java.sun.com/docs/codeconv/html/CodeConventions.doc8.html#367
非公式邦訳
ttp://kuro.mdg.human.nagoya-u.ac.jp/~tarbo/jcode/JavaCoding9.html
0036デフォルトの名無しさんNGNG
>>34
String spaces = " ";//必要なだけの長さを持つもの
String result = spaces.substring(0, i);// i は spaces.length()以下
なんてどう?
0037デフォルトの名無しさんNGNG
#define MAXSPCSIZE 1024 //必要な長さだけ用意
char spc[MAXSPCSIZE+1];

void init()
{
  memset(spc, ' ', MAXSPCSIZE);
  spc[MAXSPCSIZE] = '\0';
}

int getspc(char* buf, int size)
{
  if(size > MAXSPCSIZE) return -1;
  strncpy(buf, spc, size);
  return 0;
}

あらかじめinit関数で初期化してgetspcでsize分のスペースを取得
0038デフォルトの名無しさんNGNG
    |うぇーん、まちがえちゃったよー
     ̄ ̄∨ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
      ∧_∧
     (´Д⊂ヽ
    ⊂ 37 ノ
     人 Y
     し (_)
0039デフォルトの名無しさんNGNG
>>36
なるほど、アイデアですね。
とりあえず5文字くらいの空白でいいので、その方法いただきます
0040デフォルトの名無しさんNGNG
IBMのコンパイラ「JIKES」について質問です。
Apache + Resin + JIKES (Linux) の組み合わせで、JSPページに
アクセスすると、"500 Servlet Exception
Charset conversion error at offset 0:
Argument list too long" というエラーが出てしまいます。
JIKESではなくJDK付属のJavacを使うとエラーは出ませんが、
コンパイルにとても時間がかかります。JIKESのエラーは
どうやったら取り除けるのでしょうか? 英語は苦手では
ないのですが、このエラー文の意味がよく理解できません。
0041デフォルトの名無しさんNGNG
>>39
そんな、空白文字の十分な長さのハードコーディングが必要な
ロジックを必要もないのに使うべきではないとおもわれ。
スケーラビリティという言葉の意味を考えれ。

String spaces(int count){
 StringBuffer buf = new StringBuffer();
 for(int i = 0;i< count ;i++)buf.append(" ");
 return buf.toString();
}
0042デフォルトの名無しさんNGNG
みんなの回答はもっともなんだけど、そもそも>>34の書いている
>>int i = 0 としたときに
という前提が激しく気になる。
0043デフォルトの名無しさんNGNG
確かに。
0044ふーんNGNG
Sunは先週,3つの新聞に全面広告を打ち
「Windows XPでJavaプラットフォームがサポートされるようMicrosoftに働きかけてほしい」と
消費者に訴えた。
Microsoftはこれを「前代未聞の偽善行為」と批判している。

http://www.zdnet.co.jp/news/0108/17/e_java_m.html
0045デフォルトの名無しさんNGNG
Sunってわけわかめだね。なにがしたいんだ?
0046デフォルトの名無しさんNGNG
ネガティブキャンペーンの一種じゃないの?
0047デフォルトの名無しさんNGNG
Sunって韓国系企業なのかな?
0048デフォルトの名無しさんNGNG
消費者に見せても意味ないよね。
むしろ、
Javaが不要なものだという認識を植え付けてしまうことになりかねないのに。
0049net.ch2.umaNGNG
JHBの高木は何様のつもりなんだ、
質問者がさらしあげられてるぞ
0050デフォルトの名無しさんNGNG
>>49
プログラマ板逝き。ちなみに高木先生(通称ひろみちゅ)はプログラマ
板でも大人気で、なんとスレッドは Part 7 まで続いてます。

高木浩光先生のスレッド Part7
http://mentai.2ch.net/test/read.cgi?bbs=prog&key=994801263
0051デフォルトの名無しさんNGNG
>>49
まああの人のメールは大人気ないけど、うんざりしているであろう
ことも事実。JHは本当は質問箱じゃないはずだったのに。
ひろみちゅ先生は、最近それは諦めて、一応相手もしてくれている。

検索エンジンのつかいかたも知らない園児ニアは首吊って死ねという
ひろみちゅ先生の意見には同意。
0052デフォルトの名無しさんNGNG
質問なんですが、
String(byte[] bytes, String enc)
のencに入れる文字列の表とかってあります??
0053デフォルトの名無しさんNGNG
>>52
http://java.sun.com/j2se/1.3/ja/docs/ja/guide/intl/encoding.doc.html
0054デフォルトの名無しさんNGNG
ありがとうございます
>53
0055デフォルトの名無しさんNGNG
■■■■■Javaスレ重複のためこちらのスレへ1本化します!■■■■■■
     以後 Java相談室はJava厨房同様 sage進行で願います

こちらへ移動して下さい : ネタ心者歓迎!今更ながらにJavaを学ぼう!
http://piza2.2ch.net/test/read.cgi?bbs=tech&key=993358225&ls=50

■■■■■■■■■■■■■■■■■■hoe■ ひろゆき@管直人■hoe■■
0056メールNGNG

jdk1.1.8です。
net.*を使ってメールを送信するプログラムを作ったのですが、
相手先のメールアドレスが間違っている場合でも送信ができるみたいで、
結果的にSMTP鯖(か?)がエラーメールを返してきてから、あ、メアドが
間違っていたのねん。気づきます。

これを、Javaプログラム上で知る方法はないでしょうか。
(メールを送信するときの送信エラーをキャッチする??)

SMTPの仕様上、どうやっても不可能なことなのでしょうか。
JavaハウスのMLは検索してみましたが、どうも満足できる回答はありませんでした。
0057デフォルトの名無しさんNGNG
>>56
アフォ!あげんな!
0058メールNGNG
>>57
あ、このスレはあげてはいけなかったんですか。すいません、空気よんでいなくて。。。。
というわけで、下げました。ご勘弁を。

今しらべたのですが、JavaMailAPIで、上記のことが実現できるかどうかを
考えていたのですが、はじめて知ったので調べるのが大変そうです。。ご存知の方いらっしゃいませんか。
0059sageNGNG
こちらで聞き直してください。おねがいしますです。。。

■■■■■Javaスレ重複のためこちらのスレへ1本化します!■■■■■■
     以後 Java相談室はJava厨房同様 sage進行で願います

こちらへ移動して下さい : ネタ心者歓迎!今更ながらにJavaを学ぼう!
http://piza2.2ch.net/test/read.cgi?bbs=tech&key=993358225&ls=50

■■■■■■■■■■■■■■■■■■hoe■ ひろゆき@管直人■hoe■■
0060デフォルトの名無しさんNGNG
無理に誘導しなくてもいいと思うのだけど。
スレが終わりそうになったら合流すれば?
0061デフォルトの名無しさんNGNG
と言うか普通に考えてこっちが本スレなのに
なんであっちに移動するんだ?
0062 NGNG
こっちの方が古いし、ネタは歓迎したくないのでこちらにしたら?
0063デフォルトの名無しさんNGNG
>>62
じゃあネタを書くところがなくなるじゃん。
統合はできないね。
0064デフォルトの名無しさんNGNG
普通の質問 -> こっち
ネタ心者 or DQN質問 -> あっち
でいいんじゃないの?
0065名無しさん@XEmacsNGNG
ジャワハウスの高木さんコアイのですが、
なんとかなりませんか?
0066 NGNG
あなたの場合は、ここ
http://mentai.2ch.net/test/read.cgi?bbs=prog&key=994801263&ls=50
とかに相談したほうが良いかもしれません。
0067デフォルトの名無しさんNGNG
>>64
オレもそう思う。

ネタ心者スレ と 相談室 は用途がかなり違うと思うよ。
雰囲気も違うし。

というわけで、統合しないでいいだろ。
0068デフォルトの名無しさんNGNG
>>64
本来その筈だったのに
その使い分けが破綻してるんだよね。
位置づけとしては
相談室→本スレ
ネタ心者→派生スレ
って印象なんだけど。

とりあえずどっちかのスレが終わるまで待って
その後統合したらいいのでは?

新スレは「Java相談室 Part5」で良いと思うけど
そこは立てる人の判断と言うことで。



仕切りスマソ。
0069デフォルトの名無しさんNGNG
ほとんどネタ心者 or DQN質問だから使い分けできないのは仕方ないと思う。
どちらにするかはともかく、統合で良い。
0070デフォルトの名無しさんNGNG
次スレタイトルを
Java相談室(上級編) Part5
とでもすればよい。
0071デフォルトの名無しさんNGNG
>園児ニア
どうでもいいがワラタ。拙者も使わせて頂きたく。
0072デフォルトの名無しさんNGNG
JAVAのグラッフィクライブラリにAWTというのがありますが、
これは通常の会話でなんと読むのでしょう?
Swingは「スウィング」ですよね?
AWTは「アウト」?
0073デフォルトの名無しさんNGNG
そう
0074デフォルトの名無しさんNGNG
アワット
0075デフォルトの名無しさんNGNG
JUMP TO .NETっていつβ版とかまだリリースされていませんか?
情報求む!
0076デフォルトの名無しさんNGNG
今時Javaを初めて学ぶっつーこと自体ネタだ・・
しかもネーミングにひねりのない *相談室 をsageるのは納得
Java相談室(上級)==JavaHouse==ぶ板ひろみちゅスレでよし!
よってsage
>>72 ネタ?
0077デフォルトの名無しさんNGNG
76がむかつくのでage.
0078デフォルトの名無しさんNGNG
煽りにのったら負けだよん。無視無視。
0079デフォルトの名無しさんNGNG
>>47
Sunは副社長が印度人じゃなかったかな?
0080デフォルトの名無しさんNGNG
>>76はコボラーだと仮定してみる
0081デフォルトの名無しさんNGNG
中級編も作ってクダサイ
0082saNGNG
javaのアプリで実用的なものつくった人いますか?
0083デフォルトの名無しさんNGNG
マターリイコウヨ sageでね
0084デフォルトの名無しさんNGNG
Javaやっているうちに、昔さんざんやっていたC/C++のソースを見ても、
なにがなんだか解らなくなっている自分に気がついたのですが・・・
皆さんはどうですか?
0085デフォルトの名無しさんNGNG
>>82
今まさに作ってるよ。
正月くらいに完成する予定。
初期出荷はたぶん1万台くらい。
0086デフォルトの名無しさんNGNG
SunOfficeの開発はどうなってますか?
0087デフォルトの名無しさんNGNG
Javaアプレットで以下のソースを実行すると
java.lang.NullPointerException
at java.awt.Container.addImpl(Container.java:341)
at java.awt.Container.add(Container.java:228)
at UnitPict.init(UnitPict.java:126)
at sun.applet.AppletPanel.run(AppletPanel.java:344)
at java.lang.Thread.run(Thread.java:484)
のエラーとなるんですがこんなことはできないのでしょうか?

<ソース>
import java.awt.List;
public class test extends java.applet.Applet {
private List[] list;
public void init () {
int i;
for(i = 0; i < 5; i++){
add(list[i]);
}
}
}
0088デフォルトの名無しさんNGNG
>>87
Appletってあまりしらないけど、
listってどこかでnewしてる? list[i]もね。
008987NGNG
すいませんソース再度アップします。
newはしてます。

import java.awt.List;
public class test extends java.applet.Applet {
   private List[] list;
   public void init () {
      int i;
      list = new List[5];
      for(i = 0; i < 5; i++){
         add(list[i]);
      }
   }
}
0090デフォルトの名無しさんNGNG
>>90
「配列のnewではその各要素のnewまではなされない」↓のです。
http://java-house.etl.go.jp/ml/archive/j-h-b/001880.html#body

配列をnewした後、配列の要素を一個ずつnewしなきゃ駄目です。
add(list[i]);
の前に、
list[i] = new list();
とでもすればいいのかな。(未確認)
009187NGNG
なるほどできました。
これで前にすすめます。
0092デフォルトの名無しさんNGNG
awtよりswing使ったら?
0093デフォルトの名無しさんNGNG
この質問はここでよいのかな?
Javaのリファレンス本が欲しいんですが、何がお勧めでしょう?
目をつけてるのはオライリージャパンの虎の本なんですが、
あれって分冊でGUIなどを扱う訳本はまだでてないですよね?
なお、オンラインドキュメントは無しの方向でお願いします。目が疲れます。
0094デフォルトの名無しさんNGNG
>>93
そちらのレベルにもよると思うが?
009593NGNG
>>94
Javaは初心者です。VC++は使うけどオブジェクト指向とは無縁で、
実質Cとして使ってます。コンソールで用は済んでますからね。
今回Javaを使う理由は、主に勉強のためです。
半年後にJavaアプリケーションの簡単なゲームをフリーで公開できる、
てのを目標にしてます。
0096デフォルトの名無しさんNGNG
>>93
アプレットじゃなくてアプリケーションですか。
009793NGNG
>>96
そうです。アプレットだとローカルに保存とかできないし、
別にネットゲームを作りたいわけではないですし。
0098デフォルトの名無しさんNGNG
JavaAPIプログラミングガイドって本使ってるけど古いからなぁ。
0099デフォルトの名無しさん01/08/26 19:54ID:lQ/95D7.
あの分厚い本全部買え
0100デフォルトの名無しさん01/08/26 23:13ID:EpqnIirY
>>93

Swingだけなら、ソフトバンクから出ている
「速習Java Swingプログラミング」
がいいと思う。

これで概略を知って、
細かいところはオンラインリファレンス
というパターンがいいのでは?
01019301/08/27 03:34ID:p5SEei1c
あ、IDがついた。

回答ありがとうございます。
全部…だと結構お金がかかりそうなので貧乏学生には厳しい…。
とりあえず>>100のお勧めを考慮して本屋へ行ってきます。
0102デフォルトの名無しさん01/08/27 05:50ID:8jNUMhPQ
>>101
貧乏でもひまがある学生には、言語仕様だけ理解したら、あとはAPI
ドキュメントとにらめっこしながらトライアンドエラーで片っ端から
試してみるのが良いと思われ。

どうせ入門書なんて、java.awt.*,java.lang.*,java.io.*あたりの
ライブラリのうちのほんのちょっとくらいしか説明していないと思われ。

ネットワーク関係とマルチスレッド関係は、Java言語に拠らないので
抽象的な概念レベルは他で勉強するのもあり。
0103名無しさん01/08/27 12:37ID:0AZt6oQw
dwaImageしたgifに、カラーキー(みたいの)
を適用できる関数の名前をおしえてください。
0104デフォルトの名無しさん01/08/27 14:24ID:iwLjBB9c
>>103
dwaImageしたgifって何?
カラーキー(みたいの)って何?
0105デフォルトの名無しさん01/08/27 15:52ID:hwuGtq3c
>>103
createImageで取得したBufferedImageはカラーキーをもてないはず。
別のアプローチで行きませう。
010610301/08/27 16:57ID:0AZt6oQw
え、できないんですか?
それじゃ、どーすりゃいいんだ・・・・
010710301/08/27 18:56ID:0AZt6oQw
あの、いま、gifをフォトエディタで開いて、透過色を指定したら、
そのまま透明になったみたいなんですが、
プログラムの方では指定する必要はないんですか?
0108デフォルトの名無しさん01/08/27 19:44ID:q2h0e7iE
>>93
GUI(Swing)やるんなら グラフィックJAVA2 Vol.2 Swing編 上巻・下巻
が良くできていると思います。
あとは、トラよりもワニの方がいいかなぁと。
トラ = JAVAクイックリファレンス (現在 第3版?)
ワニ = JAVAプログラムクイックリファレンス

トラ読むのも、オンラインリファレンス読んでも一緒。
ワニは、ちと内容が古いけれどもね。
0109デフォルトの名無しさん01/08/27 20:28ID:iwLjBB9c
>>107
言っている意味が不明だけど、gifイメージを読み込んで、その背景を
透明にしたい、とか言うこと?
BufferedImageはアルファ値を含んでいるので、これを0にすれば透明
になるけど、gifから読み込んだ画像の特定の色を透明にするには、多
分IndexColorModelなんかをいじる必要があると思うよ。
まあ、頑張ってね。
0110 01/08/27 20:39ID:6Dum1ROk
>>108
あの本って、画像に某アニメの物を小さく使用してるけど、
著作権上問題ねーのかな?
0111デフォルトの名無しさん01/08/28 00:06ID:YyraRtmM
>>93 ここ逝け
http://www.kg-group.com
0112デフォルトの名無しさん01/08/28 02:41ID:Zh6hAVDo
SDK1.3+Windows98の話です。

JFrameを拡張したクラスに以下のメソッドを付けました。
Windowを閉じるときに、本当に閉じても良いか確認をする為の
ダイアログを表示しようと思ったからです。

protected void processWindowEvent(WindowEvent e){
  if (e.getID() == WindowEvent.WINDOW_CLOSING) {
    int i = JOptionPane.showConfirmDialog(
      getContentPane(), "終了しますか?", "確認", JOptionPane.YES_NO_OPTION);
    if(i != JOptionPane.YES_OPTION) return;
  }
  super.processWindowEvent(e);
}

しかし、実行すると「Javaのページ違反です」というエラーが出てしまいます。
何か対処方法や別なやり方があるでしょうか?
01139301/08/28 04:02ID:2e02HzLc
色々お答えいただいてありがとうございます。
まだ本屋は行ってないんでお勧めいただいた本やサイトを
チェックしてみます。
オンラインは検索性では優れてるんだけど読みやすさでは
厳しいですね。読む場所もラックの前に限られますし。
まあ一長一短なのでどちらか一方というのではなく
適宜使いやすい方を使っていきます。
0114デフォルトの名無しさん01/08/28 10:35ID:KIHiAtKE
>>112
Windows98はないので、Windows2000で確認しましたが、問題は出ません。
多分、コードの問題より、環境の問題ではないでしょうか。
javaのページ違反って、よくIMEとの相性で発生していた気もします。
011511201/08/28 12:14ID:18PS4fPM
>>114
そうですか。ワザワザテストまでしてもらって有難う御座いました。
0116デフォルトの名無しさん01/08/28 14:52ID:9tYsESVU
フリーソフトで、Javaのコードから、UMLのシーケンス図を自動生成する
のありません?
0117デフォルトの名無しさん01/08/28 18:15ID:cbSdBiME
>>116
あるとしたら、すごいUMLになるほげ。
0118デフォルトの名無しさん01/08/28 23:47ID:yKYsvzrg
>>116
IIOSSでできるよ。
0119デフォルトの名無しさん01/08/29 06:19ID:PAVB.Id.
JPanelにJButtonなどを入れてremoveした後repaintすると表示が消えたんですが
その後に他のJButtonなんかをaddしても表示されないっす!
ウィンドウサイズを手動で変更すると表示されます
組込んだボタンを表示させるにはどうしたらいいのですか?
0120デフォルトの名無しさん01/08/29 06:54ID:J4d5NCoo
>>116
MagicDrawは、うまくいかないことが多いよ。
複雑なクラスを読み込ませると、解析不可になる。
0121デフォルトの名無しさん01/08/29 06:57ID:J4d5NCoo
>>119
その場合、
Jpanel.validate()
じゃないか?
012211901/08/29 07:00ID:PAVB.Id.
>>121
ありがと!
さっそくやってみる
012311901/08/29 07:04ID:PAVB.Id.
>>121
出来た
感激です
0124デフォルトの名無しさん01/08/29 07:43ID:j0A/fmuE
結城 浩さんの「Java言語プログラミングレッスン��」を読んでるんですが
56ページのthis("NO NAME")の意味がわからなかったが
独習javaを立読みしたら意味がわかった(金ない)
0125デフォルトの名無しさん01/08/29 09:53ID:U4n7tREo
>>124

thisやsuperで?になるなら、
正直、金を借りてでも、
もう1冊本買って、Javaの全体像をつかんだ方がいいと思う。
012612101/08/29 09:55ID:U4n7tREo
>>119
「Javaの落とし穴」の第31項そのままの問題っす。
(Javaの落とし穴 --ソフトバンクパブリッシング ISBN4797313587)
0127デフォルトの名無しさん01/08/29 10:43ID:FJKf36QE
仕事上、iアプリをやる羽目になってしまいました。
しかし携帯の端末IDを取得する方法がわからず、かなり困っています。
ご存知の方、いらっしゃったら教えてください。お願いします。
検索しても、HTMLタグで取得する方法しかヒットしないし・・・泣きたいです。
0128DB01/08/29 16:08ID:6xt9nRfo

SQL Server 7.0(2000)をJDBCでアクセスしたいのですが、ODBC-JDBCブリッジでなく、
NativeのJDBCドライバ(SQL Server用)というのは、ないのでしょうか。
0129デフォルトの名無しさん01/08/29 21:02ID:MMa2AA9g
初歩的な質問です。
なぜ、Javaには unsigned な型がないのでしょうか?
0130デフォルトの名無しさん01/08/29 21:16ID:7L0go79A
unsignedな数値が入っている型はないわけじゃないよね。
0131デフォルトの名無しさん01/08/29 21:24ID:GpMNQkHk
>>128
うーむ。SQL Server用 TYPE 4 ドライバは有料のものしかなかった気がする。
とりあえず ↓ で探してみて。
http://industry.java.sun.com/products/jdbc/drivers

WebLogicは期限付き体験版をダウンロードできるので
以前、SQL Server 7.0 の接続を試したことあります。
けど、期限が切れたら ODBC-JDBC TYPE 1 に変えちゃったなぁ。
013211901/08/29 22:09ID:eftNAd.2
>>121
何から何までアリガト!
さっそく購入します
0133デフォルトの名無しさん01/08/29 22:31ID:JwGymOpM
SoftRefferenceが参照クリアされるタイミングって
コントロールできないでしょうか?

オンメモリキャッシュを実装したいのですが、Soft
Refferenceをそのまま使うと、自分にとっては都合の
悪いタイミングでクリアされてしまうので、意味なく
なってしまいます。
013412401/08/31 03:45ID:VsZf0TtE
>>125
プログラムは最近始めたんで、わからないことばっかですん

> thisやsuperで?になるなら、
> 正直、金を借りてでも、
> もう1冊本買って、Javaの全体像をつかんだ方がいいと思う。
どんな本を買えばいいですか?
そこんとこを、もう少し詳しく教えてくださいm(__)m
013512501/08/31 14:34ID:g32sIM5c
>>134
オレは高いけど、この本がおすすめ
「Bruce EckelのJavaプログラミングマスターコース(上・下)」
ISBNは、 上が4894711443 下が4894711451
でもね、、、、高いんだ。(上・下)で\9000くらいする。

とりあえず、124さんのレベルを見る限り、上巻だけでいいかも知れない。

「この本見て、分かんなかったらJava諦めろ」とオレは断言してぇ。

この本の特徴は、とにかく例題がめちゃめちゃ多いこと。
使い方は、ひとつひとつ例題を読んで、
頭の中でどういうふうに実行されるのか、追うこと。

ただし、実行結果の図がないから、それは不満。
(しかし、その分、ソースコード追いに熱中?できる)

書店の棚では、多分置いてない。
置いてあるのは、Laoxのザコム1階とか書泉とか、そんな感じっす。
013613401/08/31 18:32ID:Oqg4yKRI
>>125
昨日が誕生日だったん出
誕生日プレゼントとして買ってもらいます。
0137デフォルトの名無しさん01/08/31 19:46ID:3vYzxI62
アプリケーションで、drawString使って、
日本語表示(SJIS)したいんだけど、
文字化けしてしまいます。Byteに入れてから
元に戻す方法もやったけど、ダメでした。なぜにでしょう?
0138デフォルトの名無しさん01/08/31 20:34ID:ZJ8uYfJs
Unicodeにしとけ。
0139漏れ01/08/31 22:33ID:pE65iCCQ
>>135
漏れもその本に一票
0140デフォルトの名無しさん01/08/31 23:36ID:l23fvLAE
>>137
文字列コード変換はJDK1.4にあると思うよ。1.4β使ったら?
0141デフォルトの名無しさん01/09/01 00:01ID:vKcNWrFA
>>137
アプリケーションでなぜSJISを表示する?
014213401/09/01 16:58ID:XhGErCWU
>>135
おしえてくれて、ありがとう。
014313701/09/03 11:42ID:CwY//GjA
>>140,141
開発の制限で、JDK1.3.1縛りなので・・・。
と言うか、Linux上のアプリで、文字化けさえ直って
くれれば問題ないのですが、Win2000では、ちゃんと表示できたんだけど
String st = "ほげ"として、Byte化するときに"EUCJP"にして取り込んで
String("ほげ","EUCJP")として表示したけど、まずいっすか?
0144デフォルトの名無しさん01/09/03 14:03ID:OdRBrtXY
>>143 環境変数 LANG=ja_JPはちゃんと設定してる?
っていうか自分がかつてこれでハマッタ(汗
それから日本語フォント関係とかも要チェックかも
(自分も良く分かってないんだけど)

ちなみに最近のオラクルはインストーラがJavaなんだけど
ORACLE8をVineLinuxFTP版にインストールしようとしたら
日本語フォントが足りないらしくてぐちゃぐちゃに文字化けした
その時はLANG=Cでにして英語モードにしてインストールした
0145.01/09/03 20:14ID:M6keYyO2
<html>
<head><title>kuidhfv</title>
</head>
<body>
<SCRIPT Language="javascript">
<!--
function inputCheck(strName) {
if (strName == "") {
window.alert("?");
} else {
window.alert("[" + document.from1.txtName.valur + "]");
}
}

//-->
</script>
<center>
<br>
<from name = "from1">
<input type="text" size="40" name="txtName">
<input type="button" value="CLICK" onclock=inputCheck(document.from1.txtName.value)>
</from>
</center>
</body>
</html>
これのいったいどこがいけないノデ?
誰か教えてくれないノデ?
0146デフォルトの名無しさん01/09/03 20:35ID:fa0ZOwho
>>145
激しく板違い
014714501/09/03 22:38ID:RA.qLofM
誰か教えてくれないノデ?
0148デフォルトの名無しさん01/09/04 00:19ID:wt87u7r2
はじめまして。ぜんぜんド素人なんですけど、
Javaって何かパッケージソフトみたいなの
買わないといけないのですか。
また、もしそうなら値段高いですか。
014914801/09/04 00:30ID:wt87u7r2
スミマセン、スレ違いですね。
すれ立てるまでも〜スレにコピペしまーす。
0150学生01/09/04 01:57ID:sYlbmBZA
Javaの開発環境にForteかJBuilderかで悩んでます。
どちらがオススメですか?
0151デフォルトの名無しさん01/09/04 02:45ID:Q.T9Ixn.
>>150
私はJBuilderを使って勉強しておりForteは使ったことないんだけど
どっちも無料で試せるよね?(確か
試して好きなほう使えばいんじゃないですか
しかしながら個人でちゃちいプログラムしか組めてないので
開発環境はGUI部分だけ使っってたりする・・・
0152デフォルトの名無しさん01/09/04 03:48ID:HvJfdEUA
>>150
両方使ってみて、自分の好みを選べばいいと思うけど、
オレはJBuilder派。
エディタとしての動きが秀逸だと思う。
0153デフォルトの名無しさん01/09/04 05:36ID:aP.zwmOM
Forte重い。
やっぱ、メモリ128Mしか積んでないからか。。。
0154学生01/09/04 08:44ID:sYlbmBZA
そんなに重いんですか?
僕のPCもメモリ128Mなんですが・・・
0155デフォルトの名無しさん01/09/04 10:44ID:x6d7eKIA
>>150 学生
最初はJDK+使い慣れたエディタで十分。もちろんタダ
ドキュメントもちゃんとダウンロードしとけよ
http://java.sun.com/j2se/1.3/ja/
http://java.sun.com/j2se/1.3/ja/docs.html
0156デフォルトの名無しさん01/09/05 00:44ID:FfgftmWM
>>154
アプリケーションサーバーとウェブサーバも動かしながら
使ってるから重いのは仕方ないと思うが、確か推奨256M
だったと思う。
>>155
同感
0157学生201/09/05 06:48ID:H6UTYNUo
>>155,156
なぜドキュメントを、DLしなきゃいけないんですか?
ドキュメントってナニに役に立つのやら・・・・・
0158デフォルトの名無しさん01/09/05 06:52ID:RgMRPKXI
>>157
頼む、ネタだと言ってくれ。
0159デフォルトの名無しさん01/09/05 08:35ID:64a.ANYA
ものすごく記憶力の良い奴なんだろう
0160学生301/09/05 09:28ID:ClRjd6/6
APIドキュメントやらチュートリアルなしにどうやんだYO!
コピペできないじゃんかYO!
0161学生201/09/05 11:36ID:9QIzIM3g
>>158
ネタじゃないっす。
0162デフォルトの名無しさん01/09/05 11:37ID:qZJvlE5Y
>>157
2ch=AIドキュメントだと思ってるな貴様
たっぷり煽り騙りを入れてやるから覚悟しろ!
0163デフォルトの名無しさん01/09/05 11:55ID:2jrQB/6A
>>157
まず落としてみなよ。役に立つから。
ナニの役に立つものが欲しいなら、その後で半角板に行きなよ
なよ。
0164デフォルトの名無しさん01/09/05 12:55ID:ItVgRyKg
彼はきっとドキュメントの内容をすべて記憶している
天才なのですよ。
0165初心者A01/09/05 13:52ID:01yEZVP6
ライブカメラ映像を表示するJavaアプレットの作り方教えて下さい!
参考になるHP知ってたら教えて!
お願いします。
0166(・ε・)01/09/05 14:46ID:2jrQB/6A
>>165
1から作るのはかなり大変だよ。
WindowsMediaとかReal使えば?
0167デフォルトの名無しさん01/09/05 15:28ID:iUZCS8gE
>>165-166
というか、そういう機能を持ったJavaBeanがガイシュツで流通していれば一発解決なんだろうな。
ついでにソースも有りならば(後から)勉強する役にも立つんで超ウマー

で。
delでいうDelphianWorldみたいに、JavaBeanを山ほど集めたwwwサイトって、
どっかに有ったら教えてくださいm(__)m
0168デフォルトの名無しさん01/09/05 15:52ID:DtBIACGY
MacでJavaアプレットの読み込みが遅いんで困っています。
Macでjavaアプレットを読み込むと最初のinit()が開始されるまで約5秒程度かかります。
ちなみにWindowsだと表示まで1秒もかかりません。
環境はIE4.5+MRJ2.2.4を使用してます。
ためしにHotJava(英語版)をダウンロードしてみましたがこちらだと2秒程度で表示してくれます。
今の環境でなにか解決する方法はないでしょうか?
0169デフォルトの名無しさん01/09/05 16:10ID:64a.ANYA
>Windowsだと表示まで1秒もかかりません
ネスケでやってみよー
遅くて普通、アプレットなんてそんなもんだ
0170lisper01/09/05 17:03ID:K4QyhwUw
ドラッグ&ドロップの実装のメカニズムがわからん
誰か教えてー
0171デフォルトの名無しさん01/09/05 17:12ID:qZJvlE5Y
>>170
既に見てるかもしれないけれどとりあえず、、、
ttp://www.dmz.hitachi-sk.co.jp/Java/Tech/transferable/index.html#dnd
0172lisper01/09/05 19:53ID:K4QyhwUw
>171
上のページ見てもわからんし、リファレンス見てもよくわからんのです。
わかりやすい日本語で噛み砕いて説明してくれませんか?
0173学生201/09/05 20:12ID:cK/uBqXs
>>164
メールアドレス見てね★
0174_01/09/05 20:58ID:5Rk4ItjA
>>167
>delでいうDelphianWorldみたいに、JavaBeanを山ほど集めたwwwサイトって、

http://www.javacats.com/JP/search/index.html
JavaBean じゃないけど、けっこう役に立つよ。
0175デフォルトの名無しさん01/09/05 21:57ID:apkAnBaA
JDK1.4ベータを試したいんですが、今使ってるJDK1.3はアンインストールしないと駄目ですか?
0176デフォルトの名無しさん01/09/05 21:59ID:3DS2pgNU
ドラッグ&ドロップって、JavaWorldに最近載ってたような。
0177デフォルトの名無しさん01/09/06 06:49ID:OxoGCL8A
>>170
176に同意、あれはわかりやすくて良かったよ
0178afro01/09/06 19:37ID:Xp5cqXJw
ごめんください。
Observableの使い方が申し訳なくも全然分かりません。

Observable 継承したクラスの、ボタンのActionListener 内
setChanged();
notifyObservers(this.vector);

別クラス implements Observer
update(Observable obs, Object o){
this.vector = o;
}

エラーはでてないけど、Observerの方に値が届いていないくさいっす。
これは、Observable の使い方がおかしいのか、Vector の使い方がおかしいのか、
結局、一人では何が何なのかわかりません。
時間のある方、誰か助けてください・・。
0179164NGNG
>>173
メールアドレス見てね★
0180スポイラーNGNG
どんぞ。>>170
おれはいいかげんな説明のwebページにやられてたクチ。

final DropTargetListener dtl = new DropTargetListener() {
public synchronized void dragEnter(DropTargetDragEvent dtde) {
/**/System.out.println(count() +" dragEnter");
}
public synchronized void dragExit(DropTargetEvent dte) {
/**/System.out.println(count() +" dragExit");
}
public synchronized void dragOver(DropTargetDragEvent dtde) {
/**/System.out.println(count() +" dragOver");
}
public synchronized void drop(DropTargetDropEvent dtde) {
/**/System.out.println(count() +" drop");
// (1)対象物のサポート可能性を判定する。dtde.isDataFlavorSupported()。
if (dtde.isDataFlavorSupported(DataFlavor.javaFileListFlavor)) {
// (2)ドロップを受け入れるか、または拒否する。dtde.acceptDrop()またはrejectDrop()。
dtde.acceptDrop(DnDConstants.ACTION_COPY_OR_MOVE);
// (3)(受け入れた後に)データ変換。tr = dtde.getTransferable()、tr.getTransferData()。
final Transferable tr = dtde.getTransferable();
//
try {
final java.util.List fileList; {
fileList = (java.util.List)tr.getTransferData(DataFlavor.javaFileListFlavor);
}
/**/System.out.println("files = "+ fileList);
// (4)(完了時に)ドロップの成功または失敗を通知。dtde.dropComplete()。
dtde.dropComplete(true);
} catch (Exception ex) {
// (4')〜。
dtde.dropComplete(false);
}
} else {
// (2')〜。
dtde.rejectDrop();
}
}
public synchronized void dropActionChanged(DropTargetDragEvent dtde) {
/**/System.out.println(count() +" dropActionChanged");
}
//
private int count = 0;
private int count() {
return ++count;
}
};
0181デフォルトの名無しさんNGNG
>>178
よくわからんが、Observableを継承したクラスの方で、
ちゃんとaddObserver(Observer o)をやってるよね?
0182スポイラー2ndNGNG
同じよなやりかたでうまくいったけど?>>178

import java.util.*;

class Observee extends Observable {
private Vector vector = new Vector ();
public void makeSomeChanges () {
vector.add ("(blah, balh, bhal..)");
vector.add ("(something newly added)");
setChanged ();
notifyObservers (vector);
}

public static void main (String[] args) {
final Observee observee = new Observee ();
final Observer observer = new Observer () {
public void update (Observable o, Object arg) {
System.out.println ("observer.update() has called");
System.out.println (" arg = "+ arg );
}
};

observee.addObserver (observer);

observee.makeSomeChanges ();
}
}


$ javac Observee.java
$ java Observee
observer.update() has called
arg = [(blah, balh, bhal..), (something newly added)]
$
0183class noNameNGNG
こんばんは。
Java勉強し始めたばかりです。
ドキュメントやWebで調べたのですが、解決できなかったので教えてください。

class replaceTest{
public static void main(String[] argc){
String s1 = new String("Yahoo! Japan");
System.out.println(s1);
System.out.println(s1.replace('Yahoo!', 'google'));
}
}
上記のコードだと私が望む結果は、
google Japanと表示されることなのですが、
「replaceTest.java:5: 文字リテラルが閉じられていません。」
というエラーが出てしまいます。
どこがいけないのか、ご教授ください。
0184優しいおにいさんNGNG
charとStringは全く違います。
charは1バイト。文字列は扱えません。
0185デフォルトの名無しさんNGNG

すいません、初心者です。

先日「速習JavaSwingプログラミング」なる本を入手して早速APIドキュメント、及び他のJava参考書
をゲットし、色々勉強しながらswingのフレームのところを勉強しています。

この本の45ページからあるSwingのレイヤードペインに内部フレームを乗せる、というプログラムで
下記の不具合が出て、その原因が分からず苦慮しています。
<プログラムの概要:ボタン(JButton)を押すと内部フレームがレイヤ層(全部で5層)に表示される。>
<不具合>
・フレームは表示されるがボタンを押してもその内部のレイヤに表示される(という)内部フレームが
 表示されない
<対策>
・ソースの見直し
・当該書籍に付属のCDROMにあるソース(このプログラムのソース)をそのままコンパイルしても不具
合解消せず。
<私の環境>
・JDK ver1.3.1
・Windows
・エディタ:フリーのエディタ(SJIS仕様)

 エラーメッセージでも出ればやりがいがあるのですが、何も表示されません。(鬱
 またこの書籍はJDK1.2の環境を前提に考えられているようですので、もしかしたら仕様の違いなので
しょうか?
 このエラーでずいぶん勉強していますが、正直そろそろ答えを知りたいと思います。
 教えて君ですが、どうかこの不具合の解消方法を教えて下さい。
 (必要あらばソースも掲載します。ただ少々長いかもしれませんが・・・100行弱)
0186デフォルトの名無しさんNGNG
>>184
javaのcharは2バイト。

>>183
replaceは文字列の中の特定の1文字を別の1文字に変えるメソッド。
System.out.println(s1.replace('!', '?')); ==> "Yahoo? Japan"
↑こういう風に使う。
もちろん、望む結果にはならない。
特定の文字列を別の文字列に変えるメソッドは……
探したけど見付からなかったな
0187優しいおにいさんNGNG
ソース貼ってください。
0188優しいおにいさんNGNG
>>186
そうでしたね。'\u0000'〜'\uFFFF'ですね。すみません。

文字列replaceはStringクラスに存在しないので、僕は
専ら自作メソッドつかってます。
0189デフォルトの名無しさんNGNG
>>186

> 特定の文字列を別の文字列に変えるメソッドは……
> 探したけど見付からなかったな

作るのはたいしたことないけど,「え?こんなの無いの?」って感じだね。
0190186NGNG
String って文字列定数で変更できない文字列のはずなのに
何で、replace メソッドが備わってるの?

> 特定の文字列を別の文字列に変えるメソッドは
> 探したけど見付からなかったな
自己レスだけど、いろんなアルゴリズムがあるから、だよね
0191185NGNG
>>187
早速有難うございます。すいませんソースですが、どうも
・長すぎる
・改行が多すぎる
とのエラーが出て、書きこみ出来ないようです。
いくつかのスレに分割すればいいのでしょうが、そうすると他の皆さんに
ご迷惑がかかるのでやや憚れます。それでも乗せても良いですか?
0192優しいおにいさんNGNG
では、半分ずつをsageでどうでしょう。
0193185その1NGNG
import javax.swing.*;
import javax.swing.border.*;
import java.awt.*;
import java.awt.event.*;
import java.util.*;

public class TJLayeredPane extends JFrame implements ActionListener {
JButton button;
JLayeredPane layeredPane;
static int frameCount = 0;
static final int xOffSet = 25;
static final int yOffSet = 25;
int numFrames = 1;
Integer[] layerConstants = { JLayeredPane.DEFAULT_LAYER,JLayeredPane.PALETTE_LAYER, JLayeredPane.MODAL_LAYER,JLayeredPane.POPUP_LAYER, JLayeredPane.DRAG_LAYER };
String[] layerNames = { "Default Layer", "Palette Layer","Modal Layer", "Popup Layer","Drag Layer" };
Vector framesVector = new Vector();

public TJLayeredPane(){
super("TJLayeredPane");
JPanel panel = new JPanel(new GridLayout(3,3));
panel.setBorder(BorderFactory.createTitledBorder("Click the Specific Button to Add Frames or Clear Frames"));
for (int i=0; i<layerNames.length+1; i++) {
if (i < layerNames.length) {
button = new JButton("Add to "+layerNames[i] );
button.setActionCommand(layerNames[i]);
} else {
button = new JButton("Clear the Frames");
button.setActionCommand("Clear");
button.setForeground(Color.red);
}
button.addActionListener(this);
panel.add(button);
}
getContentPane().add(panel, BorderLayout.SOUTH);
layeredPane = getLayeredPane();
addWindowListener(new WindowEventHandler());
setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
setSize(400, 400);
show();
}
0194185その2NGNG
public void actionPerformed(ActionEvent e) {
JButton tempButton = (JButton) e.getSource();
if (tempButton.getActionCommand() == layerNames[0]) { // for default layer.
addInternalFrame(0);
}
else if (tempButton.getActionCommand() == layerNames[1]) { // for palette layer.
addInternalFrame(1);
}
else if (tempButton.getActionCommand() == layerNames[2]) { // for Modal layer.
addInternalFrame(2);
}
else if (tempButton.getActionCommand() == layerNames[3]) { // for pop-up layer.
addInternalFrame(3);
}
else if (tempButton.getActionCommand() == layerNames[4]) { // for Drag layer.
addInternalFrame(4);
}
else if (tempButton.getActionCommand() == "Clear") {
for (Enumeration enum = framesVector.elements();
enum.hasMoreElements();) {
((JInternalFrame) enum.nextElement()).dispose();
}
frameCount = 0;
}
}
public void addInternalFrame(int index) {
JInternalFrame iFrame = new JInternalFrame(
"In " + layerNames[index],
true, // can be resized
true, // can be closed
true, // can be maximized
true); // can be iconified
framesVector.addElement(iFrame);
iFrame.setLocation(xOffSet*(frameCount),yOffSet*(frameCount++));
iFrame.setSize(200,150);
iFrame.setDefaultCloseOperation(iFrame.DO_NOTHING_ON_CLOSE);
iFrame.setFrameIcon(new ImageIcon("smiley.gif"));
layeredPane.add(iFrame, layerConstants[index]);
}
class WindowEventHandler extends WindowAdapter {
public void windowClosing(WindowEvent evt) {
System.exit(0);
}
}
public static void main(String[] args) {
TJLayeredPane frame = new TJLayeredPane();
}
}
0195185NGNG
以上2つです。宜しくお願いします。>優しいおにいさん様
0196優しいおにいさんNGNG
JInternalFrameの可視化をしてないですね。

addInternalFrame()ので、最後に
iFrame.setVisible(true)してみましょう。
0197優しいおにいさんNGNG
しまった、上げてしまった。ごめんなさい。
0198デフォルトの名無しさんNGNG
>>190
この文字列内にあるすべての oldChar を newChar に置換した結果生成される、新しい文字列を返します。
だから、変更するんじゃない。

StringBufferのreplaceも文字列置き換えとはちと違う。
0199lisperNGNG
センキュ>176,177,180

今GUIのFTPクライアント作ってんの。
完成したらソースフリーで公開するね。
0200185NGNG
>>196
やっと解決しました。ありがとうございました!
しかしsetVisbleメソッドは一度APIドキュソメントで見たはずなのに・・・
まったく使い方分かってなかったようですね。逝ってきます。
あと長いソースでご迷惑をおかけしました。>皆様
0201183NGNG
皆様ありがとうございました。
たしかにcharだから、一文字ですね。
もっと精進します。
では。
0202デフォルトの名無しさんNGNG
JAVAゲームの事で教えて欲しいのですが、

お気に入りのJAvaゲームのあったHPが閉鎖しちゃいまして
それで、そんな事もあろうかとIEのキャッシュからコピーして
とっておいたんですが、どうもうまく立ち上がらず困ってます。

HTMファイルは開くんですが、JAVAアプレットが開かないんです。
どうやったらうまくいくのか教えてください。

因みに「ワイヤーハング」ってゲームです。
0203デフォルトの名無しさんNGNG
>>202 エラーメッセージは?
クラスファイルもキャッシュからみつけてリネームした甲斐?
0204デフォルトの名無しさんNGNG
>>203
はい。
エラーメッセージは「無効なパス」とかなんとか。
クラスファイルも入れました。

クラスファイルだけをリネームするんですか?
すいません、よく解らないです

キャッシュからファイルを抜くと、[1]って言うのが
すべてのファイルの名前についてたので、
それをもとにリネームして
あとはHTMファイルをクリックしたんです。

もしかして「とんちんかん」なことしてます?

抜いたファイルをどうするか?−から教えていただければ
助かるのですが。すいません、注文しちゃって。
0205デフォルトの名無しさんNGNG
>>204
まずさ、htmlでそのゲームアプレットはどういうふうにかかれてるよ?
<applet ...とかかかれてるっしょ?それをここにはってみ。
0206afroNGNG
>>181

addObserver は別クラスの main でやってます。
分かりにくい書き方しちゃって申し訳ないです。

>>182

ソース例、参考になります、ありがとうございます。
やっぱりちょっと原因がわからないのですが、もう少し頑張ってみて事後報告いたします。
まじ分かんなかったら、ソースちゃんとのっけてみます。
0207デフォルトの名無しさんNGNG
>>205

<APPLET CODE="WireHang.class" WIDTH="240" HEIGHT="320">

です。
0208coelacanthNGNG
Javaアプリケーションで"C:/temp"に保存してあるtest.gifを読込み、
表示させる方法がわかりません。
教えてください。
0209デフォルトの名無しさんNGNG
>>207
では、そのhtmlファイルのあるディレクトリ(フォルダ)に
WireHang.classってのがあるんだよね?
0210デフォルトの名無しさんNGNG
>>209イエス

あります。
0211デフォルトの名無しさんNGNG
>>208
なんとかToolKitクラスを使うんじゃなかったっけ。
APIリファレンスの索引で「getImage」とかのメソッド名を
探してみれば?Appletクラス以外にもあるはずだ。
0212デフォルトの名無しさんNGNG
>>210
その状態で出るエラーメッセージを正確にここにかいてみてちょ。
エラーはブラウザのステータス行?それともJavaコンソール?
0213デフォルトの名無しさんNGNG
>>211
そんで、ImageIconコンポーネントに孕ませて、
コンテナにaddすればいいでしょ。
0214デフォルトの名無しさんNGNG
>>212
exception: com.ms.security SecurityExceptionEX[WireHung.init]:
java.io.IOException:bad path: D\oo\i\ringray.gif

desu!
0215デフォルトの名無しさんNGNG
>>214
WireHang.classのpublic void init()メソッドでかつてサーバにあった
ringray.gifって画像ファイル読み込んでいたんだね。

で、このgifファイルが必要なことはもちろんだけど
WireHang.classを逆コンパイルしてその部分を書き換えないことにはだめそうだね。

とりあえず mochaなんかでWireHang.classを逆コンパイルするしかないね。
逆コンパイルしていいかどうかは自分で判断してね。
0216デフォルトの名無しさんNGNG
>>215
画像へのURLを絶対で「/oo/i/...gif」とかハードコードしてるのかな?
ひょっとすると「コピーしちゃいや!」の意志表示とも解釈できるが。。
0217215NGNG
>>216
いやgetCodebase()からのパスで指定してるんだと思われ

たぶん214さんはローカルにhtmlおいてfile:///で読み込んでいるものと思われーよ
0218デフォルトの名無しさんNGNG
>>215
ringray.gifも抜いたんであります。
他にも背景やらキャラ画なんかも。
0219215NGNG
あ、そうか。
じゃーhttpサーバたててやったらSecurithExceptionは回避できるかも。
あとはgifファイルを正しい場所におけば。
0220215NGNG
httpサーバたてずとも、appletviewerでやるとうまくいくカモ!
0221デフォルトの名無しさんNGNG
>>219
あ、出来た!

元々Dドライブの00ってフォルダに全部置いてあったんですが、
iフォルダをそこに作って画像ファイルを入れたら動きました!

どうもありがとうございました、助かりました。
0222デフォルトの名無しさんNGNG
ディレクトリの構成まちがっただけなのね。。
0223デフォルトの名無しさんNGNG
ASCIIのグラフィックJAVA2 vol3 はいつでるのでしょうか?
0224デフォルトの名無しさんNGNG
死ね>222
0225afroNGNG
>> 181

Observable継承したクラスにaddObserverしたら上手くいきました。
なんで別クラスのmainからじゃ駄目なんですか。

public class test {
public static void main (String[] args) {
O1 o1 = new O1();
O2 o2 = new O2();
o1.addObserver(o2);
}
}

public class O1 extends Observable {
Vector vc = new Vector();
vc に色々代入
 setChanged();
notifyObservers(this.vc);
}

public class O2 implements Observer {
public void update (Observable obs, Object obj) {
objを受け取りたい
}
}

これって何かおかしいすか?
update自体が呼び出されてないみたいなんです。
きっとおかしいのに違いない。
こんな駄目駄目なのにつき合わせてごめんさい。>>181 >>182
0226afroNGNG
修正>225
3行目、Observable継承したクラス「で」です。
おかげさまで今は上手くいっています。
ありがとうございました。>181>182
でも、原因は分からないままなの・・。
0227182NGNG
>>225
Observableの派生クラス「から」addObserver呼び出し?
別クラスのmainからだとだめって?なんのこと?

(>>182のつづき)
import java.util.*;

class test {
public static void main (String[] args) {
final Observee observee = new Observee ();
final Observer observer = new Observer () {
public void update (Observable o, Object arg) {
System.out.println ("observer has notified: arg = "+ arg);
}
};
observee.addObserver (observer);
observee.makeSomeChanges ();
}
}

$ java test
observer has notified: arg = [(blah, balh, bhal..), (something newly added)]

関係ないみたいよ?つかどーいうテストしてんのさ。
0228182NGNG
>>225
class O1 (extends Observable)のナカミがへん。メソッドがないぞ。

ひょっとして、addObserverする以前にnotifyObserversしてるとか。。
まさかな。
0229182NGNG
はっ。まさかネタ??初心者を甘やかしてダメにしてやろうって遊び心を快く思わない正義の人がおれを弄んでるのかまさかそうかいやきっとしかしなんでくそだはあ(泣)
0230デフォルトの名無しさんNGNG
インスタンスがつかってるメモリの容量を調べることってできますか?
できれば無料のAPIがいいのですが
0231デフォルトの名無しさんNGNG
>>230
おれはSystemクラスのアレでナニしたが、
正しい方法なのかはしらん。
0232afroNGNG
>>182
>>228

本当、申し訳ないんですが、そのまさかかもす。
いや、でもそんなことは無いようにも思います。

O1 {
 button.addActionListener(new ActionListener() {
  public void actionPerformed(ActionEvent e) {
   vc.setElementAt(data);
   setChanged();
   notifyObservers(vc);
  }
 });
}

ボタンを押したときにnotifyObserversしてるので、addObserverした後ですよね。
afroはただの初心者です。
安心してダメにしてください。
0233元スポイラーNGNG
まず、イベントによって、どこまでのコードが
確実に呼ばれてるの。答えられなければおかしいぞ。
0234デフォルトの名無しさんNGNG
よーするに判断力不足、判断の材料の集め方がわるいと思われ。そこ押えれば効率あがるよ。
0235afroNGNG
やっぱり、addObserverする前にnotifyObserversしてました。
ごめんなさい。
>>234
の通り、結局、分かってなかったのはそういった順番とか受け渡し方だったくさいです。
ActionListenerを内部クラスにしたりしたら上手くいきました。
それさえなぜかも分からないし、かなり混乱してきたんで、
ちゃんと勉強してきます。
お騒がせしました。>元スポイラーさん
0236優しいおにいさんNGNG
>>235
悪いことは言わないから、JBuilderとかの無料版のIDEを手に入れて、
actionPerformed()の内部にブレークポイントを張ってステップ実行
してみましょう。実行時のフローがよく分かりますよ。
0237デフォルトの名無しさんNGNG
>>232
ちなみに、O1クラスってObservableを継承しているんだよね。
とすると、buttonは、O1クラスのメンバとしてframeを作って、
それにaddしてる訳け? それでも問題なく意図した動作するは
ずだけど、でも、何か変な感じだね。
普通は、frameを継承したクラスの中で、別に作ったObservable
を継承したクラスのオプジェクトを使うと思うけどね。
それから、VectorのsetElementAtは
setElementAt(Object obj, int index) だよ。
いずれにしても、貼り付けたコードは、実際のものとは違うようだ
から、よくわからん。
0238デフォルトの名無しさんNGNG
インスタンスとオブジェクトは違うのですか?
0239優しいおにいさん NGNG
同じようなもののようですが、厳密なニュアンス?をとると

オブジェクト:モノ(具象抽象を含む全ての概念)
インスタンス:存在、実在

と言う感じだと思っています。
オブジェクトの(例えばメモリ上、又はストレージ内での)
インスタンス、と言う言い方がよく使われます。
0240デフォルトの名無しさんNGNG
Javaだと同じだけど、見方によって言い分けされてる
かもしれないな。

単に「オブジェクト」といえばただの「対象」だけど、
「インスタンス」(=例、場合)といえば、その背後に
その特殊な例の属する大きな、一般的なグループ(つまり「クラス」)
があるってことを意識することになる。

Java以外ではそれだけの問題じゃないことがあるから注意。
たとえばある種のオブジェクト指向言語だと、
クラスもインスタンスもみんな「オブジェクト」だ、ていう
扱い方をするから、「インスタンス=オブジェクト」では
ぜんぜんまずい。そんなとき、
「インスタンスオブジェクト」
「クラスオブジェクト」
って言い分けると便利。てなこともあるらしい。
(実はあまりよく知らないのでほとんど想像)
0241240NGNG
具体的には、
「××クラスのインスタンス」
「××のインスタンス」
というふうに使うことが多いよね。

例をあげると、
「Stringクラスのインスタンスを生成する」
「なんらかのオブジェクトを生成する」
は自然にきこえると思う。

でも、
「Stringクラスのオブジェクトを生成する」
「なんらかのインスタンスを生成する」
は、どこか不自然。なぜか?て考えると、やっぱり
クラスを意識するかってところにかかってるんじゃないかな?
0242デフォルトの名無しさんNGNG
ASCIIのグラフィックスJAVA2 vol3はいつでるのでしょうか?
0243238NGNG
>239,240
ありがとうございます。
自分の認識が的外れではなさそうだということが分かりました。
0244デフォルトの名無しさんNGNG
的外れな認識の例:

オブジェクトはどうやって作りますか?
http://piza2.2ch.net/test/read.cgi?bbs=tech&key=999862274&ls=50
0245デフォルトの名無しさんNGNG
あれは的外れというより、出来損ないのネタスレの例だ炉!
0246デフォルトの名無しさんNGNG
JavaにはPentium�V、Pentium4、Athlonのどれが向いてます?
メモリはあればあるほど良いですよね?
0247デフォルトの名無しさんNGNG
>>246
SunのワークステーションにSunのOSを入れるのが一番よい
0248デフォルトの名無しさんNGNG
>>247
メンテコスト考えたら、PenマシンでWinにしときな
はったほうがよかとおもいもんす。
0249デフォルトの名無しさんNGNG
>>246-248
前提無しに何を話しておるのかね
0250デフォルトの名無しさんNGNG
age
0251デフォルトの名無しさんNGNG
リンクリストの質問なんですけど、
下のように iterator を取得してループを回してるときに、
リストを変更すると、ConcurrentModificationException 例外が
投げられてしまいます。

 LinkedList list = new LinkedList();
         :// なんかリストに追加したりする
 ListIterator i = list.listIterator();
 while (i.hasNext()) {
  Integer obj = (Integer)i.next(); // ここで例外が投げられる
  if (...) {
   list.add(new Integer(...)); // リストを変更する
  }
 }

調べたところ、
iterator は i.next() のときにリスト内の要素の数を覚えている
次に i.next() が呼ばれたときに、要素の数がさっきと違うのであれば
例外を投げる。みたいです。

例外を捕捉するように try ブロックを書いてみたところ、
延々と例外が投げられてループから抜けれなくなりました。

ループ中に要素を追加したり、削除したりしたいんですが
どうすればできますか?長くなってすみませんが、わかる方アドバイス下さい。
0252デフォルトの名無しさんNGNG
>>251
せっかくListIteratorを使ってんだから、ListIteratorの
addとremove、setを使えばいいんじゃねーの。
02532561NGNG
>>252 ありがとう
add は iteratorの直後に要素を追加するメソッドだから
目的とは違う、と思って却下してました。
やりたいのは、新しい要素をリストの最後尾に追加することです。。

これは iterator 2つ使えばできる?
やっぱり例外投げられそうだけどやってみよう。。
0254251(自己レスNGNG
んー。
別に空リンクリストを用意して、そっちに新しい要素を追加する
ようにしとく。
それでループが終了したら、新しく作ったリストの全部要素を
元のリストに追加する。…これで解決か。

もし251の方針でできるよ、ってのがあれば教えてほしいです
0255252NGNG
>>251
チョーダサいけど、Iteratorを使わないで、forでループする、って
いうのはドウよ。
単に最初から最後までループするだけなら、これでもできるよ。
0256デフォルトの名無しさんNGNG
ListIterator i = ((LinkedList)list.clone()).listIterator();

コレじゃダメか?
リストのシャローコピー作っておいて、そっちでイテレータ廻す。
本体側には影響なしなはず。
0257デフォルトの名無しさんNGNG
>>255-256
for-eachみたいな内部イテレータ無いの?
0258デフォルトの名無しさんNGNG
>>257
残念ながらないよー
そのうちテンプレートがサポートされるらしいから
そしたらできるかもねー(いつになるやら)
0259デフォルトの名無しさん NGNG
インターフェースについて質問です.

Iterator iterator;
iterator = allArrayList.listIterator();
while( iterator.hasNext() )
{
.....

みたいなのありますよね.
インターフェースってのはメソッドは定義しかされていないはずなのに
この場合の hasNext() メソッドの内容はどこに記述してあるのですか?
それと関連して、Iterator が、インターフェースである意義がわかりません.
0260デフォルトの名無しさんNGNG
>>259
hasNext()が実際やらなきゃいけない処理は
相手がArrayListかHashMapかLinkedListかによってまったく違う
だからlistIterator()等でで取得されるオブジェクトは
実際にはIteratorを実装したArrayやHashごとの別の
種類のオブジェクトなんだよ
でもインターフェースが統一されていれば操作を統一できるし
あとからArrayListからLinkedListに変更とかも簡単だろ?

つーか「ポリモーフィズム(多態)」の書き取り100回!
0261デフォルトの名無しさんNGNG
Visual Age for JAVA の使い方がサパーリわかりません。
初心者向けの解説ページはないですか。
0262デフォルトの名無しさんNGNG
>>260
どうもありがとうございます.
ほんとによくわかりました.

つまり、それぞれのクラスの中で
Iteretor を実装したクラスが定義されていて
それを生成してリターンしているわけですね.

2ちゃんすばらしいって思ってしまった
じゃあ、今から書き取りするのでこれで・・・
0263わからんちんNGNG
Statement stat;
(DBにJDBC.ODBC経由でコネクトして)
ResultSet rs = stmt.executeQuery(strHogeSQL);

こんな感じでDBから取得したResultSetの中身を
Stringの二次配列に格納しようとするとき、
二次配列の領域確保のために、行数・列数が
欲しいのですが、レコード数を取得する方法
が見つかりません。ドキュメントを見た限りでは
ResultSetのレコード数を取得するメソッド見つからなかった
のですが、こういうとき普通はどうするんでしょうか?

世界が大変なときにドキュソでスイマセン。
0264デフォルトの名無しさんNGNG
>>263
わちきもResultSetは知らんけど、ずいぶんほっとかれてるみたいから、一言。
Vectorでいいんじゃねーの。必要なら、その後で配列に入れれば。
0265デフォルトの名無しさんNGNG
>>263
どーしてもということなら、行数は
Select Count(*) From ... で取る。
列数は ResultSetMetaData を作って getColumnCount() を使う。

多言語で ADO とか使うときも、たいていそーなんだけど,
行数の取得は API を使わない(or 使えない)と思うのが吉。

まぁ、結局 ループで全レコード舐めるんだから
263の言う通り、Vector に順次 突っ込んでいくのが楽で良い。
0266デフォルトの名無しさんNGNG
>>264
重箱の隅だけど自分で配列にコピーしなくても
VectorにはtoArray()またはtoArray(Object[])ってのがあるよ
0267デフォルトの名無しさんNGNG
きっと初心者板にいけといわれるのを覚悟で伺いに来ました。
WIN2KでのPATHの設定方法又はその方法が判るページを教えていただけないでしょうか?
WIN2KですとATOEXEC.BATを開けないのです。
どうかよろしくお願いします。
0268デフォルトの名無しさんNGNG
>>267 スタート>設定>コントロールパネル>システム>詳細>環境変数
0269デフォルトの名無しさんNGNG
>>267 なければ作れそれでも問題ない
もしくはコントロールパネルのシステムを捜せ
0270デフォルトの名無しさんNGNG
>267・268
早速探してみます。
本当にありがとうございました。
0271デフォルトの名無しさんNGNG
実はautoexecにpath書いとけば追加されたりする(2000でも
0272デフォルトの名無しさんNGNG
なるほど
NT使った事ないので、
私も前前から疑問に思ってました
0273デフォルトの名無しさんNGNG
ポリモーフィズムって必須なの?なきゃないでいいんじゃん?<結構マジ思い
0274デフォルトの名無しさんNGNG
>>273
演算子オーバーロードも、構造体も、Cコンパイラも、
Javaも、VBも、Perlも、TCP/IPも、ExcelもWordも、
OSも、みんななきゃないで「なんとかする」ことは
可能です。
0275273NGNG
サルですみませんでした。好き嫌いせず学びます。
効果のほどを聞きたかったんですよ。 (T T) <古
0276デフォルトの名無しさんNGNG
>>275
入出力ストリーム関係のポリモーフィズムのおかげでおいらの作ったソフトは
Httpサーバーにあるファイルもローカルディスクにあるファイルも
まったく同じ処理ルーチンで扱えておかげでデバッグもえらく楽チンですが?
0277わからんちんNGNG
>>264,265,266
ご教授ありがとう御座います。
はじめselect count(*) でやろうとしたんですけど、order by
があってだめだったんですよね。Vectorでやってみます。ありがとう御座います。
ところでtoArray()って2次配列に使うときってどうすれば良いんでしょ?
Vectorの一次配列にすれば良い?とりあえず、全部一つのVectorに突っ込んで
ループさせときます(^^;
0278デフォルトの名無しさんNGNG
>>277
>>ところでtoArray()って2次配列に使うときってどうすれば良いんでしょ?
例えば、以下のようにするとか。
import java.util.*;

public class TestVec{
public static void main (String[] args) {
Vector vec = new Vector();
vec.add(new String[]{"hoge","foo","bar"});
vec.add(new String[]{"I","my","me","you","your","you","yours"});
String[][] array = (String[][])vec.toArray(new String[][]{});
for (int i=0; i<array.length; i++) {
for (int j=0; j<array[i].length; j++) {
System.out.print(array[i][j]+" ");
}
System.out.println();
}
}
}
0279デフォルトの名無しさんNGNG
>>261
www.ibm.com
にチュートリアルとかPDFマニュアルが転がってるよ
ちゅーか製品版ならマニュアルあるし、ヘルプもひけるじゃん

使い方なんて覚えようとしないで、とにかく何か作るべし
気が付いたらこれなしではじゃヴぁできない体になります
0280デフォルトの名無しさんNGNG
void tower( int a, int b, int c, int d )
{
if( a == 1 )
System.out.println( b + "→" + c );
else {
tower( a-1, b, d, c );
System.out.println( b + "→" + c );
tower( a-1, d, c, b );
}
という再起メソッドを反復処理にするにはどうすれば良いでしょうか?
0281名無しさんNGNG
フリーのコンパイラ&アプレットビューアってある?
0282デフォルトの名無しさんNGNG
>>281
ある (大爆笑)
0283名無しさんNGNG
では、教えてください
0284デフォルトの名無しさんNGNG
>>283
javac と appletviewer (大爆笑)
0285名無しさんNGNG
ありがとうございます(大爆笑)
0286デフォルトの名無しさんNGNG
ファイル構造を表すJTreeではまっています。多分単純なミスだとは思うのですが、全く解決できません。
ネタだと思わず何とか教えて下さい(Javaはじめて2週間のレベルです)
●したいこと
・JTree中の任意のノードをクリックしてそのパス文字列を任意の場所に返す(例えば同フレーム内のテキストフィールドとか)
●問題
・JTreeコンポーネントのノードの部分をクリック(シングル及びダブルクリック)するとエラーが表示される。
●動作状態
・ローカルマシンのファイル構造(ディレクトリ)をJTreeに表示するためのTreeModelは書籍を参考にして何とか自作。後述しますがJTreeにaddTreeSelectionListenerしなければ、何をどうクリックしようがエラーは発生しませんでした(正常動作)。
・importしているものの一覧
 import javax.swing.*;
 import javax.swing.border.*;
 import javax.swing.text.html.*;
 import javax.swing.plaf.basic.*;
 import javax.swing.tree.*;
 import javax.swing.event.*;
 import java.awt.*;
 import java.awt.event.*;
 import java.io.*;
 import java.net.*;
 import java.util.*;
・ところがリスナをこのツリーに登録して、いざvalueChangedメソッドを使って変更された値を取ろうとすると、フレーム起動中に表示されているMSDOSの画面にエラーが出るのです(ちなみにどういうわけかコンパイルは全く問題なくコンパイルされます)。
・手元の参考書・sunのチュートリアル・各Javaのサイトを覗いても、同じソース(sunのチュートリアル)を使っているみたいで全く参考になりません。
●リスナのソースなど(フレームなどのソースは省きます)
FileSystemModel fileSystemDataModel = new FileSystemModel(); // FileSystemModel(自作クラス=ツリーモデル)
final JTree treeBox = new JTree(fileSystemDataModel);
treeBox.getSelectionModel().setSelectionMode(TreeSelectionModel.SINGLE_TREE_SELECTION);
treeBox.addTreeSelectionListener(new TreeSelectionListener() {
String selectedDirectory;
public void valueChanged(TreeSelectionEvent e) {
DefaultMutableTreeNode selectedNode =
(DefaultMutableTreeNode) treeBox.getLastPathComponent();
// この上にあるDefault...からgetLastPathComponent()の行に問題があるみたいですが???
if (selectedNode == null) {
System.out.println("何もなし");
}
else if(selectedNode.isRoot()){
System.out.println("ディレクトリだから逝ってよし");
selectedDirectory = (
"file:" +
System.getProperty("user.dir") +
System.getProperty("file.separator"));
System.out.println(selectedDirectory);
} else {
System.out.println("その他だよ");
selectedNode = null;
}
});
<マシン環境>
Windows 98 JDK1.3.1
どうか皆さんの知恵を初心者バカに貸してください。よろしくお願い致します。
0287優しいおにいさんNGNG
TreeのNodeが、DefaultMutableTreeNode(又は
そのサブクラス)じゃないんじゃないですか?
キャスト失敗例外あがってませんか?

エラーのスタックとレースと、Nodeをaddしてるところを
見せていただければはっきりすると思いますよ。
0288286NGNG
>>287 超速レスありがとうございます。「nodeをaddしている」ところってこのソースでいうところのclass FileSystemModel implements TreeModel だと思いますので、とりあえずその部分のコードとエラーをこれを含めて3つに分けて送信します。
 長くなりますが、よろしくお願いします。(ちなみに286のコードはフレームのコンストラクタに記載しています(エラーは発生していません))

class FileSystemModel implements TreeModel {
private String root;
private Vector listeners;
public FileSystemModel(){
root = System.getProperty("user.home");
File tempFile = new File(root);
root = tempFile.getParent();
listeners = new Vector();
}
public Object getRoot() {
return (new File(root));
}
public Object getChild(Object parent, int index) {
File directory = (File) parent;
String[] directoryMembers = directory.list();
return (new File(directory, directoryMembers[index]));
}
public int getChildCount(Object parent) {
File fileSystemMember = (File) parent; // fileSystemMemberはフォルダ若しくはファイル
if (fileSystemMember.isDirectory()) {
String[] directoryMembers = fileSystemMember.list();
return directoryMembers.length;
} else {
return 0;
}
}
public int getIndexOfChild(Object parent, Object child) {
File directory = (File) parent;
File directoryMember = (File) child;
String[] directoryMemberNames = directory.list();
int result = -1;
for (int i = 0; i<directoryMemberNames.length; ++i) {
if (directoryMember.getName().equals(directoryMemberNames[i])){
result = i;
break;
}
}
return result;
}
public boolean isLeaf(Object node) {
return ((File) node).isFile();
}
public void addTreeModelListener(TreeModelListener l) {
if (l != null && !listeners.contains(l)) {
listeners.addElement(l);
}
}
public void removeTreeModelListener(TreeModelListener l) {
if (l != null) {
listeners.removeElement(l);
}
}
public void valueForPathChanged(TreePath path, Object newValue) {
// Does Nothing!
}
(つづく)
0289286その2NGNG
(288のつづき)
public void fireTreeNodesInserted(TreeModelEvent e) {
Enumeration listenerCount = listeners.elements();
while (listenerCount.hasMoreElements()) {
TreeModelListener listener =
(TreeModelListener) listenerCount.nextElement();
listener.treeNodesInserted(e);
}
}
public void fireTreeNodesRemoved(TreeModelEvent e) {
Enumeration listenerCount = listeners.elements();
while (listenerCount.hasMoreElements()) {
TreeModelListener listener =
(TreeModelListener) listenerCount.nextElement();
listener.treeNodesRemoved(e);
}
}
public void fireTreeNodesChanged(TreeModelEvent e) {
Enumeration listenerCount = listeners.elements();
while (listenerCount.hasMoreElements()) {
TreeModelListener listener =
(TreeModelListener) listenerCount.nextElement();
listener.treeNodesChanged(e);
}
}
public void fireTreeStructureChanged(TreeModelEvent e) {
Enumeration listenerCount = listeners.elements();
while (listenerCount.hasMoreElements()) {
TreeModelListener listener =
(TreeModelListener) listenerCount.nextElement();
listener.treeStructureChanged(e);
}
}
}
(終わり)

●続いてエラーの表示の部分

(前半部分は途切れています・・・a:2117)
at javax.swing.plaf.basic.BasicTreeUI$MouseHandler.mousePressed(BasicTreeUI.java:2683)
at java.awt.Component.processMouseEvent(Component.java:3712)
at java.awt.Component.processEvent(Component.java:3544)
at java.awt.Container.processEvent(Container.java:1164)
at java.awt.Component.dispatchEventImpl(Component.java:2593)
at java.awt.Container.dispatchEventImpl(Container.java:1213)
at java.awt.Component.dispatchEvent(Component.java:2497)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:2451)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:2210)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:2125)
at java.awt.Container.dispatchEventImpl(Container.java:1200)
at java.awt.Window.dispatchEventImpl(Window.java:914)
at java.awt.Component.dispatchEvent(Component.java:2497)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:339)
at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:131)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:98)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:85)
0290286NGNG
とりあえず以上です。
よろしくお願いします。(289 sageわすれて本当にすいません。。。)
0291優しいおにいさんNGNG
>>290
ModelがDefaultMutableTreeNodeによるツリー構造に
なってないです。DefaultMutableTreeNodeへのキャスト
は必ず失敗します。

あなたのTreeModelの実装は、特に内部データ構造が
ノード操作をするためには圧倒的に不足しています。
とりあえず、自力でimplementするのは諦めてください。

モデルにはDefaultTreeModelをそのまま使用し、コンストラクタ
引数にDefaultMutableTreeNodeを与えてください。
FileインスタンスをDefaultMutableTreeNode.userObject
に保存するようにしてみましょう。setterとgetterがありますので
それで入出力できます。
0292優しいおにいさんNGNG
DefaultMutableTreeNodeを継承したクラスを作成し、
toString()をオーバーライドしてください。
このメソッドによる出力が、JTreeのビューにおける
ノードの表示内容になります。
FileインスタンスをuserObjectに格納しているのでしたら
例えばこんな感じでよいでしょう。

public class FileNode extends DefaultMutableTreeNode{

 public FileNode(File file){
  super(file);
 }

 public File getFile(){return (File)getUserObject();}

 public String toString(){
  ((File)getUserObject()).getName();
 }
}
0293優しいおにいさんNGNG
子ノードを追加したい時は、親のFileNodeに対して、子ノード
(これもFileNodeにする)オブジェクト生成し、addしていく
ようにしていってください。これで準備は完了です。
あとは、APIドキュメントとにらめっこです。
0294286NGNG
>>291 >>292
また超速レスありがとうございます。なんかものすごく逝けないことをやっていたみたいで・・・
初心者ですのでちょっと分からない部分があります。急ぎませんのでもしお時間があったら教えて下さい。

>ModelがDefaultMutableTreeNodeによるツリー構造になってないです。DefaultMutableTreeNodeへのキャストは必ず失敗します。

ということはせこせこノードをルートに加えていく作業が基本となるということでしょうか?

>特に内部データ構造がノード操作をするためには圧倒的に不足しています。とりあえず、自力でimplementするのは諦めてください。

速攻あきらめます(かなり時間がかかったのですが・・・)。また「圧倒的に不足」の意味が分からないので、何かわかるドキュメントとかありますか?

>モデルにはDefaultTreeModelをそのまま使用し、コンストラクタ引数にDefaultMutableTreeNodeを与えてください。

286のソースは下記の様に変更するということですよね?
(変更前)
FileSystemModel fileSystemDataModel = new FileSystemModel();
final JTree treeBox = new JTree(fileSystemDataModel);
(変更後:292参照)
FileNode fooModel = new FileNode();
final JTree treeBox = new JTree(FileNode);

またFileNodeクラスはフレンドリクラスでもいいんですよね(この辺が初心者的なんでしょうか?)

>FileインスタンスをDefaultMutableTreeNode.userObjectに保存するようにしてみましょう。setterとgetterがありますので
それで入出力できます。

 この辺や292については明日以降の宿題としてちょっと頑張ってみます。

 夜更けにも関わらず丁寧なレスを頂き本当に有難うございました。またこの件でわからなくなりましたら(多分明日??)
お願いします。
0295294NGNG
訂正です
× final JTree treeBox = new JTree(FileNode);
○ final JTree treeBox = new JTree(fooModel);
すいませんです
0296デフォルトの名無しさんNGNG
ダブルバッファやりたいんですがうまくできません。
ご教授のほどよろしくお願い致します。

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


public class Applet1 extends Applet implements Runnable {
int x = 0;
Thread t;
Image buffer;
Graphics bufferg;

public void init() {
// スレッドを開始する
t = new Thread(this);
t.start();
// バッファを作成する
Dimension d = getSize();
buffer = createImage(d.width, d.height);
}
public void run() {
try {
while(true) {
// 再描画を要求する
repaint();
// ウィンドウを更新する前に休止する
Thread.sleep(1000);
}
}
catch(Exception e) {
}
}
public void update(Graphics g) {
paint(g);
}
public void paint(Graphics g) {
// バッファのグラフィックコンテキストを取得する
if(bufferg == null)
bufferg = buffer.getGraphics();
// バッファを描画する
Dimension d = getSize();
bufferg.setColor(Color.white);
bufferg.fillRect(0, 0, d.width, d.height);
bufferg.setColor(Color.black);
bufferg.fillOval(x, d.height/4, 50, 50);
// ウィンドウを更新する
g.drawImage(buffer, 0, 0, this);
// x座標を増やす
x += 5;
if(x + 50 > d.width)
x = 0;
}
}
0297デフォルトの名無しさんNGNG
>>296
うまくいかないっていうのは、具体的にどういうこと?
このアプレットの実行結果が、あなたの意図とどう違うのか、
それがわからないと応えにくいと思うけど。
0298デフォルトの名無しさんNGNG
>>296
JBHなら丁寧に教えてくれるYO!
0299296NGNG
説明が足りなくてごめんなさい。これをJbuilder5で実行するとエラーが出ます。
Exception occurred during event dispatching:
java.lang.NullPointerException
at Applet1.paint(Applet1.java:37)
at sun.awt.RepaintArea.paint(RepaintArea.java:298)
at sun.awt.windows.WComponentPeer.handleEvent(WComponentPeer.java:196)
at java.awt.Component.dispatchEventImpl(Component.java:2663)
at java.awt.Container.dispatchEventImpl(Container.java:1213)
at java.awt.Component.dispatchEvent(Component.java:2497)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:339)
at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:131)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:98)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:85)
Exception occurred during event dispatching:
java.lang.NullPointerException
at Applet1.paint(Applet1.java:37)
at Applet1.update(Applet1.java:32)
at sun.awt.RepaintArea.update(RepaintArea.java:337)
at sun.awt.windows.WComponentPeer.handleEvent(WComponentPeer.java:200)
at java.awt.Component.dispatchEventImpl(Component.java:2663)
at java.awt.Container.dispatchEventImpl(Container.java:1213)
at java.awt.Component.dispatchEvent(Component.java:2497)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:339)
at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:131)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:98)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:85)
0300296NGNG
独習Javaと言う本の406ページのなんですが。

あと、2つほど教えていただきたいのですが、上のようなエラーが出たとき
どこをみたらいいのでしょうか? たとえば、
java.lang.NullPointerException
at Applet1.paint(Applet1.java:37)
だと、Applet1.javaの37行目がおかしいということでしょうか?

あと、Jbuilder5でVisual Basicのように途中の計算値をデバッグ画面等に
表示するにはどうしたらいいのでしょうか?
(VBでは、debug.print 変数名 で出来るんですが・・・)

>>298さん
googleで検索したんですがわかりませんでした。JBHって何ですか?
0301デフォルトの名無しさんNGNG
>>296
まず、このアプレットが実行できないのは、JBuilderから実行したときで、
直接htmlファイルをブラウザで開けば実行できるよ。
classesディレクトリのApplet1.htmlをクリックしてみれ。
エラーは、
>>java.lang.NullPointerException
>>at Applet1.paint(Applet1.java:37)
>>だと、Applet1.javaの37行目がおかしいということでしょうか?
その通りで、ここではbufferがnullだということ。実際はinit()で
作成しているのに、何故かJBuilderでは出来ていない。もしかして、init()
が呼ばれていないのかも。
Jbuilderでアプレット作ったことがないから、バグなのか、何か設定がいるのか
わからないけどね。
で、JBuilderで動かすには、
>>if(bufferg == null)
>>bufferg = buffer.getGraphics();
の部分を、
if(buffer == null){
Dimension d = getSize();
buffer = createImage(d.width, d.height);
bufferg = buffer.getGraphics();
}
でいいけど・・・。いずれにしても、ちょっとぐずぐずなコードだね。
bufferへの描画は、runの中でやったほうがいいかも。
>>あと、Jbuilder5でVisual Basicのように途中の計算値をデバッグ画面等に
>>表示するにはどうしたらいいのでしょうか?
これは、やはりわからない。あまりJBuilder使ってないんで。
0302優しいおにいさんNGNG
>>296
paint()でNullPointerExceptionが発生する可能性がある部分は
bufferg = buffer.getGraphics();
ですね。最初にpaint()が呼び出される時点では、
(その時点では、まだJVMはApplet1.init()をコール
していないためと思われます)buffergもbufferもnull
なのでしょう。bufferのnullチェック分岐してみてください。
0303優しいおにいさんNGNG
かぶっちゃいましたね。ごめんなさい。
0304よろしくお願い致しますNGNG
私は今大学4年で、卒業製作(美大なので)で何か作らなければいけないんですけど、
テーマを「触覚」ということにしまして、
web上で体験できるインタラクティブムービー的なものというか、
ユーザーのマウス操作に画像が反応して動くもの作ろうとしています。
最初はFLASHのアクションスクリプトなんとか作ろうとしてたのですが、
限界を感じ、javaでやってみようと思うようになったわけです。
まったくの素人なのですが、何からはじめていいのやら、
とりあえず本を探そうと思っているのですが、何かおすすめの書籍があったら
教えてほしいのです。ちなみにマジで素人なので
自分がやろうとしていること+初歩的基本的な技術解説が書いてあるやつがいいんですけど。

サンプルとして自分がやろうとしているのに近いことをやっているサイトをかいときます。
ttp://www.singlecell.org/january/index.html
ttp://www.singlecell.org/may/
0305デフォルトの名無しさんNGNG
>>304
エロいの頼むわ!よろしく
0306デフォルトの名無しさんNGNG
304のリンク先おもしろいネ
0307デフォルトの名無しさんNGNG
>優しいおにいさん
ローカルのディレクトリ構造をJTreeで表示することについて質問させて頂いた者です。
その節はありがとうございました。

 とりあえずオブジェクト指向プログラミングとは程遠い以下の様な石器時代的な手続き型
プログラミングで、DefaultMutableTreeNodeをつかい、何とか雛形を表示することが出来ました。
----------------------------------------------
 親ノードのString型のパスを取ってFileインスタンス(hoge)を作って、hoge.list()で子ノードの
候補名をString型配列で受け取ってから、その配列の要素(=子ノード)ごとにfor文とif文
のネスト(今見たら6段)で、ノードかリーフかどうか判断したりして、最後に親ノードに
くっつける。初期画面ではこんな方法でルートノードとその子ノードだけ作っておいて、その後は
MouseListenerを使って任意のノードをクリックするたびに、そのノードの子を前述のように
for文やif文などで条件判断して最終的にDefaultMutableTreeNodeとして、クリックされたノード
にくっつけます。またクリックしたノードのパスはstaticとしてクラス宣言された変数に格納
するようにして再利用をはかる、という感じです。
---------------------------------------------

 ですのでせっかく頂いたソースなのに、不勉強のためその内容がまだ分からないでいます。
クラスの継承の理解に非常に手間取っています。
 まだまだ勉強不足のようです。ありがとうございました。
(ちなみに質問した時のソースは70%くらいがパクリです)
0308デフォルトの名無しさんNGNG
>304
http://www.njk.co.jp/otg/Study/JavaStudy/
ちと古いが、API1.1なのでまだ使えるじゃろう。

Swingのが良いのかも知れん。
グラフィックの表現力が格段に違うから。
ちょい前は劇重だったが、今時のマシンなら問題なかろう。
対応ブラウザで余計な心配しそうという問題はあるのだが。

あと、巷にAPI1.02対応となっている本を見かけたら、絶対に近寄ってはならん。
0309優しいおにいさんNGNG
>>307
ご苦労様です。

JTreeには、ノードへのパスをオブジェクト化した、
javax.swing.tree.TreePathがあります。
TreePathオブジェクトから、そのTreeNodeを取得する
メソッドなどがあります。
今選択されているノードのTreePathを取得するメソッド
が、DefaultTreeModelのなかにあります。
また、DefaultMutableTreeNodeには、配下の全Node、
すぐ下の子供NodeなどのEnumerationを取得する方法など
もあります。
DefaultTreeModelにたいして、Nodeをつけたり外したり
すると、内部でイベント生成や通知を行うロジックが
自動的にJTreeのViewに通知を行い、表示がかわってくれ
ます。

このように、基本的にSwingでは欲しいものは大抵メソッド
として揃っているので、苦労して実装するひまがあるなら
APIライブラリを眺めてたたいてみるほうが遥かに効率的です。
(車輪の最発明が好きだというなら止めませんが。)

ということで、Javaを短期間にマスターするコツは、Cチック
にガリガリコーディングする事より、APIドキュメントを読む
ことに時間を割くことが第一だったりします。
コアAPIライブラリは、使っているうちにデザインパターンの
実装例として、OOPのテクニックを効率的に理解できる副作用
もあります。(コードの実装ではなくて、あくまでクラスの
構成や関係について。実装はあまり参考にしないほうが良いです。)

一度慣れてしまえば、ありすぎて困るとかよく言われる拡張
ライブラリの使い方なども、実はどれも似たようなものでしか
ないので、怖いもの無しになれるはずです。
その頃になれば、DefaultXXXでは物足りなくなって、自分用
カスタマイズクラスを華麗に実装できるようになるはずですよ。

ということで、頑張ってくださいませ。
0310307NGNG
>>309
レスありがとうございます。
>ガリガリコーディングする事より、APIドキュメントを読む
>ことに時間を割くことが第一だったりします。

 APIドキュは穴のあくほど見ているはずなのですが・・・頭が硬いんですかね・・・
どうしてもCチックというよりBasicチック(しかもN88!笑)な考え方がこびりついて
いるようで、あの膨大なオブジェクト(クラス)の継承とやらの利用方法がいまいち
理解できていないようです。これがわかれば千人力なんでしょうね。
 クラスの継承ってJavaのメリットの1つですもんね。
 JTreeは勉強になります(苦笑)。
0311デフォルトの名無しさんNGNG
スレッドに関する質問です。

public synchronized String getText() {
  return this.text;
}

こういう、一行で単純に値を返すのみのメソッドを
synchronizedにする必要ってあるんですか?
0312デフォルトの名無しさんNGNG
>>311
>>一行で単純に値を返すのみ
という条件だけでは、synchronizedが不要とは言えない。
その値が別のスレッドで変更されるかどうか、変更される場合は、値を返す
メソッドが、変更途中の無意味な値を返すことがないか、などが関係するから。
まったく変更されない値なら、synchronizedは必要ないけどね。
0313デフォルトの名無しさんNGNG
初歩的な質問をさせてください。
たとえばjava.util.LinkedList を使って整数の羅列を作りたいとき、import java.util.*;

public class List {
public static void main(String args[]) {
LinkedList ll = new LinkedList();
for (int i = 0; i < 5; i++) {
ll.addFirst(i);
}
}
}

これじゃだめなのはなぜですか?
どうすればいいのですか?
0314デフォルトの名無しさんNGNG
iはintなんで無理、プリミティブ型とオブジェクト型は違う
0315313NGNG
レスありがとうございました。解けました。
0316デフォルトの名無しさんNGNG
エラーが起こる可能性がある処理をコンストラクラに記述するのはありですか?
0317デフォルトの名無しさんNGNG
>>316
なし
0318デフォルトの名無しさんNGNG
コンストラクタで例外投げることは可能だよ
たとえばjava.io.FileInputStreamとかがそうだし。
0319デフォルトの名無しさんNGNG
>>318
それが作法としていいものかどうか、ということだよね・・・
ものによりけりか。
0320デフォルトの名無しさんNGNG
Ruby >>>>>>>>>>>>>>>> Java
Ruby >>>>>>>>>>>>>>>> Java
Ruby >>>>>>>>>>>>>>>> Java
Ruby >>>>>>>>>>>>>>>> Java
Ruby >>>>>>>>>>>>>>>> Java
Ruby >>>>>>>>>>>>>>>> Java
Ruby >>>>>>>>>>>>>>>> Java
Ruby >>>>>>>>>>>>>>>> Java
Ruby >>>>>>>>>>>>>>>> Java
Ruby >>>>>>>>>>>>>>>> Java
Ruby >>>>>>>>>>>>>>>> Java
Ruby >>>>>>>>>>>>>>>> Java
Ruby >>>>>>>>>>>>>>>> Java
Ruby >>>>>>>>>>>>>>>> Java
Ruby >>>>>>>>>>>>>>>> Java
Ruby >>>>>>>>>>>>>>>> Java
Ruby >>>>>>>>>>>>>>>> Java
Ruby >>>>>>>>>>>>>>>> Java
Ruby >>>>>>>>>>>>>>>> Java
Ruby >>>>>>>>>>>>>>>> Java
Ruby >>>>>>>>>>>>>>>> Java
Ruby >>>>>>>>>>>>>>>> Java
Ruby >>>>>>>>>>>>>>>> Java
Ruby >>>>>>>>>>>>>>>> Java
Ruby >>>>>>>>>>>>>>>> Java
0321デフォルトの名無しさんNGNG
Ruby >>>>>>>>>>>>>>>> Java
Ruby >>>>>>>>>>>>>>>> Java
Ruby >>>>>>>>>>>>>>>> Java
Ruby >>>>>>>>>>>>>>>> Java
Ruby >>>>>>>>>>>>>>>> Java
Ruby >>>>>>>>>>>>>>>> Java
Ruby >>>>>>>>>>>>>>>> Java
Ruby >>>>>>>>>>>>>>>> Java
Ruby >>>>>>>>>>>>>>>> Java
Ruby >>>>>>>>>>>>>>>> Java
Ruby >>>>>>>>>>>>>>>> Java
Ruby >>>>>>>>>>>>>>>> Java
Ruby >>>>>>>>>>>>>>>> Java
Ruby >>>>>>>>>>>>>>>> Java
Ruby >>>>>>>>>>>>>>>> Java
Ruby >>>>>>>>>>>>>>>> Java
Ruby >>>>>>>>>>>>>>>> Java
Ruby >>>>>>>>>>>>>>>> Java
Ruby >>>>>>>>>>>>>>>> Java
Ruby >>>>>>>>>>>>>>>> Java
Ruby >>>>>>>>>>>>>>>> Java
Ruby >>>>>>>>>>>>>>>> Java
Ruby >>>>>>>>>>>>>>>> Java
Ruby >>>>>>>>>>>>>>>> Java
Ruby >>>>>>>>>>>>>>>> Java
0322デフォルトの名無しさんNGNG
WinでJbuilderPersonal(無料版)つかっている人とかはココ
http://piza2.2ch.net/test/read.cgi?bbs=tech&key=1000737906
0323デフォルトの名無しさんNGNG
>>322
ファウンデーションってどういうスペルだっけ?
0324デフォルトの名無しさんNGNG
foundationだろ
0325デフォルトの名無しさんNGNG
StringBuffer sbを
int divisionValueで割った値を
Stringで得たいのです。
LISPみたいです。スマートなやり方ないでしょうか?
Integer.toString(Integer.valueOf(sb.toString()).intValue()) / divisionValue);
0326デフォルトの名無しさんNGNG
JDBC なんですが、

 ResultSet rs = stmt.executeQuery( "SELECT COUNT(*) cnt from table;" );
 int cnt = rs.getInt( "cnt" );

というのは何かおかしいですか?

MySQL で直接 SQL 文を実行すると適当な値になるのですが、
上のコードだと 0 になってしまいます。
0327326NGNG
書いてからふと気づいた。

getInt の前に

 rs.next();

を入れたらとりあえず出た。
0328デフォルトの名無しさんNGNG
>>325
StringBufferを intで割った値を Stringで得るということ自体が
まったくスマートではないよね。
だから、スマートな方法なんてないと思うよ。
というのは、チャチャだけど、
>>Integer.valueOf(sb.toString()).intValue())
は、Integer.parseInt(sb.toString())でいいんじゃない?
0329304NGNG
>>308
レス有り難うございます。
足がかりには最適っぽいので、
ぜひ読んでみます。なんだか道が険しいそうなんですけど。
だめだったらFLASHに引き返します。
0330デフォルトの名無しさんNGNG
>>328
ありがとう!

型変換しまくる必要があるコードって確かにスマートじゃないですね
0331JTreeNGNG
 ローカルマシンのディレクトリをExplorerライクに表示するswing JTreeの利用に
ついて下記のようなことが分かりましたのでご報告させて頂きます。
諸先輩方には笑われてしまいますが、私の様な初心者(私の場合Cもやっていないので
ドキュソ)もいると思いますので少しスペースをお借りします。

●TreeModelを自作、あるいはDefaultMutableTreeNodeでツリーを構成してい
き、そのモデルあるいはノードを元にしたJTreeの任意のノード(ファイルもし
くはディレクトリ)をクリックすると、以下の処置をしないとエラーが出るよう
です。(ただ私の勘違いかもしれません)
 ・隠しファイル(hoge.isHidden()がtrue)、拡張子のない特殊ファイルを表示させない(クリックさせない)。
  (これらをクリックすると私の環境では必ずエラーがコンソールに出力されます)
 ・選択されたノードからパスを得ようとする場合、その得たパス(TreePath)がnull(-1)の
  場合もあるみたい(これはツリーの縮小・展開を担う小さなアイコン(虫眼鏡や小さなフォ
  ルダなどのアイコン画像)をクリックしたりすると場合により出るようです。)なので、
  そのチェックは必ず行う。←気付けば「な〜んだ」でしたが、かなりバカな盲点でした。

 以前よりJTreeについて長々と質問させて頂いた私ですが、BASIC(PC98 MSX X68K)→perl→
VB→Java と、まだまだ不勉強です。えらそうに書いてしまいましたが、何卒お許し下さい>皆様。
0332デフォルトの名無しさんNGNG
外部コマンドが認識するカレントディレクトリを変更するにはどうすればよいのでしょうか?

System.setProperty("user.dir",System.getProperty("user.home"));↑こうしてもVM内部でしかカレントディレクトリの変更は認識されないようです。
0333デフォルトの名無しさんNGNG
>>332
言ってる意味が、javaから実行する外部プログラムに与えるディレクトリという
ことなら、Runtime#exec(String command, String[] envp, File dir)でdir
を指定すればいいと思うけど。それではマズイのかな。
0334デフォルトの名無しさんNGNG
実はJavaでFTPクライアントを作っているのですがサーバーからファイルを取得するとカレントディレクトリに保存されます。
それで他のディレクトリにファイルを保存したくて上のコードを実行してみたのですが、サーバーはカレントディレクトリの変更を認識しないようなので、上のコードではVM内部でしかカレントディレクトリの変更を認識しないようである、と思ったわけです。

で、どうすればいいんでしょうね?
0335デフォルトの名無しさんNGNG
>>334
好きなディレクトリのファイルを開いてそのストリームに書き込め
0336デフォルトの名無しさんNGNG
>>334
>>JavaでFTPクライアントを作っている
のであれば、好きなディレクトリに保存すればいいと思うけど、
そうできない訳があるの?
0337デフォルトの名無しさんNGNG
>>335 336
普通に絶対パスでファイル指定して書き込めば良かったですね。
阿呆でした。
0338デフォルトの名無しさんNGNG
JTreeでファイルエクスプローラを作っているのですが、
ファイル名を変更してそのファイル名をDefaultMutableTreeNodeのサブクラスの
toStringで反映させるようにしたのですが、JTreeのupdateUIやrepaintを
呼び出しても変更後のファイル名が表示されません。

これはなぜでしょうか?
0339デフォルトの名無しさんNGNG
↑変更前のファイル名のまま、という意味です。
0340338NGNG
public void actionPerformed(ActionEvent e){
String name = JOptionPane.showInputDialog(LocalTree.getTree(),"ファイル名","ファイル名を変更",JOptionPane.QUESTION_MESSAGE);
if(name != null && !name.equals("")){
FileNode node = (FileNode)LocalTree.getTree().getLastSelectedPathComponent();
node.getFile().renameTo(new File(System.getProperty("user.dir") + File.separator + name));
LocalTree.getTree().updateUI();
}
}

↑こうしてもJTreeでのファイル名の表示が変わらないのです。
どうすればいいのでしょうね?
0341338NGNG
質問があります。
ディレクトリのFileオブジェクトをdelete()するとディレクトリの中にある
ファイルは再帰的に削除されるのでしょうか?
0342デフォルトの名無しさんNGNG
>>341
されないよ。んで返り値はfalseになる。
http://java.sun.com/j2se/1.3/ja/docs/ja/api/java/io/File.html#delete()
0343デフォルトの名無しさんNGNG
>>338
正直、FileNodeの仕組などがわからないから、何とも言えないけど、
node.getFile().renameToがきちんと動作して、nodeのtoString
がちゃんとファイル名を返すと仮定した上で、
例えば、JTreeのupdateUIでなくて、それが配置されているコンポー
ネントのupdateUIしてみるとか。まあ、あてずっぽうだけどね。
0344デフォルトの名無しさんNGNG
Fileオブジェクトはつまるところファイルハンドルだとかアクセサだとかいう類のもの。
0345デフォルトの名無しさんNGNG
>>338
DefaultTreeModel継承してモデル作ってるなら多分
DefaultTreeModel.fireTreeNodesChanged
http://java.sun.com/j2se/1.3/ja/docs/ja/api/javax/swing/tree/DefaultTreeModel.html#fireTreeNodesChanged(java.lang.Object, java.lang.Object[], int[], java.lang.Object[])
とかを呼べばいいんだと思う。

直接TreeModelをimplementsしてるなら
登録されたTreeModelListenerのtreeNodesChangedを自分で呼ぶ必要があるはず

ちなみに俺もよく知らないので間違ってるかも
0346デフォルトの名無しさんNGNG
>>344
Fileオブジェクトはファイルハンドルじゃないだろ(それはIOストリーム)
Fileはパス名とかフォルダとか呼ばれる物を抽象化したもでわ?
ファイルの削除等ができるからアクセサではあるだろうけど。
#まあたいした話じゃないけどね
0347デフォルトの名無しさんNGNG
初心者というか入門したばかり何ですが
javaのアプリケーションというのはDOSからしか
実行できないんですか
またWINDOWS以外のOSで実行するにはどうしたらよいのでしょうか
ネタじゃなくてマジです。おしえてくださいませ。
0348デフォルトの名無しさんNGNG
すごーーく、初歩的で申し訳ないですが教えてください。
Javaに関する本は、何冊か読んだのですが、
たしか文字列を比較するのはequalsを使うはずですよね?
今読んでいるBlack Bookでは==で比較しています。
試しにif文で==を使い文字列を比較しましたところ、どうやら比較されているようでした。
equalsと==では何が違うのでしょうか?
知っていましたら教えてください。
0349デフォルトの名無しさんNGNG
>>347
[j-h-b:26374]
WindowsでJavaアプリケーションを実行するとき
にコマンドプロンプトを出さないようにするには
http://java-house.etl.go.jp/ml/archive/j-h-b/026374.html#body
0350デフォルトの名無しさんNGNG
>>348
JavaFAQ S008-01
"文字列の内容の比較はどのように行えば良いのでしょうか?"
http://www.gimlay.org/~javafaq/S008.html#S008-01
0351デフォルトの名無しさんNGNG
>>347
ハングリー精神がなくなるから教えたいくないけど
こんなソフトがあるぞよ(F9でコンパイルできるぞよ)
http://hp.vector.co.jp/authors/VA017148/
0352デフォルトの名無しさんNGNG
>>348
==は、インスタンス参照またはプリミティブ値自体の比較。
オブジェクトが同じインスタンスの時に限りtrue。

String a = new String("hoge");
String b = a;

ならば、a==bはTRUE。

equals()は、中身を比較する機能を持つという事で一応
約束事にしている、単なるメソッド。
String#equals()は、引数がStringでしかも文字列の内容を
比較して同じならTRUE、という実装に、今のところなっている。
(�dでもないequals()を実装しても別に構わないが、そんな
クラスは誰も使わない。ハッシュテーブルなどのコレクション
のキー値比較など、いろいろなところでAPIが呼んでいるので、
変な実装をするとえらいことになる。)

String a = new String("hoge");
String b = new String("hoge");

ならば、a==bはfalseだが、a.equals(b)はtrue。

多くのクラスでオーバーライドされているはず。
なにをもって「中身が等しい」ということにするかは、その
クラスの実装者の責任ということ。当たり前だよね。
0353デフォルトの名無しさんNGNG
 JEditorPaneの利用方法について質問です。
 以下の処理内容をしたいのですが、私のやっていることは無駄ばかりでしょうか?

<やりたいこと>
 「検索対象ファイル 任意の数のhtmlファイル(ex hoge[0].html〜hoge[n].html)」からあるキーワードに合致するreadLineを
ひぱってくるようにして、その結果をHTMLとしてJEditorPaneに表示したい。

<私のやっていること>
 あるキーワードに合致するreadLineをとりあえずバッファhogeStringbufferとして格納し、適切な文字処理を施した上で
createNewFile()メソッドでtmpファイルをカレントディレクトリに作成した後、そのtmpHoge.htmlに先ほどのバッファをfilewriter
で書きこんでおいて、それが終了したらsetPageでJEditorPaneに出力する。tmpHoge.htmlはその後にdeleteする。

 ネタではありませんので、どなたかご教授の程よろしくお願い致します。
0354352NGNG
秘密のコーナー

ところが、Stringには特別ルールがある。
newを使用せず、operator=(というのか?)でString
オブジェクトが作成された場合、インスタンスはstatic
に作成され、Flyweightとして扱われる。

String a ="hoge";
String b = "hoge";

なら、a==bはtrue。なんでだかわかるか?aとbが
同じStringインスタンスだから(単に内容が同じ
じゃなくて、同じ"インスタンス")。

String a = new String("hoge");
String b = new String("hoge");

このときは、aとbは違うインスタンス。意味わかる?
0355デフォルトの名無しさんNGNG
>>353

なんでテンポラリファイルなんか作るんだ?
setText()でいいじゃん。
0356352NGNG
だから、
String a ="hoge";
String b = "hoge";

というやり方で作成されたStringオブジェクトは==とequalsが
同じ戻り値になる。で、そのBlackBookとやらは、其の辺の秘密
を理解したうえで確信犯なのか、あるいは単なる知識=経験則野郎
で書いていると思われる。

おいらは、そんな作者が糞な本は買わない。どちらにしてもロクな
奴じゃない事は確かだから。
0357デフォルトの名無しさんNGNG
>>355

353です。まだ膨大なメソッドを把握しきれていませんでした。
非常に単純なことだったんですね。自分の勉強不足が恥ずかしいです。
穴があったら容れたい、いや入りたい(サム
#ありがとうございました。
0358デフォルトの名無しさんNGNG
>>347 厳密に言うと
アプリの起動方法はOSの操作体系依存だから
各OS用のJDKまたはJREの説明を読め!ってことなんだけど

DOS窓でJavaアプリを起動できるのであれば
LinuxでもSolarisでもコンソールを持ったOSなら
ほぼ同じコマンドラインとオプションでできるよ。

ただMacだけは俺も謎 マク使いの登場を待て
0359Java初心者NGNG
文字列の中の改行コードを削除する方法を教えてください。
(replaceとか使えるのでしょうか?)

初歩的な質問ですがご回答よろしくお願いします。
0360デフォルトの名無しさんNGNG
>>359
StringBufferに入れて’¥n’をdeleteChatAtで削除、とか。

もしファイルとかから読み込んでるなら
BufferedReaderのreadLineで読み込めば
最初から改行コードが入らないよ
0361優しいおにいさんNGNG
>>360

既にStringで内部にあるデータの場合は、
java.io.StringReaderという選択肢もあります。

文字列同士のマージ、置換や環境依存の改行コード
関係の変換などでこのクラスを使うと便利です。
0362デフォルトの名無しさんNGNG
gcj 試用記
http://www.hakusan.tsg.ne.jp/~tjkawa/diary/mini/gcjbench.rhtml
0363JAVA厨房ですよNGNG
すごくあたりまえのことなんだけど
public static mona uma()というのは
ほかのクラスからアクセスできて
戻り値の型がmona型なクラスメソッドですよね!
0364 NGNG
>>363
もしかしてBlackBook読んだ?
03651RubyユーザNGNG
あなた達には分からないでしょうが、Rubyは素晴らしい言語です。
オブジェクト指向スクリプト言語として他のスクリプト言語を圧倒する性能と美しい言語仕様を持っています。
例えば、SchemeやSmallTalkなどは比較的美しい言語だと言われていますが、後発である優位さでRubyは
さらなる美しさと実用性を備えています。
もちろんPerlやPythonなど問題外です。
日本語との親和性ではRubyしか選択肢がないでしょう。

LinuxのディストリビューションもRubyの採用例が増えてきています。
1年後には全てのディストリビューションがRubyを標準採用するでしょう。
Rubyは未来のスクリプト言語なのです。

長くなりましたが、コピペではありません。
賛同していただける方はRubyの事を分かっていただけない人に出会ったら、
この発言をコピペしていただければ幸いです。
Javaなんて糞ですが。
0366デフォルトの名無しさんNGNG
SMTPサーバでなくて、Exchangeサーバ経由で
メール出す処理って、難しいの?

本とかWebで探してもSMTPばっかりなんだけど。
0367デフォルトの名無しさんNGNG
質問があります。
String str = "";
while((str = ctr.readLine() != null)
System.out.println(str);
とするとctrが空になるとループから抜けるはずですよね?
でもアイドル状態になってループから抜けないのですがなぜでしょうか?
0368デフォルトの名無しさんNGNG
>>367
ctrってのはなんだ?BufferedReaderか?
括弧の対応があってないんだが。
0369デフォルトの名無しさんNGNG
>>368
while((str = ctr.readLine()) != null)でした
ctrはbufferedReaderです
0370デフォルトの名無しさんNGNG
>>369
readLine()メソッドがあるんだからBufferedReaderなん
だろうけど、元はなんなのよ?File?Socket?
0371デフォルトの名無しさんNGNG
http://www2u.biglobe.ne.jp/~hole/

あります
0372デフォルトの名無しさんNGNG

 Rubyはクソです。ゴミ箱逝きです。

いじょ
この発言をコピペしていただければ幸いです。
0373デフォルトの名無しさんNGNG
Socketです。FTPクライアント作ってるのだよ。
>>370
0374デフォルトの名無しさんNGNG
>>367
間違ってたらごめんだけど
nullと空文字列("")を混同してない?
0375-NGNG
その画像ならココ
http://members.tripod.co.jp/bingo852/
0376デフォルトの名無しさんNGNG
>>374
混同してない。
readLine()ってストリームの終りに達するとnullを返すんだよね?
でもなぜかループから抜けないの。
それで困ってるのです。
0377374NGNG
>>367
ごめん、ちょっと勘違い。
これ試してみて

while(ctr.ready()) {
str = ctr.readLine();
System.out.println(str);
}
0378デフォルトの名無しさんNGNG
>>376
じゃあ、Socketがストリームの終わりを検知してないんじゃないの。
ちゃんと書き出し側が書き終わってるかチェックしてみそ。
0379デフォルトの名無しさんNGNG
書き出し側がclose()してないに一票
0380デフォルトの名無しさんNGNG
>>377
上のコード実行してみたら一度も読み込まないで流れてった。

>>379
FTPクライアントのコントロール接続だからclose()しないでつなぎっぱなのだ。

www.kernel.orgのanonymousFTPで実験してるからサーバー側がおかしいということはないはず。
0381デフォルトの名無しさんNGNG
>>380
アホカ。。。close()されないなら、ずっとアイドル状態になっても
なんの不思議もないだろ。
0382デフォルトの名無しさんNGNG
>>381
あのさ、サーバーではなくてクライアントを実装しているわけ。
この場合
while((str = ctr.readLine()) != null)
System.out.println(str);
は、なぜに無限ループなにるのでしょうか?

それからアホというような中傷はやめましょうね、大人気ないです。
0383デフォルトの名無しさんNGNG
↑無限になる
0384デフォルトの名無しさんNGNG
↑無限ループになるでした。

失礼しました。
0385デフォルトの名無しさんNGNG
  Rubyはクソです。ゴミ箱逝きです。

いじょ
この発言をコピペしていただければ幸いです。
0386デフォルトの名無しさんNGNG
>>382
socketに対して読み書きしていて、相手がもうこれ以上書かないよ、
というのをsocketのclose()以外にどうやって検地するつもりなのか
まずそれを教えてくれ。
0387デフォルトの名無しさんNGNG
あげ
0388デフォルトの名無しさんNGNG
>>386
これ以上書かないよ、というのではなくて
どこまで書きこんだかを知りたいわけ。
だから
while((str = ctr.readLine()) != null)
で現在書き込んだところまで読み込んでループを終了すると思ったんだけど終了しないから困ってんの。
0389デフォルトの名無しさんNGNG
>>388
終了しない、無限ループ、というのは、改行が出力されつづけているということ?
それともフリーズしているの?
0390デフォルトの名無しさんNGNG
フリーズ>>389
0391デフォルトの名無しさんNGNG
>>388
であれば、それは、readLineがデータを待ってブロックしているだ
けみたいね。
readLineがnullを返すのは、ストリームが終った時だから、相手が
closeしないとね。
0392デフォルトの名無しさんNGNG
>>391
なるほど納得
では現在書き込んだとこまで読み込んでループを終了するにはどうすればいいでしょうか?
0393デフォルトの名無しさんNGNG
380はやっぱあほじゃん
0394デフォルトの名無しさんNGNG
>>388
相手がclose()に起因するソケットクローズ処理をしない限り、
readLine()がブロックするのは当たり前。ストリームの終了を
検知した時だけnullを返すという仕様なんだから、ストリームが
終了しない限りIOブロックかかりっぱなし、というのはJavaの
ネットワークプログラミング上の常識でしょう…

ソケットを繋ぎっぱなしでファイル毎の終了検知したいなら、それが
検知できるようなデータで判別するしかない。
ファイルのバイト長を事前に調べておいて、その長さを読み終わったら
ループを強制的にでてしまうとかするしかないんじゃないの?
あとは、ソケットリード専用スレッド別に作って外から読み込み済み
データ見に行くとか。

知識不足の馬鹿のくせに厚意で教えてくれる奇特な人間の善意に
子供っぽい反論するのは損だよ。反感買うだけ。あんたがガキじゃ
ないなら気をつけれ。
0395デフォルトの名無しさんNGNG
>>392
現在書き込んだ、というのを、ブロックせずに読み込める、と解釈すれば、
readLineでなく、read(char[] cbuf, int off, int len) を使えば
いいような気もするけど、「現在書き込んだ」ということが、意味ない気も
するね。何をしたいのか、再考した方がいいんじゃない?
0396デフォルトの名無しさんNGNG
>>393
意味のない中傷はやめましょう、見苦しいです。

>>394
なるほど以後気を付けます。

>>395
ふーん、そのメソッド使ってみようかしら。
0397デフォルトの名無しさんNGNG
しかし解決はしていないのであった
0398横槍君NGNG
>>396 意味もなく人を煽るのもやめましょう、見苦しいです。
自覚がないならなおさらです
0399デフォルトの名無しさんNGNG
別に煽ったつもりはない>>398
気に触ったのならすまんですね。
みんなデリケートなのね。
0400デフォルトの名無しさんNGNG
>ふーん、そのメソッド使ってみようかしら。
ものすごく感じ悪いんですけど。無自覚みたいなのがすごいね。
0401デフォルトの名無しさんNGNG
>>400
この業界にはこういう奴がおおい。
周りに与える心象とか影響とかを考える事のできない
真性オコサマ。
0402デフォルトの名無しさんNGNG
抜け毛が多くて困ってるんですけどどうしたらいいですか?
0403デフォルトの名無しさんNGNG
SocketのshutdownInputってのを使うといいみたいなんだけど
よくわからんので詳しい人解説して下さいよ。
煽りではないので下らん中傷はやめてね。
0404デフォルトの名無しさんNGNG
上のメソッドって現在の入力ストリームをフラッシュするというのとは違うのでしょ?

そういうメソッドないんかねえ。
0405デフォルトの名無しさんNGNG
>>403
サーバ側が切ってくれないなら、こっちで切るしかねえっしょ。

切る方法がclose()なのかそれ以外のメソッドなのかは、試して
みりゃ分かる事。そんなもん人に聞くな。

問題は、「何時をもって切ると決定するか」のロジックだよ。
それが決まれば、ループ条件にするなり、リードブロック中の
スレッドに対してInterruptで割り込みかけるなりできるだろ。
0406405NGNG
主観的に煽りかどうかとは関係ねえよ。
あんたが匿名板で質問する時に人に与える印象を計算
できないお馬鹿だという話で、煽りでも悪口でもないよ。

馬鹿に馬鹿というのは煽りじゃない。
0407デフォルトの名無しさんNGNG
>>405
ストリームを閉じるのではなくて現在のストリームの内容をクリアしたいわけ。
説明ヘタクソでごめんよ
0408デフォルトの名無しさんNGNG
みなさんデリケートな人達のようなので、もちょっとやわらかい口調で言ったほうがよかったですね。
すまんす
0409デフォルトの名無しさんNGNG
何がしたいのかぜんぜんわからん。
ストリームがなんであるかも理解してないんじゃないのか?
0410デフォルトの名無しさんNGNG
なんであるの?>>409
と言うとそれぐらい自分で調べろと言うのでしょ。
あなたもわかってないくせに。
わかってるのなら説明してみて。
0411デフォルトの名無しさんNGNG
InputStreamをフラッシュする?
ハァ?アタマダイジョウブ???
0412デフォルトの名無しさんNGNG
>>410 あなたは早く消えて欲しいので、もうちょっとわかりやすく自分のしたいことを説明してください。
ストリームをクリア?するとどのインスタンスがどうなるんですか。
そしてそれをどんなタイミングでしたいんですか。
0413デフォルトの名無しさんNGNG
409ストリームがなんであるかの説明まだかー
本当にわかってんのかー
0414デフォルトの名無しさんNGNG
>>411 412
だからそういう中傷はやめましょうね、大人気ないってば。
一回で理解しましょうね。
0415412NGNG
そんな事はどうでもいいので早く説明してください。
自分のしたいことも説明できないんですか?
0416デフォルトの名無しさんNGNG
>>415
ようするにwww.kernel.orgにFTPで接続すると普通の応答コードの他に変な文章を返して来るわけ。
それを無視したいのです。
わかりましたでしょうか?

変な中傷はナシね、へこんじゃうから
0417412NGNG
strの中身を見て変な文章だったら処理しなければいいんじゃないの?
0418デフォルトの名無しさんNGNG
>>409
ストリームがなんであるかの説明早くしてね
0419デフォルトの名無しさんNGNG
>>417
現在のストリームの内容を空にしてからPASVコマンドを送信して
応答コードを解析したいわけ。

色々やってるけどうまくいかんのよ。
ちなみに学校のサーバーとか家のLinuxに接続するとうまくいくの
www.kernel.orgは変な文章返して来るからうまくいかない。
0420デフォルトの名無しさんNGNG
>>417
それまではコマンド送信するごとにreadLine()で
一行づつ応答コードを解析してうまくいってたんだけどね。
www.kernel.orgのanonymousFTPは変な文章返して来るからうまくいかんのだよ。

伝わりますでしょうか?
0421デフォルトの名無しさんNGNG
>>419
じゃあBufferedReaderなんか使うの辞めればいいじゃん。

コマンド送信する直前に、RECVバッファにたまってるデータ
を1バイトずつ全部読んで捨てといたらええやん。
0422412NGNG
一行ずつしか処理できないから上手くいかないってことか?
それなら、複数行読んでから処理すればいいだろ。
だいたい、変な文章とかいう説明で他人がわかると思ってるのか?
0423デフォルトの名無しさんNGNG
ちなみにRECVバッファとはなんでしょうか?

煽りではなくマジレスですが
0424デフォルトの名無しさんNGNG
スレが重なりますなあ(照
0425デフォルトの名無しさんNGNG
>>422
伝わってないようなので実際にwww.kernel.orgにanonymousFTPで入ってみてよ。
あなたならどうやって処理しますか?

断固煽りではない
0426デフォルトの名無しさんNGNG
>>423
そういう発言する人は、FTPクライアント作成禁止。

あんたソケットの仕組み知らないでソケットつかってんのか?
0427412NGNG
変な文章ってWelcome to〜のことか?
変な文章が終わるまで読み飛ばすだけじゃダメなのか?
0428デフォルトの名無しさんNGNG
>>426
ソケットの仕組みしらないとソケット使えないの?
煽りではない
0429デフォルトの名無しさんNGNG
>>427
それそれ
あなたならどうやって飛ばす?

甘えてすまんす。
0430412NGNG
こっちから書く前にctr.reset()するようにすれば良いんじゃないの?
毎回一行しか応答読めなくなるが。
//俺はJavaはよく知らんのであってるかどうかしらんよ
0431デフォルトの名無しさんNGNG
reset()ってAPIリファレンスによると、
もっとも新しいマーク位置にリセットするのでしょ?
ストリームの内容をクリアするのではないらしい。
0432412NGNG
うわ、ほんとだ。
じゃあ、やっぱり、何が来たら応答するかわかってるだろうから、
readLineをその文字列がくるまでまわしてからbreakかな。
0433デフォルトの名無しさんNGNG
>>431
単にコマンドを発行して、そのレスポンスが現れるまで読み飛ばすのではまずい?
0434デフォルトの名無しさんNGNG
今日はもう寝まする
0435デフォルトの名無しさんNGNG
>>431
Welcome to の文章なら、以下のページの「レスポンス」という
記事を見ればわかるのでは?
http://www2.startshop.co.jp/~68user/net/ftp-4.html
0436デフォルトの名無しさんNGNG
>>408 周りがみんなデリケートに見えるのは
あんた一人がおかしいから

もうこの甘えん坊に構うの馬鹿らしいからやめないか?>>all
ずっと甘やかされた環境にいた真性か、
ネタで遊ばれてるとしか思えないんだけど。
0437デフォルトの名無しさんNGNG
Javaのいい例題が
たくさん載っている教本があったら教えてください。
後、オブジェクト指向について
初心者が分かりやすい本があったら教えてください。
0438OO逝って良しの1NGNG
オブジェクト指向の概念は危険です。
言語だけ見ましょう。
オブジェクト=扱うべきデータ(たまにハード)ぐらいに捕らえていた方が
無難です。

「扱うべきデータとそれを操作する関数のパッケージがクラス。
クラスに操作入出力関数を埋めこんで、クラスからクラスへデータ
を渡すだけで必要なプログラム動作が得られるような構造」
と理解すればOK。

解説本読んでも混乱するだけです。
0439デフォルトの名無しさんNGNG
>>437
javaの基本は、
「プログラミング言語Java」
が一番。プログラム例では、
「JAVAプログラムクイックリファレンス」
がいい。
あと、オプジェクト指向の解説ではないけれど、javaでオブジェクト
指向プログラミングするなら(って、他にしようもないけれど)、
「Bruce EckelのJavaプログラミングマスターコース―徹底探究!
 Javaのしくみとオブジェクト作法」
がいいと思うよ。
どれも内容が濃いから、買って損はしないよ。まあ、今、読めなくても
そのうち、良さがわかるから。
0440デフォルトの名無しさんNGNG
     へヘ
    /〃⌒⌒ヽ   / ̄ ̄ ̄ ̄ ̄ ̄
    〈〈 ノノノハ))) <  Rubyはクソです。ゴミ箱逝きです。 いじょ
    |ヽ||´ ∀`||   \______
   ⊂[リ∨╂リ]つ
    リ /リリリリリ 
      U U                ̄ ̄ ̄ ̄ ̄\
 この発言をコピペしていただければ幸いです。   > ∧_∧
                       _____/  (´∀` )
                                  (    )
                                    | │  |
                                  (_(__)
0441デフォルトの名無しさんNGNG
private boolean isNumberPrefix(String str){
return Character.isDigit(str.charAt(0)) &&
Character.isDigit(str.charAt(1)) &&
Character.isDigit(str.charAt(2));
}

public String getResponse(){
String msg = "";
try{
while(!isNumberPrefix(msg = ctr.readLine()));
}catch(IOException e){}
return msg;
}

↑応答コードだけ返すメソッド、これでいけました。
>>412 つき合ってくれてありがとね
0442Ruby!NGNG
--------------------------------------
OOPならRubyだね。
Java

なにかと話題のオブジェクト指向言語であるJavaとRubyを比較すると:

* Rubyはインタプリタ型言語。
* Rubyではすべてのデータがオブジェクトである。
* Rubyではモジュールを使って実装を共有できる。
* Rubyの変数や式には静的な型がない。
* Rubyでは正規表現が文法としてサポートされている。


http://www.ruby-lang.org/ja/compar.html

Rubyを知ってもらうためにもこの文をコピペしてください。
0443デフォルトの名無しさんNGNG
>>438
貴方こそ、よくおわかりのようで。

どうにも、変な誤解を読者に与える糞な参考書が
OOP関係には多いんだよね。
プログラマー的には、その程度と理解しておく
のが実践のうえでは過不足ないレベルだよねー。
0444デフォルトの名無しさんNGNG
                        
             
     
―――――――――――――――――――――――
それでは次のコーナーです
__  ____________________
    .|/   ‖      ‖ ____   
        ‖      ‖ | ON AIR.|
   ∧ ∧ θ     ‖  ̄ ̄ ̄ ̄
   (,,゚Д゚)__ /[] ̄ ̄θΛ_Λ
  ||(.  つ_/    //(´∀` )/|  
  ┗┳ /      ̄/⊂    ||_/
    ┻| ̄ ̄ ̄ ̄ ̄|  (  ━┳┛      
      |_____| /ヽ」┘┻
____________|\____

「Rubyはクソです。ゴミ箱逝きです。 いじょ 」
この発言をコピペしていただければ幸いです。
0445デフォルトの名無しさんNGNG
シゲの地道な工作が着実に実を結びつつあるな
0446 NGNG
―――――――――――――――――――――――
それでは次のコーナーです
__  ____________________
    .|/   ‖      ‖ ____  
        ‖      ‖ | ON AIR.|
   ∧ ∧  θ     .‖  ̄ ̄ ̄ ̄
   (,,゚Д゚)__ /[] ̄  ̄θ Λ_Λ
  ||(.  つ_/     //(´∀` ) /|
  ┗┳ /      ̄/⊂    ||_/
    ┻| ̄ ̄ ̄ ̄ ̄|  (  ━┳┛    
      |_____| /ヽ」┘┻
____________|\____

「>>444はクソです。ゴミ箱逝きです。 いじょ 」
この発言をコピペしていただければ幸いです。
0447デフォルトの名無しさんNGNG
ageとくね。
0448デフォルトの名無しさんNGNG
>>445

そうか?Rubyがどれほど良い言語なのか知らんけど、
変な信者がひとりいて、この板に迷惑掛けているというだけで、
自分としての評価が最低ランクまで落ちるんだけど…
0449-NGNG
俺、このHP大好き!
http://members.tripod.co.jp/bingo852/
0450デフォルトの名無しさんNGNG
>>448
それが狙いなんだろ
信者を装うアンチ
0451デフォルトの名無しさんNGNG
>>450
あらら。世の中には、馬鹿で暇で無駄飯ぐらいで陰湿で
生きていてもしょうがない人種ってのが、いるんだねえ。
0452デフォルトの名無しさんNGNG
>>451
2chの帯域も浪費しています。
0453長文スマソNGNG
いろいろ調べたけどわかんなかったので,はずかしい質問す。
スタートアップJava 技術評論社 平成13年8月発行つー本をさっき買ったんですが,
p.20に書いてあるように,

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

public class FirstProgram{
public static void main(String[] args){
JFrame myFrame = new JFrame("きぼーん");
myFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
myFrame.setSize(350,200);
myFrame.setVisible(true);
}
}
をFirstProgram.javaに書いた後,
D:\Data\Java>javac FirstProgram.java
は通りますが,
D:\Data\Java>java FirstProgram
すると,
Exception in thread "main" java.lang.NoClassDefFoundError: FirstProgram
となります。本に書いてあるようにやったのに,それにSDK2以上だと-CLASSPATHは
設定しなくてよいよと書いてあるHPもありました。

但し,set PATH=************;c:\jdk1.3.1\bin autoexec.batに全部書きました。
OS:Windows98
Javaのバージョンは,
D:\Data\Java>java -version
java version "1.3.1"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.3.1-b24)
Java HotSpot(TM) Client VM (build 1.3.1-b24, mixed mode)
過去ログにも書いてありましたが,わからんのでお願い縞ッス.
0454長文スマソNGNG
http://hp.vector.co.jp/authors/VA013059/jq/jq0006.txt
によるとインストるミスではないかということでした。
0455デフォルトの名無しさんNGNG
>>453
D:\Data\Javaに FirstProgram.classは
ちゃんとできた?そのディレクトリにできた?
もしできてるなら、CLASSPATHが変なところを
見ているかもしれないので、

D:¥Data\Java>java -cp . FirstProgram
とやってみて。

それでダメならインストールミスだな。
そんなことは起きないと思うんだが。
0456デフォルトの名無しさんNGNG
>>453
そのままで出来るYO!!
OS:win2k
java version "1.3.1"
0457デフォルトの名無しさんNGNG
http://java.sun.com/j2se/1.4/
JavaTM 2 SDK, Standard Edition,v 1.4.0 Beta 2 (J2SETM)
の正規版いつ出るか知りませんか?
0458長文スマソNGNG
445さん
ありがとう.
>D:\Data\Javaに FirstProgram.classは
>ちゃんとできた?そのディレクトリにできた?
できてる.で,−cpコマンドかけたら”きぼーん”と出てよかったよ.
456さんもレスありがとう.
0459長文スマソNGNG
↑455さんのマチガイでした.
0460助けてくださいNGNG
jdk1.3をインストールして、サンプルにhelloworld.java
と言うファイルを作成したのですが、コンパイルできません。
ドスコマンドラインから
「javac helloworld.java」
と入力すると、
「コマンドまたはファイル名が正しくありません。」
と言う表示が出てきてコンパイルされません。
本当に困っています。どなたかご教授お願いします。
OSはMeです。
0461デフォルトの名無しさんNGNG
>>460
http://www.gimlay.org/~javafaq/javafaq.html
0462デフォルトの名無しさんNGNG
>>460
初心者さんがんばれぇ
0463デフォルトの名無しさんNGNG
>>460
パス通した?
0464デフォルトの名無しさんNGNG
>>460
厨房うざい、氏ね
0465 NGNG
>>464 ruby?
0466tyvNGNG
Forteつかおうとしたんですが突然エラーが起こったりしてうまく動きません。
やはりWindows98せはだめなのでしょうか?
WinsowsNt,2000とかいてあったもんで・・・
0467デフォルトの名無しさんNGNG
>466
何人?
0468デフォルトの名無しさんNGNG
>466
なんか俺と同じ道を辿りそうだね。
ForteとJBuilder、Win98環境で試してみたところ。結果は
JBuilder>>Forte だった。Forteは、Ver1.0しか98に対応
していないし、将来も対応しないらしい。
OSを乗りかえるまでは、当分JBuilderで逝こうと思う。
0469デフォルトの名無しさんNGNG
以下のような事をやりたいんですが
分かる方いらっしゃたら教えてください!

1.URLがただ羅列してある「url.txt」ファイル
(1行に1つのURLが書かれていて、それが何行もある。)
2.「url.txt」から一行ごとにURLを読み込む
3.同じURLがあればカウントする
4.「url.txt」から読み込んだURLをカウント数が多い順に上から(昇順で)表示。
5.URLの横にそのURLに対応するカウント数を表示。
※ 最終的に↓みたいな感じで表示させたいんですが・・

http://www.****.ne.jp/***.cgi ---- 10
http://www.****.com/***.html   ---- 7
http://www.****.ne.jp/***.html ---- 1
http://www.****.co.uk/*****.cgi ---- 1

どうやればいいんでしょうか・・
0470デフォルトの名無しさんNGNG
sort と uniq と grep で作れそうだな…
0471デフォルトの名無しさんNGNG
while(<>){
 chop;
 $urls{$_}++;
}
foreach $url ( keys %urls ) {
 $surls{sprintf("%05d%s",$urls{$url},$url)}++;
}
foreach $surl ( reverse sort keys %surls ) {
 printf("%s ---- %d\n",substr($surl,5),substr($surl,0,5));
}
0472デフォルトの名無しさんNGNG
sort < url.txt | uniq -c | sort -r
0473デフォルトの名無しさんNGNG
ラジオボタンを下の様に並べたいんです。
ラジオボタンはCheckBoxで作ります。
○5 ○5
○4 ○4
○3 ○3
○2 ○2
○1 ○1

ちなみにグループは左の縦5つと、右の縦5つです。
setLayout(5,2)でやってみたんですが、うまくいきません。
どうしたらいいんでしょうか?
0474デフォルトの名無しさんNGNG
>>469
宿題ですか?
とりあえず機能の半分だけロジックだけですが、どうぞ。
ソートの方法は考えなさい。

import java.util.*;
import java.io.*;

Map urls = new HashMap();
BufferedReader reader =
 new BufferedReader(new FileReader("filename"));

String line = null;
for((line = reader.readLine())!=null){
 Integer count = (Integer)urls.get(line);
 if( count == null )urls.put(line,new Integer(1));
 else urls.put(line,new Integer(count.intValue()+1));
}

for(Iterator iter= urls.keySet().iterator();iter.hasNext();){
 Strig line = (String)iter.next();
 System.out.println(line +"---"+urls.get(line));
}
0475デフォルトの名無しさんNGNG
>for((line = reader.readLine())!=null){
しまった、whileですな。

>>473
ネタですか?
setLayout(new java.awt.GridLayout(x,y));
あと、ラジオボタンとチェックボックスは違うぞ。
0476デフォルトの名無しさんNGNG
Forte? JBuilder? なんだそりゃ?
EMACS+ANT+CVSで十分だろ(糞
0477デフォルトの名無しさんNGNG
>>476
そうだね。十分だね。
けど君と違って、全てのメソッドの
全ての引数を覚えられるほど
頭がよくないんだよ。
0478SSHNGNG
これって違うものなの?

String ss = null;
String ss = new String();
String ss = new String("");
0479デフォルトの名無しさんNGNG
>>478
String ss = null;
------------------------
String ss = new String();
String ss = new String("");
0480名無しさんNGNG
HashMap と Hashtable 違いを教えてください
0481デフォルトの名無しさんNGNG
インターフェイスというのがよく分かりません。
独習ジャヴァを何回も読んだんですが
教えてください。
0482481NGNG
誰も教えてくれなくても(゚ε゚)キニシナイ!!
0483デフォルトの名無しさんNGNG
>480
機能的には同じ
Hashtableはレガシー(JDK1.0からか?
VectorとArrayListも同様の関係

あ、HashMapのアクセスメソッドはsynchronizedされてないって違いがあったっけか
0484481NGNG
>>483
教えてくれてありがとう!
わいの理解力が無いからその教え方ではわからんのよ
もう一回説明してクレ〜
0485デフォルトの名無しさんNGNG
>>481
独習ジャヴァは呼んだこと外ので、interfaceをどう説明しているか
知らないけれど、javaにとっては非常に重要なものなので、しっかり
学習するように。
って、これだけではチャチャだけど、簡単に言えば、多重継承を許さない
javaで、ひとつのオブジェクトに複数の型を持たせることができる仕組。
ポリモーフィズムにとって重要な役割を果たす。
んーん、これではますます分からないよね。
0486485NGNG
続けるね。
例えば、GUIでボタンを押したら何かするというとき、ActionListener
というインターフェイスをimplementsするけど、ActionListenerには
actionPerformedというメソッドが宣言されているから、このインターフェイス
を実装したオブジェクトなら、どれでもactionPerformedを呼び出すことが
できるわけ。
だから、そのオブジェクトについて他のことは知らなくても、ActionListener
を実装しているということだけで、安心してactionPerformedを呼び出すことが
できる(って、また同じこと言ってるけど)。
それがなぜ重要なことなのかを理解できるまでには、まだまだ道のりは長い。
0487デフォルトの名無しさんNGNG
>>481 読むよりも実際につかってみたら?
初歩的なことを聞くようですけど
interface以前にclassってわかりますか?
0488デフォルトの名無しさんNGNG
ObjectInputStreamでファイルを読み込むとファイルの終端では何が返されるのでしょうか?
0489デフォルトの名無しさんNGNG
static関数を多用する理由はなんですか?

class A{
private static A a;
 public staic A getA(){
if(a==null)a=new A();
return a;
}
......
public static void f1(){...}
public void f2(){...}//f1と同じ動作
}

使用する際には
A.f1();
よりも
 A.getA().f2();
の方がずっと応用範囲が広いと思うのですがどうでしょうか?
0490488NGNG
>>489
singletonですな
0491デフォルトの名無しさんNGNG
Java使ってる人で、実行時ポリモーフィズムがわかってないのって・・・・
Java使ってる意味ないって(笑)
0492488NGNG
私の質問にも答えて欲しい
0493デフォルトの名無しさんNGNG
>>492 試してみた?
0494488NGNG
ObjectInputStream in = new ObjectInputStream(new FileInputStream(new File("filename")));

Data data;
while((data = in.readObject()) != null);
ていう感じでやってたらIOExceptionがthrowされた。
0495492NGNG
CやC++だったらEOFだよね、javaも同じではないの?
0496デフォルトの名無しさんNGNG
ClassNotFoundException - 直列化されたオブジェクトのクラスが見つからなかった場合
InvalidClassException - 直列化で使用されるクラスになんらかの不具合があった場合
StreamCorruptedException - ストリームの制御情報に一貫性がない場合
OptionalDataException - プリミティブデータが、オブジェクトではなくストリームに見つかった場合
IOException - 通常の入出力関連の例外のどれかが発生した場合
0497デフォルトの名無しさんNGNG
Objectがもう無いのに読み込んだから、例外が出るんでいいんでないの?
0498出馬鹿ーNGNG
>>494 ふ〜んネタですか?
0499488NGNG
>>497
ではどうやってファイルの終端を判断してループを抜ければよいのでしょうか?
0500デフォルトの名無しさんNGNG
>>498
いや、自分でプログラミングできないから
ライブラリを使うというタイプの人でしょう
0501デフォルトの名無しさんNGNG
http://java.sun.com/j2se/1.3/ja/docs/ja/api/java/io/InputStream.html#available()
0502出馬鹿ーNGNG
少なくともIOExceptionのときは別の処理をする必要がありますよね。
<pre>
while(true){
try{
data = in.readObject();
if(data==null)break;
...
}catch(IOException e){...}
}
</pre>
とやったらどうでしょうか?
0503出馬鹿ーNGNG
<pre></pre>は余計でした。
0504488NGNG
>>500
歯車の再発明がんばってくださいよ
0505デフォルトの名無しさんNGNG
catch節がないとコンパイルエラーになるわけだから
どっかに書くだろ
0506488NGNG
>>502
それはwhile((data = in.readObject()) != null)
と同じことではないの?

ファイルの終端でnullを返すのではないのでしょうかねえ
0507デフォルトの名無しさんNGNG
>歯車の再発明がんばってくださいよ
コンピューターの仕組みもある程度わかっていないと、
まともなJavaプログラムはかけないのだが
まあ、VB厨房がけなされる理由がわからない人間には
言っても無駄なんだろうな
0508出馬鹿ーNGNG
>>505 そりゃそうですね!
でもIOExceptionが
ループのどこで発生したかを知るには
こんな感じにやることもできるってことですよ。
0509デフォルトの名無しさんNGNG
>>501
はつかえないの?
0510出馬鹿ーNGNG
というかwhileなんて使わずにifでいいんでないの?
0511488NGNG
while((data = (Data)in.readObject()) != null)
System.out.println(data.toString());
とやるとファイルの終端までのデータは出力されるから
終端でIOExceptionが発生しているらしい
0512509NGNG
無視ですか(笑)
0513488NGNG
オブジェクトシリアライズってあんまり使わんのかなあ
0514出馬鹿ーNGNG
ちなみに何回ループした?
2回以上であることを期待・・・・
0515509NGNG
リンク先クリックするだけだと()が抜けちゃいますから・・・

>>513
必要なデータだけ書き出すのに慣れてるので、
あまり使われないだけではないでしょうか?
0516出馬鹿ーNGNG
ObjectInputStreamはあくまで1つのオブジェクトを扱うのでは?
0517509NGNG
あのーー
>>501
見たほうがいいですよ(笑)
0518出馬鹿ーNGNG
>>516馬鹿言っちゃいけないね何個でも扱えるな
0519509NGNG
書き込みが止まったとこをみると
理解してもらえたようで
良かったです
それでは
0520488NGNG
>>519
まだわかってないさ
501見たけどそれがどうしたの?
何が言いたいわけ?
0521デフォルトの名無しさんNGNG
swingアプリを使っていると、全ウインドウ(他アプリ、デスクトップ含む)
に対して再描画が行われて、ちらつく事があるのですが、防げないの
でしょうか。Forteのソースエディタをスクロールさせているだけでも
起きるものです。

win2k、jdk1.3.1_01にて。
0522488NGNG
swingは標準でダブルバッファリングされてるらしいけどね。
ある程度のちらつきはしょうがないんじゃないかな。
Forteは重いよねえ。
0523521NGNG
>>522
ダブルバッファリングは関係ないです。
再描画が起きるのは別のアプリにもですから。
0524出馬鹿ーNGNG
俺もやってみるわ。ObjectInputStream
0525デフォルトの名無しさんNGNG
読もうとしているファイルは、
ObjectOutputStream.writeObject()で書き込んだ
データなの?

それ以外なら、readObject()がIOExceptionかその派生
例外投げるのは当たり前だと思うが。
ストリームから読んだ情報にオブジェクト復帰に必要な
データがかいてなければ、そりゃ例外発生するさね。
(クラスによるけど)

で、ネタでしょ?
0526出馬鹿ーNGNG
やってみたよ、再現したよ。いまどうすればいいか試しているよ。
0527出馬鹿ーNGNG
でもこちらはEOFException だよね
そこがちがうな。
0528デフォルトの名無しさんNGNG
>>527
EOFException extends IOExceptionです。
原因判明ですな。
0529出馬鹿ーNGNG
try{
 while(true){
  data = in.readObject()
 }
}catch(EOFException e){}
ってやったら問題無く動作したよ。
でも例外をこんな使い方していいもんかな?
0530488NGNG
>>527
例外発生させずにループを終了させることはできないのでしょうか?
0531デフォルトの名無しさんNGNG
linuxで開発しましょう>521
0532デフォルトの名無しさんNGNG
>>529
InterruptedException(スレッド割り込みで発生)、
InterruptedIOException(ソケットリードブロック割り込みで発生)
など、エラーではない例外はコアにもいっぱいあります。
この辺は、キャッチしてそのまま流す事も多いです。

ということで、正しい使い方でしょう。
0533デフォルトの名無しさんNGNG
while(0!=in.available())
0534デフォルトの名無しさんNGNG
>>531
開発してる物がswingアプリなので、開発環境が問題になっているのではないです。
forteは使っていません。例として出しました。分かりにくかったです。
0535デフォルトの名無しさんNGNG
swingのソースコードに手を入れてあげればいいのでは?
win2000で上手く表示できるように、しつこくrepaint()するだけでしょ?
0536デフォルトの名無しさんNGNG
repaint()しても一度背景色で塗りつぶされてしまえばちらつきますから、
あまり意味がないと思います。

jdk1.4b2を試してみます。
0537488NGNG
おいらが言うのもなんだけど、日本語おかしいよ>>534
0538出馬鹿ーNGNG
イベントで
java.awt.event.WindowAdapter
の関数windowDeactivated
を使っていませんか?
この関数でActivate処理をしていませんか?
0539出馬鹿ーNGNG
画面がチラツく原因は色々考えられるのでなんともいえません。
0540デフォルトの名無しさんNGNG
オブジェクトのシリアライズはネットワークごしのデータ受け渡しにべんり!!
0541デフォルトの名無しさんNGNG
>>530
>>533で解決しましたか??

>repaint()しても一度背景色で塗りつぶされてしまえばちらつきますから
その程度のレベルだと、まずswingが扱えないと思いますが
まず、AWTで基礎を学んでみてください
0542488NGNG
アプリって何作っとんのだ。
すみやかに答えよ>>534
0543デフォルトの名無しさんNGNG
>540
RMI
0544デフォルトの名無しさんNGNG
あの、、、マックを使ってる人はどうすれば、、、
0545デフォルトの名無しさんNGNG
>544
あきらめるしかないでしょ
0546488NGNG
SocketからObjectInputStreamでデータ受け取ると最後はnull返される?>>540

日本語へたくそですまん
0547デフォルトの名無しさんNGNG
>>544 あの、、、マックを食ってプリオンに感染した人はどうすれば、、、
0548544NGNG
>>574
あきらめるしかないでしょ
0549488NGNG
>>548
>>574て誰だよ、お前阿呆か?
0550デフォルトの名無しさんNGNG
488はAPIリファレンス知らないのか?
ソケットなんだから、ずっとブロックされっぱなしだろ
0551デフォルトの名無しさんNGNG
>>538
使っていません。

>>541
仰っているのはダブルバッファリング周りの事ですね。
自分で作ったアプリだけがちらつくのならデバッグも楽なのですが、
同じ時にデスクトップまでちらつくのです。

Forteでも他のウインドウに隠れている部分が表示される時、
隠れていた部分は灰色で、すぐに通常の絵が描かれます。
これが、普通に使っている時にウインドウ全体に対して起きるます。
デスクトップや一部他のアプリに対しても起きます。

ただ、他になっておられる方はいないようなので、javaアプリ以外の
私の環境に原因があるのかもしれません。
0552 NGNG
ちらつき対策

1)ハードのアクセス制限によりちらつく場合(ごま塩ノイズ)
垂直ブランキング期間に転送すればちらつかない場合があります。

2)書き換えが表示期間中に行われる場合(書き換えの境界が見える)
表示をいくつかに分割して、VBLANK待ちを各描画の頭に入れましょう。
0553551NGNG
修正
> 仰っているのはダブルバッファリング周りの事ですね。
update()のオーバーライドです。
ダブルバッファリングはその時のpaint()での話でした。
たびたびすいません。
0554出馬鹿ーNGNG
toFront()
toBack()
などを多用していませんか?
0555デフォルトの名無しさんNGNG
forteのバージョン低いんじゃない?
うちは大丈夫だけど・・・

>仰っているのはダブルバッファリング周りの事ですね。
俺もあの発言はまずいと思うよ
AWT使ったことありませんって感じの発言だもん
車輪の・・・とかってのがあったけど
結局、原点がわかってないと駄目だよね

気になったんだけど、一部他のアプリ・・・って
Javaアプリじゃないんなら・・・
レスして損した気分になるんですが
0556488NGNG
もう少し考えてから書き込んで下さいね>>553
ここは感情の発露の場ではないのですよ。
公共の場ですからね、気を付けて。
0557出馬鹿ーNGNG
paint()をオーバーライドして済むことを
update()をオーバーライドしてやっていませんか?
0558デフォルトの名無しさんNGNG
>>553
それをふまえて
自分の言いたいことを書き直せば??
日本語痛すぎですよ
0559488NGNG
自作自演くさい
0560デフォルトの名無しさんNGNG
Java入門の良い本ありますか?
0561488NGNG
ASCIIのcoreJAVA2とgraphicsJAVA2がいいと思う
0562出馬鹿ーNGNG
>>560 Java言語プログラミングレッスン(上下)結城浩
なんてどう?あまり読んでないけど。
0563デフォルトの名無しさんNGNG
>>562
読んでない本薦めるなよ
0564出馬鹿ーNGNG
>>561 なんか初心者を煙に巻くのがはやっているみたいね
0565デフォルトの名無しさんNGNG
>>564
オマエモナー
0566出馬鹿ーNGNG
あまりに初歩的な質問がくると次のように思うよね!
「お前やる気があんのか?」
「マニュアル読め」
煙に巻きたくなる気持ちわかるよ・・・現に自分もやってるし。
0567デフォルトの名無しさんNGNG
ホント
あふぉバッカリ
0568488NGNG
今日はもう寝ますね
ちんこまんこでおやすみなさい。
0569デフォルトの名無しさんNGNG
>>568
もう来ないでね。
0570デフォルトの名無しさんNGNG
>>488
0571デフォルトの名無しさんNGNG
>>554
どちらも使用していません。

>>555
ForteはRELEASE 2.0を使用しています。

javaアプリを使用していると、他アプリも含めて、再描画が起きます。
javaアプリにも起きます。
顕著なのがデスクトップです。
他のアプリを使用している場合は起きない上に、javaアプリに描画で
負荷をかけると起きるので、javaアプリに原因があると思ったのです。
ただ、他に起きている方がおられないので、一般的には起きないものな
のかと思いました。

>>557
update()のオーバーライドはしていません。
swingのupdate()はpaint()を呼び出すだけなので、オーバーライドする
必要が無いのは分かっています。

>>558
発端となった物を書き直すと、

私の環境では他のウインドウに隠れている部分が表示される時、
隠れていた部分は灰色で、すぐに通常の絵が描かれます。
swingのコンポーネントで、です。
swingのupdate()はpaint()を呼び出すだけで、背景色で塗りつぶしてはいません。
ですからこの実装をしても、ウインドウの再描画をする場合には一瞬背景色で
塗りつぶされてしまうものだと思いました。
だから、repaint()しても一度背景色で塗りつぶされてしまい、ちらつきます。

となります。

ですが、そもそも私が前提としていた
> 他のウインドウに隠れている部分が表示される時、
> 隠れていた部分は灰色で、すぐに通常の絵が描かれます。
が他の方の環境では起きないようなので、上記は誤りとなります。


ウインドウ全体の再描画によるちらつきは普通、起きないようですので気にしない事にします。
お騒がせしてすいませんでした。
0572488NGNG
Forteなんてよく使うね
自分も前は使ってたけど糞なのでやめた
今はemacs+ant+cvs
0573488NGNG
あなたの発言省略されてるよ>>571
0574出馬鹿ーNGNG
>>572 JBuilderつかっているけどどう思う?
0575デフォルトの名無しさんNGNG
再描画が気にならなくなるくらい速いマシン使う
PCの能力くらい書いとけ
0576デフォルトの名無しさんNGNG
>488
作ってるアプリが違うんだから・・・・

とりあえず、571は「ちらつき」という単語の意味を間違って認識している
そして、AWTを使ったことがない可能性が高い
という事実が明らかになっただけだな
そして、swingに関しても使い方しか知らないようでして
使いやすいライブラリは、くそプログラマを量産してしまうという面があるようで
0577571NGNG
お詫びに参りました。

思いつきで常駐ソフトを全て終了させた所、再描画によるちらつきが
一切なくなりました。
やはり原因が私の環境にありました。

申し訳ない。
0578ぐぐNGNG
i-appliのJavaについて質問させてください。
com.nttdocomo.ui の Fontクラスなのですが、
どうしてもフォントのサイズを大きくしたいのです。
Font.SIZE_LARGE などを指定しても、機種依存で
まちまちであるということは調べました。
他に大きくする方法はないのでしょうか?
自作クラスなどを作って大きくするなど、
アドバイスがあればお願いいたします。
0579へたれ大学生NGNG
JAVA API仕様のページ(http://java.sun.com/products/jdk/1.2/ja/docs/ja/api/)を
読んでいるのですがどうもとっつきにくいです… こんな自分にも理解できるようなAPI解説
ページでいいところをご存知でしたら教えてください
0580デフォルトの名無しさんNGNG
http://java.sun.com/j2se/1.3/ja/docs/ja/api/index.html
0581デフォルトの名無しさんNGNG
>>578
http://java.sun.com/j2se/1.3/ja/docs/ja/api/java/awt/FontMetrics.html
これでいいかな?
0582481NGNG
481 :デフォルトの名無しさん :01/09/27 18:04
インターフェイスというのがよく分かりません。
独習ジャヴァを何回も読んだんですが
教えてください。

485 :デフォルトの名無しさん :01/09/27 20:07
>>481
独習ジャヴァは呼んだこと外ので、interfaceをどう説明しているか
知らないけれど、javaにとっては非常に重要なものなので、しっかり
学習するように。
って、これだけではチャチャだけど、簡単に言えば、多重継承を許さない
javaで、ひとつのオブジェクトに複数の型を持たせることができる仕組。
ポリモーフィズムにとって重要な役割を果たす。
んーん、これではますます分からないよね。


486 :485 :01/09/27 20:18
続けるね。
例えば、GUIでボタンを押したら何かするというとき、ActionListener
というインターフェイスをimplementsするけど、ActionListenerには
actionPerformedというメソッドが宣言されているから、このインターフェイス
を実装したオブジェクトなら、どれでもactionPerformedを呼び出すことが
できるわけ。
だから、そのオブジェクトについて他のことは知らなくても、ActionListener
を実装しているということだけで、安心してactionPerformedを呼び出すことが
できる(って、また同じこと言ってるけど)。
それがなぜ重要なことなのかを理解できるまでには、まだまだ道のりは長い。


487 :デフォルトの名無しさん :01/09/27 20:36
>>481 読むよりも実際につかってみたら?
初歩的なことを聞くようですけど
interface以前にclassってわかりますか?
0583481NGNG
>>486:485
説明読んだのですが、知らない言葉ばっかりでよけい頭が混乱(TT)
implementsってなんですか?

>487
>interface以前にclassってわかりますか?
クラスというのは、メソッドなどが入ってる入れ物だと思われ。
0584デフォルトの名無しさんNGNG
>>578
大きい文字を描いた gif を用意する。ってのはどうだ。
0585デフォルトの名無しさんNGNG
>>583
>説明読んだのですが、知らない言葉ばっかりでよけい頭が混乱(TT) implementsってなんですか?

implements はインタフェイスを実装するときに使う。例えば

interface A{
 int method(int);
}
class B implments A{
 public int method(int a){ return a*2; }
}
class C implments A{
 public int method(int a){ return a*3; }
}

こんな感じ
0586585NGNG
>>583
補足:インタフェイスとクラスの違い

(1)インタフェイスはメソッドの中身を書けない
(2)インタフェイスのメソッドはすべてpublic
(3)いくつでもインタフェイスをimplementsできる

(3)は例えばこんな感じ

class B implements A1, A2, A3{
0587ぐぐNGNG
>>581
情報ありがとうございます!
試した後で報告させていただきます。

>>584
残念ながら、文字は固定ではないので
gifでは無理なんです。
0588481NGNG
>>585:586
わかった!ありがとうございました。
インターフェースを使えば一つのクラスに
いっぱい継承ができるんですね。
独習ジャバに書いてるのもなんとなく理解できますYO!
でわ!
0589デフォルトの名無しさんNGNG
>>583
>implementsってなんですか?
って、独習Javaを繰り返し読んだんじゃないのか?
P196からをちゃんと読め。
それでも判らなければ、プログラミングレッスン(下)
さらに判らなければあきらめ
0590481NGNG
>>589
結城さんのですか?
0591584NGNG
>>587
じゃあ無理です。あきらめれ。
0592デフォルトの名無しさんNGNG
>>589
むしろ複数のクラスで一つのインターフェイスを使い回せることが
嬉しいと思ったり。
0593デフォルトの名無しさんNGNG
>>488
亀レスだけど・・・。
ObjectInputStreamのドキュメントを見たけれど、ストリームの終わりで
何が返されるのか、見つけられなかった。
例外を補足するか、または、書き込む側が、最後にnullを書くなどの工夫が
いるみたい。
availableは機能しなかった。どうもInputStreamのものをオーバーライド
してないみたい。
誰か他の方法わかる人、教えて。
0594ぐぐNGNG
>>581
http://java.sun.com/j2se/1.3/ja/docs/ja/api/java/awt/FontMetrics.html
はフォントを表示するために大きさを取得するものですよね?
i-appliのjavaのFontクラスにも似たようなメソッドはあるのですが、
Fontの大きさそのものはかえられません。

>>591
ですか。。。
ルパン・サブタイトルみたいなi-appliを作りたかったんですけど。。。
ノーマルフォントじゃしょぼすぎる。。。
0595481NGNG
>>592
一つのクラスで複数のインターフェイスを使えるのが嬉しかったです。
0596デフォルトの名無しさんNGNG
>>595
>一つのクラスで複数のインターフェイスを使えるのが嬉しかったです。

C++は普通に複数のクラスを継承(多重継承)できるんで、いっそのことC++に乗り換えれば、嬉しさ倍増?
0597481NGNG
class (゚д゚)ウマー extends (・∀・)イイッ
だったら(・∀・)イイッを(゚д゚)ウマーに継承するって言えるけど

class (゚д゚)ウマー extends implements (・∀・)イイッ,(゚ε゚)キニシナイ!!
だったらなんていうんですか?
(・∀・)イイッと(゚ε゚)キニシナイ!! を(゚д゚)ウマーに継承するって言うんですか?
0598585NGNG
>>597
読みにく・・・
私は implements を直訳して実装と呼んでますが、本当のところはどうなんだろー。

> class (゚д゚)ウマー extends implements (・∀・)イイッ,(゚ε゚)キニシナイ!!
この書き方は間違い

インタフェイスの実装だけなら
class (゚д゚)ウマー implements (・∀・)イイッ,(゚ε゚)キニシナイ!!

継承+実装なら
class (゚д゚)ウマー extends Σ(゚д゚lll)ガーン implements (・∀・)イイッ,(゚ε゚)キニシナイ!!

んで「クラス (゚д゚)ウマー はインタフェイス (・∀・)イイッ と(゚ε゚)キニシナイ!! を実装する」(もはや意味不明)
0599デフォルトの名無しさんNGNG
>>597
読みにく・・・
インタフェイスは「実装する」などと言います。

> class (゚д゚)ウマー extends implements (・∀・)イイッ,(゚ε゚)キニシナイ!!
この書き方は間違い

インタフェイスの実装だけなら
class (゚д゚)ウマー implements (・∀・)イイッ,(゚ε゚)キニシナイ!!

継承+実装なら
class (゚д゚)ウマー extends Σ(゚д゚lll)ガーン implements (・∀・)イイッ,(゚ε゚)キニシナイ!!

んで「クラス (゚д゚)ウマー はインタフェイス (・∀・)イイッ と(゚ε゚)キニシナイ!! を実装する」とか(もはや意味不明)
0600デフォルトの名無しさんNGNG
2回書き込んでしまった・・・鬱だ。
0601481NGNG
恥を書いてしまったよ。
鬱だ死ぬね。。。。。
0602デフォルトの名無しさんNGNG
public interface 普通車 {
 void 運転();
}
0603デフォルトの名無しさんNGNG
public class マーチ implements 普通車 {
 public void 運転() {
  ....
 }
}

public class カローラ implements 普通車 {
 public void 運転() {
  ....
 }
}
0604デフォルトの名無しさんNGNG
public class 車泥棒 {
 public void 盗む() {
  普通車 car = 駐車場.getCar();
  car.運転();
 }
}

 public void 運転() {
  ....
 }
}
0605602-604NGNG
>>604の後ろから4行は見なかったことにしてくれ(´Д`)
0606デフォルトの名無しさんNGNG
>602-604
こーいう場合、私なら
public abstract class 普通車 implements 車 {
  void 運転(){
    //普通車なら同じ処理
    実装
  }

  void abstract カーステ(); // 車種固有処理

}

public class ソアラ extends 普通車 {
0607デフォルトの名無しさんNGNG
>>604の後ろ四行に注目!
0608デフォルトの名無しさんNGNG
う、606ミスったヨー

>602-604
こーいう場合、私なら
public abstract class 普通車 implements 車 {
  void 運転(){
    //普通車なら同じ処理
    実装
  }

  void abstract カーステ(); // 車種固有処理

}

public class ソアラ extends 普通車 {
  void カーステ(){
    実装
  }
}

って感じにしたくなるんだけど。
普通はどういう風にするもんなんでしょう?
0609デフォルトの名無しさんNGNG
ここレベル低いなあ
0610604NGNG
>>604
まー、ふつうはそう書くね。
インタフェイスの説明のつもりだったんだけど、抽象クラスも入れといたほうがよかったね。

>>607
山に篭るから勘弁してくれ。
0611java見習いNGNG
javaのプログラムについて質問させてください。
アプレットの方なんですが、repaint(){}が作動してくれないんです。

いろいろな可能性があるでしょうが、ソースがちょっと長いので
全部は張りつけられません。

考えられる可能性を教えていただけないでしょうか?
必要であるならばソースの一部を張ります。
0612java見習いNGNG
間違えました。訂正です。
repaint();で呼び出すupdate(Graphics g){}が作動してくれないんです。
0613出馬鹿ーNGNG
>>612
まず聞きたいのですが、
update()が作動しないとはどのような状況ですか?
update()はオーバーライドしていますか?
0614java見習いNGNG
>>613
public void update(Graphics g){
Main.t2.setText(String.valueOf(Main.a));//作動確認
gg=g;
drawGraph();
}

こんな感じなんですが、これってもしかしてオーバーライドできてないですか?
0615出馬鹿ーNGNG
>>614 X
0616デフォルトの名無しさんNGNG
>>612
JDK1.0の頃にJDKがバグってて
たまにupdateをすっ飛ばしてpaintが呼び出された経験があるが、、、

まあ根性いれて再現するようにソースを削ってあぷしろ。
(だいたいやってるうちに原因がわかってあぷする必要もなくなるんだけどな)
0617出馬鹿ーNGNG
日本語もなんか変なので君は本当に初心者みたいね
作動→動作
ちょっと聞きたいのですがggは何のために使っていますか?
0618java見習いNGNG
これをオーバーライドするにはどうすればいいのでしょう?
0619java見習いNGNG
public class Graph extends java.awt.Panel{
int ox,oy;
Graphics gg;

public void update(Graphics g){
gg=g;
drawGraph();
}
public void paint(Graphics g){
//g.drawLine等
gg=g;
}
public void drawGraph(){
//gg.drawLine(x1,y1,x2,y2);等
}
}
0620デフォルトの名無しさんNGNG
>>618 おまえはすでにオバーライドしている。(ケンシロウ)
0621java見習いNGNG
public class Enzan implements ActionListener{
public void actionPerformed(ActionEvent evt){
if(evt.getSource()==Main.b1){
Main.hensu();
Graph g=new Graph(200,200);
g.repaint();
}else if(evt.getSource()==Main.b2){
}
}
}
0622出馬鹿ーNGNG
>>619 初歩的なことを聞きますが
paintとupdateの違いがわかりますか?
またそれをオーバーライドする理由がわかりますか?
0623java見習いNGNG
paintはアプレット開始時に呼び出されるもので、
updateは中断や更新するときに呼び出されるもの。
updateはpaintで描いたものを一回消してもう一回paintを呼び出す。
だと思っています。
オーバーライドする理由はよくわかりません。
0624java見習いNGNG
オーバーライドしてメソッドを追加することにより、
paintで呼び出さないメソッドを読み出す。
・・・のつもりで使っていました。
0625出馬鹿ーNGNG
普通はpaintまたはどちらか一方のみオーバーライドするだけで目的は果たせます。
updateもオーバーライドしているというのは何か理由があるのでしょうか?
スーパークラスの再描画はちゃんとやっていますか?
super.paint(g)などという感じで、
0626出馬鹿ーNGNG
スーパークラスのupdateを上書き(オーバーライド)
するわけですからupdateの記述の中に
super.update(g)を書くのが普通なのでは?
0627java見習いNGNG
>>625
paintで関数の軸の部分等を描いて、
repaintでupdateを呼び出すことによって2次関数を描いています。

スーパークラスというのはこの場合Panelのことですか?
super.paint(g)のようなものは入っていません。
スーパークラスの再描写も必要なんですか?
0628java見習いNGNG
とりあえずそれで試してみます。
0629デフォルトの名無しさんNGNG
>>623
ぜんぜん違う
paintもupdateも
Windowシステムが画面を描画する必要があると判断したときに
いつでも任意のタイミングで呼ばれるものだ。
たとえばウィンドウがいったん後ろに隠れてまた表になったときとか。

updateのデフォルトの実装では背景を塗りつぶしたあと
paintを呼び出すようになっている


背景の塗りつぶしを含めて描画を全部のカスタマイズしたいときはupdateをオーバーライドする。
背景描画をシステムに任せてもいいときはpaintだけをオーバーライドする。
0630java見習いNGNG
やはり動作しませんでした。
そもそも、
public void update(Graphics g){
Main.t2.setText(String.valueOf(Main.a));//この部分
gg=g;
drawGraph();
}
//の部分が動作してくれないので、update自体呼び出されていない気がします。

public class Enzan implements ActionListener{
public void actionPerformed(ActionEvent evt){
//この部分
g.repaint();
//この部分
}
}
//の部分に先ほどの記述をいれたらその記述は動作してくれるんです。
0631出馬鹿ーNGNG
いまのところupdateをオバーライドしている理由がわかりません。
updateに書いてあることをpaintにまとめても差し支えないはずです。
super.update(g)をやっていなかったせいでpaint()がよびだされていない
だけとか?
0632デフォルトの名無しさんNGNG
import java.applet.Applet;
import java.awt.*;
public class test extends Applet{
public void init(){
int i=getWidth();
add(new Button());
}
}
appletviewerだとできるけどブラウザだとできないのはなぜ???
0633java見習いNGNG
最初にpaintを呼び出して、後にボタンを押すことによってupdateを呼び出すことによって
最初のpaintとは別な描写をしているつもりなんです。

updateをオーバーライドしないとするならば、
ボタンを押すときに何かの変数をオンにして、
repaintでpaintを呼び出してその変数がオンのとき違う描写をする
、とするべきでしょうか?
0634出馬鹿ーNGNG
>>633 まずむやみにオーバーライドしているのは
無理に問題を難しくするためなのですか?
mypaint()という独自の関数せやればいいではないですか?
あくまでpaintやupdateはWindowが隠れたときなど再描画のための関数です。
0635出馬鹿ーNGNG
訂正「せ」→「で」
0636java見習いNGNG
>>634
paint()やupdate()以外では描画することができないと思っていましたが、
そんなこと無いんですね。
今試してみます。
0637出馬鹿ーNGNG
>>636
mypaint()内でグラッフィックスを取得するためには
this.getGraphics()を使います。
0638出馬鹿ーNGNG
訂正
jPanel1へ描画するならば
jPanel1.getGraphics()を使います
0639デフォルトの名無しさんNGNG
あのさ、チャットじゃないんだから…
0640出馬鹿ーNGNG
>>639 すみません。原因追求のレスはいけない?
0641出馬鹿ーNGNG
>>639 それとも初歩的な質問に対してはお茶を濁す?
0642java見習いNGNG
>>637
ありがとうございます。
もしかしたら上手く行くかもしれません。
なんとかメソッド内に行きました。

>>639
2chはチャットだと思った方がいい気がします
0643デフォルトの名無しさんNGNG
>>640, 642
いや、原因究明のためのレスは別に問題ないんだけど、
お互いもうちょっと情報を整理してからの方がいいんじゃないかな。
まぁ、解決したのならもういいけど。
0644デフォルトの名無しさんNGNG
だいたい、Graphicsオブジェクトを描画関数に渡してない時点で
ネタだろ(笑)
0645デフォルトの名無しさんNGNG
>>642
そんな考え方はやめたほうが・・・
2chでチャットしたら鯖さんに高付加がかかって
また2chが潰れそうになると思われ
0646デフォルトの名無しさんNGNG
ミ´∇`彡にゃーん
0647tyvNGNG
>>468
ありがとうございます。すいませんおくれました。
0648デフォルトの名無しさんNGNG
IDE選びは、自分がどういうプログラム書くかで違ってくるぞ
とりあえず、今回のJavaPressでも参考にしな
0649デフォルトの名無しさんNGNG


――――――――――――――――――――――
臨時ニュースです。
「Rubyはクソです。ゴミ箱逝きです。 いじょ 」
この発言をコピペしていただければ幸いです。
___________   __________
             ‖ \|________
             ‖ | ON AIR.|
             ‖  ̄ ̄ ̄ ̄
        ./ ̄ ̄θ  ∧_∧
      .../   //(^∀^ )/|
     ./      ̄/⊂    ||_/
     | ̄ ̄ ̄ ̄ ̄|  (  ━┳┛
     |_____| /ヽ」┘┻
0650デフォルトの名無しさんNGNG
>>648
あなた誰に言ってるの?
頭大丈夫?
0651デフォルトの名無しさんNGNG
class A{...}

class B{
 void f(){
  A a=new A(){
   int x;
  };
  ...
  //ここでxに割り当てられている4バイト?を解放したい
  //つまりメモリを節約したいときどうすればいいのですか?
 }
}
0652デフォルトの名無しさんNGNG
4バイトを開放するとメモリの節約になると思ってるのかな
この画面であなたが読まない文字情報は何バイトでしょう?
ってな事もわかってないんだろうな
テキストエディタでも作ってみれば、
メモリの節約と、プログラムの高速化がどんなもんかわかるんじゃない?
0653651NGNG
>>652 サンプルは簡略化したものです、
実際にはもっと大きなデータ(数MB)を扱います。
0654651NGNG
これも簡略化したサンプルですが、
A[] al=new A[100000];
for(int i=0;i<al.length;i++)
{
al[i]=new A(){int x;};
}
のようにつかいます。
al[0.....100000]は解放せずに
各々のxを解放したいのですが。ただしxは基本型です。
0655デフォルトの名無しさんNGNG
al[i]=new A(){int x;}
↑これなあに?
意味わかんないでちゅう
ここよりも病院いくべきでちゅう
0656654NGNG
>>655 大丈夫ですか?突然幼児語になってしまいました。
0657デフォルトの名無しさんNGNG
とりあえず、君は仮想空間とかわかってるのかな?
連続したメモリ空間を使ってるなら
プログラムが読みに行かなきゃ関係ないんだけど
Winは・・・どうなんだろ
まあ、そういう事も気にしないという事で話を進めると
プログラムの流れによって適切なデータ構造を選んだ方が
いいと思う
特に使用メモリサイズを気にするプログラムであれば
データ構造のプログラムサイズだけでかなりいくと思うんだよね
ただ、いきなり100000の配列なんて作っちゃうプログラムって・・・
まあ、なくはないか
0658654NGNG
私の求める安直な方法は存在しないのかもしれません。レス頂いた方ありがとうございました。
0659デフォルトの名無しさんNGNG
al[i]=new A(){int x;};

なんでわざわざこんなことしてんの?
0660どーでもいいけどNGNG
>>654 は疎行列みたいなことがやりたいんでは?
0661654NGNG
簡略化しすぎました実際には
al[i]=new A(al[i]){...};のようにしています。
Aのコンストラクタは単なるコピーをします。
al[i]は画素1ドットに対応します。rgbをintで保持していますが・・・
本題から外れるのでこれ以上は言いません。失礼しました逝きます。
0662デフォルトの名無しさんNGNG
class Foo1{
 Foo2[] x=new Foo2[2];
}
class Foo2{
 Foo1[] x=new Foo1[2];
}
というデータ構造を作ったのですが、
Foo1 root=new Foo1();
と宣言して使用した後に
root=null;
System.gc();
とすればちゃんとgcされるのでしょうか?
0663662NGNG
失礼しましたこれはスタックオーバーフローしてしまいます。
class Foo1{
Foo2[] x;
Foo1(){x=new Foo2[2];}
}
class Foo2{
Foo1[] x;
Foo2(){x=new Foo1[2];}
}
と訂正します。
0664デフォルトの名無しさんNGNG
なんか・・・
画像処理だったらなおさら節約の必要ないって(笑)
0665デフォルトの名無しさんNGNG
ていうかネタだろ。
具体的に何がやりたいんだかさっぱりわからない。
0666デフォルトの名無しさんNGNG
まんこちんこでコンニチワって感じかな>>663
0667デフォルトの名無しさんNGNG
>>662
されます。
ただし、System.gc()が必ずすぐにgcするとは限らないのは、このケースに
限りません。
0668デフォルトの名無しさんNGNG
そもそも、>>663がgcされないかもって考えた理由は何?
0669かめうさぎNGNG
今秋に発売になるWindows xpにはなぜ、JAVAのMVが
ないのでしょう・・・
これでJAVAも終わりになるのでしょうか?
0670デフォルトの名無しさんNGNG
なぜかエラーが起きてコンパイルできないんだけど、どうして?
ConsoleReader console = new ConsoleReader(System.in);
int n = console.readInt();
どこが間違いなんだああああ。
0671デフォルトの名無しさんNGNG
>>670
ConsoleReaderって何よ?
エラーってどんな?
0672デフォルトの名無しさんNGNG
>>669 MSの戦略でしょう。sunのサイトから自分でダウンロードしてください。
スレ違いなので終わり
0673デフォルトの名無しさんNGNG
今の主人と結婚して3年目になります。
結婚当初は「一度書けばどこでも動くようにする」と言ってたのですが、
うまくいかなかったらしく、最近は約束を守る気配が見えません。
近頃は夜遅く帰宅する事が多く、だんだんライブラリの量も増えてきました。
得意先と喧嘩したらしく、仕事の契約先も近々打ちきられるみたいで
この先どうなるか不安です。
0674デフォルトの名無しさんNGNG
http://www.ukikusa.jp/
ここの、波紋が広がっていくアプレットのアルゴリズムは、どうやっているのでしょうか。
0675デフォルトの名無しさんNGNG
>>674 Anfy java チームに聞いてください。
0676デフォルトの名無しさんNGNG
>>673 不安を煽っているのはMSでは?別のスレでお願いします。
0677デフォルトの名無しさんNGNG
>674
GameProgrammingGemsに解説あったけど
要するに質点を格子状に並べて
上下左右同士をばねでつなげてやればいいらしいよ

あとHimatsubushiで似たようなのをソースつきで公開してる(VB)
http://page.freett.com/bee0001/cnt_bin/water.lzh
0678デフォルトの名無しさんNGNG
>JAVAのMV
(笑)
世の中にはDLLが必要なソフトがいっぱいあるわけだけど
それでも、使われるソフトっていっぱいあるし
JREは勝手に配っていいんだよ

>>673
http://www.nsg.co.jp/nbb/ss/joy/idxall.html
この人に相談するといいでしょう
ホームページで情報発信をしているPGの中では
かなりのレベルです
0679デフォルトの名無しさんNGNG
> ホームページで情報発信をしているPGの中では
> かなりのレベルです

激しく同意!!
この人は、JavaがC++より速いことを見事に実証した英雄!!

http://www.nsg.co.jp/nbb/ss/joy/ig980706.htm
0680678NGNG
>この人は、JavaがC++より速いことを見事に実証した英雄!!
そうなの??
まあ、速さにこだわってるようなレベルの人ではないと思うので
とりあえず、偏見を持ったC++プログラマーとかは見たほうがいいです
実行時ポリモーフィズムを使いこなしたい、C++PGは是非JAVAを
0681デフォルトの名無しさんNGNG
>>680
ネタに気づけよ。(プ
0682デフォルトの名無しさんNGNG
> http://www.nsg.co.jp/nbb/ss/joy/ig980706.htm

やっぱこいつ真性だな。
0683デフォルトの名無しさんNGNG
>680
俺はこの作者の業務履歴見たときから気付いていてたね。
0684デフォルトの名無しさんNGNG
誰かソースコード読んだ?
マイクロソフトのC++のコンパイラが
32bit用(またはintel用)に最適化されてないんじゃない?
単純な計算だったら、インタープリターが損する部分なんて
特にないわけだから、事実だとすればそういった部分かな?
0685デフォルトの名無しさんNGNG
がーん
巨人負け。
長島に快い勝ちを与えたかった。
0686デフォルトの名無しさんNGNG
↑こいつさぶすぎマジ死んで欲しい
0687デフォルトの名無しさんNGNG
富士通がJAVAにシフトするそうですが、
それってどうなのぉ?
0688デフォルトの名無しさんNGNG
ネットワーク重視って事じゃないの?
0689デフォルトの名無しさんNGNG
すいませんちょっと教えて頂きたいのですが
Vectorの配列にint型の値を入れたい時はどうすればいいのでしょうか
add()では出来なかったんですが・・・
0690デフォルトの名無しさんNGNG
Integer型にキャストしましょう
0691デフォルトの名無しさんNGNG
>>687
>富士通がJAVAにシフトするそうですが、
>それってどうなのぉ?
今まで COBOL だったのが, という枕をつければ
特に不思議でもないかと。
0692デフォルトの名無しさんNGNG
>>690
Integer型にキャストってなに?
偉そうに間違った事教えないように
0693デフォルトの名無しさんNGNG
http://java.sun.com/j2se/1.3/ja/docs/ja/api/java/lang/Integer.html
0694デフォルトの名無しさんNGNG
Integer オブジェクトを生成がより正しいか?
0695デフォルトの名無しさんNGNG
キャストでいいんじゃない?
インタプリタからの扱いが変わるだけだし
0696デフォルトの名無しさんNGNG
ttp://www.nikkei.co.jp/news/sangyo/20010930CAHI056929.html
0697デフォルトの名無しさんNGNG
>>695
キャストとImmutableオブジェクト生成は全く違うことだろが。
アホ。勉強せい。
0698デフォルトの名無しさんNGNG
どこが違うのか教えて欲しいもんだ
0699デフォルトの名無しさんNGNG
すみません。教えて下さい。

catch (Exception e) でExceptionを捕まえたあとで、
何のExceptionが発生したかの判断を行いたいのですが、
どうすれば良いのでしょうか?
0700デフォルトの名無しさんNGNG
>>699
1.Exceptionでcatchすんな。
 どんな例外がそのブロックで投げられる可能性が
 あるのかは、決まってるでしょ。
2.(本末転倒だが)instanceof
3.(知ってるよね?)Exception#printStackTrace()
0701デフォルトの名無しさんNGNG
>>699
googleで「java Exception」を調べよ。

通常は
try{
}catch(IOException e1){
}catch(NullPointerException e2){
}catch(Exception e){}
のようにして分岐する。

e.getMessage()でメッセージを調べたり、
e.getException()で例外クラスを調べたり
if(e.getException() instanceof IOException){}
で分岐したりできる。
0702デフォルトの名無しさんNGNG
>>700
朝までに動かさなきゃいけなかったので、助かりました。
Exceptionでcatchしろって上司から教わったんだけど
違うのですね。
とにかく、助かりました。ありがとうございました。
0703デフォルトの名無しさんNGNG
>>701
ありがとうございました。
google等で調べたのですが、見つからなかったのです。
調べ方が悪かったようですね。
以後気をつけます。
0704デフォルトの名無しさんNGNG
あほ上司・・
Exceptionは他の例外の基底クラスなんであらゆる例外を補足してしまう
C++で言うcatch(...)みたいなもの。
例外の種類が違えば当然catchでの処理も変わるわけで
何でもExceptionで取ってしまうのは問題あり。
0705デフォルトの名無しさんNGNG
>>702 通常は
try{}catch(Excepiton e){e.printStackTrace();]
で殆ど事足りると思うのだが。
0706デフォルトの名無しさんNGNG
早いうちにきちんと教育しといた方がいいんだよ、このばあいは。
0707こめNGNG
Object型のオブジェクトを、文字列で名前が与えられたクラスにキャストする
にはどうすればいいの?
0708こめNGNG
呼び出したいメソッドも文字列で与えられるから、getMethodの
invoke使って解決したづら。
0709デフォルトの名無しさんNGNG
キャストの必要のない場合
double←float←long←int←short←byte

char は何処に入る?
0710デフォルトの名無しさんNGNG
>>709
ttp://www.y-adagio.com/public/standards/tr_javalang/5.doc.htm#25224
0711デフォルトの名無しさんNGNG
Javaのマルチスレッドは糞だな
0712デフォルトの名無しさんNGNG
無いよりマシ
0713709NGNG
>>710
Thank you
0714デフォルトの名無しさんNGNG
>>711
どこが。
07151NGNG
その画像ならココ
http://www.f2.dion.ne.jp/~impact14/
0716デフォルトの名無しさんNGNG
Vectorの配列に入ってる要素を
int型配列に入れるにはどうしたらいいのでしょうか
0717デフォルトの名無しさんNGNG
>>716
Vector v には、Integerが入っていると仮定して、
int[] a = new int[v.size()];
for(int i=0; i<v.size(); i++){
a[i] = ((Integer)v.get(i)).intValue();
}
0718デフォルトの名無しさんNGNG
Apache + Tomcat でServletを起動すると、FileOutputStreamとかで
書き出したファイルのownerはrootになっちゃうんですが、これを防止
させるにはどうしたらいいですか?
Tomcatをnobodyとかで起動してみたものの、上手く行かず。
マルチユーザ環境だからrootのままじゃ非常にまずいのですが、
セキュリティポリシーだけで何とか出来るものでしょうか?
0719デフォルトの名無しさんNGNG
>>716
これじゃだめかな?試してないけど。
java.util.List#toArray(Object[] a)

Vector vec;
//中身しまう処理
int[] a = (int[])vec.toArray(new int[0]);
0720719NGNG
あ、だめか。Integer[]になっちまうな。
07211NGNG
その画像ならココ
http://www.h2.dion.ne.jp/~goldman/
0722デフォルトの名無しさんNGNG
>書き出したファイルのownerはrootになっちゃうんですが、これを防
owner変えるだけでいいんじゃない?
1分毎に更新ファイルだけ調べれば、大抵の場合何とかなると思うんだけど
人間の感覚にあわせたら1秒毎くらいかもしれないけど
それでもたいした負荷にはならないと思うしね
0723デフォルトの名無しさんNGNG
初診謝な質問ですが、
g.drawline()とかで線を引けるのはわかったのですが、
この線の太さって変えられないんですか?
0724デフォルトの名無しさんNGNG
>723
1.2以降なら変えられる
Graphics2D.setStroke(Stroke)

サンプルのJava2Demoあたり見るのがよいかと
0725不真面目な文系学生NGNG
あのーすぐ返事がくるようなので質問させてください。
システムエンジニア職にないていしていて、会社に情報処理の資格の勉強
しておけゆわれたんですが、言語はCobolかjavaで、ということなんです。
でも、内定しておきながら初心者でどっちがいいんかわからんです。どっちがいいんでしょう?
0726デフォルトの名無しさんNGNG
Cobolがお勧め
0727デフォルトの名無しさんNGNG
Cobolは前世代の言語ながら言語仕様が覚えやすい。
JavaはC言語やC++をやってきた人にはなじみやすい。
Cobol は銀行のシステム関係、Javaの場合、Web関係の仕事。
0728デフォルトの名無しさんNGNG
Cobolなら一週間も学習しとけば使いモンになるコードが書けるか。
0729デフォルトの名無しさんNGNG
COBOLいけ。
COBOLはおいしい
0730デフォルトの名無しさんNGNG
JavaでSocketを非ブロックでI/Oしたいんだけど、どうすればいい
のでしょうか?
0731デフォルトの名無しさんNGNG
プログラミングを勉強しようと思い、SDK1.3.1をダウンロードしました。
参考書を見てHellow Worldは書けるようになりました。
線も好きな様に書ける様になりました。
クラスはいまいち理解できません。
そして、そこから先に進みません。

ゲームを作ろうと思っているんですが、JAVA 以外にどのような勉強をすればよいのでしょうか?
ネタではないです。
XMLなんでしょうか?
JAVA Script?
それとも、やっぱりCとかVBとかの方が良いのでしょうか?
0732デフォルトの名無しさんNGNG
普通何もしなくても待ち状態ではスレッド切り替えやるだろ。
0733デフォルトの名無しさんNGNG
>>732
もう少し詳しく教えていただけないでしょうか?
0734デフォルトの名無しさんNGNG
>>730
非ブロックI/Oはありません。
将来対応するらしいですが、定かではありません。
0735デフォルトの名無しさんNGNG
>>731
ゲーム作るには参考本を買えばいい。
JAVA以外の言語やるのは構わないがゲーム作りとは関連ない。
0736デフォルトの名無しさんNGNG
>734
1.4から追加されました

new I/O API
http://java.sun.com/j2se/1.4/docs/guide/nio/index.html

現在J2SE 1.4Beta2がリリースされています
0737731NGNG
733,735さん、ありがとう。
地道に精進して、いろんな参考書とか雑誌を見て勉強して一歩一歩進んでいけば良いのでしょうけど、飽きてしまったので(ワラ
例えばweb上で動くゲームとかを作りたいんです。
とりあえずjavaをもう少し勉強したほうが良いということですよね?
未だゲームのソースとか見てもチンプンカンプンで理解できないし、先が見えてこないので・・・
我の知識としては、大昔にベーシック少々、マシンゴ途中挫折、フォートラン少々・・・歳がばれるー
0738デフォルトの名無しさんNGNG
JavaでUNIX環境固有のものを呼び出したいのです。以下のものは
利用できますか?

- FIFO
- 共有メモリ、セマフォ
- UNIXドメイン

また、スレッド間通信にはパイプ通信以外にありますか?
イベントなどを通常のスレッドでも利用できますか?

よろしくお願いします。
-
0739デフォルトの名無しさんNGNG
>>738
どれもこれもできねえよ
他の言語でやった方がイイヨ
0740デフォルトの名無しさんNGNG
>>739
いや、言語指定されてしまったので。。。反対したのですが、
無駄でした。

くそおおおおおおおお!!
0741デフォルトの名無しさんNGNG
ご愁傷様
0742デフォルトの名無しさんNGNG
>>738
上3つは、仕方ないのでJNIつかえ。最早Java使う意味無いけど。
ただ、ライブラリ化しておくとあとで楽ができるかも知れんぞ。

スレッドは、APIでサポートされてて、JVMのヒープ涛烽ナインス
タンスがいくらでも生成できるので、通信を気にする必要は無いよ。
精密な同期処理を実装してないので同期がつらいけど。
0743inakamonoNGNG
OSはWindows2000ProでJDK1.3を使ってて、暗号の勉強をしようと思って
Cryptixをダウンロードしたんですが、ホームページで書かれてるように
やってもインストールができないんです。どうやったらいいのか教えて
ください。
0744デフォルトの名無しさんNGNG
ここはjavaの相談室です。インストールの仕方の相談室ではありません。
このスレでCryptixを使った人がいるならば教えてくれるかもしれませんが、
いるかどうかはわかりません。
0745デフォルトの名無しさんNGNG
プラグイン入れないとアプレットでPointは使えないのでしょうか?

JavaAppletは廃れるのでしょうか?
0746デフォルトの名無しさんNGNG
>745
Pointってjava.awt.Pointのこと?
使えるはずだよ

個人的にはWebページの飾りつけはFlashとかがいいと思う・・・
0747デフォルトの名無しさんNGNG
appletの復活希望
0748デフォルトの名無しさんNGNG
ふと、こんなことを考えてみたんだけど。
アプレットでネットワーク対戦型ゲームをつくるとしたらさ
やっぱりサーバーを通さなきゃできないよね?
スタンドアロンのアプリならいろいろ出来るだろうけど・・・
0749デフォルトの名無しさんNGNG
>>748
ゲームのユーザーにJavaのセキュリティレベルの設定を自分で
下げてもらうとか?
0750デフォルトの名無しさんNGNG
Appletはポップアップなウインドウ作って酷い目にあった。
ブラウザ、OSのバージョンで、できたりできなかったりすることが
あるから非常に萎えた記憶が多い。
SUNが悪いのか、ブラウザ、OS側が悪いのか、煮え切らない状況で
イラついたよ。
0751748NGNG
>>749
セキュリティレベルを下げなきゃいけないようじゃ、誰もやらないんじゃないか?

どうせサーブレット経由になるなら、ここはいっちょSOAPを使って・・・
って、んなことしたらPlugInにしなきゃいけないじゃないか。
jarアーカイブもめちゃくちゃデカくなりそうだし・・・

無難なのはCGIのサーバでも置いとくことなんだけどねぇ。
0752鬱だ氏のうiアプリNGNG
javac -bootclasspath %DOJAAPI% -encoding SJIS_i -g:none -J-Xbootclasspath/a:%DOJA%/lib/dojaconv.jar IAppli.java

これってAntのBuilt-in Taskのjavacでは書けないよねえ?
0753デフォルトの名無しさんNGNG
APIのドキュメントを読んでも使い方がよく分からないときはどうすれば?
0754デフォルトの名無しさんNGNG
>>753
・試しに使ってみる
・googleで調べる
・2chで聞く
0755デフォルトの名無しさんNGNG
使わない
0756デフォルトの名無しさんNGNG
まんこにちんこブチこむ要領で>>753
0757 NGNG
java graphics でスポイト的なメソッドってあります?
ピクセルの色調べるようなやつです
0758デフォルトの名無しさんNGNG
>>757
GraphicsにもImageにもそういう関数はないような気がした。
java.awt.image.BufferedImage の getRGB(int,int)
をつかうのはどうかな?
0759  NGNG
>>758
しらべてみまふ
サンクス!
0760デフォルトの名無しさんNGNG
>>757 awtでやろうとするとけっこう面倒
ttp://java.sun.com/j2se/1.3/ja/docs/ja/api/java/awt/image/PixelGrabber.html
0761デフォルトの名無しさんNGNG
>>753
SUNのJavaのAPIのHPはAPIの設計書であって説明書ではない。
クラスライブラリの設計者同士の覚書みたいなもので、
利用者に向かって書かれていない。(MFCの文章と比べて見よう)

HP巡りとか本買うとかして習得すべし。
0762753NGNG
>>756
ありがとう!調べてみます!!!
(ナニカラ?
0763デフォルトの名無しさんNGNG
>>757
とりあえずまず「グラフィックJava2 Vol1. AWT編」くらいは
買おう。きっとこれから出てくる同種の疑問にも答えてくれるぞ。
ただ、前も誰かが書いていたけど、Vol3. Java2D編がなかなか
でないんだよなぁ。
0764  NGNG
JAVAのダイレクトXって使っていいの?

なんか、使ってるひといないけど
0765デフォルトの名無しさんNGNG
JTextFieldのテキストが変更されたタイミングに呼び出されるリスナーとかある?
0766デフォルトの名無しさんNGNG
>765
Documentオブジェクト取得してaddDocumentListenerかな。よく知らないけど

http://java.sun.com/j2se/1.3/ja/docs/ja/api/javax/swing/JTextField.html
http://java.sun.com/j2se/1.3/ja/docs/ja/api/javax/swing/text/Document.html
0767デフォルトの名無しさんNGNG
>>763
>ただ、前も誰かが書いていたけど、Vol3. Java2D編がなかなか
>でないんだよなぁ。

それはおいらが二回も言ってたのに無視されてた。
で、いつでるのでしょうか?
0768765NGNG
>>766
サンクス。できたできた。
0769超初心者ですみませぬNGNG
ものっすごい厨房な質問で気が引けるが、勇気を出します。
俺、いままでコンピューターなんてネット以外に触った事もなかったんだけど
一念発起してjavaの入門書みたいなの読んでちょっとやってみたのね?

そいで、まあ今日がはじめて2日目なんだけど、もう壁にぶつかっちゃったの。

class Sample4e
{
public static void main(String args[])
{
int ten=1;
System.out.println("オマエを"+ten+"発なぐる");
switch(ten){
case1:
System.out.println("つーか痛いだろ");
break;
case2:
System.out.println("つーか死ぬだろ");
break;
case3:
System.out.println("つーか消滅するって");
break;
default:
System.out.println("もうホント勘弁して");
break;
}
}
}

というように打ちこんだのね。ほとんどテキストの通り。
でもどうしてもコンパイルできないのです。間違ってるみたいなんです。
俺は本の通りやってるんです。

どこが間違っているのでしょう。
お願いします。教えてくださいませ。
0770デフォルトの名無しさんNGNG
ファイル名は何にしてる
public classにすること
0771超初心者ですみませぬNGNG
>>770
そういうのではないようです。

プログラム自体に9個のエラーがあるようです。(MS−DOSがいってた)
0772TINI NGNG
現在、TINI Boardという米DALLAS社のマイコン・ボードを使って
いるんですが、これのセットアップの仕方がまるで分からない。
基本的にはJavaのJDKやAPIを使ってセットアップしていくんだけど、
理解に苦しむこの頃。
誰かこのTINIをパソコン上で使えるようにするためのセットアップ
方法を詳しく知っている方、教えてください。お願い。
0773デフォルトの名無しさんNGNG
>771
うーんと、じゃぁcaseの後にスペース入ってるか?
>772
マニュアル読めとしか言い様が無い
0774デフォルトの名無しさんNGNG
>>771
全角スペースとかじゃ無いよね?
ここにコンパイラの文句コピペしたら?
0775デフォルトの名無しさんNGNG
caseと数字の間にスペース入れよう。
つうかエラーメッセージぐらい読め。
0776超初心者ですみませぬNGNG
caseのあとにスペースいれたら解決しました。
みなさまありがとう。

>>775
ゴメソ、エラーメッセージの意味がわからなかった…
0777デフォルトの名無しさんNGNG
>>772
tini.org行ったか?

Javakitの設定が少々面倒だけどあとはすんなりだよ
0778TININGNG
>>777
そう、そこ!!
JavaKitの設定のところがいまいちよく分からない。
BATファイルを作成するとか書いてあったけど、
Autoexecを編集するだけでいいのかな?
何度やっても"No responce TINI Board!"とエラーメッセージが
返ってくる始末。
0779デフォルトの名無しさんNGNG
>>778
JavaKitは起動してるみたいだな。
つーことはDTRのカットだな。多分。

これでピンときたらいいんだけど、意味不明なら
スレッド立てなさい。これ以上ここでやるのは気が引ける。
0780デフォルトの名無しさんNGNG
GraphicsJava2 vol3はいつでるのでしょうか?

また無視されるのかなあ
0781通りすがりNGNG
あ、俺もTINIもってるよ。だけど、俺のはTINIボードをACアダプタで
電源入れても緑のパワーランプが点灯しない。なんでだろ?
あれってコンセントにつなぐと自動的に電源が入ってパワーランプがつくんだよね?
なんで俺のはつかないんだ?
0782デフォルトの名無しさんNGNG
ここのやつらはレベル低すぎ、マジで。
君達ちゃんとした大学の情報科でコンピューターサイエンス習ってきた?
数学はわかってる?
文脈自由文法とかわかる?

くだらん意見吐く前にちゃんとした教育を受けて下さいよ、マジで。
ちなみに専門は糞ですんで
0783デフォルトの名無しさんNGNG
↑でも仕事は一緒(藁
0784デフォルトの名無しさんNGNG
>>782
人のこと言うまえに自分はどうなんだよ。
どこかの研究機関にいて博識かもしれんけど。
だいたい2chに高レベル求めんのもどうかな?
学会逝け!
0785学部4年NGNG
そんなの今時の高校生だってしってるぞ。
もっと「CS学科でしか学べない」ようなレベルの高い例を出せよ>782
0786デフォルトの名無しさんNGNG
文脈自由文法、オートマトンがわかると
なんの役に立つのか知ってるのかな?
情報科で習うことって、
ほとんどある分野でしか使えないような知識だと思うけど
0787デフォルトの名無しさんNGNG
状態遷移図を上手に書きたい。
ところがオレは書き方を知らない。
オートマトンを勉強すれば自然に身につくと聞いた。
なんかいい本あったら教えて。
0788デフォルトの名無しさんNGNG
状態遷移図ってメチャメチャ簡単じゃん
オートマトン勉強するのと
状態遷移図勉強するのって
大変さがけた違い
0789デフォルトの名無しさんNGNG
>>788
その辺を学生に戻った気で本気で勉強しなおしたいの。

今作らせてるシステムが不調で、原因を聞くと
「変なステートに落ち込んだみたいですね・・・」
どんなステートなんだと聞いてもそうなる条件を聞いてもあやふや。
仕様書もソースもぐちゃぐちゃだし。

ならば一度システム全体をぶっ壊して、見直してやろうと思って・・・
0790デフォルトの名無しさんNGNG
★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆
Del厨断末鬼の叫び!!!
拙い言いがかりからRubyを必死に煽ろうとしたDel厨が逆襲を受けて死亡!
理論的にDelphiはRubyの足元にも及ばないことが証明された!!!
「Ruby撲滅スレ」
http://piza2.2ch.net/test/read.cgi/tech/1001125342/
★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆
0791788とは別人NGNG
>>789
いいと思いますぶっ壊しましょう。
最初からやり直した方が意外に早くできるかもしれません。
仕様書やソースはいいとして設計書を忘れていませんか?
状態遷移図、フローチャートなどの技術は基本設計の技術です。

すれ違いなので以上
0792デフォルトの名無しさんNGNG
>>782
自分は高校生だからよくわかんないけど、プログラマーなんてプログラムだけできればいいんじゃないの?
プロの方の意見が聞きたいなあ
0793プロNGNG
>>792
プログラム=コードが書ける
という認識は間違っています。
プログラマとは、今世間で言うところのSEと同程度の
ことはできなければなりません。
企画、設計もプログラムのうちです。
0794デフォルトの名無しさんNGNG
>>792
答えはノー
http://piza2.2ch.net/test/read.cgi&bbs=tech&key=1002160961&st=229&to=229
でいいことを言っているが、
企業の規模によって一概にはいえないが、
PGも一人ではなく複数で分業するかもしれない。
PGだけでは仕事は回らない。
企業で求められるのは、
要求(入力)に対して適切な仕事(出力)が期限内にできることです。
SEが作った設計書が読めなければX
期限を守らなければX
できたものが趣味に走っていればX

スレ違いなので続きは↓
http://piza2.2ch.net/test/read.cgi&bbs=tech&key=1002160961
0795794NGNG
あら?昔とやり方が変わったのかな?
いいこと言ってます↓
http://piza2.2ch.net/test/read.cgi/tech/1002160961/229
続きはこちらで↓
http://piza2.2ch.net/test/read.cgi/tech/1002160961
0796794NGNG
また間違えた(鬱だ
http://piza2.2ch.net/test/read.cgi/tech/1002160961/
0797デフォルトの名無しさんNGNG
javaで3D画像を描きたいのですが、どのようにやったらよいのでしょうか?
またおすすめの勉強サイトなどはありますか?
0798デフォルトの名無しさんNGNG
>>797
サンプルに最適
http://www.hinden5.com/senkousha/
0799デフォルトの名無しさんNGNG
>>797
http://www.google.co.jp/search?hl=ja&q=Java3D&btnG=Google+%8C%9F%8D%F5&lr=lang_ja
0800デフォルトの名無しさんNGNG
GraphicsJava2 vol3 はいつでるのでしょうか?
なぜみなさん無視するのでしょうか?
自分は変な事言ってますでしょうか?
スレ違いなのでしょうか?
心が痛いんですけど
0801デフォルトの名無しさんNGNG
>>800
出ない、というのが大人の意見。
あきらめろって。
0802デフォルトの名無しさんNGNG
みんな情報系の学科出てるの?
0803デフォルトの名無しさんNGNG
>>802
情報系の落ちこぼれってとこじゃない
まあ、俺の定義だと東工大の8割が落ちこぼれになっちゃうけど(笑)
優秀なのは開発系に行くね
コーディングよりも、数学っていうのかな?
数学みたいなのをやってることの方が多いみたい
0804デフォルトの名無しさんNGNG
昔はコンピューターサイエンスみたいなのってそんなに確立されて
なかったからなぁ、俺も普通の電気工学だからコンピューターは
ほんの1部でしかなかったし。
最近の専門学科ってどんなのやってんの?
オートマトンは常識?
0805文系エログラマーNGNG
「オートマトン」って?
0806デフォルトの名無しさんNGNG
おー、トマト!
ンーまい!
(トマトがとてもおいしゅうございました。)
0807デフォルトの名無しさんNGNG
オート→自動
マトン→羊肉
0808804NGNG
マジレスキボン(´д`;)
0809デフォルトの名無しさんNGNG
Oreillyの『Java Cookbook』読んだ人いる?
0810デフォルトの名無しさんNGNG
>>804

automaton または automataと言いたかったのだと思う。
0811オートマータNGNG
からくりサーカス(少年ジャンプ)参照
0812デフォルトの名無しさんNGNG
サンデーだったかな?
0813デフォルトの名無しさんNGNG
>>804
http://yoshida-www.ss.titech.ac.jp/H13_syllabus/
頭いい人に言わせると、カリキュラム構成には
教授が自分の分野を廃れさせないようにとか、
そんなような意図が含まれてるそうです
ほとんどの人が全ての科目を履修するみたいですが
なんとなくでやってる人が多いので
身についてる人は少ないかもしれません
まあ、知らないよりましですが
0814デフォルトの名無しさんNGNG
教えてください。

ファイルA (/path/to/fileA) を丸々ファイルB (/path/to/fileB) に
コピーしたいのですが、手っ取り早く行う方法はあるのでしょうか。

FileInputStreamで一文字ずつ読み取って、FileOutputStreamに書き出す、
なんて方法しか思いつかないのですが・・・
0815デフォルトの名無しさんNGNG
>>814
結局コピーってそうやることなんじゃないの。
ただ、一文字ずつというのは何だから、一度にたくさん読み込んだら。
0816デフォルトの名無しさんNGNG
情報科の優秀な奴はプログラマーなんかにはならないよ。
落ちこぼれがなるのがプログラマー。
数学できない奴とかね。
0817デフォルトの名無しさんNGNG
ボケ言語だよな。
全然オブジェクト指向じゃないじゃん。
作ってる内に忘れるのかね?
FileInputStream fis >> FileOutputStream fos;
ぐらいに作るのがオブジェクト指向だろが。
0818デフォルトの名無しさんNGNG
あ、817はJavaの言語設計者への非難ね。
0819カーターNGNG
研修医の優秀な奴はERなんかになんか入らないよ。
落ちこぼれがなるのが外傷外科。
それと政治とかやりたくない奴とかね。
0820デフォルトの名無しさんNGNG
>>817
申し訳ないんだけど、それのどこがオブジェクト指向なのか
説明してください。よく分かりませんでした。
0821デフォルトの名無しさんNGNG
数学を勉強しろ>817
0822デフォルトの名無しさんNGNG
>>800
別に無視してんじゃなくて、誰も知らないだけなんじゃないの?
http://www.sun.com/books/books_by_alpha.html;$sessionid$MUN3Z0IAABQHJAMTA1FU45Q#g
を見る限り、洋書でもまだ出てない状態だしね。
http://www.sun.com/books/catalog/hardy/
でも買ったら?
0823デフォルトの名無しさんNGNG
>>817 はC++のiostreamマンセーと言ってるのかな?
違ってたらゴメン。

おれは、アレは演算子多重定義びっくりコンテストだと思うんだけど。
設計という点でも、初期の頃は菱形継承してたり結構混乱してるような。
どっかにオブジェクト指向という観点から見た、
javaとC++のストリームライブラリの比較なんて無いかな?
0824デフォルトの名無しさんNGNG
確かにコピーするときは
byte buf[ BUFSIZE ];
while ( ! in.isEof )
{
int size = in.read(buf, BUFSIZE);
out.write(buf, size);
}
になっちゃうよね。
これってアセンブラでもCでもC++でもJavaでも同じなんだよなあ。
ちなみに挙げた全部の言語で書いたことあるわ。
BUFSIZEの最適な値もこれというものがないし。
ダサいね。
0825デフォルトの名無しさんNGNG
>>824
>これってアセンブラでもCでもC++でもJavaでも同じなんだよなあ。
確かにそうだけど、OOならそれがファイルでもソケットでもメモリでも
いい、ということはあるよね。
0826デフォルトの名無しさんNGNG
>>824
そういうのは大抵バッファサイズを隠蔽するよね。
構造体なりオブジェクトなりで。
0827デフォルトの名無しさんNGNG
>>825
たしかにストリームという形での抽象化は有用なんだけど、
このレベルならアセンブラやCでもやってた気がする。

ここでダサく感じているのは、
オブジェクト間の相互作用の記述について、旧態依然なところかなあ。
0828デフォルトの名無しさんNGNG
>>820
ストリームこそオブジェクトらしいオブジェクトなのに
なんで手続き型で、しかも下位構造意識しないと渡せないのか不思議。
不細工な作りだということ。
0829デフォルトの名無しさんNGNG
>>
が どうにもしっくりこない、むしろ許せない、という人は
意外と多いと思う。
0830デフォルトの名無しさんNGNG
フリーでJavaの逆コンパイラーってないんでしょうか?
いくつか検索掛けてみたけどダウンロードできなくなってるんで
それってダメってことになったんでしょうか?
0831デフォルトの名無しさんNGNG
>>830
標準でついてるけど・・・
0832デフォルトの名無しさんNGNG
>>830
.class -> .javaなら
ttp://www.meurrens.org/ip-Links/java/codeEngineering/decomp.html#secDecompilersToJava
0833デフォルトの名無しさんNGNG
線や絵を描くプログラムを作っているのですが
アプレットビューアで見たり、アプリケーションで実行すれば
ちゃんと表示されるのに、HTMLファイルに組み込むと表示されません。
ちなみにテキスト文字やボタンなどはちゃんと表示されます。
どこが悪いのでしょうか?
0834デフォルトの名無しさんNGNG
Javaは少しでも環境が変わると動きません。
あきらめましょう。
0835デフォルトの名無しさんNGNG
>>833
>どこが悪いのでしょうか?
質問の仕方。
もっと具体的に症状を書かないと分からん。
あと、ブラウザのjavaコンソールを表示して、何か出ないかみてみれば。
0836デフォルトの名無しさんNGNG
Write Once, Run On One Place.

To Run Anywhere, Write Anytime.
0837デフォルトの名無しさんNGNG
ホームページからユーザー登録を行うサーブレットを作ってます。
入力してもらったメールアドレスの有効性を調べるために、
まず正規表現で文法をチェックして、その後、@以下のホスト名を
抜き出して、そのホストが存在するかどうかDNSで調べようと
しているのですが、ホスト存在チェックがうまくいきません。
(MXレコードではなく存在だけチェックできればOK)

java.net.InetAddress ip = java.net.InetAddress.getByName(hostname);

上記のようにやると、hoge.comのホスト名はちゃんとIPを取得できるんだけど、
fuga.co.jpのホスト名だとダメです。www.fuga.co.jpというようにwww.くっつけると
取得できたりします。

どうしたものでしょう。マジレス待ってます。
0838837NGNG
補足
.co.jpや.ne.jpだとダメで、.comや.netだとIPを取得できるということ。
0839デフォルトの名無しさんNGNG
>>837
>.co.jpや.ne.jpだとダメで、.comや.netだとIPを取得できるということ
ではなくて、単にfuga.co.jpは登録されてなくて、www.fuga.co.jpは登録
されているということでしょ。
登録されてない名前ではIPは取得できないよ。
0840837NGNG
>>839
でもさ、例えばWin2kのコマンドプロンプトやLinuxのコマンドで

nslookup fuga.co.jp

ってやればIP取得できるでしょ。それと同じようなことはJavaじゃ
できないのかな?
0841デフォルトの名無しさんNGNG
>まず正規表現で文法をチェックして
メールアドレスのために正規表現って・・・
パフォーマンス無視ですか(笑)
0842837NGNG
>> 840
ゴメン、うそついた。nslookupじゃできない。
0843837NGNG
>>841
一般的にはどうするべき?
0844837NGNG
PHPで checkdnsrr(hostname, ANY) っていう関数が
あって、それだと簡単にホスト名の存在チェックが
できたんだ。ドメイン名の種類に問わず。
そんなのをJavaで実現したいわけなんです。
0845デフォルトの名無しさんNGNG
Write Once, Run Anywhere.

「納入したらトンヅラしなさい」と訳す。
0846デフォルトの名無しさんNGNG
>>837
ドメイン名にIPアドレスは対応してないですよ
メールアドレスの文字表現を解析するなら
charで@の前と後ろで動作を分けて
不正な文字が入ってないか調べるのが普通じゃないかな?
文字列処理はLISPでしかやったこと無いので、なんとも言えませんが
ついでに、正規表現って呼んでいる処理は
正規表現で書かれた文字列に対して行う処理なので
perlを使う人が正規表現を多用しているのには、ちょっと疑問を感じます
それこそ、上ででてきたオートマトンを勉強する必要があると思います
0847デフォルトの名無しさんNGNG
RMIのことが知りたかったんで、
ちょろちょろとWebで調べてみました。

そしたら、ここ↓に
http://www.dmz.hitachi-sk.co.jp/Java/Tech/rmi/rmi.html#dev
「通信部分のコードを作成することなく、
クライアント・サーバ機能を実現することができることがメリットである」
って書いてありますけど、
こんなメリットがあったらソケットを用いた通信なんて、
まったくいらないような気がするんですが、実際はそうじゃないですよね。

どういうことなんでしょうか?
RMIを使う上でのデメリットってなんなんでしょう?
0848デフォルトの名無しさんNGNG
>>847
java同士でしか通信できない。
0849デフォルトの名無しさんNGNG
                 
■■■■■■■■■■■■■■■■■■■■■
RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!
RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!
RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!
RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!
RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!
RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!
RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!
RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!
RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!
RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!
RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!
RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!
RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!
RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!
RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!RubyUzai!!
0850デフォルトの名無しさんNGNG
>>848
全然詳しくないんだけどRMI over IIOP とかは?
0851デフォルトの名無しさんNGNG
≫850 そりは単にRMIの下位プロトコルがIIOPだつうことでCORBAと話が出来るだけ。SOCKETほど間口が広くない。
0852デフォルトの名無しさんNGNG
RMIやCORBAはブロトコルオーバーヘッドがでかい。
0853デフォルトの名無しさんNGNG
りもーとメソッドインポテーション
0854デフォルトの名無しさんNGNG
そしてJavaのsocketは弱い。
0855デフォルトの名無しさんNGNG
>>RMIやCORBAはブロトコルオーバーヘッドがでかい。

Java自体もともと実行効率よりもシステム開発の生産性upを主眼に置いてるわけだし
カリカリにやりたければCでゴリゴリど〜ぞ、みたいなもんでしょ。
0856デフォルトの名無しさんNGNG
>>854
そこ、詳しく聞きたい。Socketが弱いってのは?
0857 NGNG
selectねーし。
REUSEオプション指定できねーし。
0858横槍君NGNG
>>856
ソケットに限らないけどJDK1.3まで非同期IOという概念がJavaにはすっぽり抜けていた。
たぶんそれぞれの入出力ストリームにスレッド1つ張り付かせればほぼ
同等の処理ができるから故意に省かれていたんだろう。

さすがにスレッドの乱用は
重いってんでJDK1.4で非同期IOは追加されるらしいけど。
0859デフォルトの名無しさんNGNG
非同期IOというと非同期シリアルとかの事?
0860デフォルトの名無しさんNGNG
>>859
Read/Writeだけ切って、すぐに戻り、あとで結果を取りに逝くやつ。
0861デフォルトの名無しさんNGNG
>>831
>>832
どうもありがとうございます
0862デフォルトの名無しさんNGNG
832さんへ

やっぱここもリンクが切れてますね

なんでだろ?他のフリーの逆コンパイラのところもリンクがことごとく
切れてます。何かあるんでしょうか?
0863デフォルトの名無しさんNGNG
>>862
とりあえず、以下は大丈夫。
http://www.geocities.com/SiliconValley/Bridge/8617/jad.html
0864デフォルトの名無しさんNGNG
>>863
ないよ?
0865デフォルトの名無しさんNGNG
>>864
なんか、アクセス量が規定を超えたから、後1時間ぐらいまて
との表示だね。
待ってみて。
0866デフォルトの名無しさんNGNG
いろいろ検索してみましたが

http://www.javacats.com/JP/Search/dir239.html
http://www.freedownloadscenter.com/Programming/Java/Java_Class_Viewer_and_Disasembler.html

もことごとくリンク切れ

オンライン逆コンパイラ

http://www.ahpah.com/product.html

は見つかったけど、他のフリーところはことごとくリンク切ればっか

どうなってるの?
0867デフォルトの名無しさんNGNG
Sunが圧力でもかけてんじゃねーの(藁)
0868デフォルトの名無しさんNGNG
>>867
正解。
0869デフォルトの名無しさんNGNG
わらいごとじゃねーな
0870デフォルトの名無しさんNGNG
jar.exeを使って実行可能なjarファイルを精製したいんですがどうもうまくいきません。
参考になるサイトなどはないでしょうか?
0871デフォルトの名無しさんNGNG
ResultSet rs = statement.executeQuery("select name from 名簿;");
こうやって検索した結果を
String[] names
に収めたいんだけど、ResultSetには何件あるか分からないから
String配列を初期化できないよねぇ?
なんかいい方法ないの?
0872デフォルトの名無しさんNGNG
>>870
justsystem.co.jp
>>871
別にわかんなくてもいいだろ
Vectorは?
0873デフォルトの名無しさんNGNG
【質問】Windows環境限定と思いますが、JDialogの右上の「x」ボタンを
無効化し、「押せなくする」方法はありますでしょうか。
0874デフォルトの名無しさんNGNG
>>873ある。
0875デフォルトの名無しさんNGNG
消すんじゃなくて押せなくするの?
0876デフォルトの名無しさんNGNG
>>872
どうもありがとうございます。なんとか解決しました。
0877873NGNG
>875
消す方法でも構いません。
ていうか、そっちの方がありがたいです。
よろしくお願いします。
0878デフォルトの名無しさんNGNG
>>877
JFrame.setDefaultCloseOperation()
でいいのか?
0879デフォルトの名無しさんNGNG
>>877 ドキュメント読めよ
setDefaultCloseOperation

public void setDefaultCloseOperation(int operation)

ユーザがこのダイアログで「クローズ」を開始したときに、デフォルトで実行される処理を設定します。以下の値を選択できます。

* DO_NOTHING_ON_CLOSE - 何も行わない - プログラムは登録されている WindowListener オブジェクトの windowClosing メソッドで処理を行う必要がある
* HIDE_ON_CLOSE - 登録されている WindowListener オブジェクトを呼び出したあとで、自動的にダイアログを隠す
* DISPOSE_ON_CLOSE - 登録されている WindowListener オブジェクトを呼び出したあとで、自動的にダイアログを隠し、破棄する

デフォルト値は HIDE_ON_CLOSE です。
0880デフォルトの名無しさんNGNG
this
の意味がよくわかりません。どなたかわかりやすく教えてくれませんでしょうか?
0881デフォルトの名無しさんNGNG
>>880
thisってのはね、あなたのチムポのこと
あんまりいじめんどけや
0882デフォルトの名無しさんNGNG
this pointer HA SONO class NO instance HENO pointer DE
C++ GA KANRI SITE IMASU.
0883デフォルトの名無しさんNGNG
>>880
thisは、そのthisを含むオブジェクトの自分自身への参照だけど、
オブジェクトの参照って分る? これが分らないとthisも分らないから
分かっていることにしておいて、例えば、
class foo{
int value;
void hoge(int value){
this.value=value;
}
}
なんてやる。もしthisがなかったら、パラメータのvalueとメンバ変数
のthisを区別できない。
0884883NGNG
>なんてやる。もしthisがなかったら、パラメータのvalueとメンバ変数
のthisを区別できない。
は、
>なんてやる。もしthisがなかったら、パラメータのvalueとメンバ変数
のvalueを区別できない。
 ^^^^^^
の誤り。_(..)_
0885デフォルトの名無しさんNGNG
>879
DO_NOTHING_ON_CLOSEでは「x」ボタン自体は有効で、
単に「押しても何もおきない」だけですので希望する動作
ではありません。
・「x」ボタン自体を無効状態で押せなくする
または
・「x」ボタンそのものを消す(表示しない)
方法はあるかと >873 で質問しました。 >874で 「ある」と
レスがつき、 また >875 で「消すんじゃなくて押せなくする
のか」とありましたので、「x」ボタンそのものを消せるので
あればと 再度 >877 でお尋ねしました。

判りにくくてすみません。
0886デフォルトの名無しさん NGNG
>>885
じゃあ、無理
0887デフォルトの名無しさんNGNG
>>885
たぶんJWindowつかうと吉なのにゃー
0888デフォルトの名無しさん NGNG
>>887
DesktopPane?
0889デフォルトの名無しさんNGNG
JWindowにJDesktopPane張ってJInternalFrameをいっぱいに張ってごまかせ。
0890がばろん@MたんちゅきちゅきNGNG
>>870たん。
実行可能なjarファイルって、こんなかんじのやつのこと?
http://ymizoguchi.hoops.ne.jp/tips.html
http://java-house.etl.go.jp/ml/archive/j-h-b/036505.html

#ちがってたら、ごめんね。
0891デフォルトの名無しさんNGNG
小数点以下10桁の数字を小数点以下3桁まで表示したいのですが
どうしたらいいでしょうか?
どなたか教えてください。
0892J2EEチューボーNGNG
WebLogic使っている人いましたらしつもーん。
WebLogicのWebServerでURLアドレスにWORDのdocファイルを指定すると
文字化けバイナリでブラウザに表示されちゃうのですが、
どこかにMIMEタイプとか設定できるのでしょうか?
0893デフォルトの名無しさんNGNG
>>891
String s;
DecimalFormat fmt = new DecimalFormat("#.###");
s = fmt.format(dn);

あ、四捨五入しちゃだめなの?
0894デフォルトの名無しさんNGNG
あ、double dn; ね。
DecimalFormat("0.000"); //これだと、末尾のゼロサプレスをしない。
0895デフォルトの名無しさんNGNG
すいません、JEditorPaneについて質問です。
JEditoPaneで表示されたHTML文書のハイパーリンクの挙動とフォント設定について
分からないことがあります。
次のレスにソースを乗せますが、現段階の状況としては・・・
(1)JEditoPaneにHTML文書を表示しているが、フォントを設定できない。
フォントの設定は、hoge.setFont(new java.awt.Font("Dialog", Font.PLAIN, 14));
などとしていますが、明朝体のフォントでのみHTMLが表示され、ゴシック体に変更できない。
(2))ハイパーリンクイベントは基本的に正しく発生していますが、納得できない挙動がある。
   ・ハイパーリンクをシングルクリックした段階で、HyperLinkEventが発生してしまう
   ・JEditorPane内の適当なところをクリックすると、適当なところのハイパーリンクを読みこんでしまう。
   ・従ってダブルクリックすると、2回イベントが発生してしまいます。

(3)やりたいこととしては、ブラウザのようにダブルクリックしたうえで、イベント発生+プロセスコマンドによる新規ブラウザの起動
というものです。もちろん表示フォントはゴシック体で。

 皆さんのお知恵をどうかお貸し下さい。よろしくお願いします。
 少々長いかもしれませんが、次レスにソースを掲載します。
0896895NGNG
import javax.swing.*;
import javax.swing.border.*;
import javax.swing.text.html.*;
import javax.swing.text.EditorKit.*;
import javax.swing.plaf.basic.*;
import javax.swing.tree.*;
import javax.swing.event.*;
import java.awt.*;
import java.awt.event.*;
import java.io.*;
import java.net.*;
import java.util.*;

public class foo_Frame extends JFrame {
JEditorPane hogePane;
public foo_Frame{
HTMLEditorKit thisEditorkit = new HTMLEditorKit();
hogePane = new JEditorPane();
hogePane.setEditorKit(thisEditorkit);
hogePane.setContentType("text/html");
hogePane.addHyperlinkListener(new linkClicked());
hogePane.setEditable(false);
hogePane.setText(ほにゃらにゃら); // 初期画面としてJEditorPaneに表示するHTML文書です。
}
class linkClicked implements HyperlinkListener{
public void hyperlinkUpdate(HyperlinkEvent e) {
URL clickedHyperLinkURL;
String clickedHyperLinkString = null;
if (e.getEventType() == HyperlinkEvent.EventType.ACTIVATED) {
JEditorPane pane = (JEditorPane) e.getSource();
try {
clickedHyperLinkURL = e.getURL();
clickedHyperLinkString = clickedHyperLinkURL.toString(); // ブラウザ立ちあげのプロセスコマンドに使用
try{
// ブラウザを立ち上げて、リンク先を表示
}catch(IOException be){
// ダイアログを表示して終了
}
} catch (Throwable t) {
// ダイアログを表示して終了
}
}
}
}


}
0897デフォルトの名無しさんNGNG
>>891
ある数字を、1桁づつcharにしていく方法わかる?
それができれば、できるよね
ライブラリーにいちいち頼らな無い方がいいと思うよ

>>895
JAVAのデモって
確かソースついてたけど(バージョンが違うと無いかも)
デモに同じようなプログラムあったよ
デモのほうが数倍高度だったよ
そっち使った方が・・・
0898895NGNG
>>897
レス有難うございます。
バージョンは1.3.1ですが、付属のdemoを見まわしても該当するような
ソースが見当たらなかった記憶があります。ただあやふやなのでもう一回
見てみます。
 それでも分からなかったら再度upします。
0899デフォルトの名無しさんNGNG
Javaの初心者向けのWeb Siteってどこにある?
0900デフォルトの名無しさんNGNG
>>899
http://www.google.co.jp/search?hl=ja&q=Java+%93%FC%96%E5+-%8F%91%90%D0&lr=
0901デフォルトの名無しさんNGNG
>>900
現時点で、39300件
あなドレン
0902デフォルトの名無しさんNGNG
IDとパスワードを保護するために
簡単な暗号を用いて保護したいのですが、今自分が考えている方法は
・IDとパスワードが対になったファイルを用意
・パスワード生成クラス、可逆クラスを作成

という手法をとろうかなと考えています。
素人考えですが普通どのような手法をとるのでしょうか?
専門家、及びその筋の意見が聞けたら幸いです。
0903デフォルトの名無しさんNGNG
>>902
http://piza2.2ch.net/test/read.cgi/tech/1002736958/l50
0904デフォルトの名無しさんNGNG
可逆は必要なし
0905デフォルトの名無しさんNGNG
MessageDigest#getInstance("MD5") を使ってハッシュ化。
>>904 のとおり可逆は不要。
0906デフォルトの名無しさんNGNG
テキストフィールドの文字列の表示を左よりではなく右寄りにしたいのですが
どうしたらいいでしょうか?
0907デフォルトの名無しさんNGNG
>>906
モニタをひっくり返す
0908デフォルトの名無しさんNGNG
>>902
passwdコマンドをJNIで使う
0909名無しさん@XEmacsNGNG
>>892
>どこかにMIMEタイプとか設定できるのでしょうか?
5.1ならweblogic.properties、6.xならwebappのWEB-INF/web.xmlだと思うが。
0910デフォルトの名無しさんNGNG
>>907
モニタをひっくりかえすとは,如何様なものぞな?
0911デフォルトの名無しさんNGNG
WinでSunのJDKをインストールすると
どうして%SystemRoot%にjava.exeのショートカットができるのだろ。

Sunもいやらしい。
0912デフォルトの名無しさんNGNG
>>912
Sunも嫌らしい。って
好きでやってんだろ?

ところで、そのショートカットって1度実行してるからじゃなくて?
0913デフォルトの名無しさんNGNG
あげついでにあげあしとり。

>>911 の Sun もいやらしいってのは
Sun も汚いことをするとの意味だと思うが?
0914デフォルトの名無しさんNGNG
>>913
あげあしとりの基礎を
勉強し直せ
0915デフォルトの名無しさんNGNG
>>914
どこで勉強すればよいですか?
0916デフォルトの名無しさんNGNG
>>915
木曽
0917デフォルトの名無しさんNGNG
>>915

JAVAをおぼえませう
http://natto.2ch.net/test/read.cgi/dame/994758870/
0918デフォルトの名無しさんNGNG
まえから疑問に思っていたのだけど、javaって
一度書いたら、そのバイトコードを他の環境に
そのままもっていけるはずですよね。ではWinで
作ったJavaアプリをMSXに持っていきたいのだけど
これって無理でしょ?MSXにはJavaVMがないから・・。

じゃ大昔、PC9801のROM-BASIC用のBASICプログラムは
そのままではシャープのX1に持っていけなかったのと同じ
だと思うけど、どこが革新的なんですか?????
全てのマシンに同質のjavaVMが搭載されているわけないから
昔のBASICプログラムの互換性問題(同じインタプリタが内蔵
されていない)と全く同じ問題点を抱えていると思います。

しかも自分のつくったJavaアプリをきちんと作動させるために
JavaVMを同梱したいけど著作権の問題で簡単に配布できない。

これでどうやって普及するというのでしょう?????
0919デフォルトの名無しさんNGNG
>918

君はJavaはMSXで動かないから革新的じゃないと言いたいのか?
趣旨がよく解らん。
0920918NGNG
「一度書いたら、どこでも動く」などといいながら、
それは全てのマシンに同質のVMが搭載されている
ことが大前提である。

しかし、実際はVMが搭載されていないマシンもあるし、
Win、MAC、Solaris・・・。同バージョンなのにVMの
振る舞いやGUIの見栄えがビミョーに違う。

ということだよ。

>>君はJavaはMSXで動かないから革新的じゃないと言いたいのか?

後半の文章もよく読んで、頭の中で整理する練習を心がければ
もう少し現代国語の点数があがりますよ。
0921デフォルトの名無しさんNGNG
>しかし、実際はVMが搭載されていないマシンもあるし、
>Win、MAC、Solaris・・・。同バージョンなのにVMの
>振る舞いやGUIの見栄えがビミョーに違う。
そりゃ、君の勉強不足
じゃあ、もっといいクロスプラットフォームの方法を君が提案してください
GUIなんてプログラムの本質じゃない事もわからないなんて・・・・
>「一度書いたら、どこでも動く」
これが目的なわけだけど
UNIXでもMacでも、OSとハードウエアの能力を引き出しつつ
全く同じに動いたらすごいね
でも、そんな事はいつまでたっても無理
だから、今のJAVAで十分なんだよ
もしいやだったら、どこでも動くbasicとか作って使えば(笑)
0922デフォルトの名無しさんNGNG
>>918
>しかも自分のつくったJavaアプリをきちんと作動させるために
>JavaVMを同梱したいけど著作権の問題で簡単に配布できない。
元ネタはどこから?
0923デフォルトの名無しさんNGNG
VMとコンパイラってどっちも作るの大変だよな
JAVAみたいな高度抽象ができる言語だと
0924デフォルトの名無しさんNGNG
>>920
人の揚げ足とる前に自分の文章を読み直して、
文意を把握しやすいようにリファクタリングしてくれ。
0925デフォルトの名無しさんNGNG
というか、Javaが発表されたときから分かっていた問題点を
今さら大声で語られてもなあ。
0926デフォルトの名無しさんNGNG
>>923
はげしくどうい
0927デフォルトの名無しさんNGNG
>しかも自分のつくったJavaアプリをきちんと作動させるために
>JavaVMを同梱したいけど著作権の問題で簡単に配布できない。

その断定口調と自信はいったい何処から..
知り合いとか学校の先生から聞いた話とか言わないでよ
0928919NGNG
 私が理解した君の前半の発言の要旨は以下の通り。間違っていたら指摘してくださいませ。
1、「java」はバイトコードをそのまま他の機種に流用できる筈だ。
2、でも、現実はそれは無理だ。(例:Winで作ったものをMSXに持っていけない)
3、よって、革新的でない。

 以上から「MSXでJavaが動かないから革新的でない」と解釈するのはごく自然なように読めますが。


>>後半の文章もよく読んで、頭の中で整理する練習を心がければ
>>もう少し現代国語の点数があがりますよ。
 後半は前半の補足でしかないように思えますが。後半の文章によって
「君はJavaはMSXで動かないから革新的じゃないと言いたいのか?」
と言う言葉が的はずれになるのですか? 説明プリーズ。
0929デフォルトの名無しさんNGNG
>>928
920は、
「MSX」はJavaVMの無いマシンの例であってMSXそれ自体に深い意味はない、と言いたいのでは?
0930918NGNG
どうもすみませんでした。今、担任の先生に携帯電話で
確認したら「Javaプログラマ&Java信者と会話すなvoke!」と
怒鳴られました。高校を卒業してからまた2chに来ます。シクシク。
0931981NGNG
>>921
>そりゃ、君の勉強不足
>じゃあ、もっといいクロスプラットフォームの方法を君が提案してください
>GUIなんてプログラムの本質じゃない事もわからないなんて・・・・

GUIもプログラムの本質だと思いますけど、だったらWinやMACでは
プログラムの本質では無い、いわばどうでもよいおまけで盛り上がって
いる奇妙なOSというわけですか・・・・???。

> 全く同じに動いたらすごいね
>でも、そんな事はいつまでたっても無理

つまりjavaの理想はDQNだったということが証明された訳ですね。
どうもありがとうございました。
0932デフォルトの名無しさんNGNG
>>931
もちろんユーザインタフェイスはソフトウェアにとって重要だ。
(ヒューメイン・インタフェイスを読むべし)
が、純粋な機能要件の視点からはそうではない。
MVC アーキテクチャを勉強すれ。
0933デフォルトの名無しさんNGNG
>>918
Squeakはキミの理想に近いのでは?
但しMSXでは動かないがな。
0934デフォルトの名無しさんNGNG
javaでコンソールアプリを作ってるような気がします。
で、j2seとjikesはインストロールしました。
あとこれはインストロールしとけってのはありますか?
0935デフォルトの名無しさんNGNG
>>934
APIドキュメントとテキストエディタ
0936名無しさんNGNG

public static void main(String args[])

と

public static void main(String[] args)

の違いは何?
0937デフォルトの名無しさんNGNG
見栄え。
0938デフォルトの名無しさんNGNG
型名称型
型型名称
0939デフォルトの名無しさんNGNG
>つまりjavaの理想はDQNだったということが証明された訳ですね。
つまりって・・・激しい論理飛躍ですな
全ては性能とのトレードオフだってことに気づかないのかな?
コンパイラとかは、全くもって無視みたいだしね

ユーザーインターフェースとメインルーチンの区別もできない小学生相手にしても
仕方ないね(笑)
0940デフォルトの名無しさん NGNG
931はネタ。
名前が981だしね。
0941名無しさんNGNG
>>937

あなたはどっち使ってるの?
0942デフォルトの名無しさんNGNG
String args[]はCの名残で意味なし。
String[] args使え。
↑ってのをどっかで見たようなきがする。
なんとなく、Kurasu[] namaeっての使ってる。

http://www.gimlay.org/~javafaq/S006.html#S006-13
ht tp://java-house.etl.go.jp/ml/archive/j-h-b/004419.html#body
0943デフォルトの名無しさんNGNG
deprecated 警告ってどう思いますか?
俺たちの作った新しい仕様に従え、従え、って洗脳してる感じよね。
0944デフォルトの名無しさんNGNG
>>911 俺も思った
JDK の /bin に PATH 通してない状態で
コンソールから MS の java.exe 実行したいのに
なぜか JDK の java が実行されちゃって悩んだよ
0945デフォルトの名無しさんNGNG
http://www2n.biglobe.ne.jp/~ezaki/i-appli/
というサイトに掲載されている方法(非公式の方)で
iアプリを作成しようとしているのですが、かなり忠実に
書かれた通りの作業をしてもうまくいきません。

まずDOSプロンプトで
「C:\java\code\test>javac -bootclasspath \i-jade\classes test.java」
と入力し、実行すると
「致命的エラー: クラスパスまたはブートクラスパスで
パッケージ java.lang を検出できません。」
と出てしまいます。

すみません、誰か助けてください。
お願いします。
0946RubyハートNGNG
>939
>>全ては性能とのトレードオフだってことに気づかないのかな?

トレードオフしなければならない言語って・・・(以下略)
そんな言語を使う人って・・・・・・・・・・・(以下略)
iアプリしか元気のない言語って・・・・・・・(以下略)

ま、どうでもいいか。
0947デフォルトの名無しさんNGNG
カンタンにtelnetできるAPIってない?
0948デフォルトの名無しさんNGNG
>>946 小学生
0949阿修羅NGNG
パソ初心者なんですけど教えてください・・・
チャットとかでJAVAを使って色々遊べるって聞いたんですけど
例えばレスを全部消したりとかそんな程度なんですけど
誰か御存知の方いらっしゃいましたら
関連サイトでもいいので教えてください・・・
よろしくお願いします☆
0950デフォルトの名無しさんNGNG
>>947
netを検索すれば、たくさん出てくるよ。
0951デフォルトの名無しさんNGNG
そろそろ次スレだけど、ネタ心者スレとの統合を考えないと。

1、適当なとこでこのスレをsage進行にしてネタ心者スレが埋まったら次スレをたてる
2、このスレの950が次スレたててネタ心者スレからそっちに誘導する
3、何もせず現状維持

こんなとこですか? 仕切るようでスマソ。
0952デフォルトの名無しさんNGNG
>>950
うん、いっぱいでてくるんだけどスタンダード的なものはあるの?
0953デフォルトの名無しさんNGNG
関係ないけどちょっと聞いてくれよ1よ

jxta.orgからダウンロードできないんだよ。
どーなってんの?
0954950NGNG
>>952
スタンダードかどうかは知らないけど、
http://www.first.gmd.de/persons/leo/java/Telnet/
にあるのはちょっと使ったことがあるよ。ライセンスはGPL。
ただ、最新版はダウンロードできないみたい。
上記のページの真中当たりにあるdownloadのリンクは古いものだけど、
ダウンロードできた。残念だけど、これ以上は情報ない。
0955デフォルトの名無しさんNGNG
>>954
ありが�d
コレなら前に落として遊んでた。
よし、これを俺の中でスタンダードと認定しよう。

ほんとだ、ダウンロードできないや。
前に落としたやつがHDDに残ってるといいな。。。
0956ageNGNG
>951 応援あげ
ちなみに1で。
初心者も入ってきやすいようにと。
0957デフォルトの名無しさんNGNG
ネタ心者 の方が今は本スレかと思ってた。
雰囲気的に初心者にはあっちの方が聞きやすいかと。

タイトルに ネタ心者歓迎! とつけると
合流しやすいかと。
0958ひげおやじ ★NGNG
申し訳ありません。JBuilder4でホイールマウスを使うPluginがあったという話があったのですが
そのpluginは本当にあったのでしょうか?
googleで検索してみたり、色々と探してみたのですが情報が見つからなかったもので。。。
ご存知の方、是非お願い致しますです。
 んじゃ
0959がばろん@MたんちゅきちゅきNGNG
piza,piza2,あと、みみずんたんちの過去ログ

Java相談室
http://piza.2ch.net/tech/kako/971/971960169.html
http://mimizun2.mine.nu:81/2chlog/tech/piza.2ch.net/tech/kako/971/971960169.html

Java相談室 Part2
http://piza.2ch.net/tech/kako/980/980858322.html
http://mimizun2.mine.nu:81/2chlog/tech/piza.2ch.net/tech/kako/980/980858322.html

Java相談室 Part3
http://piza.2ch.net/tech/kako/994/994150280.html
http://piza2.2ch.net/tech/kako/994/994150280.html
http://mimizun2.mine.nu:81/2chlog/tech/piza.2ch.net/tech/kako/994/994150280.html

Java相談室 Part4
http://piza2.2ch.net/test/read.cgi/tech/997791189/

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

ネタ心者歓迎!今更ながらにJavaを学ぼう! その弐
http://piza.2ch.net/tech/kako/993/993358225.html
http://piza2.2ch.net/test/read.cgi/tech/993358225/
http://mimizun2.mine.nu:81/2chlog/tech/piza.2ch.net/tech/kako/993/993358225.html

#いくつか遺漏や、ひらけないのもあるけど。
#新スレのタイトルは「ネタ心者歓迎! 今更ながらにJava相談室 Part7」とか。
0960デフォルトの名無しさんNGNG
>959
ありがとう。
かなりいい感じだと思う。
0961ひげおやじ ★NGNG
>>959のがばろんさん
JBuilder4でホイールを使用できるようにするプラグインを探していたのですが
過去ログより見つけられました。ありがとうございます。

Java相談室2より

74 名前:壊れプログラマ〜 投稿日:2001/02/22(木) 06:00
ぐるぐるでけた! 便利すぎて涙でそう。
http://www.developpez.com/java/opentools/jbWheel.zip を展開して、
jarをJBuilderの/lib/extにコピー
dllをJBuilderの/jdk1.3/binにコピーしたら動いた。

早速試してみます。ありがとうございました。
 んじゃ
0962デフォルトの名無しさんNGNG
Buttonを一度押すと、その後ボタンを押せない状態(凹)にするには
どうしたらいいのでしょうか。
0963デフォルトの名無しさんNGNG
button.setEnabled(false);
0964sageNGNG
>>963
DQNな質問に答えてくれてありがとう
0965avajNGNG
はじめましてだけど教えてくだsai
win98で、J2EEのdeploytoolが、動かない(GUIがみれない)
パスも、環境変数もとおしたけど駄目
やっぱJ2EEでサポートされてるOSでないと駄目なんでしょうか。
0966デフォルトの名無しさんNGNG
Sringでわたされた日付がJSTを使用して、
Mon Oct 15, 10:00:00 JST 2001
であった場合、これをGMTに変換するのはどうすればいいのでしょうか?
Mon Oct 15, 10:00:00 GMT+9 2001

ストリングとしてのJSTをGMT+9に常に変換するのではなく、
動いているロケーるにあわせて、計算したいのです。
0967デフォルトの名無しさんNGNG
>966
java.text.DateFormat使えば楽そうだよ
ttp://www.dmz.hitachi-sk.co.jp/Java/Tech/i18n/format.html
ttp://java.sun.com/j2se/1.3/ja/docs/ja/api/java/text/DateFormat.html
0968デフォルトの名無しさんNGNG
SimpleDateFormat使ってたんだけど、うまくいかないんだよなあ。

Date sysDate = new Date();
SimpleDateFormat formatter
= new SimpleDateFormat("EEE MMM dd, yyyy hh:mm:ss a z",new Locale("en","US"));
String sysDateStr = formatter.format(sysDate);
System.out.println("############" + sysDateStr);

JSTのまま。
そもそもnew Date()でいつもJST表現になるのもわからんし。
0969デフォルトの名無しさんNGNG
>968
タイムゾーンはLocaleとは別に指定するのでわ?

formatter.setTimeZone(TimeZone.getTimeZone("GMT"));
0970969NGNG
>968
でけたよ

String input = "Mon Oct 15, 10:00:00 JST 2001";
DateFormat formatter = new SimpleDateFormat("EEE MMM dd, hh:mm:ss zzz yyyy", new Locale("en", "US"));
Date date = formatter.parse(input);
formatter.setTimeZone(TimeZone.getTimeZone("GMT"));
System.out.println(formatter.format(date));
0971デフォルトの名無しさんNGNG
Tomcatつかってるんすが、
コンパイルしても、結果が反映されないんですよ、
Tomcatを再起動すると、反映されるんで、
キャッシュに取り込まれれて、更新されないような、
感じとおもうんですけど、
どなたか、情報ありませんか?
0972デフォルトの名無しさんNGNG
Imageを含んだクラスを作りたいのですが、以下のようにすると
img = getImage(getDocumentBase,s)でNullPointerErrorがでます。
なぜなんでしょうか・・・・・・

class myImage{
Image img;
myImage(String s){
img = getImage(getDocumentBase(),s);
}
}
0973デフォルトの名無しさんNGNG
>>971
ふつーは初期に読み込んだまま動くだろ。
どこかで自動リロードみたいな設定なかったっけ?
0974デフォルトの名無しさんNGNG
>>791
フォルダのファイルを一度全部削除してみましょう。
0975デフォルトの名無しさんNGNG
>>969

ありがとうございました!!
なるほど、こうやって使えば良いんですね。
勉強になりました。
0976デフォルトの名無しさん NGNG
WinにおけるFORTE for JAVAのシステム要件は
Pentium3 450MHz
メモリ 256M
ってあるけど、これでサクサク?
アスロンのオーバークロック(1GHz)にいれているけど
かったるい。。。
0977デフォルトの名無しさんNGNG
>>972 どうせドキュメントベースにsのファイル名の
イメージファイルがみつからないかsがNullなんだろ
0978悩める名無しさんNGNG
RMIの質問なんですけど
_Stub.classのロードについて悩んでいます。

Server側のコードベースに
-Djava.rmi.server.codebase=file:/c:/server/ < _Stub.classの存在場所
と指定すると、ローカル環境では動作に成功しました。

しかし上記の設定でリモートで動作させると、_Stub.classのDLに失敗して例外が出るので
-Djava.rmi.server.codebase=http://XXXXXXXXXXXX < _Stub.classの存在場所
と指定すると、リモートでの動作に成功しました。

ここで質問なんですけど、
リモート環境で_Stub.classをクライアントにダウンロードさせるには
サーバ側にWebサーバーを導入して、codebaseにhttpを使用するしか方法が無いのでしょうか?
サーバ側にWebサーバが導入しないで動作させる事は無理でしょうか?
それともクライアント側に_Stubをあらかじめ入れておくしかないのでしょうか?
0979ひよこNGNG
現在、アプレットでゲームを作成しています。
音を出そうと思うのですが、auファイル以外に
wav 、mid などファイルは使えないんでしょうか?
0980デフォルトの名無しさんNGNG
>>976

うちはペンIII 1GHz、メモリ512Mbだが、
さくさくとはいえないなあ。
起動は遅いし。
0981デフォルトの名無しさんNGNG
>977
ちゃうんですよ。ちゃんとappletのinit()
いかに書くと作動するんです。
でも複数画像を扱いたいので、
Imageクラスを変数としてクラスにしたいんですよ。
Image img[4]
とかで配列を使えばできるんですけど、これだと、
数が固定になってしまうので・・・
0982デフォルトの名無しさんNGNG
■質問■
JDialogでsetDefaultButton()したのだけど、JComboBoxにフォーカスが
あたってるとEnterKey押下イベントを横取りされてしまふのである。
なんとかならぬでせうか。

→ JComboBoxにフォーカスが当たっていてもsetDefaultButton()で指定した
  ボタンの押下イベント処理を実行させたい。

誰ぞ解決策を知らぬか。
0983 NGNG
>>982
JDialogのprocessKeyEventで無理やりボタンのイベントを実行させるっつうのは
駄目?
0984デフォルトの名無しさんNGNG
>>981
あーそうか。おれもよくソース見ればよかった。

ところで
以下の二つの関数はmyImageにちゃんと定義してあるんだろうな?
getImage()
getDocumentBase()

私の記憶が確かならば
これらはAppletクラスのメンバーだから
生きたAppletクラスのインスタンスを通して呼び出すか
同じ名前の関数を自分のクラスに定義するかしないと
ならないはずだが?

もし、アプしたサンプルがクラス定義のすべてなら
そもそもコンパイルすら通らない
0985tyvNGNG
 swingを使ってアプレットを作ったのですが。コンパイルはできるのに
HTMLを作るとload: class 〜.class not found とでて起動してくれません。
JAppletクラスを継承してつくったのですが、Appletクラスを継承させて
swingでなくGUI部品を使ったら起動しました。JAppletじゃあだめなの
でしょうか?
0986デフォルトの名無しさんNGNG
>>985
駄目じゃない。でも、そのアプレットの実行環境がわからないので
それ以上のアドバイスはできない。appletviewer? IE?
AWTのことをGUI部品といっているんだろうと考えると、なにかのRAD
環境?
0987tyvNGNG
>>986
IE6.0をつかっています。
JBuilderのappletviewerだとちゃんと動くんです。
あとGUI部品はまさしくAWTのことです。
Jbuilderのコンパイラがいけないのかと思ってjdk1.3.1のjavacでもやってみたんですがだめでした
0988デフォルトの名無しさんNGNG
>>985
IEなら,お決まりのSwing周りのクラスがみつからんとか
だろうとおもうけど、エラーメッセージは正確にはどう出ているの?
0989tyvNGNG
load:class App1.class not found
とでてきました。App1はクラスのなまえなんですけれど・・・
クラスが見つからないってことですよね。
でもあきらかにあるんですよ。
あとJAppletをやめてAppletくらすを継承するとgetContentPane()が見つからないというので
JApplet ap;
ap.getContentPane()としたらjavax.swing.JApplet ClassNotFoundExceptionがでて、
getContentPane()をつかわないでやってみたらJPanel でClassNotFoundExceptionがでました。
0990tyvNGNG
>>986
load:class App1.class not found
とでてきました。App1はクラスのなまえなんですけれど・・・
クラスが見つからないってことですよね。
でもあきらかにあるんですよ。
あとJAppletをやめてAppletくらすを継承するとgetContentPane()が見つからないというので
JApplet ap;
ap.getContentPane()としたらjavax.swing.JApplet ClassNotFoundExceptionがでて、
getContentPane()をつかわないでやってみたらJPanel でClassNotFoundExceptionがでました。
0991デフォルトの名無しさんNGNG
思いっきりFAQの領域なので、googleあたりで IE, applet, swing, ClassNotFoundException
程度のキーワードで検索してみよう。ここで一問一答すると、スレの命が尽きるからね。

ところで、次スレは立てないで、ネタ初心者スレに統合ってことでよいの?
0992名無しさんNGNG
Javaでタイムアウトてどうやって実装するんですか?
java.util.Timerあたりがそれぽいんですかね?
ある処理がn秒いないに終わらなかったらキャンセルするってのをやりたい。
0993デフォルトの名無しさんNGNG
>>991
次スレはネタ心者と統合です。

一応誘導
ネタ心者歓迎!今更ながらにJavaを学ぼう! その弐
http://piza2.2ch.net/test/read.cgi/tech/993358225/
0994デフォルトの名無しさんNGNG
>991
で、ネタ心者スレが埋まったら統合スレをたてましょう。
新スレのタイトルは「ネタ心者歓迎! 今更ながらにJava相談室 Part7」あたりで。
#がばろんさんThanks! >>959

以下、次スレ1〜2の案。
----------------------------
Java関連の質問はここでお願いします。

厨房な質問も恥ずかしがらずにここで聞こう!


過去スレ

Java相談室
http://piza.2ch.net/tech/kako/971/971960169.html
http://mimizun2.mine.nu:81/2chlog/tech/piza.2ch.net/tech/kako/971/971960169.html

Java相談室 Part2
http://piza.2ch.net/tech/kako/980/980858322.html
http://mimizun2.mine.nu:81/2chlog/tech/piza.2ch.net/tech/kako/980/980858322.html

Java相談室 Part3
http://piza.2ch.net/tech/kako/994/994150280.html
http://piza2.2ch.net/tech/kako/994/994150280.html
http://mimizun2.mine.nu:81/2chlog/tech/piza.2ch.net/tech/kako/994/994150280.html

Java相談室 Part4
http://piza2.2ch.net/test/read.cgi/tech/997791189/

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

ネタ心者歓迎!今更ながらにJavaを学ぼう! その弐
http://piza.2ch.net/tech/kako/993/993358225.html
http://piza2.2ch.net/test/read.cgi/tech/993358225/
http://mimizun2.mine.nu:81/2chlog/tech/piza.2ch.net/tech/kako/993/993358225.html

#いくつか遺漏や、ひらけないのもあるけど。
0995971NGNG
前に、質問したんだけど、
一応解決したんで、ここにフィードバックしときます。

Tomcat4 にしたらうまくいった!

いじょう!
0996名無しプログラマNGNG
>>971
server.xml のContext の設定のところで reloadable="true" にしないと駄目よ。

などと今さら答えるのもバカみたいだな (自嘲
0997デフォルトの名無しさんNGNG
今だ!1000番ゲットォォォォ!!
 ̄ ̄ ̄ ̄ ̄∨ ̄ ̄ ̄       (´´
     ∧∧   )      (´⌒(´
  ⊂(゚Д゚⊂⌒`つ≡≡≡(´⌒;;;≡≡≡
        ̄ ̄  (´⌒(´⌒;;
      ズザーーーーーッ
0998デフォルトの名無しさんNGNG
今だ!1000番ゲットォォォォ!!
 ̄ ̄ ̄ ̄ ̄∨ ̄ ̄ ̄       (´´
     ∧∧   )      (´⌒(´
  ⊂(゚Д゚⊂⌒`つ≡≡≡(´⌒;;;≡≡≡
        ̄ ̄  (´⌒(´⌒;;
      ズザーーーーーッ
0999デフォルトの名無しさんNGNG
今だ!1000番ゲットォォォォ!!
 ̄ ̄ ̄ ̄ ̄∨ ̄ ̄ ̄       (´´
     ∧∧   )      (´⌒(´
  ⊂(゚Д゚⊂⌒`つ≡≡≡(´⌒;;;≡≡≡
        ̄ ̄  (´⌒(´⌒;;
      ズザーーーーーッ
1000デフォルトの名無しさんNGNG
いただきっ♪
10011001Over 1000Thread
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。
10021001Over 1000Thread
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。