トップページ⇒tech
1001コメント339KB

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

レス数が1000を超えています。これ以上書き込みはできません。
0001デフォルトの名無しさんNGNG
過去ログ、関連スレッド、よくある質問とその回答、
質問をする前に、貴方が見なければならないサイトについての情報は、
下のwikiのページにまとめてあります。
http://www.wikiroom.com/java/

これからJavaでプログラミングを始めたいが、何をすればいいかわからない人も、
wikiからのリンクをおたどりください。

以下のエラーが表示されて、途方にくれているあなたは、下のページへ。
「コマンドまたはファイル名が違います」
「'javac' は、内部コマンドまたは外部コマンド、
操作可能なプログラムまたはバッチ ファイルとして認識されていません。」
「Exception in thread "main" java.lang.NoClassDefFoundError: 」
http://www.wikiroom.com/java/?path%2Cclasspath

前スレッド
【初心者】Java質問・相談スレ52【大歓迎】
http://pc5.2ch.net/test/read.cgi/tech/1093267533/

/* 既出の質問や、他に適切なスレが存在する質問は、容赦なく無視されます。
質問をする前にwikiで過去ログ、関連スレ、FAQをチェックしてください。 */

また、当スレで質問をするかたは、回答をもらえたときに、
wikiの更新をして頂ければ、忝なく存じます。

JavaScriptの質問は、ここでは受け付けていません。
Web製作板をご利用ください。http://pc5.2ch.net/hp/
0002デフォルトの名無しさんNGNG
2だったらこのスレ終了
0003デフォルトの名無しさんNGNG
3だったらJava終了。
そしてJ#へ・・・
ww
0004デフォルトの名無しさんNGNG
4だったらDelphiの時代
00051NGNG
Wikiを更新した
0006デフォルトの名無しさんNGNG
>>4
出る日の時代はもう来ないだろww
来るのか!?
0007デフォルトの名無しさんNGNG
出る屁はとうとうマイナーなままだったね
0008デフォルトの名無しさんNGNG
>>7
Javaよりはマシだったけどなw
(過去形)
0009デフォルトの名無しさんNGNG
Delphiは8でおわったしなぁ・・・ってなんでJavaスレでDelphiの心配してるんだ

1と2はかなり感動したものだったが・・・
0010デフォルトの名無しさんNGNG
初心者です。
今までADOでDBにアクセスしてたんですけど
Javaを勉強することになりました。
でADOだとSQLをきかしてRecordSetとった後
RecordSetで取得したデータを
ソートしたりできたんですけど
JDBCではSQLきかした後のデータの
ソートとかはどうやってやればいいでしょうか?

とりあえずJDBCでデータベースにアクセスして
ブラウザに表示するところまでは理解しています。

後DBにアクセスしてデータを変更したり画面表示する
勉強するのに適したWebアプリのための
勉強にお勧めの本ありますか。
0011デフォルトの名無しさんNGNG
http://pc5.2ch.net/test/read.cgi/tech/1093267533/991
>>前スレッドの991

実際に問題があるのですよ。
すべてのクライアント環境がWindowsやIEのようなスマートなものだと考えれば、問題はありません。
ですが、ファイルの拡張子などを頼りに
どのヘルパアプリケーションを起動するかを判断してくれるスマートな環境以外では、
サーバが正しくMIMEタイプを返さない場合、JavaWebStartは現実に起動しないのです。
故にサーバの設定は正しく行わなければならないのです。

また、この問題については、
JavaWebStartが、クライアント環境のPCに標準搭載されていることとは、あまり関係がないかと思います。
ただ、「現在の大部分のクライアント環境がWindowsとIEのような、
拡張子なども頼りにして、ヘルパアプリケーションを起動するものばかりなので、
問題が起こることは少ない」と、言われるのなら、それには同意いたします。
0012デフォルトの名無しさんNGNG
>>10
SQLでソートすれば?
0013デフォルトの名無しさんNGNG
>>12
SQL 発行後にソートしたいのです。
0014デフォルトの名無しさんNGNG
>>13
じゃあな、JDBCレベルじゃ無理だから、O/RマッピングとHibernateで調べてみ。
0015デフォルトの名無しさんNGNG
すいません、クラスの関連について質問なのですが、
ヘッダークラスと明細クラスがあった場合に、

�@ヘッダークラスに明細クラスの配列を保持
�A各明細クラスにヘッダークラスを保持

一般的にどちらの設計がスマートなんでしょうか?
どなたかご教授下さい。
0016デフォルトの名無しさんNGNG
�@
0017デフォルトの名無しさんNGNG
恐れなく機種依存文字を使う兵ですね
0018デフォルトの名無しさんNGNG
>>15
必要に応じて。
っつか、1は必要だろ。
0019デフォルトの名無しさんNGNG
>>15
2.のような設計にする奴って明細の参照をどこで管理してるのか気になる
MeisaiManagerとかw
0020デフォルトの名無しさんNGNG
>>13
なんで?
0021デフォルトの名無しさんNGNG
こんにちは

StringBuffer sb = new StringBuffer();
char[] recvR = new char[64];

try {
FileReader fr = new FileReader("D:\\java\\ + str + ".txt");
while(-1 != fr.read(recvR)) {
sb.append(recvR);
}
}catch(Exception e) {
//System.out.println(e.getMessage());
}


こうやって、ファイルからreadすると、
最後のファイルデータを読み込む際のデータは64k以下となって、recvRに受信されるデータは中途半端になりますけども、
そのあまった部分に前受信したデータが入って、今受信したデータの後に、前に受信したデータがのこったrecvRになってしまいます。
このバグを解決する方法を教えてください。
002221NGNG
修正

誤)FileReader fr = new FileReader("D:\\java\\ + str + ".txt");

正)FileReader fr = new FileReader("D:\\java\\" + str + ".txt");
0023デフォルトの名無しさんNGNG
>>21
http://java.sun.com/j2se/1.4/ja/docs/ja/api/java/io/Reader.html#read(char[])
> 戻り値:
> 読み込まれた文字数。ストリームの終わりに達した場合は -1
002421NGNG
>>23
while(-1 != fr.read(recvR)) {

-1は判定として入れてます。
0025デフォルトの名無しさんNGNG
>>24
読み込まれた文字数が帰ってきた場合は捨ててるけどね
002621NGNG
>>25
解決しました
ありがとうございました
0027デフォルトの名無しさんNGNG
>20
特定店舗で集計するSQLの後
最近のデータとかTop10、Worst10
特定範囲を集計しなおしたりとか
特定条件のデータだけ抽出しなおしたり
他にもいろいろといっぺんにするからです。
0028デフォルトの名無しさんNGNG
>>27
普通はそのたびに適切なSQLを毎回発行するんじゃないのか?
0029デフォルトの名無しさんNGNG
>>27
馬鹿
0030デフォルトの名無しさんNGNG
>普通はそのたびに適切なSQLを毎回発行するんじゃないのか?
ですか
可能だったものは可能でしたので、、、
まあSQLは嫌いではないです。

ですが後学のために
JavaのArraysを使う方法とかも勉強すること
と書かれていますのでADOのrs.Sortとするのと同じことを実現する
方法を教えていただけないでしょうか?

O/RマッピングとHibernateですが
Googleで検索してみましたが
M$の世界では見たこともない単語が大量に入っていて
今のところよくわかりません。
0031デフォルトの名無しさんNGNG
人は成長してこそ生きる価値あり

お前は価値無し
0032デフォルトの名無しさんNGNG
>>30
解決のためのキーワードを言う。あとはググれ。

Collections#sort
Comparator
TreeSet
TreeMap
Comparable
0033デフォルトの名無しさんNGNG
>>30
とりあえずO/Rマッピングなんかやらなくてもいい。

ResultSetのデータを全部別のオブジェクトのリストに詰めなおしてsortすれ
まずはそこからだ
0034デフォルトの名無しさんNGNG
abstract型クラスについて教えてください。

・abstractクラスを作ってその中にabstractメソッドを
 一つも作らなかったとして、当クラスのサブクラス作成
 時に何か一つのメソッドのオーバーライド強制がされる
 という規則があるのでしょうか?もしこの規則がないと
 するとHttpServletクラスのAPIリファレンスが理解で
 きないのでよろしくお願いします。

・abstractクラス内でprivateなメソッドは宣言すること
 (しても意味なさそうだけど)は出来ますか?
0035デフォルトの名無しさんNGNG
>>33
ふーん。Java って不便だな。思想ばかり高いのはやっぱりだめだな。
0036デフォルトの名無しさんNGNG
>>34
やってみりゃいいだろ?
なんでやりもしないで聞くんだよ。そこでもう成長するチャンスを放棄してるんだって。
やってみて分かんないことがあったら、どうしてこうなるの?って機器に来い。
それすら自分で調べてたほうがいいくらいだ。
最も成長する気がないなら答えてもいいけど。
0037デフォルトの名無しさんNGNG
ここは学校じゃないんだから成長とかしょーもないこと言うな。
変な奴は放置しとけ。
0038デフォルトの名無しさんNGNG
>>36
別に自分でコーディングして調べたって、人に聞いたって
成長には関係ない。知っているなら教えてやればいいじゃ
ないか。めんどくさいなら、めんどくさいと言うか放置す
るだけだろ。自分がめんどくさいだけなのに"お前のため
を思って言わない"とか言ってしまうのを"オタメゴカシ"
という。
0039デフォルトの名無しさんNGNG
>>36
Javaやるのにコーディングなんか必要ない。
って言うかコーディングなんか無駄だろ?
はっきり言うが、机上の空論が一番お似合いな言語のポジション独占中だろ。
0040デフォルトの名無しさんNGNG
J2SEダウンロードしたら「Java勉強中」って充分言い張れる。
インストールすら必要ない。
まさに、ノータッチデプロイメントだ。
0041デフォルトの名無しさんNGNG
>>35
楽する方法なんかいくらでもある。問題は基本が分かった上で使うかどうかだ。
0042デフォルトの名無しさんNGNG
>>38
わざわざ下らんことを言ってやらなくても放置すりゃいいんだろ。
自分は言うけど人には言うなってか。
0043デフォルトの名無しさんNGNG
>>42
わからないなら黙っとけってことだろ。
せめてインストールくらい済ませてから偉そうにしろってこった。
0044デフォルトの名無しさんNGNG
>>38
いやその前に自分がめんどくさいだけで自分でやらずに人に聞く、
"怠慢"というんじゃないのか?
0045デフォルトの名無しさんNGNG
>>44
自分でやって確かめるというのがそもそも間違いなんだよ。
お前、何もわかってないだろ?
0046デフォルトの名無しさんNGNG
だから怠慢は放置しろってことだろ。
0047デフォルトの名無しさんNGNG
今日中に1000行ったら、みんなでJavaオフしようよ。
0048デフォルトの名無しさんNGNG
Collections#sort
Comparator
TreeSet
TreeMap
Comparable

キーワードありがとうございます。
脳内鉢巻を締めて
とりあえずグーグルで検索したり本を参照したりしてます
見たこともない単語が所々にあって
読んでて眠ってしまいそうですが
がんばって読んでます。
0049デフォルトの名無しさんNGNG
ここまで読んでわかったこと。
このスレには>>34の問いに答えられる人間は居ないw
DLしただけで、プログラマになれるなんて素晴らしい言語ですねw
0050デフォルトの名無しさんNGNG
オフはやっぱりJavaだけに茶でもすすりながらやるんすか
0051デフォルトの名無しさんNGNG
じゃあ、自分で試せばわかることではあるが、
何の義理もない俺がわざわざ答えてやろう。

34 :デフォルトの名無しさん :04/09/11 14:11:31
abstract型クラスについて教えてください。

・abstractクラスを作ってその中にabstractメソッドを
 一つも作らなかったとして、当クラスのサブクラス作成
 時に何か一つのメソッドのオーバーライド強制がされる
 という規則があるのでしょうか?もしこの規則がないと
 するとHttpServletクラスのAPIリファレンスが理解で
 きないのでよろしくお願いします。

そんな規則はない。

・abstractクラス内でprivateなメソッドは宣言すること
 (しても意味なさそうだけど)は出来ますか?

できる。意味はある。

以上。

0052デフォルトの名無しさんNGNG
こうして、煽れば答えてくれると思っちゃうんだろうな。
0053デフォルトの名無しさんNGNG
怠慢な34のためにわざわざ回答してやったぞ?
0054デフォルトの名無しさんNGNG
まあ取りあえずabstractがどういうことかちゃんと理解しろってこった。
0055デフォルトの名無しさんNGNG
>>51
嘘教えてんじゃねーよw
0056デフォルトの名無しさんNGNG
>>55
ちなみに、どれが嘘でしょう?
0057デフォルトの名無しさんNGNG
>>56
怠慢な奴だな・・・
0058デフォルトの名無しさんNGNG
じゃー、俺も答えるか。

>>34
> abstract型クラスについて教えてください。
> ・abstractクラスを作ってその中にabstractメソッドを
>  一つも作らなかったとして、当クラスのサブクラス作成
>  時に何か一つのメソッドのオーバーライド強制がされる
>  という規則があるのでしょうか?もしこの規則がないと
>  するとHttpServletクラスのAPIリファレンスが理解で
>  きないのでよろしくお願いします。

理解できないのは、頭が弱すぎる。
勝手に勘違いした前提で話をすることが、そもそもの間違いだ。

> ・abstractクラス内でprivateなメソッドは宣言すること
>  (しても意味なさそうだけど)は出来ますか?

しても意味なさそうと思えるお前が分からん。
0059デフォルトの名無しさんNGNG
>>56
まず、自分で試してみろ。
じゃないと怠慢だと思われても仕方ないぞ。
0060デフォルトの名無しさんNGNG
>>59
試すってなんだよ… 仕様調べろよ。怠慢な奴だな。
0061デフォルトの名無しさんNGNG
>>60

>>36
0062デフォルトの名無しさんNGNG
ここまで読んでわかったこと。
Javaは仕様を理解することより、動かして確かめることが大切。
0063デフォルトの名無しさんNGNG
俺は調べたし試しもしたが、>>51は正しいぞ?
0064デフォルトの名無しさんNGNG
プログラミング言語って割とそーゆーもんじゃ。
0065デフォルトの名無しさんNGNG
>>63
どこをどう調べたんだ?
脳内か?
0066デフォルトの名無しさんNGNG
前スレにもいたよな。理由は言わずにただ叩くだけで、結果的にくだらんレスでスレを伸ばしてる奴。
0067デフォルトの名無しさんNGNG
単に >>51 が本当に間違ってないか確かめたいだけなんでは?
0068デフォルトの名無しさんNGNG
そうだな。
>>63は、理由を言ったほうがいいな。
0069デフォルトの名無しさんNGNG
えらく盛り上がってますね(w
0070デフォルトの名無しさんNGNG
>>63
とりあえず試したコードを晒してよ。
0071デフォルトの名無しさんNGNG
今からコード書くんじゃないの?
ゲラゲラ
0072デフォルトの名無しさんNGNG
こんなんでいいんじゃね。
abstract class C{
private void say(){ System.out.println("say");}
public void hello1(){System.out.println("hello1");}
public void hello2(){say();}
}

class D extends C{

}

public class hello{
public static void main(String[] args){
D d = new D();
d.hello1();
d.hello2();

}
}
0073デフォルトの名無しさんNGNG
仕様どおりだから。
やってみても想定通りになるから。
他に何を試せばいい?
>>67が正解なのかな…
0074デフォルトの名無しさんNGNG
>>72
それじゃダメなんじゃないの?
0075デフォルトの名無しさんNGNG
>>74
なんで?
0076デフォルトの名無しさんNGNG
>>74
自信がないなら出しゃ張るな
0077デフォルトの名無しさんNGNG
>>75
そんなこともわからないで(ry
0078デフォルトの名無しさんNGNG
だから反論する時は理由書いた方がいいぞ。
0079デフォルトの名無しさんNGNG
>>70
前者
abstract class SuperClass { public void method(){} }
class SubClass extends SuperClass { } //method を上書きしてない

後者
abstract class Hoge { private void method(){} }

コンパイラが言語仕様に準拠してるかはまた別問題なので自分で調べてね
0080デフォルトの名無しさんNGNG
俺も調べたし試したのだがなぜ51が間違っているのか本気でわからん。
誰か教えて。
0081デフォルトの名無しさんNGNG
>>80
とりあえず試したコードを晒してよ。
0082デフォルトの名無しさんNGNG
俺もこんなコード書いたが、コンパイル通るぞ。
public abstract class Test {
  private void hoge() {
  }
  public void hage() {
  }
}

public class Test2 extends Test {
}

サブクラスでは何もオーバーライドしてないし、
abstractクラスにはprivateメソッドも実装できる。
0083デフォルトの名無しさんNGNG
>>79ばか?
008482NGNG
コンパイル通らなかった・・・orz
008582だけど ◆lJJjsLsZzw NGNG
>>84
騙るのやめれ
0086デフォルトの名無しさんNGNG
なんか必死に煽ってる奴いるけど、>>34本人か?
怠慢とか言われて逆ギレしてんのか?
0087デフォルトの名無しさんNGNG
>>83
お前はきっと>>79の言ってる意味を勘違いしてる。
っていうか何で>>79が>>70に言ってるのか良く分からんが…
0088デフォルトの名無しさんNGNG
>>79
あー、ごめん >51 って回答してる香具師のほうか。
>51 を間違ってるとか言ってる香具師は釣りだろ。
0089デフォルトの名無しさんNGNG
おまえら全員、茶でも飲んでもちつけ。(´・ω・`)つ旦
0090デフォルトの名無しさんNGNG
ごめん、>>79が>>70に言ってるってごくあたりまえの流れだな、なんかボケてた。
0091デフォルトの名無しさんNGNG
な、>>34みたいな変態は放置しておくのが一番なんだって。
「怠慢だ」とか「成長したけりゃ」とか言うとこんなことに・・・
0092デフォルトの名無しさんNGNG
で、



見事に釣られまくったわけだwww
0093デフォルトの名無しさんNGNG
取りあえず、>>51と>>72が間違っていると言う理由を言ってくれ。
0094デフォルトの名無しさんNGNG
本気に見えるのは気のせいか?
0095デフォルトの名無しさんNGNG
もう終わり?
どうしてJavaすれって荒れるんだろ?
お前ら全員馬鹿?
0096デフォルトの名無しさんNGNG
はいはい。
0097デフォルトの名無しさんNGNG
おい、>>34 、大漁で良かったね。
0098デフォルトの名無しさんNGNG
>>95
煽り能力採点結果: 2点
0099デフォルトの名無しさんNGNG
もう100近いじゃねーか。
お前ら一体何やってんだよ?
35で、答えてやればそれで済むことだったんじゃないのか?
0100デフォルトの名無しさんNGNG
100!
このスレ終了
0101デフォルトの名無しさんNGNG
>>99
答えても>>55みたいなことになるから放置が一番。
0102デフォルトの名無しさんNGNG
>>99それですんじまったら面白くねーじゃね〜か。
0103デフォルトの名無しさんNGNG
>>101
わからないからって
すぐそうやってごまかすw
0104デフォルトの名無しさんNGNG
変態がまだいるな。
0105デフォルトの名無しさんNGNG
>>104
おまえが・・・な。
0106デフォルトの名無しさんNGNG
痴呆は放置
0107デフォルトの名無しさんNGNG
>>99
質問して即回答。そんなんじゃツマラン。
的確なやりとりを望むなら Java普及委員会や @IT に逝けばいい。
0108デフォルトの名無しさんNGNG
で、結局>>34が叩かれて逆ギレしたのか?
それとも>>55が後に引けなくなって釣りということにしたのか?
0109デフォルトの名無しさんNGNG
>>107
調べてすぐわかるようなくだらん質問はさっさと終わらして欲しい。
0110デフォルトの名無しさんNGNG
>>108
両方だろうね。
0111デフォルトの名無しさんNGNG
>>11
確かに、昔LinuxでJavaWebStartを動かすようにするにはちと面倒な
ことやらされたがな

が、Windowsではどうってこともねえな
0112デフォルトの名無しさんNGNG
で、>>34はどこ行った?質問して答えてもらったのにお礼も言わずにトンズラか?
0113デフォルトの名無しさんNGNG
>>112
Java厨は、黙って質問に答えてればいいんだよ!
お礼とかウザイこと述べんな!ボケ!
0114デフォルトの名無しさんNGNG
>>113
逆ギレした>>34タソでつか?
011534NGNG
知らない間にこんなにレスが進んでいるとは思わなかったです。
皆さん回答ありがとうございます。

1番目の質問はただの勘違いでした。無意味なこと聞いてすみません。

2番目の質問についてですが、abstractクラスでprivateメソッドが作る
意味というのはサブクラス作成の際にコピペオーバーライド(中身を替えない
オーバーライド)をわざとさせる目的で、そのコピペのフォームとして使わせる
というのが正しいのでしょうか?
0116デフォルトの名無しさんNGNG
>>100突破記念AGE!
0117デフォルトの名無しさんNGNG
>>115
いまさら白々しい・・・・
0118デフォルトの名無しさんNGNG
>>115コピペオーバーライド(中身を替えないオーバーライド)をわざとさせる目的
な、なにを言ってんですか??
0119デフォルトの名無しさんNGNG
普通にprivateを使いたい場合と同じように使うだけ。
abstractだとprivateの使い方が変わるって何で思う?
0120デフォルトの名無しさんNGNG

/|         |  |_____ΦΦΦΦΦΦΦΦΦΦΦ||ΦΦΦ
  |         |  | ̄ ̄ ̄ /|                    ||
  |         |  |   / /|TTTTTT   TTTTTTTTTT||TTTTT
  |        /\ |  /|/|/|^^^^^^ |三三| ^^^^^^^^^^^||^^^^^^^
  |      /  / |// / /|
  |   /  / |_|/|/|/|/|
  |  /  /  |文|/ // /
  |/  /.  _.| ̄|/|/|/         Λ_Λ
/|\/  / /  |/ /           (___)   おお!間に合ったか!
/|    / /  /ヽ            /〔 祭 〕〕つ
  |   | ̄|  | |ヽ/l            `/二二ヽ
  |   |  |/| |__|/   Λ_Λ     / /(_)
  |   |/|  |/      ( ´∀`)   (_)    Λ_Λ     よーし!ガンガルぜ〜!
  |   |  |/      // /  ^ ̄]゚        (`   )
  |   |/        ゚/ ̄ ̄_ヽ         ⊂〔〔 祭 〕
  |  /         /_ノ(_)          ┌|___|
  |/          (__)             (_ノ ヽ ヽ
/                                (_)
0121デフォルトの名無しさんNGNG
>>120 完全に乗り遅れだ。どうでもいいが
0122デフォルトの名無しさんNGNG
楽しかったです。
こういうプチ祭り、時々やりたいですね。
皆さんどうもありがとうございました。
0123デフォルトの名無しさんNGNG
>>121
  |         |  |
  |         |  |_____
  |         |  | ̄ ̄ ̄ /|
  |         |  |   / /|
  |        /\ |  /|/|/|
  |      /  / |// / /|
  |   /  / |_|/|/|/|/|
  |  /  /  |文|/ // /     ∧∧
  |/  /.  _.| ̄|/|/|/      /⌒ヽ)         ニィタン…オナカスイタァ…
/|\/  / /  |/ /       [ 祭 _]    ∧∧
/|    / /  /ヽ         三____|∪   /⌒ヽ)    もう少しガマンしろ。
  |   | ̄|  | |ヽ/l         (/~ ∪    [ 祭 _]      次の祭り会場でヤキソバ買ってやるから…
  |   |  |/| |__|/       三三      三___|∪
  |   |/|  |/         三三       (/~∪
  |   |  |/         三三      三三
  |   |/                    三三
  |  /                    三三
  |/                    三三
/
0124デフォルトの名無しさんNGNG
>>115
おまい、大人気だな、おい。

残念!!!
2 つ目も、「無意味なこと聞いてすいません」 斬り!
012534NGNG
public class Main{
public static void main(String[] args) {
SubTekito sub = new SubTekito();
sub.print1();
}
}

abstract class Tekito{
protected void print1(){
System.out.println("111111111");
this.print2();
}
private void print2(){
System.out.println("222222222");
}
}

class SubTekito extends Tekito{
}

実行結果:
111111111
222222222

↑こんな使い方を考えてみました。とんちんかんなことばかり聞いて
 本当にごめんなさい。
0126デフォルトの名無しさんNGNG
まあ、使い方は置いといて、別に普通に使うときは使う。
ということは分かった?
0127デフォルトの名無しさんNGNG
>>125
それって >>115 の2番目となんか関係あるのか?
0128デフォルトの名無しさんNGNG
>>125
まー、そういうことだ。
0129デフォルトの名無しさんNGNG
単に一部のメソッドがabstractなだけで、
その他のメソッドは普通どおりなんだから、
privateメソッドも普通に使うっていう単純な話で、
これだけスレがのびるってどういうわけよ?w
0130デフォルトの名無しさんNGNG
>>127
print2()というメソッドはTekitoという抽象クラス内でしか使えない。
けれども
mainメソッドを持つMainクラスがSubTekitoクラスのインスタンスを作成
することでprint2()メソッドの実行結果を得ることができたのがわかるでしょ?
0131デフォルトの名無しさんNGNG
>>129その話ではあまり伸びてない気が…
0132デフォルトの名無しさんNGNG
みんなどうしたんだ、急にやさしくなって…
0133デフォルトの名無しさんNGNG
>>130
>>125 のコードが >>115 の
> 2番目の質問についてですが、abstractクラスでprivateメソッドが作る
> 意味というのはサブクラス作成の際にコピペオーバーライド(中身を替えない
> オーバーライド)をわざとさせる目的で、そのコピペのフォームとして使わせる
> というのが正しいのでしょうか?

となにか関係があるのか? と聞いているんだけど。
0134デフォルトの名無しさんNGNG
http://backno.mag2.com/reader/Back?id=0000000122
0135デフォルトの名無しさんNGNG
>>133
要はですね。>>34はabstractクラスのprivateメソッドは存在しても
使う機会がないと思っていたが使う例があったという話。
0136デフォルトの名無しさんNGNG
>>111
ん、なにか勘違いしていないか?
>>11
http://pc5.2ch.net/test/read.cgi/tech/1093267533/698
http://pc5.2ch.net/test/read.cgi/tech/1093267533/954
が論じているのはサーバの設定の話ではないの?
それとも俺のほうが勘違いしてる?

クライアントの設定なら、WindowsでもIE以外のブラウザでは、
そのLinuxと同じ手間の設定が必要にはならないの?
0137デフォルトの名無しさんNGNG
>>135
いやさ、>>34 と >>125 だけだったら、それで理解できるんだか、
だとすると >>115 の
> 2番目の質問についてですが、abstractクラスでprivateメソッドが作る
> 意味というのはサブクラス作成の際にコピペオーバーライド(中身を替えない
> オーバーライド)をわざとさせる目的で、そのコピペのフォームとして使わせる
> というのが正しいのでしょうか?
ってのはなんだったのかが良くわからないんだけど。
0138デフォルトの名無しさんNGNG
忘れたれよ…
0139デフォルトの名無しさんNGNG
うまく煽れば100レスブースト出来ることが証明された。
これを自分のスレに応用して人気スレのように見せかけようと思う。
0140デフォルトの名無しさんNGNG
さらに、900以降は1000を狙えるポジションということだ。
0141デフォルトの名無しさんNGNG
>>139
おまいのスレどこ?
0142デフォルトの名無しさんNGNG
http://pc5.2ch.net/test/read.cgi/linux/1039282447/l50
ここ
0143デフォルトの名無しさんNGNG
>>142
過疎っていうより死んでるな
0144デフォルトの名無しさんNGNG
>>143
Javaテクノロジーで生き返らせる。
0145デフォルトの名無しさんNGNG
クライアント環境におけるJavaWebStartについてなら、
LinuxにしてもWindowsにしても、気のきいたブラウザ、
たとえばMozillaなどでは、サーバがきちんとMIMEタイプを送信してきたのであれば、
たとえ、事前にクライアント側でヘルパアプリケーションの設定をしていなくても、

「このMIMEタイプをどのように扱えばいいか私(Mozilla)は知りません。
私は、このファイルをどう扱えばいいですか?」

とダイアログを表示して、ユーザに尋ねてくるので、
そのダイアログを用いて、javawsの実行ファイルを指定してあげるだけです。
それ以外には手間のかかるような設定は必要ありません。

IEやMozilla以外の、あまり気のきかないブラウザにおいては、
設定はもう少々複雑になることでしょう。

またKDEやGNOMEなどの統合デスクトップ環境によっては、
ブラウザのみならず、それらの統合デスクトップ環境自身が、
MIMEタイプやファイル拡張子の設定を保持し、
その設定を特定のブラウザに参照させる場合もあります。

ちなみに、MacOSXにおいては、これらクライアント側でのJavaWebStartの設定は、
Windows,IEの組合せ以上に手軽になっています。
OS自体にデフォルトで、JavaVMもJavaWebStartもインストールされているうえに、
ヘルパアプリケーションなど、上記の設定がすでになされているので、
ユーザは何も設定をする必要がないのですから。

>>136
勘違いというよりも、クライアント側の設定の話と、サーバ側の設定の話が
並列に進められているだけではないでしょうか。
0146デフォルトの名無しさんNGNG
【JavaFive】C#からJ2SE5.xへ進化【TigerShot】
http://pc5.2ch.net/test/read.cgi/tech/1094891986/
0147デフォルトの名無しさんNGNG
馬鹿な質問で申し訳ないのですが、
以下のような計算式は

int x=0
x=5+7+9+10;

コンパイル?時、計算式を勝手に計算結果にしてくれないんでしょうか?
x=31; のように。
0148デフォルトの名無しさんNGNG
>>147
全然Javaの話じゃねーな
そんなのはコンパイラ依存
0149デフォルトの名無しさんNGNG
すいませんでした。ありがとうございます。
0150デフォルトの名無しさんNGNG
相変わらずJavaスレは楽しいですね
いつまでたっても成長がないところがすばらしいです
0151デフォルトの名無しさんNGNG
>>148
嘘つけ。
0152デフォルトの名無しさんNGNG
文字コードEUC-JPの文字列を16進数で表示したいのですが
どうすればいいのでしょうか。
下記のC言語のコードと同じことをやりたいのですが。

#include <stdio.h>
int main() {
int i;
unsigned char str[] = "2ちゃんねる";
for (i = 0; i < strlen(str); i++) {
printf("%02X ", str[i]);
}
printf("\n");
return (0);
}

出力結果
A3 B2 A4 C1 A4 E3 A4 F3 A4 CD A4 EB
0153デフォルトの名無しさんNGNG
>>151はコンパイラが何かをわかっていないド素人
0154デフォルトの名無しさんNGNG
麻宮騎亜のマンガ
0155デフォルトの名無しさんNGNG
>>153
コンパイラってなんでつか?
0156デフォルトの名無しさんNGNG
>>153
どういう意味か分からんが、
Javaって言語仕様レベルで定数式の扱い規定されてなかったっけ?
0157デフォルトの名無しさんNGNG
>>155
麻宮騎亜のマンガ
0158デフォルトの名無しさんNGNG
>>157相手にされないからってしつこいのが哀れみを誘ってるぞ。
0159デフォルトの名無しさんNGNG
アニメーションGIFを表示する時の、ImageReaderで
各ページの相対XY座標を取得する方法を教えてください。
1ページ目がフルサイズCGで、2ページ目以降が部分CG
だと、その部分CGのXY位置をどこにすればいいのか
分からないのです。
0160デフォルトの名無しさんNGNG
>>158
麻宮騎亜のマンガ
0161デフォルトの名無しさんNGNG
>>152
J2SE 5.0(旧1.5)以降であれば printf 使えるので

byte[] array = "2ちゃんねる".getBytes("EUC-JP");
for (int i = 0; i < array.length; i++) {
 System.out.printf("%02X", array[i] & 0xFF);
}
System.out.println();
0162デフォルトの名無しさんNGNG
>>148と>>151どっちが嘘なんですか?
0163デフォルトの名無しさんNGNG
>>156
定数式の扱いは規定されてて、
浮動小数点数型の演算は strictfp 宣言無しで FP厳密でなければならないとか
文字列の定数式は intern() して一意なインスタンスを共有するとか書いてあるけど
コンパイル時に定数式を計算して値に置き換えろ、って規定は無かったと思われ。
勘違いだったらスマソ

でもまぁ、普通のコンパイラは定数式を値に置き換えると思うけど。
0164デフォルトの名無しさんNGNG
>>163
今Javapで逆汗してみたら値に置き換えていないね。
驚きました。
0165デフォルトの名無しさんNGNG
>>164
C:\temp\test>copy Test.java con
public class Test {
public static void main( String[] args ){
int x = 0;
x = 5+7+9+10;
System.out.println(x);
}
}

1 個のファイルをコピーしました。

C:\temp\test>javac Test.java

したのを javap したら以下のようになった。
0166デフォルトの名無しさんNGNG
>>164
そりゃだって変数だもん。
値に置き換えてるようだったら窓から投げ捨てる。
final修飾子が付いてりゃ値に置き換えてくれると思うがね。
0167デフォルトの名無しさんNGNG
C:\temp\test>javap -c Test
Compiled from "Test.java"
public class Test extends java.lang.Object{
public Test();
Code:
0: aload_0
1: invokespecial #1; //Method java/lang/Object."<init>":()V
4: return

public static void main(java.lang.String[]);
Code:
0: iconst_0
1: istore_1
2: bipush 31
4: istore_1
5: getstatic #2; //Field java/lang/System.out:Ljava/io/PrintStream;
8: iload_1
9: invokevirtual #3; //Method java/io/PrintStream.println:(I)V
12: return

}
ちゃんと値に置き換えてるように見えるけど。
0168デフォルトの名無しさんNGNG
C:\temp\test>javap -c Test
Compiled from "Test.java"
public class Test extends java.lang.Object{
public Test();
Code:
0: aload_0
1: invokespecial #1; //Method java/lang/Object."<init>":()V
4: return

public static void main(java.lang.String[]);
Code:
0: iconst_0
1: istore_1
2: bipush 31
4: istore_1
5: getstatic #2; //Field java/lang/System.out:Ljava/io/PrintStream;
8: iload_1
9: invokevirtual #3; //Method java/io/PrintStream.println:(I)V
12: return

}
ちゃんと値に置き換えてるように見えるけど。
0169166NGNG
ゴメン。ちょっと勘違い。
0170デフォルトの名無しさんNGNG
>>168
final修飾子つけたんですか?





ゲラゲラ
0171デフォルトの名無しさんNGNG
>>167
x = 0; は消えてないみたいだけど、
x = 5+7+9+10; は x = 31; 相当になってるみたいね。
0172デフォルトの名無しさんNGNG
>>170
       (  _,, -''"      ',             __.__       ____
   ハ   ( l         ',____,、      (:::} l l l ,}      /      \
   ハ   ( .',         ト───‐'      l::l ̄ ̄l     l        │
   ハ   (  .',         |              l::|二二l     |  ハ こ  .|
       ( /ィ         h         , '´ ̄ ̄ ̄`ヽ   |  ハ や │
⌒⌒⌒ヽ(⌒ヽ/ ',         l.l         ,'  r──―‐tl.   |  ハ つ │
        ̄   ',       fllJ.        { r' ー-、ノ ,r‐l    |  ! め │
            ヾ     ル'ノ |ll       ,-l l ´~~ ‐ l~`ト,.  l        |
             〉vw'レハノ   l.lll       ヽl l ',   ,_ ! ,'ノ   ヽ  ____/
             l_,,, =====、_ !'lll       .ハ. l  r'"__゙,,`l|     )ノ
          _,,ノ※※※※※`ー,,,       / lヽノ ´'ー'´ハ
       -‐'"´ ヽ※※※※※_,, -''"`''ー-、 _,へ,_', ヽ,,二,,/ .l
              ̄ ̄ ̄ ̄ ̄       `''ー-、 l      ト、へ
0173デフォルトの名無しさんNGNG
>>170
final つけたら 2行目の代入文でコンパイル時エラー出ると思うけど。
ソースは >>165 にあるから、自分で試してみれば?
0174デフォルトの名無しさんNGNG
× final つけたら 2行目の代入文でコンパイル時エラー出ると思うけど。
○ final つけたら 2つ目の代入文でコンパイル時エラー出ると思うけど。
0175デフォルトの名無しさんNGNG
文字列に関しては定数式によって生成される文字列はリテラルと同様に
扱う旨、規格に明記されている。でも整数リテラル等に関して記述がない
からこのあたりを行うかどうかはコンパイラの実装依存ってことでOK?
0176デフォルトの名無しさんNGNG
>>175
文字列も intern しろとは書いてあるが、
実行時に連結してはいけないとか、
コンパイル時に連結しなければならないと書いてないんだけどね。

整数リテラルに関して記述が無いってのが >>163 や >>175 の見落としだって可能性もあるし。
0177デフォルトの名無しさんNGNG
どうやらそうみたいね…
caseラベルとかでの定数式の扱いから、
定数式はコンパイル時に確定しないといけないんだと思ってた。
# いや、確定はするんだけど、ごめん、うまくいえないな…
0178デフォルトの名無しさんNGNG
あうち、>>177は>>175に対して書いたんだけど…
>>176の可能性もまぁあることはあるわな。
0179デフォルトの名無しさんNGNG
>>176 文字列に関してはコンパイル時に評価。
Strings computed by constant expressions (§15.28) are
computed at compile time and then treated as if they were literals.
0180デフォルトの名無しさんNGNG
垂直同期をとった画面更新をしたいんだけど、

GraphicsEnvironment ge = GraphicsEnvironment.getLocalGraphicsEnvironment();
GraphicsDevice gd = ge.getDefaultScreenDevice();
DisplayMode dm = gd.getDisplayMode();
int rr = dm.getRefreshRate();
if (rr == DisplayMode.REFRESH_RATE_UNKNOWN) rr = 60;

new java.util.Timer().scheduleAtFixedRate(new TimerTask(){
public void run(){
repaint();
}
}, 0, 4000 / rr);

だとうまくいかないっす。
どうすりゃいいんすか?
0181デフォルトの名無しさんNGNG
>>179
それって仕様なのか例なのか、わからんトコロに書いてあるので微妙。

例えば同じところで System.out.print((hello == ("Hel"+lo)) + " "); が false になってるけど、
"Hel" + lo(値は"lo") が最適化の結果 true になってはいけないとは思えないし。
0182デフォルトの名無しさんNGNG
>>180
それどこが垂直同期とってるんだ?
時間管理してるだけじゃないのか?

垂直同期取るためにはフルスクリーンにしてflipするべし
それ以外は垂直同期取れないのでタイマ管理が必要になる

ついでにリフレッシュレートは確実にいじれないので
フルスクリーンモードだからといってそのまま使わずに
垂直同期周波数をチェックして時間管理を入れるべし

垂直同期+時間管理だとティアリングは発生しないものの、
(おもに2Dゲームでは)がたつきが気になると思う
どうせウインドウモードではティアリング発生するのだから
たとえば60Hz以外と判断したときは垂直同期取らないとか
オプションで自由にいじらせるとかそういった考慮が必要
0183デフォルトの名無しさんNGNG
>>181
今回の例は冒頭に
This example illustrates six points:
とあるように、ある規則をを例示するための
例であることが明示されているから、ただの
一実装例だと判断するのは間違いでしょ。
http://java.sun.com/docs/books/jls/second_edition/html/lexical.doc.html#101083

あと、あの言語仕様を通して読むと、ある例が出され、その範囲をはみ出す例外が
存在するときは必ず明記されているから、それがないときはまあmustと
考えていいとおもう。一部のRFCみたいにmust/should/mayの使い分けが
強制されてないから文脈で判断するしかない曖昧さは残るけどね。
0184デフォルトの名無しさんNGNG
>>183
しかし、その部分以外には
> 実行時に連結してはいけないとか、
> コンパイル時に連結しなければならない
と読める部分が無いのは相当弱いと思われ。

例証でしか書かれていない部分まで「言語仕様」として読んでよいものか微妙。
0185デフォルトの名無しさんNGNG
>>181
|例えば同じところで System.out.print((hello == ("Hel"+lo)) + " "); が false になってるけど、
|"Hel" + lo(値は"lo") が最適化の結果 true になってはいけないとは思えないし。
おいおい... さすがにJavaの規格としてこの手の非互換性を許す
ようなことはないだろ...
言葉遊びや文章の揚げ足取りもいいけど、
なんのための文章がかかれているかってことはよみとってやれよ
0186デフォルトの名無しさんNGNG
>>185
いや、その部分はさらに微妙なんだが。

System.out.print((hello == ("Hel"+lo)) + " "); が false になる部分の説明は
> Strings computed at run time are newly created and therefore distinct.
としか書いてなくて、"Hel" + lo は実行時に計算しなければならないとは一切書いてないし
他の部分にも そんな記述は無いはず。
0187185NGNG
>>186
だからね、俺がいいたいのは、どこにかいてある・書いてない
じゃなくて、その6項目がなければ181が自分でいうようにコンパイラの動作に
非互換性が生じるのよ。
で、この手の基本的なレベルで非互換性が
出るようなことはありえないだろ?だからそこは例じゃなくて仕様
が書いてあると読み取ってあげるのが普通じゃないの?
0188デフォルトの名無しさんNGNG
>>187
非互換といえば、1.3 までの javac が言語仕様に従わずに
import SimpleName; を容認してたのが
1.4 から容認しなくなったのでも非互換が生じたけど。

言語仕様というのは完全で漏れが無い事を目指して作るものだから、
書いてない事は仕様でないと考えるべきだと思われ。

もっとも、実装するときは仕様に書いてある例と同じ出力にするだろうけど。
0189デフォルトの名無しさんNGNG
俺も>>185のいうことに同意だな
コンパイラの最適化でこの例の結果が変わるとは思えない。
むしろコンパイラの仕様がこの例の通りにならなかったら単にバグでしょ
0190デフォルトの名無しさんNGNG
>>189
欠陥が有るとしたら仕様書のほうにあるんじゃないのか?
0191デフォルトの名無しさんNGNG
ぬるぽ
0192185NGNG
|非互換といえば、1.3 までの javac が言語仕様に従わずに
|import SimpleName; を容認してたのが
|1.4 から容認しなくなったのでも非互換が生じたけど。
これは実装レベルでの話で別の話。いま話しているのは
規格レベルで非互換性を許すかどうか。

|言語仕様というのは完全で漏れが無い事を目指して作るものだから、
|書いてない事は仕様でないと考えるべきだと思われ。
だから、書いてあるじゃん。あれを仕様だととらずに
ただの例だと読み取るのはそうとうアレ。
This examplesの指す範囲はあくまでもその上のコードと出力結果だろう。
例を先に出す構成は悪文だとは思うがね。
0193デフォルトの名無しさんNGNG
> System.out.print((hello == ("Hel"+lo)) + " ");

これって見ての通り、リテラル+リテラルじゃなくて、
リテラル+変数だからfalseで当たり前の例なんだよね。
0194デフォルトの名無しさんNGNG
>>193
仕様をよく読むとそれには二通りの解釈が成り立つ。
0195デフォルトの名無しさんNGNG
>>192
> 規格レベルで非互換性を許すかどうか。
いわゆる「解釈の違い」って奴ですよ。規格自体は変わらない。
0196デフォルトの名無しさんNGNG
ヌルポ
0197デフォルトの名無しさんNGNG
>>195
それは、規格に漏れがあるということであり、
㋖∠の欠陥じゃないか?
0198デフォルトの名無しさんNGNG
>>191,196
ガッ
0199デフォルトの名無しさんNGNG
>>191
ペッ
0200デフォルトの名無しさんNGNG
何とか一日で200レス達成しました。
協力してくださった皆さんどうもありがとうございます。
0201デフォルトの名無しさんNGNG
Javaは釣りネタに事欠かないなぁw
0202180NGNG
>>182
ありがとう。
フルスクリーンにしてBufferStrategy使ったらできました。
でもこれだとコンポーネントが表示されなくなるな。
垂直同期はあきらめるか。
0203デフォルトの名無しさんNGNG
結局、言語仕様を好意的に読むと、元ネタの>>165は
コンパイル時にx=31になるでFA?
0204デフォルトの名無しさんNGNG
>>201
さびしい土曜日ですね。
0205デフォルトの名無しさんNGNG
>>183
構成の話をすれば、
JLS は明示的で抽象的な仕様が書いてあって、
それから暗黙に導かれるルールが例とかで補足されるのは結構あるけど、

あの二つは先行する明示的な仕様から導くのは無理だし。
0206デフォルトの名無しさんNGNG
>>203
それは言語仕様的にはコンパイラはx=31にしても良いし、しなくても良いでFA。

今やってるのは文字列連結の定数式だけだから。
0207デフォルトの名無しさんNGNG
>>204
仕事ですが何か
0208デフォルトの名無しさんNGNG
しかし、あの例って確かに微妙だわ。
あの例をすなおに解釈すると、
hello
Other.hello
"Hel"+"lo"の演算結果というかコンパイラの最適化結果
は、同じインスタンスを指していて
"Hel"+loの演算結果
だけは、別インスタンスということになる。
で、真の値intern値は5つとも共通と、、、。
0209デフォルトの名無しさんNGNG
>>207
釣りが?
さらに寂しいね。
0210デフォルトの名無しさんNGNG
>>209
無職がうらやましいよ
0211デフォルトの名無しさんNGNG
>>210
2chで釣りするのが仕事なら、無職でもいいや。
0212デフォルトの名無しさんNGNG
>>211
釣士ですらスレの趣旨に沿って書き込んでるのに、お前はなんだ?
ん?




ていうか、俺が釣ってましたw
>>201は無関係だと思う。
0213デフォルトの名無しさんNGNG
ニートの発想って、ホント貧相

日本の代表的なニート
ttp://www.gazo-box.com/wara/img-box/img20040724044408.jpg
0214デフォルトの名無しさんNGNG
>>206
それが FA だとすると
1 + 2 だと必ずしもコンパイル時に計算しなくてもいいけど
1 + 2 + "" だと絶対にコンパイル時に計算しなきゃいけないんだよね。

なんか統一感ないね。
0215デフォルトの名無しさんNGNG
>>214
お前の頭の悪さは格別だな。
0216デフォルトの名無しさんNGNG
おれも>>214と同じように感じるよ
何か統一感ないね
というか言語仕様でコンパイラ最適化を思わせる例がでていて
ほかのリテラルに適用されないってどうよ?
0217デフォルトの名無しさんNGNG
あの、くだらない質問で申し訳ないんですけど、classloaderにdefineclass
ってあるじゃないですか。んで、それはバイト列としてバイトコードをわたせば
クラスとかができるらしいんですね。
 で、VMが現在実行中、もしくは、これはから実行されていくバイトコードを
得る事ができたら、ネットワークに投げたりして、完璧な遠隔実行とか可能
だと思うんです(性能は別として)。そんな事できるんでしょか?そういった機能
をVMにインプリメントするとか。
 defineclassはクラスを作るから、そんなんじゃなくて、実行するためバイトコードを
バシバシ渡せるメソッドとかがあれば最高。
 私の妄想でしょうか?
0218デフォルトの名無しさんNGNG
既にそういうクラスローダーあるけど?
0219デフォルトの名無しさんNGNG
servlet/jspのセッションの消滅時に処理をはさむことは
できますでしょうか?
できるとすればどのようにすればいいでしょうか?
ブラウザが閉じられたりタイムアウトしたときにログにメッセージを表示したり
したいと思ってます。
0220デフォルトの名無しさんNGNG
できる
リスナー登録
ブラウザを閉じるタイミングだとJavaScript併用かな
タイムアウトはOK
0221デフォルトの名無しさんNGNG
【Java】Apache Jakarta Commons
http://pc5.2ch.net/test/read.cgi/tech/1094954163/
0222デフォルトの名無しさんNGNG
>>219
エラーページを作るってのはどうよ?
<%@ %> 内で指定するディれくてぃぶでそういうのが遭ったと思うが
0223デフォルトの名無しさんNGNG
>>219
ログインしていないときは、
そのページでログインしているかどうかをif文で判定して、
java.util.Loggerなどでログを残しつつ
例外も投げ、
エラーページにforwardするってのもありだと思うが。
0224デフォルトの名無しさんNGNG
>>222-223
なんか的外れ・・・
0225デフォルトの名無しさんNGNG
もちつけ。
ttp://page9.auctions.yahoo.co.jp/jp/auction/k6437674
0226デフォルトの名無しさんNGNG
>>220
セッション情報をファイルに書き込むようにしたら、リスナーが呼ばれなくなったことがあってウツ。
Tomcat4.0のころだったと思うが。
今はどうなのかな。
0227デフォルトの名無しさんNGNG
>>225
死体・・・クリック注意。
0228デフォルトの名無しさんNGNG
>>225
発砲スチロールあんどラテックス製か
よくできてるな
0229デフォルトの名無しさんNGNG
実物じゃないので、逆に怖い。
本物はリアリティー優先で怖さは優先されてないからな。
0230デフォルトの名無しさんNGNG
>>217
URLClassLoader
0231デフォルトの名無しさんNGNG
>>230
>>218
ありがとうございます。

 えーと、こういった感じ(クラスとかそういう単位じゃなく)、実行中の生バイトーコードを
VMから得るメソッド、与えて実行させるメソッドってのがないかな?って思ってる
んです。知ってる方いないでしょうか?
 サードパティーとかどっかの自作クラスとかでもかまいません。
 おねがいします。
0232デフォルトの名無しさんNGNG
×バイトーコード
○バイトコード
0233デフォルトの名無しさんNGNG
DBの接続情報などを外部ファイル化するとして、
そのファイルをクラス階層に置くべきか否かで指針となるものってありますか?
0234デフォルトの名無しさんNGNG
>>233
環境に依存する情報は、クラス階層におくべきではない。
0235デフォルトの名無しさんNGNG
メソッド ×
メソッドー ○
0236デフォルトの名無しさんNGNG
クラス階層っていうのがなんのことかわからんが。
リソースにするのなら、クラスパスが通るところに置くべきだし。
0237デフォルトの名無しさんNGNG
×バイトコード
○バイトコドー
0238デフォルトの名無しさんNGNG
>>236
DBの接続情報なんかをリソースにするのはいかんだろ。
クラスパスが通るところというのは、環境依存しない情報しかおくべきではないだろう。
たとえば、メッセージリソースとかな。
0239デフォルトの名無しさんNGNG
>>231
>実行中の生バイトーコードをVMから得るメソッド
Debugger Interfaceとか。
http://java.sun.com/j2se/1.4/ja/docs/ja/guide/jpda/jvmdi-spec.html#GetBytecodes

>与えて実行させるメソッド
メソッドだけではバイトコードとしては存在できないので
適当なクラスを作ってそれのメソッドとする。
動的にクラスを作るライブラリとしてはBCELとかjavassistとか。
0240デフォルトの名無しさんNGNG
>>238
じゃあ、クラスパス通らないところにおいて、絶対パスでファイル読み込みか?
そのほうが良くないだろ。
メッセージリソースも、ロケールという環境に依存するわけだが。

クラスパスが通るところ、つまりリソースにしないとして、設定ファイルはどこに置くんだ?
レジストリ?大げさだな。
0241デフォルトの名無しさんNGNG
>>231
> 実行中の生バイトーコードをVMから得るメソッド、

Class#getResourceAsStream()

>与えて実行させるメソッドってのがないかな?って思ってる

Classオブジェクトが得られれば後はどうにでもできる。

動的に「バイトコードを作る」のなら>>239

リフレクションについてもっと調べてから出直してこい。

君に、ある程度の知識と説明能力が無けりゃ何がやりたいのかこっちがが理解できん。
0242デフォルトの名無しさんNGNG
>>240
メッセージリソースはクラス階層に置き、
環境依存パラメータは絶対パスでファイル読みということだ。
どっちもリソースにしてしまうと、複数環境へ配布するときに煩雑になるぞ。
0243デフォルトの名無しさんNGNG
>>241
1行おき、やめれ。
0244デフォルトの名無しさんNGNG
>>242
クラス階層って何だ?
たとえばclassesディレクトリ直下とかいう意味?
0245デフォルトの名無しさんNGNG
>>242
じゃあその絶対パスはソース直書きか?
さらに複数環境に対応できんな。
複数環境に配布するからこそ、クラスパスだと思うのだが。
0246デフォルトの名無しさんNGNG
>>242
おまえはクラスパスとリソースについて、勉強しなおす必要があるな。
0247デフォルトの名無しさんNGNG
相対パスで書けるじゃん
たとえば servlet.getServletContext().getRealPath("hoge") みたいに
0248デフォルトの名無しさんNGNG
>>247
Webではないアプリケーションはどうするんだ?

そんなんWebの場合はコンテナの設定ファイルが使えるから、設定ファイルの話ははっきりいって関係なかろう。
Tomcatであればデータベースの設定なんかcontext.xmlにJNDIリソース登録するわけだし。
0249デフォルトの名無しさんNGNG
>>242を好意的に解釈すると
環境依存パラメータを記述したファイルを-Dオプションで絶対パス指定するのかも知れない。
0250デフォルトの名無しさんNGNG
>>245
実行時パラメータで渡すのが吉。
複数環境ということは、当然DBの接続情報も変わるわけだが、
クラス階層にあるリソースファイルを環境単位に用意するのは、
気持ち悪いでしょ?

>>247
サーブレットなら、それでもいいね。
0251デフォルトの名無しさんNGNG
たとえばeclipseはどうやって解決してるのか?って話だろ。
0252デフォルトの名無しさんNGNG
配布先がWindows系とUnix系両方だったとすると、
やはり、実行時パラメータで渡すだろう。
そのためのバッチファイル&シェルを用意すると。
0253デフォルトの名無しさんNGNG
>>250
> クラス階層にあるリソースファイルを環境単位に用意するのは、 気持ち悪いでしょ?

なんで?
ファイルを作ることには変わりないし。
クラスパスにリソース置けばすむのに、実行時パラメータ使うのもアホらしいだろ。

っていうか、クラス階層ってなによ。クラスパスが通ったところ以外の意味があるのか?
0254デフォルトの名無しさんNGNG
>>246
文脈が読み取れないらしいな。
0255デフォルトの名無しさんNGNG
>>252
実行可能JARと同じディレクトリに置くようにしとけば十分だろが。
0256デフォルトの名無しさんNGNG
>>254
いや、クラスパスやリソースについてわかってなさそうだぞ。
0257デフォルトの名無しさんNGNG
一応確認しておくけど、ここでの設定ファイルっていうのは、環境依存パラメータのことだよね?
起動してからは書き換えられないファイル。
0258デフォルトの名無しさんNGNG
>>253
ラクかどうかの問題を言っているのではない。
クラスの外にリソースとして分けて記述したところで、
それは形式が変わっただけで、本質的には変わったわけではない。
そう感じるのだ。

「クラスパスが通ったところ」をなんというんだ?
0259デフォルトの名無しさんNGNG
>>257
そう。
0260デフォルトの名無しさんNGNG
>>247
というか、Webの場合に環境依存パラメータを、そうやってコンテキストルート以下のファイルに置くのもやっかいだ。
Webの場合の環境依存パラメータはcontext.xmlに書け。
0261デフォルトの名無しさんNGNG
>>255
それは、無名パッケージで置くということだが、
クラスと同じ場所にあるという点で、何も変わらないのだが。。
0262デフォルトの名無しさんNGNG
>>259
それであれば、クラスパスの通ったところにプロパティファイルを置くようにするのがまっとう。
なんでわざわざクラスパスが通らないところにファイル置いて、実行時パラメータでパス指定する必要があるんだか。
それにそれが本質的に変わるとは思わないんだが。

実際の用語としては「クラスパスが通ったところ」をクラスパスというのだけどね。
0263デフォルトの名無しさんNGNG
>>261
なんならディレクトリ作ればいいだろ。
何を変える必要があるんだ?
0264デフォルトの名無しさんNGNG
>>260
webなら、コンテナがあるので、そっちに任せるというのには、賛成。
では、通常のJavaアプリではどうする?
0265デフォルトの名無しさんNGNG
>>261
実行ファイルであるappli.jarと環境設定ファイルであるconfig.propertiesを同じディレクトリに置くことにどんな不都合があるのか説明きぼんぬ。
そこがわからないためにここまでの食い違いが生じてる。
config.propertiesをどこかヨソに置いて、ソース埋め込みにしろVMパラメータにしろ、絶対パスで指定することの利点と比較してね。
0266デフォルトの名無しさんNGNG
>>262
クラスパス上にあるモノは「いったん書いたらどこでも動く」べきでは?
というのが発端。

なので、環境依存情報は、クラスパス外にあるべきでは?と思ったわけだ。
0267デフォルトの名無しさんNGNG
>>264
実行jarと同じディレクトリにファイル置く。
もちろん実行jarを置いたディレクトリにクラスパスが通るように、マニフェストを記述。
0268デフォルトの名無しさんNGNG
>>266
いい着眼点だ。
最近の若い奴らは、メッセージも環境情報も同じファイルにかきやがる。
0269デフォルトの名無しさんNGNG
>>266
> クラスパス上にあるモノは「いったん書いたらどこでも動く」べきでは?

そんな「べき」はない。
どうしても環境依存するクラスを(そんなんあるなら)、環境ごとのjarにして、環境ごとに配布というのも否定するものではない。
たとえばiアプリのようなリソースの限定された環境。
JNIで環境ごとの差をネイティブライブラリに閉じることができなかった場合など。
0270デフォルトの名無しさんNGNG
>>266
環境依存パスをクラスパスで吸収して、パス文字列の環境依存もリソースローダーで吸収させるのが目的なんだから、環境設定ファイルはリソースにするべき。
そのためのリソース。
0271デフォルトの名無しさんNGNG
>>269
でも、少なくとも、上位アプリケーションのレベルでは、
それを目指すべきだと思うが。
0272デフォルトの名無しさんNGNG
>>271
クラスパスに環境依存情報置くなって?
そんなもの目指さなくていい。
なんのメリットがあるんだ?
0273デフォルトの名無しさんNGNG
>>271
とりあえず>>265に答えてくれ。
0274デフォルトの名無しさんNGNG
>>270
パス文字列の形式は吸収できるが、内容は吸収できない。
内容が語異なる場合の理由になっていませんね。
0275デフォルトの名無しさんNGNG
>>271
もちろん、環境ごとにクラスを置き換えというのは、可能な限り避けるべきだ。
0276デフォルトの名無しさんNGNG
>>274
だから別ファイルにしておけばいいだろ。
0277デフォルトの名無しさんNGNG
>>274
で、>>267のようにした場合にどんな不都合があるんだ?
0278デフォルトの名無しさんNGNG
>>265
不都合とかメリットとかの話をしているわけではないのだが。。
本来の使い方になってるの?ということ。
0279デフォルトの名無しさんNGNG
javaが「頭でっかちの言語」と言われるゆえんですね
あーたのしい。
0280デフォルトの名無しさんNGNG
Choiceのメソッドを使おうとしても、
シンボルを…と出て使えないのはなぜですか。
本のサンプルプログラムまんまなのにどこがおかしいんだか…。
0281デフォルトの名無しさんNGNG
>>280
お前が検索もできない無能だからですよ
0282デフォルトの名無しさんNGNG
>>281
不具合でもあるってことですか、検索できないからだっていうのは。

このスレ、どこが初心者歓迎なんだか。
0283デフォルトの名無しさんNGNG
シンボルを解釈処理できません の検索結果のうち 日本語のページ 約 296 件中 1 - 50 件目 (0.36 秒)

ここはJava初心者スレであって、PC初心者やインターネット初心者はスレ違い・板違いです
0284デフォルトの名無しさんNGNG
>>283
>ここはJava初心者スレであって、PC初心者やインターネット初心者はスレ違い・板違いです
それ次からテンプレに加えようぜ。
0285デフォルトの名無しさんNGNG
意味不明。
もちっとPCやJavaを勉強する前に日本語を勉強したら?(プ
0286デフォルトの名無しさんNGNG
クラスパス上にあるモノは「いったん書いたらどこでも動く」べきでは?

という疑問は、いまだ解消されず。。

クラスパスってコーディング時に静的な情報をおいておくところでなかったけ?
クラス定義とか。メッセージとか。

配布時に動的に変わるものがあっていいの?
ふつう、君たちがダウンロードしてくる、他のプロダクトって、クラスパスの外部に設定だ居るあるでしょ?
それに疑問を持ったことないの?
0287デフォルトの名無しさんNGNG
>>285
意味不明なのは、お前が無能だからですよ
0288デフォルトの名無しさんNGNG
>>286
×クラスパスの外部に設定だ居るあるでしょ?
○クラスパスの外部に設定ファイルあるでしょ?
0289デフォルトの名無しさんNGNG
>>280
この質問から読みとれるのは、お前が釣りだと言うことだけだ。
0290デフォルトの名無しさんNGNG
死ね>>280
死ね>>280
死ね>>280
死ね>>280
死ね>>280
死ね>>280
死ね>>280
0291280NGNG
結局だれもわからないんですね。
はぁ…
やっぱり本にバグがあるとしか思えませんね
0292デフォルトの名無しさんNGNG
>>288
クラスパスの外部に設定ガイル居るでしょ?
0293デフォルトの名無しさんNGNG
>>292
面白いけど居ません。
0294デフォルトの名無しさんNGNG
この世で一番嫌いな数字が280になりました。
0295デフォルトの名無しさんNGNG
おまいら、んあんおためにシステムプロパティがあると思ってんだ?
プロパティで与えた場所から読むようにすれば問題なし。
なんでもそうやってるだろ?
JAVA_HOME
CATALINA_HOME
ANT_HOME
...
Eclipseも暗黙で同じことをやってるよ
0296デフォルトの名無しさんNGNG
>>294
ちょうど今出かけようと財布を見たら、ちょうど280円だったorz
0297デフォルトの名無しさんNGNG
>>296
じゃ、財布に「100万円入っています。開けてはいけません。」
っていう封印シール張っておくことをお薦めする。
0298デフォルトの名無しさんNGNG
>>239
>>241
またまたありがとうございます。

 自分は、処理を分散するために、VMに処理能力共有機能をインプリメント
できないかなって考えていて、そのための実現方法を探していたんです。
 まだまだ、知識もないので無茶かもしれませんが、がんばってみます。


0299デフォルトの名無しさんNGNG
>>295
与え方の議論ではないのだが。。
0300デフォルトの名無しさんNGNG
>>217 >>298
もしネットワークを通じた処理能力分散などに興味があれば
JXTAなどについて調べてみるのも面白いかもね。
0301デフォルトの名無しさんNGNG
すいません
スクロールペインにパネルを組み込んだのですが、
スクロール処理がされません。
スクロールバーは表示されるのですが、・・・

//jpanel
setBackground(Color.CYAN);
setSize(1000,1000);
setLayout(null);

//jpanel main
jpMain = new JPanel();
//jpMain.setLocation(0,0);
jpMain.setSize(1000,1000);
jpMain.setLayout(null);
jpMain.setBackground(Color.YELLOW);

//jscrollpane
jSP = new JScrollPane(jpMain);
jSP.setBounds(5,5,400,300);
jSP.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
jSP.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
jSP.setViewportView(jpMain);
add(jSP);
0302デフォルトの名無しさんNGNG
>>286
> 配布時に動的に変わるものがあっていいの?

問題なし。

> クラスパスってコーディング時に静的な情報をおいておくところでなかったけ?

違う。
どこからそんな定義が出てくるんだ?

> メッセージとか。

メッセージはロケールによって変わる。
あとからメッセージリソース追加すれば、そのメッセージリソースが使われる。
環境ごとに違う。
0303デフォルトの名無しさんNGNG
ということで、リソースバンドルは環境によって変わるような仕組みになっていて、あとからクラスパスに追加すれば使えるしくみになっているので
「クラスパスってコーディング時に静的な情報をおいておくところ」
という認識が誤りという結論で。
0304デフォルトの名無しさんNGNG
>>288
> クラスパスの外部に設定ファイルあるでしょ?

そんなのどうやって判断するんだ?
0305デフォルトの名無しさんNGNG
>>302
メッセージはロケールによって異なるというのと、
ここでいう環境ごとに違うというのとは違う。
複数ロケールのメッセージを提供する場合、
配布時は静的であって、どのロケールのメッセージが使用されるかは、
実行時に動的に決まる。

ここで問題としたいのは、配布時に動的な情報のこと。
0306デフォルトの名無しさんNGNG
>>304
開発時に使えばわかるでしょ?
0307デフォルトの名無しさんNGNG
普通にユーザのホームディレクトリにユーザ設定保存してますが?
0308デフォルトの名無しさんNGNG
>>305
だから、あとから*_ja.propertiesを追加するのは「配布時は静的」というのと違うと思うんだが。
環境によって異なる情報をクラスパス上のファイルに記述することには全く問題ないが。
ライブラリのバージョンも変わることがあるわけだし、たとえばログみたいにクラスパス上にあるライブラリによって挙動が変わるものもあるわけだし。
0309デフォルトの名無しさんNGNG
>>307
ここではユーザー設定ではなくて、環境依存パラメータの設定の話。
0310デフォルトの名無しさんNGNG
>>306
EclipseなりNetBeansなりが、実行時にどこにクラスパスが通ってるか簡単に把握できるか?
0311デフォルトの名無しさんNGNG
>>306
単純な実行可能JARでも、解凍しないとどこにクラスパスが通るかわからんが。
0312デフォルトの名無しさんNGNG
>>308
それは、配布し直していることと同じでしょうが。
自分で修正して、自分に配布しただけのこと。
0313デフォルトの名無しさんNGNG
>>312
は?
0314デフォルトの名無しさんNGNG
>>310
エクリプスは実行時のその手の情報を表示できるよ
0315デフォルトの名無しさんNGNG
環境依存パラメータって具体的には何?
0316デフォルトの名無しさんNGNG
>>315
たとえばデータベースの接続先。
0317デフォルトの名無しさんNGNG
>>315
たとえば、DBの接続情報、他システム連携情報、ロギング設定など。
0318デフォルトの名無しさんNGNG
それって、システムプロパティで設定した値からの相対で取得するでしょ
クラスパスに入ってる必要全くないと思うけど
0319デフォルトの名無しさんNGNG
>>267のようにプロパティファイルに環境情報書くようにして、実行可能JARのマニフェストでそのファイルにパスが通るようにするのがだめだと言ってるらしい。
それより、クラスパスが通らないところにおいて、リソースの仕組みを使わずにファイルとして読み込むべきだと。
そんなバカな。
0320デフォルトの名無しさんNGNG
>>318
むしろ、わざわざリソースを使わずに取得する必要がまったくない。
0321デフォルトの名無しさんNGNG
大概はそういうのってリソース使ってないと思うけど?
0322デフォルトの名無しさんNGNG
>>319
リソースでないものにリソースの仕組みを使っているというところが気持ち悪い。
使えるからといって使うのが妥当ということにはならない。

だから、誰かが指摘していたが、環境設定情報とメッセージを同一ファイルに安易に
書いてしまう輩が出没したりする。
0323デフォルトの名無しさんNGNG
単純なプログラムで、起動スクリプト使わず実行可能JARの場合、リソースにするのが手軽で目的にかなっていると思うのだが。
0324デフォルトの名無しさんNGNG
>>323
そんなお手軽プログラムなら、リソースだとか環境設定ファイルがどうこうなど考えなくてよい。
きちんと考えるなら、どうあるべきかという話をしている。
0325デフォルトの名無しさんNGNG
Hibernateの設定は、デフォルトだとクラスパスの頭からとってくるね。
0326デフォルトの名無しさんNGNG
質問させてください

Java3Dでアニメーションを作成していて
一定時間毎に座標を指定して移動させたいのです。

Threadをたてたのはいいのですが、
repaint()の代わりになる上書き命令をどのようにすればいいのかがわかりません。

いい方法はないでしょうか?
0327デフォルトの名無しさんNGNG
>>325
お手軽な設定方法がそうだということでは?と解釈しているが。
0328デフォルトの名無しさんNGNG
>>326
Timerつかってみそ。
0329デフォルトの名無しさんNGNG
>>327
だからといって、ここでわめいてるやつがいうように、クラスパスにそういう情報を記述してはいけないのだとしたら、悪いデフォルトだということになるね。
クラスパスに設定情報を記述してはいけない、というのは、どこからくるんだか。
0330デフォルトの名無しさんNGNG
こだわらなければクラスパスでリソースとして設定情報置くのは、とくに問題ないのではないかと。
0331デフォルトの名無しさんNGNG
Java3Dで完結させたければBehavior使うんじゃないの?
0332デフォルトの名無しさんNGNG
Cayenneの設定もクラスパスの頭だしな。
一般的に推奨されないことであれば、いろいろなライブラリでデフォルトではクラスパスから設定ファイルを探しに行くというのは、これほど広まってないでしょ。
0333デフォルトの名無しさんNGNG
Cayenneの設定はクラスパスにないといけないんじゃないかな。
0334デフォルトの名無しさんNGNG
設定ファイルをクラスパスに置くってのはお手軽でいいかもしれないけど
セキュリティホールにもなるしある程度規模が大きいシステムではまずやらないよ
0335デフォルトの名無しさんNGNG
>>329
サンプルコードがそのまま使えないのと同様、
世に出回っているデフォルトが必ずしも妥当である保証はない。

なので、そういうところを疑ってみてもいいのではないか?

>>330
こだわる必要がないときには、お手軽さを優先することには同意している。
こだわるときにはどうするかという話をしたい。
0336デフォルトの名無しさんNGNG
>>332
初学者のためには敷居が低いほうが広まるからであろう。
0337デフォルトの名無しさんNGNG
セキュリティーホールというのは、どういう場合?
今回の話の流れとは別の問題だけど。
0338デフォルトの名無しさんNGNG
>>336
Cayenneの設定がクラスパスにないといけない、というのはどうよ?
真偽も含めて。
0339デフォルトの名無しさんNGNG
>>336
使ったことないからわからんが、設定ファイルとはXML形式なのかな?
識者コメントきぼんぬ。
0340デフォルトの名無しさんNGNG
>>336
しかし、非推奨になっているのなら、多くのライブラリでクラスパスから設定をとってくるようにはなってないだろと。
とりあえず、「クラスパスに環境依存ファイルを置くべきではない」というのは違うというのは結論として出てるのかな。
その上で、規模が大きいときや、信頼性・柔軟性が求められるときには別の設定にした方がいいという話?
0341デフォルトの名無しさんNGNG
>>339
XML形式だな。
0342デフォルトの名無しさんNGNG
>>337
クラスパス上に置いちゃうと基本的にデフォルトクラスローダーで
ロードされるから、底にそのアプリで使われているクラスと同じ名前の
クラスファイルを配置されてしまうと、クラスパスによっては
そっちがロードされてしまう。
だから、通常はクラスパスに置かないか、独自のクラスローダで
ロードする。サーブレットコンテナなんかは後者の考えだよね。
0343デフォルトの名無しさんNGNG
>>340
多くのライブラリが、クラスパスから取るべきか否かといった議論がなされているわけではないだろう。
特に出始めのものは。

プロダクトが成熟していくにしたがって、外部化の方向をたどっているように感じる。
カイエンが成熟しているとはいえそうもないが。。

「クラスパスに環境依存ファイルを置くべきではない」の是非は結論付けられていないでしょ?
0344デフォルトの名無しさんNGNG
HibernateとかCayenneのようなツール系でも、
たとえばDBの情報を盗みだしてしまうようなコードを
吐くクラスと入れ替えられたらヤバーでしょ。
0345326NGNG
>>328
>>331

アドバイスありがとうございます!

TimerもBehaviorもいろいろ調べて試してみましたが
さっぱりわかめですよ ハハー
0346デフォルトの名無しさんNGNG
>>343
話が別の方向に行きつつあるから、中締めしたい。
少なくとも議論の発端の「クラスパスには環境によってかきかえるものを置いてはいけない」というのは、そうとはいえないんだよね?
0347デフォルトの名無しさんNGNG
>>346
お手軽プログラムではそうとはいえない。
大規模プログラムでは、結論は出ていない。
0348デフォルトの名無しさんNGNG
あと、論点はずれるが、クラスパス・ルートにリソース置くのはよくないよな。
ソースはパッケージで名前空間を独立させているのに、
リソースだけ独立させないのはいかんだろ。
0349デフォルトの名無しさんNGNG

ImageReaderでアニメーションGIFデータを読み込んだのですが
各ページの表示X座標とY座標を取得する方法が分かりません。
どうすれば取得できるのでしょうか?
0350デフォルトの名無しさんNGNG
>>301氏
この間AppletでJScrollPane使ったから、サンプル投下します。汚いですけどね。

Dummy = new JPanel();
Panel = new JPanel();

Dummy.add(DrawMapPanel);
ScrollPanel = new JScrollPane(Dummy);

this.add(ScrollPane);

この構成はJScrollPane->JPanel1(Dummy)->JPanel2(Panel)ってなってます。
なんで、Panelを重ねるかと言うと、JScrollPaneに載ったJPanelのサイズは
JScrollPaneのサイズに勝手に上書きされてしまうからです。※
よって、一個どうでもいいPanelを挿入してやると。
※私の場合は、JScrollPaneのサイズ>JPanelのサイズの時に上書きされました。
逆だと問題なし。よって参考にならないかも。

あと、私も質問を。
Appletからweb鯖のファイルを選択できるダイアログを作りたいんですが
JFileChooserもFileDialogもURIが通らなかったので、何か良い解決策をご存知の方は是非。
0351デフォルトの名無しさんNGNG
>>350
与えたURI起点のファイル構造を提供するFileSystemViewを作ると
いいんじゃないでしょうか?

よく読んでないけどこんなことやってる人がいます。
ttp://www.crocodile.org/listok/2/WhatDoesFileSystemViewView.shtml
0352350NGNG
>>351氏
FTP使ってってのは考えていたけど、ここまでしっかりしたリソースがあるとは。
情報提供サンクス!
0353デフォルトの名無しさんNGNG
Swing で マルチスレッド を使用し、 親スレッド(?) のボタンを押したら 子スレッド が起動し、
子スレッド から 親スレッド(?) の Label の内容を変更したいのですが、上手く行きません。
良い例などありますでしょうか。
0354デフォルトの名無しさんNGNG
>>353
よし、それじゃあいいことを教えてやろう。
よく聞け。
耳の穴かっぽじってよく聞け。

そ れ は マ ル チ ス レ ッ ド で は な い
0355デフォルトの名無しさんNGNG
ボタンにスレッドが関係あんのか?
0356デフォルトの名無しさんNGNG
>>353
どう上手くいかないのかわからないと答えようがない
サッパリわからんってこと?
0357デフォルトの名無しさんNGNG
interface Tekito{
 void print();
}
class ClassTekito{
 Tekito tsukuru(){
  InnerImpTekito tkt = new InnerImpTekito();
  return tkt;
 }
 class InnerImpTekito implements Tekito{
  void print(){
   System.out.println("適当適当");
  }
 }
}
public class Main{
 public static void main(String[] args) {
  ClassTekito clstkt = new ClassTekito();
  Tekito tkt = clstkt.tsukuru();
  tkt.print();
 }
}

-----------------------------------------------------------------
<こんなエラー>
ClassTekito.InnerImpTekito の print() は Tekito の print() を実装
できません。スーパークラスでの定義より弱いアクセス特権 (public)
を割り当てようとしました。

↑なぜでしょうか?教えていただきたいのですが…。
0358デフォルトの名無しさんNGNG
スーパークラスでの定義より弱いアクセス特権 (public)を割り当てようとしたからって書いてあるだろ。
日本語読めないのか?
0359デフォルトの名無しさんNGNG
>>357
Tekito#printがpublicなのに、InnerImpTekito#printがパッケージプライベートだから。
0360デフォルトの名無しさんNGNG
クラスTekito・・・>>125・・・・>>34・・・またおまえか!
abstractの次はinterfaceか!
0361デフォルトの名無しさんNGNG
***************************************

  Tekito を NG ワードにブチ込みましょう

***************************************
0362353NGNG
いやですね、Swing 使って鯖作ろうとしてるんですけど、
子スレッドで鯖を起動するようなってるんですよね。
んでその子スレッドから Swing の Label の内容を変更しようとしても、
うまくいかないんです。help me
0363353NGNG
すみません、もう一回書きます
┌────────────┐
├────────────┤
│                  │
│   ┌─────┐     │
│   │ 鯖起動  │     │
│   └─────┘     │
│                  │
│   ステータス(JPanel)    │
└────────────┘

こういう感じで、ボタンを押すと子スレッドが起動し、ServerSocketで鯖として活動します。
んで、その子スレッドから、 JPanel の内容を変更したいのですが、
うまく行きません。(コンパイル時にエラーは出ないのですが、実際には反映されません)
いい例などありませんでしょうか・・
0364デフォルトの名無しさんNGNG
>>362-363
ttp://java.sun.com/docs/books/tutorial/uiswing/misc/threads.html#EDT
0365353NGNG
>>364
英語読めませんすみません
BorlandのJBuilder使ってますはい
0366301NGNG
>>350さん

ご丁寧なご返答本当にありがとうございます。

JPanelの部分で、setSizeをsetPreferredSizeに変えたら、
JScrollPane内でスクロールできるようになりました。

どうも、setSizeとsetPreferredSizeの違いがわかりませんねw
両方の違いがあいまいすぎる。

だれかその両方の違いについて教えていただけないでしょうか?
両方ともサイズの変更を行うものなんでしょうけども。。。
0367デフォルトの名無しさんNGNG
>>366
http://java.sun.com/docs/books/tutorial/uiswing/layout/problems.html
0368デフォルトの名無しさんNGNG
>>365
それは、読んでないから読めないだけだ。
嫁。単語くらい調べろ。
0369306NGNG
>>367
ありがとうございます。
英語力は低いのですが、
なんとなく読めるので、読んでみたいと思います。

どうも。
0370366NGNG
>>367
ありがとうございます。
英語力は低いのですが、
なんとなく読めるので、読んでみたいと思います。

どうも。
0371デフォルトの名無しさんNGNG
>>353
SwingUtilities.invokeLaterあたりの問題だろう。

>>366
Swingコンポーネントのサイズを変えるためには
基本的にsetPreferredSizeを使いsetSizeは使わない
(というかたいていは使っても意味がない)。
なおsetPreferredSizeも「適切なサイズ」を設定するだけで実際のサイズは
レイアウトマネージャが決めるから、設定したサイズそのものになるとは限らない。
0372366NGNG
>>371
なるほど。
レイアウトマネジャー絡みなために、推奨されるサイズってことになってるわけですね。

ありがとうございました。
0373デフォルトの名無しさんNGNG
>>370
技術文書は、文学的な表現もないし、専門用語は日本語でも結局カタカナだから、読みやすい。
嫁。
0374デフォルトの名無しさんNGNG
javaに限った質問ではないんですが、

左上の座標(x,y)、縦横の長さ(a,b)がわかった長方形が2つあるとして
それらが重なっているか否かを判定するのに、いいアルゴリズムは無いですか?
0375デフォルトの名無しさんNGNG
>>374
アルゴリズムっていうか、普通に判定すれば?
0376デフォルトの名無しさんNGNG
>>374
普通にって、
fillRect(x1,y1,a1,b1)
fillRect(x2,y2,a2,b2)
の2つがあるとすると

どうすればいいんでしょうか・・
0377375NGNG
xについて重なる・含まれる・重ならない考えると6通りあって、yについても6通りあるから、適当に表作って考えれ。
0378デフォルトの名無しさんNGNG
まー、この程度自力で考え出せ、と言いたいところだが、
直方体の交差は
public java.awt.Rectangle#intersects(Rectangle) (メソッド名末尾のsを忘れずに)
で分かる。
境界値をどう扱うかはちゃんと確認すること。


0379デフォルトの名無しさんNGNG
>>378
直方体?3D?w
0380378NGNG
>>379

長方形orz
0381374NGNG
>>378
そんなメソッドがあったんですか・・・
ありがとうございます
今自分で考えてたのは
物凄い長いのになってしまいまして・・
0382デフォルトの名無しさんNGNG
>>381
378のを使わなくても < と && 使えば一行でかけるだろ。アホ?
0383374NGNG
アルゴリズムを自分で考えたら
((atr[0]-40<p2.x)&&(p2.x<atr[0]+30))||((atr[1]-40<p2.y)&&(p2.y<atr[1]+5))
というのになってしましました。

>>376の表記に準えると
x1 = atr[0], y1 = atr[1], a1 = 30, b1 = 5
x2 = p2.x, y2 = p2.y, a2 = 40, b2 = 40
と思って下さい
0384374NGNG
とにかく、>>378さんのでスマートに解決しました
ありがとうございました。
0385デフォルトの名無しさんNGNG
KeyEventで
日本語キーボードの
*
:け
と書いてあるキーにあたるのは
VK_????
の何ですか?
0386デフォルトの名無しさんNGNG
>>385
VK_け
0387デフォルトの名無しさんNGNG
>>386
やってみましたがコンパイルエラーになりました
あなたの環境ならこれで通るんですか?
0388デフォルトの名無しさんNGNG
>>387
JavaDocみればわかる程度の質問だから、煽ってみた。
やってみるところがかわいいね。
ttp://java.sun.com/j2se/1.4/ja/docs/ja/api/java/awt/event/KeyEvent.html
0389デフォルトの名無しさんNGNG
アスタリスクのスペルが間違ってただけでしたorz...

しかも、コンパイルは通ってもキーは反応しません
仕方がないので他のキーを使います
ありがとうございました
0390デフォルトの名無しさんNGNG
>>389
それは天気ーのじゃないの?
VK_COLONで。
0391386NGNG
もしだめだったらば、とりあえず数値確認して
ttp://java.sun.com/j2se/1.4/ja/docs/ja/api/constant-values.html#java.awt.event.KeyEvent.VK_SHIFT
から対応するものを探す。
0392デフォルトの名無しさんNGNG
質問です。
フレームの中の上部にボタン2つ、下にボタンによって切り替えたいPanelがあります。
下のPanelは初期画面にタイトルの様なPanelを用意して上部のボタンを押すとタイトルのPanelがそのボタンの内容のPanelに切り替える様にしたいのですが
うまいやり方が見つからず、前スレにてカードレイアウトについて載っていたのでカードレイアウトで挑戦してみたのですがうまくいきません・・・。
ttp://www.ics.kagoshima-u.ac.jp/edu/ProgramingJava/Gui/s4.html
自分のやりたいことはこのようなことなのですが、
ActionListenerに適用できませんと言われてしまいます。(ボタンを押すという所が上記ページではよくわからなかったので
馴染みのあるActionListenerに置き換えたのがうまくできない理由なのですが・・・)
こういう場合カードレイアウトでやるのがベストなのでしょうか?
それともこのケースにふさわしい他の方法があるのでしょうか?
ほんと初心者的な質問ですいません。アドバイスお願いします。
0393デフォルトの名無しさんNGNG
高速コンパイラjikesを使って、コンパイルしようと思ってるのですが、
jikes.exeを sdk1.4.2/binに入れてコマンドウプロンプトでjikes 〜.java
を入力するとエラーが出てしまいます。

何か設定を変えないといけないのでしょうか?もしjikesの使用方法について
わかりやすく書かれてるサイトがあれば紹介していただけないでしょうか?
0394デフォルトの名無しさんNGNG
>>393
よくわかってないのなら標準のつかえ
コンパイル速度以前の問題だろ
0395デフォルトの名無しさんNGNG
エラーの内容を書かないと言うことは、さては>>393は釣りだな?
0396デフォルトの名無しさんNGNG
終わらない夏
0397393NGNG
http://www.mit.msn.to/devel/jikes.html
を見て試してみると、コマンドウプロンプトではなんとかコンパイルできました。
で実際はeclipseのantで行いたいのですが、以下のビルドファイルを実行したら
<project name="FirstProject" default="compile">
<property name="build.compiler" value="jikes"/>
<target name="compile">
<jikes srcdir=".." destdir="..">←
<bootclasspath>
<pathelement path="c:/j2sdk1.4.2_05/jre/lib/rt.jar"/>

<pathelement location="c:/j2sdk1.4.2_05/jre/lib/rt.jar"/>
</bootclasspath>
</jikes>
</target>
</project>
←の部分について Could not create task or type of type: jikes.というエラーが発生してしまいます。
<property name="build.compiler" value="jikes"/>という記述を書けばエラーにならないと思うのですが、
ビルドファイルの内容にどこか誤りがございますでしょうか?

よろしくお願いします。

0398デフォルトの名無しさんNGNG
>>397
ant の coreタスクや optionalタスクに jikes ってあったっけか?
もしくは自分で jikesっつーカスタムタスクを作った、とか?

jikes 使う場合は javac タスクで
<javac srcdir=".." destdir=".." compiler="jikes" executable="{jikesのパス}" />
とかするんじゃなかったっけ?

間違ってるかも知らんので ant のマニュアル見てちゃんと調べてね。
0399デフォルトの名無しさんNGNG
>>397
build.compilerプロパティでjikesを指定してもいいし、
398のように<javac>タスクの属性で指定してもいい。
でも使うタスクはあくまでも<javac>

あと余計なお世話だけどeclipse3.0からantは新たにVMを別プロセスで立ち上げ
その上で走らせるのがデフォルト設定になった。だからそのままjikesを使うと
ビルドのたびにVMプロセスが一つ、jikesのプロセスが一つ生成されるよ。
もし速いからjikesにするとか思ってるのなら、ちゃんと設定しないと
へたしたらかえって遅くなるかも。さらにうっかりプロジェクトのプロパティで
builderを殺してなかったらさらに時間かかる。
0400デフォルトの名無しさんNGNG
Eclipseのコンソールってantから呼び出したjavacが吐くエラーメッセージには
対応していてスタックトレースのソースファイル名と行番号
のとこクリックするとエディタで開いてくれたりするけど、
jikesが吐くエラーメッセージには対応してたっけ?
0401デフォルトの名無しさんNGNG
こんばんわ
JPanelのグラフィック処理を自前で処理したいので、JPanelを派生させて独自クラスを作りました。

class MyJPanel extends JPanel implements ActionListener{
public MyJPanel() {
}

protected void paintComponent(Graphics g) {
}
}

で、このpaintComponentは、通常だとJavaVMが描画更新の際に、自動的に呼び出されますが、
こちら側(プログラマー側)でpaintComponentを呼び出したいのですが、どのようにすればいいのでしょうか?
0402401NGNG
何かのAPIを呼び出すことで、
paintComponentに描画イベントが通知されるみたいな。
0403デフォルトの名無しさんNGNG
repaint
0404353NGNG
何度もすみません。
http://up.isp.2ch.net/up/0df242bd41da.zip
これをコンパイルしてもエラーは出ないのですが、ボタンを押しても反映されません。
解決方法ご教授下さいませ・・
0405デフォルトの名無しさんNGNG
>>404
それ、runというインスタンスのjLabel1と
frameというインスタンスのjLabel1は別物。
0406デフォルトの名無しさんNGNG
>>404
絶対一度ちゃんとした入門書読むべき
0407404NGNG
>>405さん
なるほど・・

>>406さん
了解しました。やはりちゃんとした本を一冊でも買うべきですよね。。
0408デフォルトの名無しさんNGNG
>>404 それスレッド分ける必要ないとか、インスタンス
って知ってる?とかは誰か指摘してくれるとして...
フレームを画面の真中に出す処理とかclose処理とかが
古臭いのがなんかや。404くらいのレベルで下位互換性
考えるとは思えないからどっかからコピペだと思うんだけど...
0409デフォルトの名無しさんNGNG
>>407
キミ、前スレにもいただろ・・・
まったく同じ失敗してるし、スレッドのテストにしては、
意味不明なテストの仕方だし・・・
もう訳わかんないよ・・・
0410デフォルトの名無しさんNGNG
>>408
これ、JBuilderで作ったんだと思うよ。
前スレでもそう言ってたし、
俺もJBuilder持ってるから分かる。
0411デフォルトの名無しさんNGNG
へぇ、JBuilderってオブジェクトの遅延生成しないんだ。
0412404NGNG
標準出力になら、うまく出力してくれるんですけどね・・・
前スレでも書きましたが、インスタンス化しても変化ありません・・・
0413デフォルトの名無しさんNGNG
うるせーバカ。ちゃんと勉強してくるまで二度と現れるなハゲ。
0414デフォルトの名無しさんNGNG
俺思うんだけどさ・・・
よく分かってないのにJBuilderとか使うのって良くないと思うんだよね。
まずは自分でウインドウが作れて、ボタンが作れてって、
そういうの理解して、不精するため(?)にJBuilderみたいなツール使えばいいと思う。
よくわかんないけど、JBuilderさんがウインドウ作ってくれるみたいなのだと、
上達も遅れるだろうしさ・・・
俺もJBuilderがキャンペーン中とかで安くて買ったけど・・・
まだJAVA勉強中の身だから、JBuilder使わずエディタ&javacで勉強してるよ・・・
0415デフォルトの名無しさんNGNG
Jpanelに表示されてる画像をjpgやbmpなどで画像ファイルに保存する方法
知ってる人がいたら教えてくれませんか?

paintcomponentメソッドを使って描画したものです。
0416415NGNG
あ・・なんとかできました。

ご迷惑をおかけしました。
0417デフォルトの名無しさんNGNG
あの、ここ1週間くらいプログラミングするにあたっていろいろな言語学んだのですが
javascriptはjavaはjavaでもぜんぜん違うそうですが、どうなんでしょうかね?
やはりC#やjavaに負けてしまいますかね??
0418デフォルトの名無しさんNGNG
>>417
負け組
0419デフォルトの名無しさんNGNG
>>417
用途が違います。
0420デフォルトの名無しさんNGNG
>>417
何がしたい?
何が作りたい?
HPでちょっと見てくれよくしようとしてるだけ?
だったら、JavaScriptは最適だよ。
ブラウザによって挙動が違ったりするけど。

C#やJAVAに負けるかと聞かれると・・・
まぁ、C#やJAVAの方が範囲広い分負けてるのかなぁ〜・・・
あまり勝った負けたってのはないと思うけどね・・・
その時々で合った言語使う物なんだし・・・
0421デフォルトの名無しさんNGNG
Rhinoってのもあるしな。
JavaScriptがブラウザだけのものじゃないってこった。
0422デフォルトの名無しさんNGNG
>>417
C# や Java に負けるとか、そんなもんじゃない。目的が異なる。
Javascript はブラウザ上でのちょっとした処理がメイン。
C# や Java はサーバ上で業務ロジックを組んだり、
スタンドアロンアプリケーションが構築できる。

Java や C# はシステムのメイン言語となるが、Javascript は
おまけ。
0423デフォルトの名無しさんNGNG
>>みなさんアドバイス有難うございます。
Javascriptはなんだか簡単でコンパイルなど無くてなんか謎でしたがスッキリしました。

用途。これ重要ですよね。今はC#かJavaどちらを本格的にやろうかと迷っていますが
C#はMSがこれからすごく力を入れていきそうですし、Javaは世界のプログラマさんですし。。
昔NESのパソコンがはやっていた頃はまさかMSがこんなにシェアを占めるなんて思っていた人は
少ないと思います。時代の流れは恐ろしいものですよね。MSもこう考えると微妙なとこがありまして
やはりJavaを本格的にやろうと思ってたりします。
思ったこと書いてたら意味不明に(ny
0424デフォルトの名無しさんNGNG
NESってファミリーベーシック?
0425デフォルトの名無しさんNGNG
OpenNMSを日本語化した人いる?
0426デフォルトの名無しさんNGNG
NECの間違い・・・かな

DOSもシェアかなりとっていたし、その前のBASICもシェアかなりもっていたことから
数十年MSはプラットフォームトップシェアとしてなんにかわってないよ
0427デフォルトの名無しさんNGNG
>>424
ファミコンのことですよ。
Nintendo Entertainment System
0428デフォルトの名無しさんNGNG
質問です。
javaで、1秒ずつカウントダウンするスレッドを作りたいのですが

public void run(){
try{
while(true){
Thread.sleep(1000);
t = t-1;
time.setText(Integer.toString(t));
}
}
catch(Exception e){}
}

とすると、setTextがある行でスレッドが止まってしまいます(これをコメントアウトすると動く)
tはint型変数、timeはJLabelです
どうして止まってしまうのでしょうか
0429デフォルトの名無しさんNGNG
repaintとかでへんなことしてない?
0430デフォルトの名無しさんNGNG
へんなことって・・エッチなこと?
0431デフォルトの名無しさんNGNG
>>414
んなときはJBuilderの変わりにEclipse + Ant使うのがおすすめ
0432デフォルトの名無しさんNGNG
>>429
Appletのイベントループを止めてるからだよ。
メインスレッドの中でwhileの無限ループなんて作っちゃダメ。
ちゃんとマルチスレッドにしる。
0433デフォルトの名無しさんNGNG
>>428
エラー書いてないけど実行したときにtimeがNullなんじゃねの
0434デフォルトの名無しさんNGNG
サブクラスをスーパークラス型で生成することがありますが、
どんなメリットがあるのでしょうか?
例えば、

class A{
int hoge;
void foo(int aho){
hoge = aho;
}}

class B extends A{
double voke;
void unchi(double dadada){
voke = dadada;
}}
のとき
A nullpo = new B(0.72);
とか
0435デフォルトの名無しさんNGNG
>>414
ウィンドウ出すことやjavacコマンドの使い方なんかは本質的なことではないので、JBuilderやNetBeansでまずプログラムに親しむのもあり。
0436デフォルトの名無しさんNGNG
>>434
> サブクラスをスーパークラス型で生成することがありますが、
> A nullpo = new B(0.72);
「スーパークラス型で生成」はしてないね。
スーパークラス型に代入はしてるけれど。

サブクラス型で新たにアクセス可能なメソッドやフィールドを宣言してないか、
それらを使う必要が無いと判断すれば、スーパークラス型に代入しても問題ないね。
たぶん、そーゆー場合はスーパークラスのメソッドの何れか(あるいは全部)がオーバーライドされてるんだろう。

例: InputStream in = new FileInputStream("hoge.txt");
0437デフォルトの名無しさんNGNG
>>414
RADツールとIDEは別のものという認識をもつと
選択肢広がるのにね。
0438デフォルトの名無しさんNGNG
またインターフェースプログラミングについての話か・・・
これJavaに限った話じゃないし、前スレで荒しがでたしな

VB.netでもc#でもオブジェクト指向がまとうな言語なら基本中の基本で
Javaだけに関した話ではないからオブジェクト指向の勉強した方がいいと思われ
0439デフォルトの名無しさんNGNG
List list = new ArrayList();
Listのインタフェースで定義されている機能しか使わない場合

インタフェースを狭める方向に記述したほうが保守性が上がる
0440デフォルトの名無しさんNGNG
>>439
本質は多態だろ?
0441デフォルトの名無しさんNGNG
>>440
>>434 の質問の本質は多態以前のもっと基本的なところだと思われ。
0442デフォルトの名無しさんNGNG
変数を「オブジェクトそのもの」と思うからインタフェース型の変数に代入する意味がわからなくなる。
変数は「オブジェクトを操縦するリモコン」だと思えばよい。変数の型はリモコンの種類。
0443デフォルトの名無しさんNGNG
オブジェクトと言う言葉の適応範囲は広い。
インスタンスもオブジェクトだし、配列もオブジェクト。
厳密には変数もオブジェクトだし。

それを考えると、>>442の話は少しおかしく思う。
0444デフォルトの名無しさんNGNG
また不要な例えを出して混乱させる奴が出てきたよ・・・・
0445デフォルトの名無しさんNGNG
>>442
リモコン? 俺はよけい分からん。
interface は「界面仕様」のみを表し、class は「界面仕様」+「実装」を表す。
変数宣言の左側の「型」は、「界面仕様」としてしか使われず「実装」は無関係。
0446デフォルトの名無しさんNGNG
>>443
インスタンスそのものや配列そのものはオブジェクトだが変数はオブジェクトじゃない。
(プリミティブ型が云々という揚げ足取りじゃなくて)。
0447デフォルトの名無しさんNGNG
クラスのオブジェクトやメソッドのオブジェクトはあるけど、変数のオブジェクトはないね。
0448デフォルトの名無しさんNGNG
うーん???
変数って、どの変数でも宣言すると、this.hogeのような形になるでしょ。
これが変数がオブジェクトだっていう証拠じゃないの?
何か俺勘違いしてるかえ?
0449デフォルトの名無しさんNGNG
変数はプリミティブ型と参照型(オブジェクト)の 2 種類しかないだろ。
0450デフォルトの名無しさんNGNG
うーん・・・何か納得いかないなぁ〜・・・
たとえば、hoge.set()ってのは、
スタティックが付いてればクラスメソッドであり、
付いてなければ、インスタンスメソッドだよね。
大きく言えば、オブジェクトだよね。
だとすれば、hogeクラスのhage変数は、
スタティックが付いてればクラス変数であり、
なけらばインスタンス変数。
それもオブジェクトだよね・・・?

だから、やっぱ大きく言ってみれば全部オブジェクトなんじゃないのかな〜っと・・・
個々で見るんだたら、メソッドはオブジェクトじゃないって言ってるような物じゃない?
0451デフォルトの名無しさんNGNG
うーん・・・
やっぱ、オブジェクトと言えば全部がオブジェクトなんだと思う。
オブジェクトと変数という分け方が間違ってるっぽい。
分けるなら、クラスとメソッドと変数だと思う。
で、どれもがオブジェクト。
0452デフォルトの名無しさんNGNG
>>450
いや、だからクラス変数であろうがインスタンス変数であろうが、
プリミティブ型であればオブジェクトじゃないって。

で、static での変数アクセスはクラスオブジェクト経由にアクセス、
インスタンス変数へのアクセスはインスタンス(オブジェクト)経由でアクセス。
0453デフォルトの名無しさんNGNG
>>452
なんでプリミティブ型はオブジェクトじゃないの?
0454デフォルトの名無しさんNGNG
>>452
うーん???
アクセスの仕方(参照型)でオブジェクト???
だったら、クラスメソッドはオブジェクトじゃないって事にならない?
finalが付いたクラスもオブジェクトじゃなくなるって事?
0455デフォルトの名無しさんNGNG
>>453
言語仕様
0456デフォルトの名無しさんNGNG
>>455
それは要するに狭義のオブジェクトだろ。
今の話は広義のオブジェクトだ。
0457デフォルトの名無しさんNGNG
Javaの場合オブジェクトとはObjectクラスのインスタンスとして扱うものだ。
Javaには変数をObjectクラスのインスタンスとして扱う仕組みはない。
よって変数はオブジェクトではない。
0458デフォルトの名無しさんNGNG
>>456
それいえば、if文も+演算子もオブジェクトといえるね。
で、その議論になにか意味があるの?
0459デフォルトの名無しさんNGNG
>>458
>>443の「オブジェクトと言う言葉の適応範囲は広い。」について、
広義において変数もオブジェクトに含まれる。
JavaのObjectという狭義においては含まれない。
ただそれだけだが?議論も糞も無い。
0460デフォルトの名無しさんNGNG
どんどん混乱してきたぞ・・・
たとえば、どのクラスもObjectを継承してるよね。
で、変数を宣言すると、スタティックだろうが違おうが、
そのクラスの変数になるよね。
って事は、その変数はObjectクラスの内にいてる訳で・・・

>>458の話も面白い。
たしかに、if文やらfor文やらもオブジェクトになるんじゃないかな〜・・・
たしかに不毛な議論かもしれないけど、結構面白いと俺は思った。
0461デフォルトの名無しさんNGNG
{ 〜 }がオブジェクトであってもいいしね。
extendsとかimplementsとかstaticとかpublicとか、いろんなものがオブジェクトであってもよくなるね。
で、なにか意味が?
0462デフォルトの名無しさんNGNG
あーわかんない!
頭痛い。もう寝とく事にする。
0463デフォルトの名無しさんNGNG
>>460
オブジェクトの中にあるからといって、それがオブジェクトになるわけではない。
0464デフォルトの名無しさんNGNG
>>463
はっきりいって、それじゃ、オブジェクトとはどの実態をオブジェクトと言うの?
参照している変数をオブジェクトと言うの?
0465デフォルトの名無しさんNGNG
単に、>>451なんかが言ってるのが広義のオブジェクトで、
>>452の言ってるのが狭義のオブジェクトで、
お互い定義の異なる「オブジェクト」について語ってるから噛みあってないということを指摘してるだけなんだが、
そこで意味が?とか聞かれてもハァ?としか答えようが無いな。
0466デフォルトの名無しさんNGNG
オブジェクト指向言語の場合、構文要素のすべてをオブジェクトとして扱うことが可能だ。
ただし、実際問題としてそれでは処理効率が悪いので、何をオブジェクトとして扱って、なにをオブジェクトとして扱わないか、取捨選択することになる。
Javaの場合、クラスやメソッドはオブジェクトだけど、変数はオブジェクトではない。{〜}もオブジェクトではない。
C++の場合、クラスやメソッドもオブジェクトではない。もちろん変数もオブジェクトではない。
0467デフォルトの名無しさんNGNG
>>465-466
あ・・・なんかちょっと分かった気がする・・・
オブジェクトって言葉のちゃんとした定義がないのが悪いんだよ・・・
0468デフォルトの名無しさんNGNG
よくみたら、フィールドの場合はオブジェクトだな。
ローカル変数はオブジェクトではない。
publicやらabstractやらはオブジェクトだ。
0469デフォルトの名無しさんNGNG
>>467
ちゃんとした定義は、それなりにある。
けども、言語によってなにがオブジェクトかは異なる。
0470デフォルトの名無しさんNGNG
ここは Java スレだ。
0471468NGNG
さらによく見たら
 java.lang.ref.Modifier
にはstaticメソッドしかないから、修飾子はオブジェクトとして扱われることはなさそうだな。
0472デフォルトの名無しさんNGNG
それじゃ・・・
変数はオブジェクトな時とオブジェクトじゃない時とがあって、
その時々でオブジェクトなのか違うのかが変わるって事で。
ひとつおりこうになりました。
0473デフォルトの名無しさんNGNG
JAI(Java Advanced Imaging,)について書かれた日本語の本、
誰かしりませんかー。
洋書はあるけど、日本語はないっぽくて
0474デフォルトの名無しさんNGNG
>>472
静的に決まるから、「その時々」ではないよ。
0475デフォルトの名無しさんNGNG
感覚的には変数がオブジェクトってのは変な感じがするなあ…
例えインスタンスメンバの変数であっても、それは単なるオブジェクトから伸びる矢印。
オブジェクトと言えるのはあくまでその矢印の先にあるオブジェクト。
0476デフォルトの名無しさんNGNG
>>475
変な感じがしようがしまいが、オブジェクトとして扱えるんだから仕方ない。
それに、その論で行くのであれば、「矢印」の集合である配列がオブジェクトであるのもおかしいね。
というか、クラスがオブジェクトであるのもおかしいし、メソッドがオブジェクトであるのもおかしいね。
0477デフォルトの名無しさんNGNG
言ってみれば、ワサビの無い寿司と同じって事だな!
シャリは寿司じゃない。
ワサビも寿司じゃないし、魚の身も寿司じゃない。
全部合わせて寿司なんだ。
もちろん、ワサビが抜けたのも寿司じゃない。
0478デフォルトの名無しさんNGNG
>>476
いいことを教えてやろう。
>>475よりも>>476の方がずっと頭が悪い。
0479デフォルトの名無しさんNGNG
>>476
クラスやメソッドがオブジェクトで云々は、もともとそういう感覚では言ってないんでね。
クラスを表すメタクラスのインスタンスはオブジェクトだけど、クラスと言う物はオブジェクトとみなしてない感じ。
# あくまでそういう感覚の見方ってだけだよ。

で、矢印の集合がオブジェクトってのは、おかしくない。
ってかもともとの言い方で、クラスのインスタンス自体矢印の集合なんだから。
もっと言い換えたら矢印の集合(矢印の起点)として、それ自体が参照先となりえるような空間に存在できる物がオブジェクト。
# あくまでそういう感覚の見方ってだけだよ。
0480デフォルトの名無しさんNGNG
オブジェクトが節(ノード)で、メンバとなっている参照型変数は別の節を指す矢印。
値型のメンバ変数は、節に含まれる(節の一部)な感じ。
節はオブジェクトだが、値型のメンバ変数は節に含まれているだけで
オブジェクト(節そのもの、それ自体が節)ではない。
# あくまでそういう感覚の見方ってだけだよ。
0481デフォルトの名無しさんNGNG
>>460
SmalltalkではJavaで言うif文もfor文も実際にオブジェクトです。
0482473NGNG
>>473
0483デフォルトの名無しさんNGNG
>>479
オブジェクトとして扱える要素がオブジェクトで、オブジェクトとして扱えない要素がオブジェクトではない。
# あくまで、そういう感覚の見方ってだけだよ。
0484デフォルトの名無しさんNGNG
おまえらまだやってたのか
0485デフォルトの名無しさんNGNG
変数がリモコンって見方、そんなに悪くもないと思うけどな…
0486デフォルトの名無しさんNGNG
>>485
おれも悪くないと思う。
0487デフォルトの名無しさんNGNG
>>482
タイミングわろし。
0488デフォルトの名無しさんNGNG
>>485-486
ただし、配線がつながってる有線のリモコンだ。
大丈夫、必要に応じて繋ぎ変えることもできる。
0489デフォルトの名無しさんNGNG
>>488
オブジェクトから変数はたどれないから、有線じゃないんだよ。
0490デフォルトの名無しさんNGNG
有線て言葉自体に双方向の意味があるのか?よく知らんが…
一方向の有線てことで。
0491デフォルトの名無しさんNGNG
>>490
線がつながってたら、自分につながってる線をたどっていくことができるだろ。
無線だと、自分に信号を送るものを特定できない。
だから、あえて「一方向の有線」というわけのわからないものを持ち出すなら、無線でいい。
0492デフォルトの名無しさんNGNG
というか、別に紐でつながってるって話をしてるんじゃないんだから、
つながっている以上たどる事はできるとかそういう問題じゃないと思うが…
まあ、別にこだわってるわけでもなんでもないので分かればなんでもいいけど。
0493デフォルトの名無しさんNGNG
>>492
わざわざ「ただし」として有線にしたわけだから。
0494デフォルトの名無しさんNGNG
>>458
> >>456
> それいえば、if文も+演算子もオブジェクトといえるね。
Smalltalkか?
0495デフォルトの名無しさんNGNG
リモコンだと特定のオブジェクトに結びついてる感じがでないかな?
ってちょっと思ったもんで。
まあ、リモコンが特定のオブジェクトの方を向いてるって事でいいかなって。
0496デフォルトの名無しさんNGNG
こんにちは

Javaで配列内の要素をソートしてくれるクラス・APIはありますか?
初歩的な質問ですいませんがご返答よろしくお願いいたします。
0497デフォルトの名無しさんNGNG
>>496
java.util.Arrays
0498デフォルトの名無しさんNGNG
JavaWebStartのキャッシュはどこに入りまつか?

キャッシュのJarを直接実行すると、クライアントJavaとして動作してくれるんでしょうか?
その場合はセキュリティはクライアントJavaのポリシーファイルになるんだろうか。
0499デフォルトの名無しさんNGNG
java で 配列から複数の数字をランダムに取り出すには どうしたら???
良いのか誰か教えて
0500デフォルトの名無しさんNGNG
>>498
他のプラットフォームでは知らないけど、Windowsなら
${user.home}\.javaws\cacheに、サーバ及びポートごとに分けて配置される。
(${user.home}はここではSystem.getProperty("user.home")取得できるフォルダを指す)

キャッシュ内のjarの実行だけど、JavaWebStartのAPIを使っている場合は
通常のクライアント用アプリとしては動かない。
ある程度の規模のアプリならローカルファイルの参照とか
ネットワークリソースの取得とかやってるはずなので、
基本的にJWSのランチャ経由以外で動くことはないと思っていいんじゃないかな。

まあ、JavaWebStartはオフライン実行もできるようになってるんだし、
そんなに重要な問題ではないと思う。
0501デフォルトの名無しさんNGNG
サンクス>>500
何でも知ってる方が居られるんでつね。
もう1件教えて下さい。
JavaWebStartでサーバのDBとやり取りする場合は、
やっぱサーバからHTTPでファイル貰うんでつよね?

RMIやJDBC接続なんかしたら、
ファイアーウォールにブロックされるだけですよね?
0502デフォルトの名無しさんNGNG
>>499
ランダム = 配列.get複数の数字();

配列から複数の数字をランダムに取り出しました
ていうか意味不明瞭
0503デフォルトの名無しさんNGNG
ごめんなさい>>502
1〜9までの数字を、ダブらないように3回ランダムに取り出したいんですよ。
で!配列に1〜9までの数字を格納して、数字を取り出したいんですけど???
0504U ◆CZtFsGiu0c NGNG
>>501
別にサーバのやりとりはどのようにしようと構わない。
ファイアウォール云々は環境依存。イントラネットでデータベースやアプリケー
ションサーバに直接つなぐことも普通にある。というかJWSとは無関係ですね。
0505デフォルトの名無しさんNGNG
>503
整数なら配列にする必要もないかも…
0506デフォルトの名無しさんNGNG
>>503
int[] digit = new int[9];
for(int i=0; i<digit.length; ++i) digit[i]=i+1;
Set digitSet=new TreeSet();
while(digitSet.size()<3) {
Integer value=new Integer( digit[(int)(Math.random()*9+1)] );
digitSet.add(value);
}
Iterator it=digitSet.iterator();
int num1=((Integer)it.next()).intValue();
int num2=((Integer)it.next()).intValue();
int num3=((Integer)it.next()).intValue();
0507デフォルトの名無しさんNGNG
int[] digit = new int[9];
Rundom r = new Rundom();
for(int i = 1; i <= digit.length; ++i) digit[i] = i;
for(int i = 0; i < 500; ++i){
 int idx1 = r.nextInt(digit.length);
 int idx2 = r.nextInt(digit.length);
 int tmp = digit[idx1];
 digit[idx1] = digit[idx2];
 digit[idx2] = tmp;
}
int num1 = digit[0];
int num2 = digit[1];
int num3 = digit[2];
0508デフォルトの名無しさんNGNG
>>501
なんでwebstartのアクセス方法でファイアウォールの話がでてくるんだろう・・・

jnlpAPIとサンドボックスの勉強しなされ
0509デフォルトの名無しさんNGNG
>>501
別に、サーバーがローカルにあるんだったら、RMIでもJDBCでも構わないと思うが。
0510デフォルトの名無しさんNGNG
あ、ローカルっていうのは、ローカルネットワークね。
0511デフォルトの名無しさんNGNG
超初心者の質問で申し訳ないのですが

テキストボックスに文を入力し、テキストフィールドに出力するとして
出力された文を3行で表示する場合、改行の仕方はどうすれば良いのでしょうか?
0512デフォルトの名無しさんNGNG
>>511
テキストフィールドは改行を扱いませんが。
っていうか、ちゃんとコンポーネントのクラス名書いて。
0513デフォルトの名無しさんNGNG
Java3Dで球や立方体にJPEGファイルから読み込んだテクスチャを貼り付けてみたんですが、
見た感じで数100〜数1000色程度に減色した様な表示になってしまいました。
原因に心当たりありませんか?
0514デフォルトの名無しさんNGNG
import java.io.*;
public class NULLPO{
public static void main(String[] args) thorws IOException{
BufferedReader br = new BufferedReader(new FileReader(args[0]));
BufferedWriter bw = new BufferedWriter(new FileWriter(args[1]));
String str;
while((str = br.readLine()) != null){
String hoge = str.toLowerCase();
bw.write(hoge);
bw.newLine();
}
bw.flush();
br.close();
bw.close();
}}
で、入力ファイルに
Λ_Λ
(´∀`) <ぬるぽ
って書いて実行して見ると
耳が変になっていました。
0515514NGNG
ごめんめっちゃずれたわ。ってか
小顔になってしもたw
0516デフォルトの名無しさんNGNG
Javaは簡単だという人は天才かはたまたバカかの2種類の人間しかいないと
思えるついこのごろですが、Javaを根本から理解できる本を紹介していただ
けないでしょうか?哲学、鉄則、格言…何かいいん本はないでしょうか?
0517デフォルトの名無しさんNGNG
>>516
ttp://www.javatea.net/
0518デフォルトの名無しさんNGNG
マウスボタンの2と3はどこの部分なのでしょうか?
2が右クリックなのですか?
0519デフォルトの名無しさんNGNG
OpenNMSって使ったことある人いる?
日本語化なんてされてないよね?
0520デフォルトの名無しさんNGNG
>>516
別にJavaに限らず、ちゃんとした言語は全部難しい。
Javaだったら、仕様書を日本語に訳したのあったと思うけど・・・
その辺読んでみれば詳細などもわかるんじゃない?
普通にJava使う分で、そこまで知る必要ないとは思うけどね。
フレームワークなどの本の方が役に立つっぽい。
0521デフォルトの名無しさんNGNG
ある文字列のうち、指定したバイト数分の文字列を返すようなことはできますか?
例えば「あいうえお」という文字列で、
そのうちの4バイト分の「あい」のみを取得したい場合です。
substringでは指定した文字数分を返すのでこれではできませんでした。
0522デフォルトの名無しさんNGNG
>>521 getBytes()する。
0523デフォルトの名無しさんNGNG
>>521
char何個で目的のバイト数になるかが既知の場合、
char何個で目的のバイト数になるか試行錯誤して良い場合は getBytes() で解決。

でなければ無理。Java の char は 16ビットで unicodeの一文字だから、
他のエンコーディングで何バイトになるかは変換してみんとわからん。
(実際にはchar1個==1文字とは限らんけど)
0524デフォルトの名無しさんNGNG
学校の課題なんですが、分からないので是非解答してください、お願いします。
問題 
 入力されたテキストの内容を操作するjavaアプレットを作成せよ。ここでいう操作とは、文字列の置換を指す。
 javaアプレットは以下の機能を兼ね備えているものとする。
     1.テキストは、テキストボックスに入力される。
     2.被置換文字列、置換文字列はテキストとは別のテキストボックスに入力される。
     3.置換結果は、別のウィンドウに表示される。
 javaのことさっぱりなので、よろしくです。学校の課題なんですが、分からないので是非解答してください、お願いします。
0525デフォルトの名無しさんNGNG
Java の宿題ここで答えます。
http://pc5.2ch.net/test/read.cgi/tech/1089527630/
0526デフォルトの名無しさんNGNG
ジャバネット高田
0527デフォルトの名無しさんNGNG
ツマンネ



なのに何故だろう。
あのBGMと、高田社長がJavaの解説をしてる様子が頭から離れないんだ。
0528デフォルトの名無しさんNGNG
>>524
激しくマルチだな
0529デフォルトの名無しさんNGNG
DoJa 3.5でswingのjavax.swing.JLayeredPaneみたいに階層を指定する方法ってある?
例えばアプリで、ソフトキーでメニュー表示させた後にメニュー閉じるとメニュー開く前に戻る感じ。
メニュー開く前のユーザの入力を一々記憶して、メニュー閉じたらそれを復元する方法しか俺には思いつかんorz
0530デフォルトの名無しさんNGNG
ファイルやディレクトリの絶対パスってどうやって取得するんでしょうか?
0531デフォルトの名無しさんNGNG
>>530
http://java.sun.com/j2se/1.4/ja/docs/ja/api/java/io/File.html
これつかう。
0532デフォルトの名無しさんNGNG
>>524
夏休み、遊びたおすから・・・
復習しれ。
0533529NGNG
ごめん、ちょっとスレ違いだった。。
0534デフォルトの名無しさんNGNG
SDKの最新バージョンをDLしてJavaの入門書を買ったんですが、SDK1.4しか解説してありませんでした
1.4と最新バージョンの違いを教えてください
また不具合はないでしょうか?
0535デフォルトの名無しさんNGNG
>>534
そういうことは違いを見つけてからで直してこい。
0536デフォルトの名無しさんNGNG
>>534
最新バージョンというのが、5.0のRC版のことなら下のページのリンク先を参照。
Java 2 Platform Standard Edition 5.0 概要
http://java.sun.com/j2se/1.5.0/ja/

もし最新バージョンというのが1.4.2_05のことなら、
1.4.2と1.4の違いは、日本語で解説しているページもあったとおもうが。
0537デフォルトの名無しさんNGNG
Windows上で、Swingなアプリに、MS PAINTからクリップボード経由で画像データを渡す方法ってあります?
0538デフォルトの名無しさんNGNG
>>537
たぶん可能。
// クリップボードに画像があれば、それをImageインスタンスにして返し、
// クリップボードに画像がなければ、nullを返す。
public static Image getClipboard() {
Transferable t = Toolkit.getDefaultToolkit().getSystemClipboard().getContents(null);

try {
if (t != null && t.isDataFlavorSupported(DataFlavor.imageFlavor)) {
Image text = (Image)t.getTransferData(DataFlavor.imageFlavor);
return text;
}
} catch (UnsupportedFlavorException e) {
} catch (IOException e) {
}
return null;
}

Getting and Setting an Image on the System Clipboard (Java Developers Almanac Example)
http://javaalmanac.com/egs/java.awt.datatransfer/ToClipImg.html

このあたりも参考に。
Clipboard (Java 2 プラットフォーム SE v1.4.0)
http://java.sun.com/j2se/1.4/ja/docs/ja/api/java/awt/datatransfer/Clipboard.html
画像を転送する
http://black.sakura.ne.jp/~third/system/java/Gjava57.html

0539デフォルトの名無しさんNGNG
このスレッドを見ていて、いつも思うことなのだが、

Swingスレッドやデスクトップ系Javaスレッドを別個に設けるよりも、
iモードスレッドのように、 このJava質問スレッドを
初心者向け質問と、それ以外のJava質問・雑談に分けたほうがまだいいかもしれない。

// まあ、過去に上級者向けか中級者向けかのスレッドが現実に作られ、
// そして、過疎化したことはあったわけだが。
0540デフォルトの名無しさんNGNG
初心者無視スレはネタスレだと理解していたが......
0541デフォルトの名無しさんNGNG
おまえはスレ立ててみたいだけちゃうんかと
0542デフォルトの名無しさんNGNG
>>541
抽象クラスについての話題で毎回100も200もレスが消費するスレッドとは別に、
クライアントサイドやデスクトップのJavaについて語る専用のスレッドが欲しいだけだよ。
JavaWebStartとかRbotoクラスとか。
0543デフォルトの名無しさんNGNG
>>542
http://pc5.2ch.net/test/read.cgi/tech/1062271447/966-
いらねーってことで話はついているはずだが?
0544デフォルトの名無しさんNGNG
サーブレットスレがあるんだからクライアントサイドスレがあってもいいとは思うよ。
流行らないだろうけど。
0545デフォルトの名無しさんNGNG
このスレで代用しる。

Java 高速GUI SWT 2
http://pc5.2ch.net/test/read.cgi/tech/1068349883/
0546デフォルトの名無しさんNGNG
まああるこたあるが

Java低速GUI Swing
http://pc5.2ch.net/test/read.cgi/tech/1062271447/
0547デフォルトの名無しさんNGNG
>>546
3つ上のレスも見ないのか? >>543
0548530NGNG
遅ればせながら>>531さんトンクス
0549デフォルトの名無しさんNGNG
Java 雑談スレはあったほうが良いような気がしてきた。
0550デフォルトの名無しさんNGNG
socket接続してるとこにsignal飛ばして止めたりできますか?

Redghat9、jdk1.4でつ
0551デフォルトの名無しさんNGNG
質問の意味がわからん
0552デフォルトの名無しさんNGNG
>>551
俺もあまりわかってないからなぁ・・・
Javaで実行中のプロセスに対してsignal送れるかどうか。
…でわかる?
0553デフォルトの名無しさんNGNG
>>552
kill -HUP とかをしたいってことか?
Javaでサーバプロセス常駐させて、そこにコマンド送ったら、そのサーバプロセスがシステムコマンドを発行するとかどうよ?
0554デフォルトの名無しさんNGNG
>>553
低能はすっこんでろ
0555デフォルトの名無しさんNGNG
ぜんぜん中身しらずにCommons Daemonを勧めてみる
0556デフォルトの名無しさんNGNG
>>554
そうファビョるなよ、学生さん?
0557デフォルトの名無しさんNGNG
>Redghat9
何より先にこんな名前のOSは聴いたことないんだが・・・
と思いつつググッて見たらいっぱい引っかかるではないか
0558デフォルトの名無しさんNGNG
>>557
超ゆーめーですよ。
ポリフォーリズムなみ。
0559デフォルトの名無しさんNGNG
String allmember = null;
ResultSet rs1 = dba.executeQuery("SELECT * FROM test.member WHERE year='"+year+"'");
while (rs1.next()) {
allmember = rs1.getString("s_id");
ResultSet rs2 = dba.executeQuery("SELECT MAX(no) as id_max FROM test.msg WHERE code='"+allmember+"'");
rs2.next();
int id_max = rs2.getInt("id_max");
id_max = id_max+1;
}

このようなプログラムを実行すると
java.sql.SQLException: Operation not allowed after ResultSet closed
というエラーが発生してしまいます。
while(rs1.next())で複数回繰り返されるはずだったとしても、
1回目を実行し終わって、2回目を実行しようとするところでエラーが発生してしまいます。

ResultSetを二つ同時に使うことはできないんでしょうか?
0560デフォルトの名無しさんNGNG
>>559
dbaがjava.sql.Statementであると仮定して、Statementオブジェクトをもう一つ用意。
0561デフォルトの名無しさんNGNG
てかPreparedStatement使え。
0562デフォルトの名無しさんNGNG
>>559
dbaのオブジェクトを共有できないので
dba1、dba2みたいに二つ作ってあげればいいよ
0563U ◆CZtFsGiu0c NGNG
>>559
というか、一回のSQLで取ってこれるのでは?

SELECT code, MAX(no) as id_max FROM test.msg inner join test.member
on test.msg.code = test.member.s_id
where test.member.year = xxxx
group by code
0564559NGNG
解決しました。ありがとうございます。

>>560>>562
オブジェクトを二つ作ることで動作しました。
>>561
PreparedStatementを使って作り直してみました。
同じSQL文を何度も実行する場合はPreparedStatementが良いんですね。
>>559
他の部分との関係で、そのSQL文ではうまく動作しませんでした。
0565デフォルトの名無しさんNGNG
>>564
一回実行するだけでもPreparedStatementが良い
0566デフォルトの名無しさんNGNG
>>565
そうそう、SQL文のサニタイジングもしてくれるしね。
0567デフォルトの名無しさんNGNG
>>561
相手のレベルに応じてレスを変えるくらいの頭は持とう。
0568デフォルトの名無しさんNGNG
>>567
実際にPreparedStatement使って解決してるんだからいいじゃん。
0569デフォルトの名無しさんNGNG
>>567と同じく俺も心配してたが
ループの内側でPreparedStatementを生成してる希ガス
0570デフォルトの名無しさんNGNG
おはようございます。質問あるんですがよいでしょうか。
JavaApplet 作ってるんですが、出来上がったリソース類をまとめ
ようとしています。具体的にはクラスファイルのあるディレクトリに
parts というディレクトリをつくり、その中に画像、au、midi ファイル
を全部まとめて放り込んで、jar cf test.jar test.class parts で
jar にまとめました。この状態でブラウザから呼び出すと、画像の
リソースはきちんと読み出せるんですが、au と midi が正常に読み
出せないっぽくて困ってます。以下、読み出し部分です。

private AudioClip[]sound = new AudioClip[1] ;
private AudioClip[]midi = new AudioClip[1] ;
try {
 sound[0] = getAudioClip(getCodeBase(),"parts/sound.au") ;
} catch (Exception e) {
 System.out.println("取得に失敗しました。") ;
 sound[0] = null ;
}
try {
 midi[0] = getAudioClip(getCodeBase(),"parts/midi.mid") ;
} catch (Exception e) {
 System.out.println("取得に失敗しました。") ;
 midi[0] = null ;
}

この書式だと、jar にまとめない状態だときちんと再生されるんです
けど、jar にまとめると再生できなくなってしまいます。midi だけ
でなく、au も再生できないので、midi がサポートされていないという
問題とも違うと思われるのですが・・・

是非お知恵拝借したく。できれば、Sun 、Microsoft 両方の JVM で
変更無しで動く方法だと嬉しいのですが。よろしく御願いします。
0571デフォルトの名無しさんNGNG
>>570
Exceptionは自己流のエラーメッセージに置き換えないで、
ちゃんとスタックトレースが読めるように処理しようね。
特にデバッグ中は。
0572570NGNG
570 です、連続投稿ご容赦。
加えて、Java アプレットで midi を「正確に」再生させる方法で
簡単な方法はありますか?570 の書式だと、Sun の JVM では一応
再生はできるもののテンポがギクシャクした感じになってしまうし
Microsoft の JVM では再生すらされません。ゲームのBGMなの
で細かい制御はできなくてもいいのですが、再生、停止、ループが
安定してできれば十分です。よろしく御願いします。
0573デフォルトの名無しさんNGNG
>>569 お前が >>567 だろが!
0574デフォルトの名無しさんNGNG
>>570
sound[0] = getAudioClip(getClass().getResouce("/parts/sound.au")) ;
ではどう?
0575デフォルトの名無しさんNGNG
>>570
いつも、new JarFile("filename").getInputStream(new JarEntry("filepath"))使ってました。
こんなに簡単に読めたんですね.....
0576デフォルトの名無しさんNGNG
MicrosoftのJVMはau形式のファイルしか再生できなかったとおもう。

auコンバータなどで検索をかければ、
wav形式のファイルをau形式のファイルに変換するフリーウエア等がみつかるとおもうので、
midiをwavやauに変換するフリーウエア等も組み合わせてau形式のファイルにするのがいいかと。
0577デフォルトの名無しさんNGNG
>>572
ちゃんとした音楽ならJavaSoundしかない
MSVMはもはや新規インストールできないわけで切り捨ててもいいだろう
0578デフォルトの名無しさんNGNG
MacOS9以前や、マイクロソフトのJVM等はあきらめるというのも、
一つの考えかたかもしれない。
かなしいが、OSX以外のMacで動く、最新のJVMなんてなさそうだしなあ。
0579デフォルトの名無しさんNGNG
Javaつかえねー
0580デフォルトの名無しさんNGNG
>>579
       |
       |
   ぱくっ|
     /V\
    /◎;;;,;,,,,ヽ   そんなエサで(ry
 _ ム::::(,,゚∀゚)::|   
ヽツ.(ノ:::::::::.:::::::.:..|)
  ヾソ:::::::::::::::::.:ノ
   ` ー U'"U'
0581デフォルトの名無しさんNGNG
macのvmはapple製なの?そこで信用できないんだけどまた独自仕様満載なわけ?
0582デフォルトの名無しさんNGNG
???
0583デフォルトの名無しさんNGNG
ちょっと知恵を貸してください。

MVCモデルに基づいてプログラムを作ろうと、まずMODELから作り始めました。
そしてMODELの中で、
System.out.println("処理中です\n");
みたいな感じでメッセージがコンソールで出るようになってたんです。

プログラムが一通りできて、swingでVIEWを作り始めたのですが、
先ほどの、「System.out.println("処理中です\n");」をJTextAreaにログみたいに表示させることにしました。

ここで、問題が・・・
最初、staticなメソッドで
public static PrintText(String message);
みたいなメソッドを作って、先ほどの、「System.out.println("処理中です\n");」
をそのまま
「Hoge.PrintText(("処理中です\n");」
と置き換えて作りました。

しかし、後に、VIEWにstaticにMODELがアクセスする構造だと、
複数のインスタンスを作るような状況だと困る状況が出来たのです。
(すべてのVIEWインスタンスで、JTextAreaが共通になる)

さて、
public static PrintText(String message);
メソッドを何とかしなくてはならない訳ですが、
MODELの中の該当クラスに全てVIEWへの参照を持たせてTextAreaへアクセスをするようにするとかなり汚い作りですよね?
こういう場合どうすればいいと思いますか?

困っています。アドバイスお願いします。
0584デフォルトの名無しさんNGNG
>>583
>public static PrintText(String message);
>メソッドを何とかしなくてはならない訳ですが、
>MODELの中の該当クラスに全てVIEWへの参照を持たせてTextAreaへアクセスをするようにするとかなり汚い作りですよね?

なぜ汚いと思うのかが謎。
それよりもPが大文字な方が汚いと俺には思える。

それにしても処理中ですというログが出るということは
モデルだけでなくコントローラも含んでると思われる。
ログをビューと思うのもおかしいしそもそものMVCとしての設計もおかしい。
0585デフォルトの名無しさんNGNG
>>583
>System.out.println("処理中です\n");
とか
>「System.out.println("処理中です\n");」をJTextAreaにログみたいに表示
とかのコードをモデルの中に埋め込むという時点で道を誤ってないかな。
0586583NGNG
う〜ん(汗)やっぱ汚い作りですよね。
実はコントローラの概念がはっきり分かってないせいもあります。

>>584
>なぜ汚いと思うのかが謎。
>それよりもPが大文字な方が汚いと俺には思える。

すみません。元のコードはPは小文字です。
だってほぼ全てのMODELにVIEWへの参照が埋め込まれるんですよ?
という事はMODEL単体では動かない訳ですよ。汚いと思います。

ログをVIEWに乗せる前に「ログのモデル」が必要な気がしてきました。


>>585
じゃあ、ログ的なメッセージを出力するにはどうしますか?
0587デフォルトの名無しさんNGNG
JAVA Applet と JAVA Script の違いを教えてください
0588デフォルトの名無しさんNGNG
ジャイアント馬場とジャイアントコーンくらい違います。
0589583NGNG
あ、ひょっとしてlog4jみたいに、
ログ専用クラスを作って、それから出力先への参照を持たせればいいのかな?
その場合ログ専用クラスはstaticになっちゃう結果は同じか・・(汗)
どうすればいいかわからないです。
0590デフォルトの名無しさんNGNG
portlet と sqlet の違いを教えてください。
0591デフォルトの名無しさんNGNG
デフォルト と デフォルメ の違いを教えてください。
0592デフォルトの名無しさんNGNG
>>583
なんだかよくわかりませんがMVCに拘りたいのなら、
イベントとリスナーの仕組みを使って、
イベントクラスでラップしたログをModelからViewへと飛ばしてみてはどうでしょうか。
0593デフォルトの名無しさんNGNG
>>583
public interface Logger {
public void printMessage(String s);
}
public class SystemOutLogger implements Logger{
....
}
public class TextAreaLogger implements Logger{
....
}

interface Loggee {
public void setLogger(Logger logger);
}
public class LoggeeObject implements Loggee {
private Logger logger;
public void setLogger(Logger logger){ this.logger = logger; }
void log(String s){ if (logger != null) logger.printMessage(s); }
}

public class AnyModel extends LoggeeObject {
anyMethod(){
....
log("ぬるぽ");
}
}
0594デフォルトの名無しさんNGNG
>>593
きれいだなあ。
少なくとも俺には汚くは見えない。
0595583NGNG
明快なお答えありがとうございます。
でも回答を待っている間にMODELに全部VIEWの参照を埋め込んじゃいました(汗)
すっげー汚いです・・。

>>592
ログを飛ばすという事は、やはりMODELが飛ばし先の参照を持つことになります。
ログクラスをMODELで持って、ログクラスの変更をviewに通知することで、
viewがログクラスを読みに行って画面更新されるのが理想的なMVCモデルな気がします。が、面倒です。

>>593
ありがとうございます。
綺麗な設計ですね。参考にさせていただきます。

というか、私はまだまだ勉強が必要ですね(´∀`;)MVC関連の資料をあさって見ます。
0596592NGNG
>>595
抽象的なイベントリスナをModelに登録するようにすれば、
それほどは汚くはならないとおもうよ。
ただ、あなたにはそれが汚く感じられているのかもしれないが。
0597デフォルトの名無しさんNGNG
http://www.jaga.jpn.org/game/BTank/
このゲームでチートをしようと思ってるんですが、書き換えた時にフリーズして無理でした
どうしてですか?ヒントだけでもいいので教えて下さい
0598デフォルトの名無しさんNGNG
>>597
氏んで詫びろ
ここをそんな下らないことで汚すな
0599デフォルトの名無しさんNGNG
http://www.bomberman-online.com/
ここのチートを教えて下さい
0600デフォルトの名無しさんNGNG
windowsでantを使っています。

antでビルドを行う際、jarファイルが別パーティションにあるので、classpathに
F:\Program Files\hoge.jar
といったように絶対パス指定を行いたいと思っているのですが
どのように記述すればよいでしょう?

<classpath>
<pathelemant path="F:\Program Files\hoge.jar"/>
</classpath>

だとエラーが出てしまいます…
0601デフォルトの名無しさんNGNG
Apacheの Axis で 簡単なWebサービスをテストしているのですが、
jwsファイルでextendsは使えないのでしょうか?
------- TestExtends.jws -----------
public class TestExtends extends Person {
public int getAge(){
return 10;
}
}

class Person {
public String getName(){
return "Suzuki";
}
}
-------------------------------------
ブラウザは真っ白な画面を表示し、Tomcatのログを見ると java.lang.NoClassDefFoundError が吐かれています。
このjwsファイルを別々(TestExtends.jws, Person.jws)に分けて配置すると、
ブラウザに ClassNotFoundExceptionが表示されます。

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

0602デフォルトの名無しさんNGNG
>>600
パス区切り文字には\ではなく、/ を使う。
0603デフォルトの名無しさんNGNG
Java(tm) House Mailing List Homepage はなくなったんですか?
休止中ですか?休止中ならいつ再開するんでしょうか?
0604デフォルトの名無しさんNGNG
あなたが投稿すれば再開します。
0605デフォルトの名無しさんNGNG
http://www.2ch.net/
ここのチート教えて下さい
0606デフォルトの名無しさんNGNG
netbeans 1.6 を使っています。

この中にタイマー(org.netbeans.examples.lib.timerbean.Timer)という
beans の部品があるのですが、これを使ってアニメーションを表示するアプレットを作っています。

統合環境の中だとコンパイルと実行はできるのですが、これを
実際に html ページから呼び出そうとすると
java.lang.NoClassDefFoundError: org/netbeans/examples/lib/timerbean/TimerListener
こんな例外が発生します。

これは起動時にクラスパスを指定しなければならないのでしょうか(アプレットだとどうやって?)
その場合、全ての環境で起動することができなくなってしまうのではないでしょうか?
0607606NGNG
すみません訂正です。
netbeans 1.6 → 3.6

ちなみに JRE は J2SE 1.4.2 を使っています。
よろしくお願いします。
0608デフォルトの名無しさんNGNG
>>606
そりゃあ、timerbeanをjarの中に入れてやらんと、相手が
持ってるとは限らんわな、という話じゃないの?

統合環境ならnetbeansの中にbeanがあるんだろうけど、
アプレットならアプレットのjarの中に入ってないとだめなん
じゃない? 少なくともアプレット使う人はそんなビーン持って
ないだろ。
0609デフォルトの名無しさんNGNG
>>606
配布するものにそんなもの使うな。
普通にjava.swing.Timerつかいなはれ。
0610デフォルトの名無しさんNGNG
少しお聞きしたいのですが

JDK1.1.8以前と以後の大きな変更が知りたいのですが、どのように調べたらよいでしょう?
検索をしているのですがまとめているサイト等が見つからないので困っています

API仕様を1つ1つ確認するしかないのでしょうか?

すみませんがよろしくお願いします。
0611デフォルトの名無しさんNGNG
http://www.yahoo.co.jp/
ここのチート教えて下さい
0612デフォルトの名無しさんNGNG
1.1.8を調べるんじゃなくて、Java 1.2 (Java 2)の新機能を調べた
ほうが早い。java.sun.comでJava 1.2を調べてみそ。

しかしなあ、JDK1.1.8ってもはや「J2SE」ですらないからなあ。
0613デフォルトの名無しさんNGNG
>>612
アドバイスありがとうございます
しかし探し方が悪いのかみつかりませんでした

旧Macでの開発にMRJ(JDK1.1.8程度)を使わないといけないので下調べをしていたのですが、
困りましたね
0614デフォルトの名無しさんNGNG
>>613
古いJDKやJREはここからダウンロードできます。
ttp://java.sun.com/products/archive/index.html
インストールするとリリースノートが入っていると思うので、それを読んでみては?
0615デフォルトの名無しさんNGNG
Java入門 Borland JBuilder VERSION 8
ftp://ftp.borland.co.jp/pub/jbuilder/techpubs/jb8/gsjava.pdf

↑こちらのPDFファイル読まれた方いますか?
これからJavaをやろうと思っているのですが、
書籍を使わずにこれをテキスト代わりにしても問題ありませんでしょうか?
0616デフォルトの名無しさんNGNG
ボーランド8か、懐かしい。。。。
7までは分厚いマニュアルがついてたのに、8からなくなって
オンラインマニュアルになったんだよな。
0617デフォルトの名無しさんNGNG
ボーランドが一番ふんぞりかえっていた時代だな
6までガンガン売れていたのに
webアプリを30万こえるエンタープライズのみにしたり
0618デフォルトの名無しさんNGNG
Javaアプレットを作っていて、わからないことが出てきました。
配列に関することです。問題を単純化するとこうです。

void test1(){
  int[] t1 = {10};
  int[] t2 = {20};
  t1 = t2;
  System.out.println(t1[0]);
}

void test2(){
  int[] t1 = {10};
  set(t1);
  System.out.println(t1[0]);
}
void set(int[] t1) {
  int[] t2 = {20};
  t1 = t2;
}

test1とtest2で結果が違います。
Javaでは配列はオブジェクトとして扱われるので参照型なのでしょう。
でもそれ以上は調べてもよくわからないのでよければ教えてください。
長文失礼。
0619デフォルトの名無しさんNGNG
>>618
メソッドの引数の受け渡しでは、参照を渡すのではなく参照値のコピーを渡します。
これ以上の説明を書くのが面倒になったのでこれでも読んでください。
ttp://www.gimlay.org/~javafaq/S012.html#S012-20
0620デフォルトの名無しさんNGNG
>>618
結果のとおりじゃないのか?
0621デフォルトの名無しさんNGNG
>>618
ポインタと思えばよく分かるんだけどな
0622618NGNG
教えてもらって、すっきりしました。
ありがとうございました。>>619-621
0623デフォルトの名無しさんNGNG
じゃ、ここに最新版ウィルス置いときますね
ttp://pukapuka.s1.x-beat.com/img-box/img20040921084521.lzh
0624デフォルトの名無しさんNGNG
HTMLタグを除去する関数ってありますか?
0625デフォルトの名無しさんNGNG
>>624
たぶん無い
正規表現でreplaceしたら?
0626デフォルトの名無しさんNGNG
J2SEのセットアップを実行していたらセットアップがエラーで途中で止まる。
何だこれーー
(Windows XP Home Editionで)
0627デフォルトの名無しさんNGNG
>>626
エラー内容ぐらい書け
0628デフォルトの名無しさんNGNG
>>610のレス、3度目めのデジャブ?
0629デフォルトの名無しさんNGNG
1.1.8なんかつかわず最新版の1.4.2_05を使えばいいのに。
それか、もっと新しいJ2SE5.0 RCを使えばいいのに
0630デフォルトの名無しさんNGNG
>>628
>>612-614
0631デフォルトの名無しさんNGNG
???
0632デフォルトの名無しさんNGNG
>>629
>>613
0633デフォルトの名無しさんNGNG
M$製品と違って1.4くらい使っても支障はないだろうに。
どういう顧客なんだかねえ。
0634デフォルトの名無しさんNGNG
いくらよくても動かないバージョンは使えないからな。
0635デフォルトの名無しさんNGNG
>>624
アトマークITにそういうサンプルあったかも?
覚えてる人フォローよろしく
0636デフォルトの名無しさんNGNG
>>633
残念なことにMacの場合、MacOS X より前のバージョンだと1.1.8相当のJREしかない。
613で言ってるMRJってのがその唯一の、Apple謹製のJREね。このバージョンが古いの。
0637デフォルトの名無しさんNGNG
swingでjtextareaに連続的に書き込むとエラーがでるんですが回避する
方法ありますか?synchronizedは使ってます。
0638デフォルトの名無しさんNGNG
>>636
中身がUnixなら(ry

*BSDだって雄志が1.4の対応を早めたんだし
0639デフォルトの名無しさんNGNG
>>638
MacOS Xより前のバージョンは、中身がUnixではないよ。
0640デフォルトの名無しさんNGNG
そういやそうだった。

そんなにMac対応が遅れていたのか?

EclipseをMacで使ってJava開発している香具師もいたような気がしたのだが
0641デフォルトの名無しさんNGNG
>>640
それはMacOS Xだろ。
0642デフォルトの名無しさんNGNG
無知で無能は無理せずRomってなさい。
またはコテでもつけてください。NGワード指定するから。
0643デフォルトの名無しさんNGNG
知ったかさんが一番困るね、ややこしくするだけ
この業界はホントこういうのが多い。他業種に比べ明らかに多いと思う。
>>633>>638>>640のようなのが。
0644デフォルトの名無しさんNGNG
>>643
お前も応えてるわけじゃないし同類じゃないか。
俺もなー
0645デフォルトの名無しさんNGNG
PowerMacG4はJava2非対応?
0646デフォルトの名無しさんNGNG
>>644
何も答えないのと、いい加減なことを答えるのとでは
大きな違いがあることにも気づかないような奴はどうしようもないな。
0647610NGNG
>>614
リリースノートが英語っぽいですががんばってみます、ありがとうございます

>>645
G4が非対応ではないのでMacOSXであればJava2対応だと思います

みなさんご意見ありがとうございます、636さんのおっしゃる通りですので苦労してます
ちなみにEclipseもOSXからしかありません





0648デフォルトの名無しさんNGNG
>>647
というか何やってる人?
アプレットでゲームとか?だったらご苦労様・・
0649デフォルトの名無しさんNGNG
むしろ、旧Mac用のアプリケーションをJavaで作らされてるほうがご苦労様だな。
0650デフォルトの名無しさんNGNG
>>648
旧Macだけではないのですがアプリケーションです
Windows、旧Mac、新Macで共通のアプリケーションを作らなければいけないのですがどこまでできることやら
0651デフォルトの名無しさんNGNG
まあ、印刷とかデバイスが絡まないのであれば、それなりになんとかなるな。
ドラッグドロップ必須とか言われなければ。
あれ?Swingって使えるんだっけ?
それにしても、Commonsなんかも全滅な感じだから、やりにくそう。
0652デフォルトの名無しさんNGNG
javaを勉強するために友人と共同制作で軽いゲームを作ろうということになったのですが
二人とも共同作業は初心者で(javaも軽くしってるぐらいです(汗))
どうやって分担わけをしたらいいのかわかりません

クラス単位で分けてくっつけていくほうがいいのでしょうか?
メソッド単位のほうがいいですか?
なにかいい方法あったら教えて下さい。
0653デフォルトの名無しさんNGNG
No suitable driverというエラーでます。
mysql-connector-java-3.0.15-ga使用。
CLASSPATHはセット済みです。
mysqlのtestデータベースにあるsampleテーブルを表示したいのですが…
Connection con = DriverManager.getConnection(
"jdbc:mysql://localhost/test", "root", "password");
ご教授お願いします。
0654デフォルトの名無しさんNGNG
>>653
Class.forNameとかは?
0655デフォルトの名無しさんNGNG
>>652
メソッド単位って、コンフリクトしまくりそうだが。
クラス単位の方がやりやすい。
さらにゲームは分担がやりにくい。
まあ、画面ごとになるだろう。
0656デフォルトの名無しさんNGNG
>>654
Class.forName("com.mysql.jdbc.Driver").newInstance();
ってしてますけど

0657デフォルトの名無しさんNGNG
>>656
newInstanceは必要ないと思うのだが・・・
0658デフォルトの名無しさんNGNG
Class.forNameからDriverManager.getConnectionまでのコード見せて。
0659デフォルトの名無しさんNGNG
いや、きっとTomcat使ったWebアプリで、ドライバのjarファイルを
WEB-INF/libに置いてないとかそんなのだろ。
0660デフォルトの名無しさんNGNG
>>659
そうすると、Class.forNameでClassNotFoundExceptionが出るはず。
0661デフォルトの名無しさんNGNG
>>652
片方が絵と音楽
もう一人がプログラム

ぶつからんね


・・・というのは冗談で、軽く作るとか言ってもものによる
たとえば初心者に優しく、むかしから基本中の基本の
シューティングなんかは敵キャラの動きを分担して作るとか

とりあえず名前だけでもいいからメインプログラマをたてて
分担の範囲と責任の所在をはっきりさせるしかなかろう

ぶっちゃけ一人で作った方が楽な場合も多いのだ
0662626NGNG
>>627
セットアップしようとしているもの
Java SDK,SE v1.4.2_05 Windows用 (間違ってませんよね?)

エラー内容

(インストール中にInstaller 情報というウィンドウがでてきて)

このWiondowsインストーラーパッケージには問題があります。
セットアップの一部として実行されるプログラムは正しく完了しませんでした。
サポート担当者またはパッケージのベンダに問い合わせてください。

(とでた。)


そのあと、インストールされているはずのフォルダーにはCOPYRIGHTというファイルだけがある。


0663デフォルトの名無しさんNGNG
>>662
もういっかいダウンロードしてみたら?
「セットアップしようとしてるもの」はファイル名の方がわかりやすい。
0664デフォルトの名無しさんNGNG
質問です。
Java 以下のようなコードを書けることをはじめて知りました。いわば、クラス初期化時に
のみ呼び出される、引数のない無名関数のようなものです。

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

    //下の行のコメントアウトをはずせば、bar, barbar も表示されます。
    //new Test();
  }

  static {
    System.out.println("foo!");
  }

  static {
    System.out.println("foofoo!");
  }

  {
    System.out.println("bar!");
  }

  {
    System.out.println("barbar!");
  }
}


このようなコードが書ける理由は、言語仕様書のどこを見れば分かるでしょうか?
http://www.y-adagio.com/public/standards/tr_javalang/
0665664NGNG
× Java 以下の
○ Java で以下の
0666デフォルトの名無しさんNGNG
>>664
ttp://www.y-adagio.com/public/standards/tr_javalang/8.doc.htm#39245
static initializerまたは静的初期化子という用語を覚えておくと吉。
0667デフォルトの名無しさんNGNG
>>664
これがわかると、JDBCでおまじないのようにClass.forNameってやる意味がおぼろげながらわかる。
0668664NGNG
>>666
ありがとうございます。初期化子は知っていましたが、静的初期化子は知りません
でした。

static がつかない(bar, barbar)場合、これらをなんと呼び、どこで規定されて
いるのでしょうか?
0669664NGNG
>>667
なるほど、あれは静的初期化子の実行を、目的のひとつにしているのですか。
ありがとうございます。
0670626NGNG
>>663

ファイル名 j2sdk-1_4_2_05-windows-i586-p.exe

ダウンロードしなおしても同じメッセージが出る。
0671デフォルトの名無しさんNGNG
DLしたら一時ファイルに保存するから、そこを消さないと
新たにDLしたことにならない
0672デフォルトの名無しさんNGNG
>>670
ファイルサイズは53,570,421バイトであってる?
7月に落としたやつのサイズだけど。
0673626NGNG
>>672

53,570,421バイトになってる。

>>671

1回目のダウンロードと同じくらい時間かかったから、
一時ファイルからじゃないと思う
0674デフォルトの名無しさんNGNG
>>673
もしかしてこういうやつか?なんかたまに同じような質問があるが

>「jre\lib\chaesets.jar:Old File not found. However,a file of the same name was found.No update done since file contents do not match.」
>「JAVA(TM) Update はシステムの更新に失敗しました。」

>553 名前:デフォルトの名無しさん[sage] 投稿日:04/06/01 13:07
>>>549
>同じファイルがあって邪魔って書いてあるじゃねーか
>jre以下をどかせ
0675デフォルトの名無しさんNGNG
質問です。

Pro*Cなんかでは、insert文をある程度ためておいて
とあるタイミングで一気に流せる仕組みがあるようなんですが
(名前は忘れてしまいました)
javaで同じように、insert文をためておいて一気に流すようなのを
提供していないでしょうか?
0676デフォルトの名無しさんNGNG
jdbc2.0以上ならバッチが出来る

jdbc batch で検索すればすぐにでるぞ
0677デフォルトの名無しさんNGNG
>>676
 レスありがとうございます。
エラー処理が面倒な感じですけれど、適当に試したところ
無事に動いたようです。ちょっとこれからに煮詰めてみます。

再度ありがとうございます。

0678626NGNG
Updateもなにもインストールに失敗するんだって!

何でだろう?
0679デフォルトの名無しさんNGNG
>>658
Class.forName("com.mysql.jdbc.Driver").newInstance();
Connection con = DriverManager.getConnection(
"jdbc:mysql://localhost/test", "root", "password");
0680デフォルトの名無しさんNGNG
FreeBSDで linux-sun-jdk1.4.2 を使っています。
java コマンドで 日本語をコンソールに出力できずに悲しんでいます。
2バイト文字がすべて?マークとなります。
Locale.setDefault(Locale.JAPAN);
としても同様で 環境変数LANGをja_JP.EUCとしても変わりません。

どなたが ヒントをください。。。
0681デフォルトの名無しさんNGNG
>>680
http://park15.wakwak.com/~unixlife/linux/de-java.html
0682680NGNG
>>681
アドバイスありがとうございます。
Xを入れていない環境でもフォント設定が必要ということでしょうか?

当方Xを入れていない環境で telnet経由で使っています。
public class test{
public static void main(String args[]) {
System.out.println("あいうえお");
}
}
こんなんで java test > ./tmp なんてやっても
tmpの内容は「?????(改行)」です。
0683653NGNG
CLASSPATHを設定せずに、j2sdkとj2reのjre下に
mysql-connector-java-3.0.15-ga-bin.jarを置くことで
問題解消しました。
0684653NGNG
× jre下
○ jre/lib/ext
0685デフォルトの名無しさんNGNG
>>683
それ、全然解決になってないから・・・
0686デフォルトの名無しさんNGNG
>>683
ようするにクラスパスが通ってなかったと。
そしたらforNameで例外が出るはずなんだけど。
0687デフォルトの名無しさんNGNG
>>652
> javaを勉強するために友人と共同制作で軽いゲームを作ろうということになったのですが
> 二人とも共同作業は初心者で(javaも軽くしってるぐらいです(汗))
> どうやって分担わけをしたらいいのかわかりません

CVSを使えば分担分けする必要はない。
0688デフォルトの名無しさんNGNG
>>687
そうかぁ?分担分けの負荷は下がるが必要が無くなるわけではないぞ?
CVSはソースの配布、バージョン管理、競合が発生した時の解決方法を
提供してはくれるが、それ以上のものではないよ。過度の期待は禁物。

というかCVSサーバどこに立てるんだろうか。sourceforge.jp?
0689デフォルトの名無しさんNGNG
中古のマシンにLinux入れてCVSサーバ立てる
0690デフォルトの名無しさんNGNG
>>687
あふぉがいた
それって分担の解決方法じゃないだろ
0691デフォルトの名無しさんNGNG
分担分けを分ける必要がありますね。
0692デフォルトの名無しさんNGNG
Javaでやるなら、CVSは結構めんどうなことが多いから、Subversionなんかがいい。
とくに、まったりやるときで、クラス名が変わったりパッケージ移動したりが多いと、CVS邪魔。
0693デフォルトの名無しさんNGNG
担当分けるにしても、最初は共同作業だよ。
1.まず、二人共同でアイデアを出し合って、ゲームの基本ルールを固める。
 なんのゲームかにもよるけどここはおろそかにできないぞ。
2.次にゲーム画面を考える。この時、画面の操作系を決める。
 もちろんメニューや画面遷移の流れもだよ。
 データをロードする、レベルを選択するなんてのもここにでてくる。
 キーボードやマウス操作もここで決める。
3.洗い出した操作を一つの独立した機能として捉えて一覧を作る。
4.一つ一つの機能に必要なデータを決定する。
 どの機能にどのデータが関係しているかを見極めて依存度を明確にする。
5.依存度が少ない単位で、機能ごとに担当を分けて開発する。
6.開発中に問題がでてきたら、そのつど徹底的に話し合う。
0694三流NGNG
質問です。。

String command = "ls -l";
Process process = Runtime.getRuntime().exec(command);
InputStream is = process.getInputStream();
BufferedReader br = new BufferedReader(new InputStreamReader(is));

この結果が、

合計 28
-rw-rw-r-- 1 issei issei 1792 Nov 5 23:02 RunLS.class
-rw-rw-r-- 1 issei issei 2334 Nov 5 23:02 RunLS.java
-rw-rw-r-- 1 issei issei 1977 Nov 5 22:56 RunLS.java〜
-rw-rw-r-- 1 issei issei 1454 Nov 5 22:48 RunPWD.class
-rw-rw-r-- 1 issei issei 2916 Nov 5 22:48 RunPWD.java
-rw-rw-r-- 1 issei issei 4098 Nov 5 21:45 Test.java

といった感じで取得できるのですが、取得した結果を便利に操作したく(たとえば、ファイル名で検索してファイルサイズを取得できるような…)、
配列に納めようかと思っています。自前でライブラリを書きたいのですが、もし、似たような処理をしているサンプルらいライブラリが
あれば教えてください。Googleでさがしたんですが、出力まではよかったものの、そこから先を
処理しているところが見あたらなかったので…
よろしくお願いします。
0695デフォルトの名無しさんNGNG
>>694
それは止めた方がいいね。
それは出力を解析して加工するということになるわけだけど、
労多くして実り少ない作業だよ。
理由は、コマンドの出力結果が常に同じとは限らないから。
OSによっても違うし、
PATHの設定によっても違うし、
コマンドのバージョンによっても違うし、
ユーザの言語環境によっても違う。
単にファイル情報を扱いたいなら、Fileクラスを利用したら?
0696デフォルトの名無しさんNGNG
質問です。
今TCPサーバーのプログラムを作っているのですが、acceptで接続要求を待機
しているときにボタンを押すとスレッド終了させて接続要求待機をやめるようにし、
もう一度押すとまたスレッドが開始されて
acceptで接続要求をするといったようにしたいのですがどうもうまくいきません。
解決方法が分かる方よろしくお願いします。
0697デフォルトの名無しさんNGNG
>>696
質問です。
質問の内容がよくわからないのですが、どういう意味ですか?
0698デフォルトの名無しさんNGNG
>>696
ServerSocket server=new ServerSocket(80);
server.setSoTimeout(1000);
while(true) {
  Socket client=server.accept();
  if(btnFlag) break;
}
0699間違えたNGNG
>>696
ServerSocket server=new ServerSocket(80);
server.setSoTimeout(1000);
Socket client=null;
while(true) {
  try {
    Socket client=server.accept();
    break;
  } catch(SocketTimeoutException ex) {
    if(btnFlag) break;
  } catch(Exception ex) {
    System.out.Println("error");
    return;
  }
}
if(client==null) return;

0700また間違えたNGNG
>>696
ServerSocket server=new ServerSocket(80);
server.setSoTimeout(1000);
Socket client=null;
while(true) {
  try {
    client=server.accept();
    break;
  } catch(SocketTimeoutException ex) {
    if(btnFlag) break;
  } catch(Exception ex) {
    System.out.println("error");
    return;
  }
}
if(client==null) return;
//以下clientに対する処理
0701デフォルトの名無しさんNGNG
javaプログラムでJDBCによるデータベースへのアクセスでデータベースの
中の数値ってプログラム上の変数に設定とか参照とかするにはどうすれば
いいのでしょうか。
a=データベースの値
みたいプルグラムを組みたいんですけど。
SELECT文で戻り値とかとれるのかな?
ご教授よろしくお願いいたします。
0702デフォルトの名無しさんNGNG
>>692
SubversionはCVSよりもインストールと設定がめんどい。
Eclipse + CVSならCVSのほうが楽
0703デフォルトの名無しさんNGNG
>>693
担当分けする前に仕様書を書く

UMLを使っても仕様書を書く

のが大事
0704デフォルトの名無しさんNGNG
gzip圧縮されたデータの受信と解析について質問です。

現在、Javaで2ちゃんねる専用ブラウザをゼロから作っています。
subject.txtやdatを受信しようとするとgzip化されていたりするわけですが
その受信データをGZIPInputStreamで解凍しながらファイルに書き込もうとしています。

InputStream in = new GZIPInputStream( sock.getInputStream() );
PrintWriter pwOutFile = new PrintWriter(new BufferedWriter( new FileWriter( "tech_subject.txt") ));

みたいな感じで使おうとしてるのですが
GZIPInputStreamの部分で

Exception in thread "main" java.io.IOException: Not in GZIP format
at java.util.zip.GZIPInputStream.readHeader(Unknown Source)
at java.util.zip.GZIPInputStream.<init>(Unknown Source)
at java.util.zip.GZIPInputStream.<init>(Unknown Source)

と、怒られてしまいます。
もしかしたらレスポンスヘッダも一緒にしてるのが原因かなと思うんですが
その場合、ヘッダとボディ(gzip圧縮された本体)を分けて処理する良い方法などはありますでしょうか?
0705デフォルトの名無しさんNGNG
>>704
良い方法は、SocketのInputStreamオブジェクトで読み込んだデータを
HTTPの規約に従って自分で解析して、ヘッダとボディを分けるしか
ないですね。
あと、2ちゃんだと確かボディがchunkエンコーディングの可能性もあるので
その場合は、受信したデータをただヘッダとボディに分けるだけじゃ
ダメになります。
0706デフォルトの名無しさんNGNG
JDBCでint型のカラムの値を取得するメソッドって
getColumnTypeでいいんでしょうか?
よろしくお願いします。
0707デフォルトの名無しさんNGNG
getIntでない?
0708704NGNG
>>705
ありがとうございます!!(゚∀゚)
chunkエンコーディングというのは初めて聞きました。
普通は「ヘッダ+空行+ボディ」となっているそうですが
ヘッダと空行を単に切り取るだけという方式では
gzipのデコードは出来ないってことなんですね・・。

面白そうなツールを考えたんですが、そこにたどり着くまでには
まだまだ先は長そうです。がんばっていきます。
0709デフォルトの名無しさんNGNG
マルチうざい。氏ね。
0710デフォルトの名無しさんNGNG
>>708
いえ、まだ確実には分からないのですが、とりあえず受信したレスポンスヘッダを
調べてみてください。普通のやつなら分けるだけで済みますので
0711デフォルトの名無しさんNGNG
すいません。ストリームを理解していないと思われる質問でもいいですか?

ファイル等にクラス情報を保存したいときは
シリアライズしてストリームで流して、そいつ読み込むとデシリアライズできるーってのに気づいたのは
いいんですが、ファイルに保存して、て手順を踏んだり、ソケットでネットワーク通してとか
そういうのはいいんですけど、
シリアライズしたストリームをStringで保存して
デシリアライズできないのかなーっと、考えました。

どうやってもできないんですよー教えてくださらない?
ストリームの情報をそのまんま変数に入れるって処理がわかればいいのかな?
0712デフォルトの名無しさんNGNG
>>708
あなたのモチベーションに合うかどうか分かりませんが、
既存のJava製2chビューアのソースが参考になるかもしれません。
monalipseとか色々ありますが。
ttp://monalipse.sourceforge.jp/
ソースは、ダウンロードしてもいいしここからブラウザで見ることもできます。
ttp://cvs.sourceforge.jp/cgi-bin/viewcvs.cgi/monalipse/
0713デフォルトの名無しさんNGNG
>>711
何の為にStringにしたのかよく分からないのですが、
シリアライズしたバイト配列を、new StringでUS-ASCIIかCp1252か
ISO-8859-1でエンコード指定すれば、確かバイトコードがそのまま
ゼロ拡張されて、Stringインスタンスに収められるかもしれないので
とりあえずそれで。
0714711NGNG
>>713さんへ
すいません。「シリアライズしたバイト配列を」っていうのが、ちょっと意味わからないです。
たとえば、outputstream(クラス名かなり忘れてます)で、writeってメソッドが
あったとして、それの引数に「シリアライザブルをインプリメンツした」インスタンス
を渡すじゃないですか。
でも、これってストリームにwriteするってことで、このwriteの書き込み先を
Stringの変数にしたいんです。
stream系のクラスじゃない奴使えばいいのかな?と思ったけど、そういうのって
javadocになかったんですよね。

もし、713の解答が、すでに上記のものを指しているのだとしたら私が理解してないだけなので
レス不要です。
お粗末さまです。
0715デフォルトの名無しさんNGNG
>>714
シリアライズされるデータは1バイト単位で書き込まれ、String変数の
データはchar型、つまり2バイト単位で書き込まれるので整合しません。
0716デフォルトの名無しさんNGNG
>>711 byte[]でいいじゃん。なんでStringにしたいわけ?
0717デフォルトの名無しさんNGNG
>>715
StringのシリアライズってUTF8+16bitサイズじゃなかった?
長い文字列は通らないよね
0718デフォルトの名無しさんNGNG
はじめまして。質問させてください。

現在、電子署名の拡張情報の値をjavaで取得する方法で悩んでいます。
X509ExtensionクラスのgetExtensionValueメソッドを使用してDERで符号化されたOCTET文字
列までは取得出来ました。
しかし、取得したbyte配列をStringに変換しても文字化けを起こしていて中の値が見ること
が出来ません。
どうすれば文字化けを直すことが出来るでしょうか?
よろしくお願いします。
0719デフォルトの名無しさんNGNG
質問、と言うかアンケート?です。

J2SDK の各バージョン間で、どの程度の互換性を期待してますか?
1.4.x と 1.3.x では互換性なんて望めたもんじゃないんでしょうけど
1.3.0_x と 1.3.1_x ですら動いてたものが動かなかったりするとさすがに・・
と言うか 3 桁目は何の違いで番号振られてるのだろう。

最近は 1.4.x が前提のライブラリが充実してきて、
1.3.x での動作検証がしんどいです。
ていうか微妙に動かない場合が殆どで泣けます。
1.4.x 使わせて欲しいんですが、諸般の事情でダメだそうです。
0720デフォルトの名無しさんNGNG
>>719
お前、相変わらずケツ毛がハミ出てるな
0721デフォルトの名無しさんNGNG
>>720
ケツゲってそんなに長くなるものなのですか?
0722デフォルトの名無しさんNGNG
>>721
だって短パンのスソからごっそりはみ出てるぞ。
…ていうか、それ短パンじゃなくてブリンクスかよ!
今どきそんなモンはくんじゃねーよ!
0723デフォルトの名無しさんNGNG
ちょいと 極一部分での質問なんですけど
人の書いたソースを見てるとこんなのがあったんですけど

HttpSession session = request.getSession(false);
session = request.getSession(true);

このコードって(特に上の行)意味ありますか?
0724デフォルトの名無しさんNGNG
ない
0725デフォルトの名無しさんNGNG
/* 警告:上の1行を消すとなぜかコンパイルが通りません。*/
0726723NGNG
>>724-725 ありがと

でもさすがに
// HttpSession session = request.getSession(false);
session = request.getSession(true);
なんてしないよ w

書いた人しか理由はわからんかな〜
0727デフォルトの名無しさんNGNG
2行目を書いたのは引き継いだ人間だろ。
前任者のミス(falseを設定している)を晒したまま、
ソースコードを修正するという高等技術だよ。これは。
0728723NGNG
>>727 なるほど
そう読むとこのソースに助長なところが多いのが理解できる。
0729デフォルトの名無しさんNGNG
2ch用語かも知れんが、一応真面目にツッコんでおこう。
冗長(じょうちょう)な。
0730728NGNG
>>729
>2ch用語かも知れんが、
いえ typoです。。。汗。まちがいなく打ち間違い。。汗。。


(じょ・う・ちょう か、、、、、どおりで変換候補に出てこなかったわけだ)
0731デフォルトの名無しさんNGNG
>>730
それはtypoじゃなくて、間違いだな。
0732デフォルトの名無しさんNGNG
じょちょう(←なぜか変換できない)
0733デフォルトの名無しさんNGNG
1970 年 1 月 1 日 00:00:00 GMT から現時点までの
経過秒数を取得したいのですが、どうすればよろしいでしょうか。
Dateクラスを使用すればと思ったのですが・・・よくわかりません。。。

どなたかよろしくお願いします。
0734デフォルトの名無しさんNGNG
>>733
System.currentTimeMillis() / 1000
0735デフォルトの名無しさんNGNG
>>734
ぉおおお!!こんなまさにピッタリの関数があったとは。
どうもありがとうございました。感謝感謝です。
0736デフォルトの名無しさんNGNG
すいません、質問させてください。

現在の自マシンのグローバルIPアドレスとそのホスト名を
取得したいです。で、以下のようなコードを試したのですが、
ローカルIPアドレスとローカルのマシン名を取得してしまいます。

String local = InetAddress.getLocalHost().getCanonicalHostName();

どなたか良い解決法があれば教えてくださいませ。
0737デフォルトの名無しさんNGNG
一昨日、Javaを始めた初心者ものです。
forやwhileループを用いる際に、「待ち時間」を設定することが出来ますか?

for(i=0; i<10 ; i++)
{
System.out.println(i)
}
の場合、0,1,2...と表示される、各数字を(例えば)1秒おきに計算させたいのですが。
0,(1sec),1(1sec),2...って感じで。

0738デフォルトの名無しさんNGNG
>>737
for(i=0; i<10 ; i++){
 try{
  Thread.sleep(1000);
 } catch(InterruptedException e){}
 System.out.println(i)
}
0739デフォルトの名無しさんNGNG
>>737
初心者にはちょいきついな。
スレッドとか使うんだ。
wait()とかnotify()とかな。
0740デフォルトの名無しさんNGNG
>>738-739

ありがとうございます。
738さんの方法で対応できました。
スレッド勉強します。
0741デフォルトの名無しさんNGNG
場違いな質問かもしれませんが……Eclipseでのテスト駆動開発に興味を持ち、本をかってためしてみたのですが
コンパイルに成功し、実行をかけると
「TestRunnerの起動中」で止まってしまい、コンソールに

Could not connect to: : 13004
java.net.ConnectException: Connection refused: connect
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(Unknown Source)
at java.net.PlainSocketImpl.connectToAddress(Unknown Source)
at java.net.PlainSocketImpl.connect(Unknown Source)
at java.net.Socket.connect(Unknown Source)
at java.net.Socket.connect(Unknown Source)
at java.net.Socket.<init>(Unknown Source)
at java.net.Socket.<init>(Unknown Source)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.connect(RemoteTestRunner.java:547)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:270)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:167)

と表示されてしまい、上手くいきません。
本にもこのようなときの対処が載っていないので……
当方、テスト駆動開発のことが勉強できれば、と本をとったのですがJavaやEclipseは全然使ったことがなく、何か必要なソースがインクルード、送付されていないのか、位しかわからずどうすれば良いかさっぱりで。
不勉強ゆえの質問で申し訳ないですがお答えいただければ助かります(´△`;)

ああ、勉強とはいえ学びたいところ以外のところで時間がとられるのはストレスがたまる・・・
0742デフォルトの名無しさんNGNG
>>741
ソケット接続先のサーバが起動していない予感!
0743デフォルトの名無しさんNGNG
13004のポートに接続できないと言われてるけど、その相手は何なの?
0744741NGNG
>>742さん
ソケット接続先のサーバが起動していない、ですか。
ツールの設定でどうにか成るものなのでしょうか?
プログラマとしても知識は浅いのでソケット接続、といってもぴんとこないのが情けないです(汗)
ううん、これはjavaではなくEclipseスレにいった方がいいですかね・・・(汗)
0745741NGNG
>>743さん
すいません、知識不足ゆえ理解が悪いだけなのかもしれませんが自分としては特に通信をつかって何かをしようということはしてないんです。
プログラム的にはテストケースを使ってメソッドごとの動作を検証してやるというものだったのですが。
と言うか、内容的にはクラスをつくってそのメソッドでAssertで警告を出す、と言うだけのものでした。
0746デフォルトの名無しさんNGNG
質問です。リモートのPCにネットワークを介して、何かしらのクラスを投げて、それを
クラスローダーで実行させる事を考えます。ですが、クラスを投げる方を不特定多数の人間
が行うので、何の対策もとらないと、何を投げるかわからないという問題があります。
そこで、リモートのPCのクラスローダーにアップレットのような制限以内の処理しか行わないクラスだけ
ロードさせるようにさせたいのですが、セキュリティマネージャーとかでそういった事ができるのでしょうか?
0747デフォルトの名無しさんNGNG
すいません、例えば4000秒→1時間6分40秒
のように秒から時間に直すのにはJAVAでどうすればいいのでしょうか?

変な文になってしまってスマソ
0748デフォルトの名無しさんNGNG
自力でやる
0749デフォルトの名無しさんNGNG
SimpleDateFormatterクラスを使うとか
0750デフォルトの名無しさんNGNG
SimpleDateFormatだった
0751デフォルトの名無しさんNGNG
質問です。
たとえば 747さん の質問に対して 750さんの返答
この 何するにはどのクラスってのは みなさんどうやって調べてるんですか?
便利なリファレンスでも?日ごろからの勉強?
0752デフォルトの名無しさんNGNG
>>746
appletviewerが正にそういうことをやってるんじゃないかな
ソース入手して読んでみたら?面倒くさそうだけど。
0753デフォルトの名無しさんNGNG
>>751
それっぽい単語でGoogle検索すれば見つかると思うが。
どうでもいいが>>747くらいのことは自力でやる方が速いと思うぞ。
0754デフォルトの名無しさんNGNG
自宅のパソコンにJavaを入れたくて、「jcpad」というものをダウンロードしたのですが、
解凍した後、jcpadを起動させようとすると、

コンパイラ(W)と標準のデータ保存フォルダ(D)のパスを設定して下さい

と出て、よくわからなくて使えません。どうしたらいいでしょうか?
0755デフォルトの名無しさんNGNG
--Java1.4.2_05 win32 / windows2000
for(float v = 0; v<=1; v += 0.1){
System.out.println(v);
}
- result
0.0
0.1
0.2
0.3
0.4
0.5
0.6
0.70000005
0.8000001
0.9000001

なんでこんな妙な小数点が出るのですか?
0756デフォルトの名無しさんNGNG
>>755
まずは浮動小数点について調べてみそ。
有限ビット幅で小数を表現しようとしても表現しきれない。
そこでビット幅に収める時にどうしても丸め誤差が生じてしまう。
これはJavaに限った話ではなく、多くのプログラミング言語に共通の話。
内部計算が有限の2進数で行われる以上、避けようがない。
少数演算にはもう一つ、計算精度の問題もあるがこれは別な話。
丸め誤差を回避するには、多倍長演算ライブラリを使用する。
Javaならば、BigDecimalが用意されてるからそれを使う。
もう一つの方法は、計算精度があらかじめ範囲内におさまることが
分かってる場合、intで計算して、わり算という方法もある。
0757デフォルトの名無しさんNGNG
ていうか、「intで計算して、わり算という方法」では丸め誤差は避けられないでしょ。
素直にBigDecimal使っとけ。
0758デフォルトの名無しさんNGNG
 ファイルにあるデータを保存していくのですが(クラスとかをシリアライズして)
、ですが、アプリケーションをverUPするごとに、そのクラスの中のフィールドは
増えていく事が予想できます。
 そこで、変更後のクラスへファイル内のデータ(ファイル内に書き込まれている
のは変更前のクラス)を読み込み、以前からあったフィールドだけしっかり値を得る
事ができるようにしたいのです。
 無理やりやればどうにでもなりそうな気はしますが、こういった時に有効なテクニック
などありましたら、ご教授下さい。おねがいします。(例えば、要素が可変な形でファイルに
書き込むテクニックなどありますか)
0759758NGNG
あるデータ←ある特定のという意味です。ファイル内のって意味じゃないです。
すいません
0760デフォルトの名無しさんNGNG
>>758
オブジェクトシリアライズでそれやるのは無謀すぎ。
XMLかプロパティ形式で保存した方がいいよ。
あとはバージョンが分かるような情報を埋め込むことだね。
0761デフォルトの名無しさんNGNG
>>755
まずは情報処理の基礎の浮動小数点というものを勉強しろ
Java以前にすべての言語で必須の共通事項だ

昔は各社浮動小数点フォーマット違っていたが
今はIEEEにだいぶ統一されていると思う

浮動小数点演算は誤差を容認して広い範囲を扱うものだ
従ってイコールで条件判断してはいけない
0762デフォルトの名無しさんNGNG
>>758
シリアライズするクラスに
private static final long serialVersionUID = 任意の数値;
を含めればOK
0763デフォルトの名無しさんNGNG
>>758
シリアライズするクラスに
private static final long serialVersionUID = 任意の数値;
を含めればOK
そうすればフィールド&メソッドの量が変更されても、前バージョンの
クラスを読み出せる。

0764デフォルトの名無しさんNGNG
>>755

むちゃくちゃな文法だな(w
試験なら0点だぞ

float v = 0 :int → floatの拡大変換
v<=1       :floatとintの比較
v += 0.1    :floatにdoubleを足す

コンパイルエラー出るのでは?
0765デフォルトの名無しさんNGNG
>>764人生やり直せ
0766デフォルトの名無しさんNGNG
>>764
わざとネタを書くな。
だから、このスレの質問者が減るんだ。
0767デフォルトの名無しさんNGNG
hinmei kisetsu nedan
りんご  秋   300

上記のように表示させるSELECT文において
nedanである300をnedan1に設定する場合

Statement stmt = conn.createStatement ();
ResultSet rset = stmt.executeQuery(省略)
int nedan1 = rset.getInt(3);
でnedan1に300は設定されますか?

NEXT()でカーソルを進めたりする必要とかあるんですかね?
ご指導よろしくお願いします。




0768デフォルトの名無しさんNGNG
どうして試してみないんだ?
0769デフォルトの名無しさんNGNG
結果が分かったら次にResultSetのドキュメントを読むこと
0770デフォルトの名無しさんNGNG
JDK1.5 + Eclipse 3.0 + Lomboz 301 + JBoss 3.2.5
でjavax.ejb.SessionBeanでNoClassDefFoundErrorが出るんですが
何をCLASSPATHに追加すればいいのでしょうか?
0771770NGNG
書き忘れました。すいません。
J2EE 1.4です。
0772デフォルトの名無しさんNGNG
import java.net.*;
import java.io.*;

public class Test {
public static void main(String[] args) {
try {
URL url = new URL(args[0]);
FileOutputStream out = new FileOutputStream(args[1]);
InputStream input = url.openStream();
while(true) {
int read = input.read();
if (read == -1) break;
out.write(read);
}
out.close();
}
catch(Exception e) {
System.err.println(e);
}
}
}

このプログラミングでhttp://quote.yahoo.co.jp/q?s=5352.T&d=tを取得しようとすると

C:\neko>java Test http://quote.yahoo.co.jp/q?s=5352.T&d=t neko2.txt
java.lang.ArrayIndexOutOfBoundsException: 1
'd' は、内部コマンドまたは外部コマンド、
操作可能なプログラムまたはバッチ ファイルとして認識されていません。

とエラーが出てきて上手くいきません解決方法を教えていただけませんか?
それと取得時の文字化けも直したいんですが。
0773デフォルトの名無しさんNGNG
>>772
試してないんですまないが
java Test "http://quote.yahoo.co.jp/q?s=5352.T&d=tOpen neko2.txt"
でどうだ
駄目だったら"の位置を変えてみてくれ。
0774デフォルトの名無しさんNGNG
くおーと
0775デフォルトの名無しさんNGNG
>>773
サンクス
java.lang.ArrayIndexOutOfBoundsException: 1
とでましたがurlを"で囲ってやると解決しました。
0776デフォルトの名無しさんNGNG
java.lang.StringIndexOutOfBoundsException: String index out of range: -37
at java.lang.String.substring(String.java:1444)
at Htmlget.run(Tai.java:36)
Exception: java.lang.StringIndexOutOfBoundsException: String index out of range: -37

原因はなんだとおもいますか?
0777Ruiby!!!!!!!!!!!!!」NGNG
バグは全てソースの中にある(まつもとゆきひろ、Ruby開祖)
0778デフォルトの名無しさんNGNG
>>776
Stringクラスのsubstring()でインデックスが-37になったから
0779デフォルトの名無しさんNGNG
どうやっても書いてあること以外の原因は見当たらないが?
0780770NGNG
自己解決しました。
j2ee.jar追加したら出来ました。
0781758NGNG
>>762
>>763
ありがとうございます。そんなテクニックがあるんですね。

>>760
XMLとかプロパティ形式ってのも時間があればチャレンジしてみたいです。
ありがとうございます。
0782デフォルトの名無しさんNGNG
コンパイルされたプログラムが、htmlを開くと反映されていません。
アプレットヴィワーには反映されているんですけど。
htmlで反映させるにはどうしたら良いでしょうか。
0783デフォルトの名無しさんNGNG
コンパイルしようがhtmlにはjavaのプログラムが反映されるわけがないんだが。
Webブラウザから見てリロードしても反映されないって話?キャッシュが残ってるんだろ。
0784デフォルトの名無しさんNGNG
>>782
キャッシュを消去
0785デフォルトの名無しさんNGNG
ファイル入力に関してです。
以下のソースを持つプログラムを実行したのですが、うまくファイルの内容を読んでくれません。
配列にデータが入ることなく(デフォルト値のまま)、プログラムは最後まで実行されます。

試しに、ファイル入力をやめて、直接プログラム内で初期化すると、正しく動くので、やはりここが問題なのかと。
まだJavaは始めたばかりで、参考書のプログラムをかなり参考にしましたが・・・。
よろしくお願いします。
public void PlaneModel()
{
try
{

BufferedReader br = new BufferedReader(new FileReader("scenario1.txt"));
String str;

for (int i = 0; i < plane.length; i++)
{
str = br.readLine();
plane[0][i] = (double)Integer.parseInt(str);
plane[1][i] = (double)Integer.parseInt(str);
}

br.close();
}

catch(IOException e)
{
System.out.println("Failed to read a File.");
}

}
0786デフォルトの名無しさんNGNG
>>785
(double)Integer.parseInt(str) ってギャグか何か?
0787デフォルトの名無しさんNGNG
>>785
for (int i = 0; i < plane.length; i++)
を
for (int i = 0; i < plane[0].length; i++)
とする。
ただし、double[]型のplane[1]のサイズがplane[0]と
同じ以上でなきゃダメです。
0788デフォルトの名無しさんNGNG
>>785
for (int i = 0; i < plane.length; i++)
{
str = br.readLine();
plane[0][i] = (double)Integer.parseInt(str);
plane[1][i] = (double)Integer.parseInt(str);
}
planeて配列の宣言と生成はどこでやってるの?
あと、どうみてもループカウンタと配列要素の参照の仕方が合ってないよ。
0789デフォルトの名無しさんNGNG
>>785
for (int i = 0; i < plane.length; i++)
を
for (int i = 0; i < Math.min(plane[0].length, plane[1].length); i++)
とする。
0790デフォルトの名無しさんNGNG
ありがとうございます。
plane.length に関しては、おかしいですね。
ただ、この部分を配列サイズにあった定数にしても駄目ですね。

配列は、このクラスの頭、どのメソッドにも属していないところで宣言してます。
もしかしてそこですか・・・
0791デフォルトの名無しさんNGNG
http://ews2.cc.niigata-u.ac.jp/~takeuchi/tbasic/
ここを見てbasicを学んでいるんですが、
普通のユークリッド互除法はマスターしたんですが、
拡張ユークリッド互除法と再帰ユー(ryがさっぱり分かりません。
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
例えば,GCD(13,5) を計算するのに,

13=2*5+3  
5=1*3+2   
3=1*2+1
2=2*1     

を求めて,GCD(13,5)=1 とするものでした。今の場合この計算は,全く自明で,互除法は不要な感じがします。しかし,少し視点を変えるとそうとも言えません。上の式のうち最後の項を除いて,それぞれ,移項すると,

13-2*5=3
5-1*3=2
3-1*2=1

が得られます。ここで,3行目の式の2の所に,2行目の式を代入して,5と3に注目してくくると,
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
と、あるんですが、ここから先の説明がイミフです。
1=3-1*2=3-1*(5-1*3)=2*3-1*5

ここでイミフです。
1
=3-1*2
=3-1*(5-1*3) ←代入しました
=2*3-1*5 ←ここでわりません。
なぜこんな式になるのか教えてください、おねがいしますm(_ _)m
0792デフォルトの名無しさんNGNG
↑ タイトルのjavaの 字 を見逃してました(^^||)
すみませんでした。
0793デフォルトの名無しさんNGNG
えっと見た感じ

1=3-1*(5-1*3)
の左から2番目の3に
1番目の式3=13-2*5を代入して整理したと思われ

ただこれは何故こんなややこしいことをするのかは
多分、結論から逆に辿った感があり、説明出来ないと思う
0794デフォルトの名無しさんNGNG
>ただこれは何故こんなややこしいことをするのかは
>多分、結論から逆に辿った感があり、説明出来ないと思う

これが拡張ユークリッドの互除法のアルゴリズムだから。
0795デフォルトの名無しさんNGNG
>>792
説明の通りだがや。

1
=3-1*2
=3-1*(5-1*3)
=3-1*5+1*1*3←5と3に注目してくくる
=3-5+3
=3+3-5
=2*3-1*5
0796792NGNG
>>793さん
すみません、イミフ…です(汗

>>794さん
後に理解が出来そうな予感がします…

>>795さん
=3-1*(5-1*3)
=3-1*5-1*1*3
=3-5+3
=3+3-5
なるほど…ここで最後に素数に変換してるんですね。
=2*3-1*5…_〆(.. )メモメモ

検索しても分からないし、誰にも聞けなくて絶望していたところでした。
間違いの書き込みなのに、怒られると思ったのに。
まさか回答をしてくれるとは思いませんでした。ほんとに嬉しいです。
やっと、やっと、先に進めます!真剣に考えてくれた皆さん
ありがとうございました!!
0797デフォルトの名無しさんNGNG
>>796
> ここで最後に素数に変換してるんですね。

なんで素数?変換?
単に被除算数に注目してくくりだしてるだけだと思う
0798デフォルトの名無しさんNGNG
JavaBeanってあるんですが、なんでpublicなフィールドじゃだめなんでしょう?
透過的なセッターゲッターをめくらめっぽう作成するのならpublicなフィールドで十分だと思うのですが。
0799デフォルトの名無しさんNGNG
>>798
たとえばあるプロパティは10〜20の値しか取ってはいけないとする
そういう場合どうするかね?

それを操作するプログラムのミスで違う値が設定されるかもしれない

結局自分のフィールドは自分のクラスが直接扱うのが信頼性がある
0800デフォルトの名無しさんNGNG
>>798
「オブジェクト指向」「カプセル化」で調べてみれ。
簡単に言えば自クラスの与り知らぬところで好き勝手されないようにそうなってる。
0801デフォルトの名無しさんNGNG
>>799-800

「透過的なセッターゲッターをめくらめっぽう作成するのなら」
0802デフォルトの名無しさんNGNG
>>801
拡張性とか考えれ
あとはツールがサポートするとか
0803デフォルトの名無しさんNGNG

クラスAの非staticメンバクラスBを、クラスA以外の場所で
インスタンス化したいのですが、
クラスAのインスタンス変数ainsがあるとして、このainsを用いて
メンバクラスBを、クラスA以外の場所でインスタンス化する
文法を教えてください。
0804デフォルトの名無しさんNGNG
>>803
A a = new A();
A.B = a. new B();
インナークラスは「A以外で使うな」という開発者の意思表示だと思うので
しないほうがいい。
0805758NGNG
>>763
ネットでserialVersionUIDを探してみたのですが、あまり情報がみあたりません。
 具体的なやり方、または、解説を行っているサイトを教えていただけるとありがたい
です。
 ちなみに、UIDというクラスについての情報は見つけましたが、今回どう使うか
は理解できませんでした(汗
0806デフォルトの名無しさんNGNG
ありがとうございます。
0807デフォルトの名無しさんNGNG
>>805
APIリファレンスのJava オブジェクト直列化仕様の4.6 ストリーム固有識別子
の項目にあります。
具体的なやり方は本当にただクラス内に
private static final long serialVersionUID = 任意のlong値;
のフィールドを含めるだけです。
これでクラスのフィールド&メソッドを追加しても、前バージョンの
クラスがデシリアライズできます。
0808807NGNG
お願いです。信じてください。
0809デフォルトの名無しさんNGNG
>>804
ありがとうございました。
0810デフォルトの名無しさんNGNG
>>805
Googleで探せば見つかるよ。「serialVersionUID java」で探してみよう。

それともあれか?top 10だけ探して諦めるタイプ?
0811758NGNG
>>807
なるほど、変更前も、変更後も同じ値を設定しておけば、ファイル内に書き込まれている
データが変更後のクラスとしてデシリアライズできるんですね(ちょっと言葉の使い方が意味不明
ですか)。うーむ、不思議だぁ


>>810
いや、ちゃんと探したんですよ。2時間ぐらい、ですが、そのキーワードだとサーブレットだのとか
関係ないのばっかり当たって、核心を突く情報が見当たらないんです。とりあえず、
もう一度探してみます。
0812758NGNG
>>810
あれれ、探してみたら結構当たりますね。java serialVersionUID serialize
とかで探してたからだめだったのかな・・・・・・
いいのが見つかったので、せっかくなのでアドさらしておきます。
ttp://cm55.cool.ne.jp/vsd/expanded/manual/serialize1.html
0813デフォルトの名無しさんNGNG
ソースファイルの分割の仕方がわかりません。
0814デフォルトの名無しさんNGNG
まず、はさみを用意して、真ん中から切ればOK
0815デフォルトの名無しさんNGNG
>>814
一旦プリントアウトしなくちゃならないから、かなり面倒・・・・
0816デフォルトの名無しさんNGNG
>>802
別に考える必要があるときばかりじゃないと思うんだけど。
範囲チェックが必要になったときにセッター作ればいいだけで。
ゲッターで処理することなんかほとんどないし。
継承して使うこともあまりないし。それはそれで継承するときにセッターゲッター作ればいいし。
変更の反映はツールがやってくれるし。
0817デフォルトの名無しさんNGNG
>>815
プリントアウトするだけで、何枚かの紙に分割されるよ。
0818デフォルトの名無しさんNGNG
ひとつお聞きしたい事が。。。
例えば、ゲームのアプレットを作っています。
テトリスをやっていて、次にぷよぷよを同じ画面でやりたい時は、どう書く
んでしょうか?
一つのアプレットの中に二つのゲームを突っ込んでもいいのですが、もっと
すっきり書く方法は無いのですか?
0819デフォルトの名無しさんNGNG
>>816
すでにJavaBeansの仕様がそうなっているから、
setXyz/getXyzがあることが前提で作られているツールや
フレームワークやライブラリが多い。
逆に言うとアクセッサ作った方が便利に使える世の中ってこと。
0820デフォルトの名無しさんNGNG
>>819
ツールやライブラリに通さないんだったり、ツールやライブラリがセッターゲッターがなくてもそれなりに動いてくれるんだったら不要ってことでOK?
0821デフォルトの名無しさんNGNG
>>820
おまい一人で開発し、未来永劫他人がメンテしないことが保証できるんだったら勝手にすれば?
俺だったらそんなソース見たくないけどね。
0822デフォルトの名無しさんNGNG
>>821
なんで?
セッターゲッターもってないことなんか一目瞭然だし、無駄なセッターゲッターなければコード行数も少なくて見やすいし。
0823デフォルトの名無しさんNGNG
pが整数ならば、つまり、下記のようにやりたいのですがいい方法(メソッド)ないですか?

if(P == 整数){
・・・・・・・
}
0824デフォルトの名無しさんNGNG
byte a,b;
a=b+2;
とかだと精度が落ちてるとか言われます。
どうしたらいいですか?
0825デフォルトの名無しさんNGNG
お馬鹿さんには何を言っても無駄。
0826デフォルトの名無しさんNGNG
>>823
Pの型が整数かどうか知りたいの?
だったら宣言した時に解かるじゃないか。
0827823NGNG
>>826
ですよねw
言い直します。

qは整数とし、q/(q-1)が整数ならば・・・、とやりたいのです。


0828デフォルトの名無しさんNGNG
プロパティがフィールドとしては存在しない場合や、
プロパティの値そのものとは異なる形で存在している場合もある。

例が悪そうだが、
class Foo {
 int x;
 int y;
 // その他フィールド

 Point getLocation() {
  return new Point(x, y);
 }

 public void setLocation(Point p) {
  this.x = p.x;
  this.y = p.y;
 }
 // その他メソッド
}

class FooBeanInfo implements BeanInfo {
 public PropertyDescriptor[] getPropertyDescriptors() {
  PropertyDescriptor[] propDescs = new PropertyDescriptor[] {
   new PropertyDescriptor("location", Foo.class);
  };
 }
 // 以下略
}
0829デフォルトの名無しさんNGNG
>816
範囲チェック後から実装したとして、
そのときにpublicなフィールドの値が範囲内だと信頼できるのか?
できないだろ?
そのときになってprivateにして膨大な数のソース書き直すぐらいなら
はじめからgetterやsetter作っておいた方がいい。
0830デフォルトの名無しさんNGNG
>>824
JAVAでは、short型とbyte型の数値を計算する時は、int型に
拡張してしまいますので、b+2はint型の数値になってしまうのです。
よって a=(byte)b+2 とすればOK
0831823NGNG
すみません。解決しました。
q/(q-1)が割り切れる時 = 余りrが0の時
って感じでやったら、うまくいきました。どうもです。
0832デフォルトの名無しさんNGNG
>>829
> そのときになってprivateにして膨大な数のソース書き直すぐらいなら

Eclipseがやってくれるから無問題。
0833デフォルトの名無しさんNGNG
>>832
自分が書いたライブラリを利用するコードの全てが
自分の手元にあるわけではない。
0834デフォルトの名無しさんNGNG
>816 後になって遅延生成入れときゃよかったとか
悩むくらいなら最初からgetter入れておくな、俺は。
0835デフォルトの名無しさんNGNG
VBのコントロール配列みたいに、javaでコンポーネントを配列化できますか?
0836デフォルトの名無しさんNGNG
>>835
Objectはすべて参照なのでいくらでも
0837デフォルトの名無しさんNGNG
>>816がだだをこねて暴れるスレはここですか?
0838デフォルトの名無しさんNGNG
>>835
できるよ
Frame[] frame = new Frame[100];
JButton[] button = new JButton[100];

ただ、コンポーネント配列の初期化はこの時点では中身が殻なので注意してね。
個別に初期化するか、既にインスタンス化されてるオブジェクトを代入するか。
0839デフォルトの名無しさんNGNG
あげちゃった、ごめん(´・ω・`)
0840デフォルトの名無しさんNGNG
getFrames()って使ってる香具師いる?JFrameに継承されてるくせに、なぜFrameを返すのか・・・orz
しかもJFrame→Frameへのキャストは無理だし
ぶっちゃけ、使い物にならん気がする
0841デフォルトの名無しさんNGNG
>>840
Javaをもうちっと勉強してみてね
0842 NGNG
アプレットからアプレットを呼ぶには、
どのようにすれば良いのでしょうか。
0843デフォルトの名無しさんNGNG
>>842 「呼ぶ」の具体的動作を説明希望。
ブラウザで次のURLを開けばいいだけなら
AppletContext取得してそれ使う。
0844  NGNG
今、アプレットが動作してる領域に、別のアプレットを呼ぶ。
ということをやろうとしています。
0845デフォルトの名無しさんNGNG
たぶん842の目的はアプレット二つに分けなくてもいいんじゃねーか
という気がする。まあ呼ばれるほうが自分が書いたコードじゃなくて
他からぱくってきたとかそういう事情があるのかもしれんが。
0846デフォルトの名無しさんNGNG
JMSってなんなのか簡単に教えてください

メッセージ待ちのものに対して、メッセージ投げるメッセンジャーのようなイメージなのか
動いてるプログラムに対してイベントを投げて例外発生させたりできるようなものなのか
よくわからないのですが、どっちも違う?
0847デフォルトの名無しさんNGNG
ユーザーがリンクをクリックしたとき、javaサーブレットを使った場合
動的なhtmlを表示することは、今日勉強して分かりました。
動的なhtml以外のファイルをユーザーに送るのって、
どうやってやるんですか?doget()をいじるのですか?
0848デフォルトの名無しさんNGNG
>>847
リンクなら直リンク貼れば?
動的に作成したものを出すならcontentTypeいじればいいかと
0849847NGNG
>848
ユーザーがリンクをクリックして、
サーバーが最初にユーザーに送ったファイルをユーザーは
手に入れず(送られたことに気が付かず)、
そのあと、ユーザーに見えない形で、
ユーザー側からサーバーにファイル(xml)が送られ、
さらにそれに対してサーバーはユーザーにファイル(xml)
を送るのです。それをユーザーは必要としています。
その場合直リンクでもいいのですか?
0850デフォルトの名無しさんNGNG
ハッキングの相談?
0851デフォルトの名無しさんNGNG
javaは配列を戻り値にできますか?
0852デフォルトの名無しさんNGNG
できないと思う根拠は何ですか?
0853デフォルトの名無しさんNGNG
C言語だと基本的には出来ないね
0854デフォルトの名無しさんNGNG
SDKがダウンロード不能になってね―かい?
0855デフォルトの名無しさんNGNG
>>851
試さずに質問すんなうんこもらし
0856デフォルトの名無しさんNGNG
もう一回質問します。
誰かヒントだけでもお願いします(´Д⊂グスン

はじめまして。質問させてください。

現在、電子署名の拡張情報の値をjavaで取得する方法で悩んでいます。
X509ExtensionクラスのgetExtensionValueメソッドを使用してDERで符号化されたOCTET文字
列までは取得出来ました。
しかし、取得したbyte配列をStringに変換しても文字化けを起こしていて中の値が見ること
が出来ません。
どうすれば文字化けを直すことが出来るでしょうか?
よろしくお願いします。
0857デフォルトの名無しさんNGNG
ファイルをコピー(または移動)するにはどうすればいい?

http://java.sun.com/docs/books/tutorial/essential/io/filestreams.html
調べてみたところ read と write を使ってコピーする
方法があったけど,それって無駄が多いですよね.

できれば(下で)システムコールを呼んでコピーしてくれる
メソッドが欲しいのですが,ご存知の方教えてください
0858デフォルトの名無しさんNGNG
ほー最近のUnixはコピーのシステムコールなんてあるノ?
0859デフォルトの名無しさんNGNG
つーか環境依存しないように作られてるんだから
システムコール呼ぶって考えはやめれ

30分あれば綺麗なライブラリつくれるだろうから
それでさっさと作ればよろし
0860デフォルトの名無しさんNGNG
>>857
自作するくらいならJakarta Commons IOを使いましょう。
ttp://jakarta.apache.org/commons/io/
ttp://jakarta.apache.org/commons/io/apidocs/org/apache/commons/io/FileUtils.html#copyFile(java.io.File, java.io.File)
0861デフォルトの名無しさんNGNG
JSPの質問とかってここでさせていただいてもOKですか?
該当スレが見当たらないので。
0862デフォルトの名無しさんNGNG
>>861

[マジ初心者]JSP/servlet[助けて!!]
http://pc5.2ch.net/test/read.cgi/tech/1059044443/
0863デフォルトの名無しさんNGNG
>>862
誘導�dクス。
0864デフォルトの名無しさんNGNG
どう違うのかわからんが
■■ Servlet/JSP(EJB含む) 質問スレ Part3 ■■@WebProg
http://pc5.2ch.net/test/read.cgi/php/1087331455/l50


とかもある
0865デフォルトの名無しさんNGNG
>>777
> バグは全てソースの中にある(まつもとゆきひろ、Ruby開祖)


Code Reading読んだだろ藻前
0866デフォルトの名無しさんNGNG
>>832
Eclipseがやってくれてもすでに
依存関係にあるコードで
そんなことやっても苦しい
0867デフォルトの名無しさんNGNG
それに開発環境としてEclipseが使える場合はいいが、
チーム開発とかになってくるとそうもいってられないだろ

そうそう他人のコード部分書き換えるなんてありえんし
0868デフォルトの名無しさんNGNG
リファクタリング時だけEclipse使えばいいじゃん。
どうせ後付けでセッターゲッターが必要になることも少ないんだし。
とくにゲッター。セッターは百歩譲って、必要になる可能性が高いからあらかじめ用意するでもいいとしても。
あとからゲッターの挙動変更することって、ほとんどない。あるの?頻繁にあるの?
最近はBeanUtilsで右から左へ移動するだけ、表示はJSPかVelocityってことも多くて、getXxxすることも減ってるし。
Strutsのexecuteの中
 BeanUtils.copyProperties(o, form);
 session.save(o);
だけとか
 request.setAttribute("list", session.load(ShohinTable.class, code).list());
だけとかってことも多いし。
0869デフォルトの名無しさんNGNG
JSPとかBeanUtilsはgetter/setterありきだと思うけど?
0870デフォルトの名無しさんNGNG
あ、JSPはそうだ。BeanUtilsもそうなんだろう。
ってか、いまんところちゃんとゲッター書いてるから、ゲッター無しでいけると思ってた。
ゲッター書きたくないんだよぉ。めんどくせぇんだよぉ。
0871デフォルトの名無しさんNGNG
>>870
>ゲッター書きたくないんだよぉ。めんどくせぇんだよぉ。
それこそEclipseの登場だな
0872デフォルトの名無しさんNGNG
あいかわらず>>798元気だな

リファクタリングといっても他人のコード勝手にいじるわけにいかないだろ
beansってのはライブラリでよく使われるんだしそういうもんだ
チーム開発しているのならツールもすべて指定されることも多い
0873デフォルトの名無しさんNGNG
>>871
Groovyみたいに、目に付かなくしてくれたらいいのに。
0874デフォルトの名無しさんNGNG
>>872
他人のコードいじれなかったら、リファクタリングにならんですよ。
というか、そういうレベルのコードの所有権って害にならない?
保守的な理由では利点があるけど。
0875デフォルトの名無しさんNGNG
あ、保守的というのは、メンテナンス的という意味ではなくて、コンサバティブという意味で。
「人のコードを触ると気を悪くする」とか「エンバグしたときに冤罪になる」とか、あまり建設的ではない利点
0876デフォルトの名無しさんNGNG
>>874
誰かが開発中のコードに他人が勝手に手を入れたらいかんだろう

昼休み中にリファクタリングしといたからとかいわれたらぶちきれる
0877デフォルトの名無しさんNGNG
>>876
・・・CVS使うでしょ。
0878デフォルトの名無しさんNGNG
これ以降はXPスレにでも行ってください
0879デフォルトの名無しさんNGNG
emacsでいいでしょ
0880デフォルトの名無しさんNGNG
リファクタリング自体は構わないが、
ゲッターセッター書くことで回避出来るものを、
それを免罪符にあとから修正するのはリファクタリングと言うのは違う。
たとえXPだろうと他に影響がないようにコーディングするのは大前提だろ。
>>868
セッターが許せる・作成するんならゲッター作らないとまったく意味がないことに気づかないか??
0881デフォルトの名無しさんNGNG
おすすめのフリーのソースエディタを教えてくらはい
0882デフォルトの名無しさんNGNG
>>881
emacsがとても使いやすいと思うのだけど、
Windowsではxyzzy?かな。
emacsだとほとんどマウスを触らなくても良いし、ほとんどの作業、
コンパイルからメールなども含めて、がemacs上でできる。
0883デフォルトの名無しさんNGNG
何で板違いな質問に答えようとするんだろう。
0884デフォルトの名無しさんNGNG
>>883
話の流れで、そうなった。
0885デフォルトの名無しさんNGNG
そんな流れどこにもない
0886デフォルトの名無しさんNGNG
質問です。
TOMCATでServletContext#getResource("/WEB-INF")を行うと
"jndi:/localhost/CONTEXT_ROOT/WEB-INF"のURLが得られます。
これをWebSphereで実行すると
"file:/c:/HOGE/CONTEXT_ROOT/WEB-INF"の様に絶対パスのURLが得られます。
TOMCATでも絶対パスのURLが取得できる方法があるのでしょうか。
0887デフォルトの名無しさんNGNG
新Java言語入門シニア編とやさしいJava及び、やらしいJava活用編を一通りマスターしました。
しかし、まだ、このスレや雑誌なんかを読んでると、こんな文法あるんだ?って感じで、わからないことだらけです。
次に読むオススメの書籍があったら、教えてください。
0888デフォルトの名無しさんNGNG
>>886
getRealPath()
0889デフォルトの名無しさんNGNG
>>887
何がしたいの?
0890ド素人NGNG
ひとつ思ったんですけど、
public paint(Graphics g){
}
ってあるじゃないですか。これを

public paint(){
Graphics g = new Graphics;
}

ってやっちゃだめなんですか?
いいのか、ダメなのか、理由をつけて答えなさい。
0891デフォルトの名無しさんNGNG
>>887
>次に読むオススメの書籍があったら、教えてください。
もちろん、次は、どすけべJava
0892デフォルトの名無しさんNGNG
>>889
いや、何がしたいというわけでもないんですけど、基礎を身に着けたいです。
上記三冊で、基礎の部分は十分なんですかね?
0893デフォルトの名無しさんNGNG
>>887
ぽえりな
0894886NGNG
ServletContext#getResourceで"jndi:"や"file:"はなにで
決まるんでしょうかね。
0895デフォルトの名無しさんNGNG
>>890
そもメソッドをどう使うか考える。
0896デフォルトの名無しさんNGNG
>>890
しってるが、お前の態度が気に入らない。
とりあえず理由の一つはこれだ。public abstract class Graphics
0897890=ド素人NGNG
Graphicsクラスがアブストラクトであることが関係してるの?
アブストラクトって、メソッドの中身が定義されてないクラスだったっけ?
0898890=ド素人NGNG
public static int returnx(int x){
return x;
}
みたいに定義みたいなもの?わかんないよー。
0899デフォルトの名無しさんNGNG
>>898
死ね。
0900デフォルトの名無しさんNGNG
>>841
Frame→JFrameは出来ないの間違いね
で、getFrames()って使い物になるか?JFrameを返すようにしたいんだけど。
おまいさんはどんなときに使ってるの?
0901デフォルトの名無しさんNGNG
以前もこういうハンドルあらわれなかったっけ?
0902デフォルトの名無しさんNGNG
>>900

Frameのメソッドであって
JFrameでオーバーライドしていないからFrame返すのは当たり前
でもそれは問題にならないでしょ

もうちっと勉強しようね
0903デフォルトの名無しさんNGNG
>>902
いいたいことがわかんない
っていうか質問の答えになってないし
0904デフォルトの名無しさんNGNG
AWTの機能であるFrame.getFrames()にJFC/SwingのJFrameを返せと
言われても....

1 親クラスは子クラスのことなどしったこっちゃない。ふつうのことだ。
2 AWTはSwingのことなどしったこっちゃない。当然だろ?

ってだけのことじゃないの? getFrames()はJFrameを含め、アプリケーションが作成
したすべてのFrameを返すんだから、戻り値の配列にはJFrameもあればFrameもあるかも
しれん。もしかしたら独自のFrameサブクラスもあるかもしれん。
FrameはJFrameのことなどしったこっちゃないからFrameとして返すだけだ。
キャストしたいならinstanceofでチェックしてからキャスト。JFrameじゃない可能性も
あるからな。

あと、staticなgetFrames()はどのみちオーバーライドできん。
0905デフォルトの名無しさんNGNG
ここは意地悪な回答者の多いインターネッツですね(怒)
0906904NGNG
質問したいのは、

1 getFrames()は使い物になるか?
2 JFrameを返すようにはできないのか?

のどっちだ? どっちもか? 質問は明確にせい。

1解答
使えるところで使えばまあ使える。適材適所だな。使えん時は全然使えん。
というか、そんなに多用するもんでもないし。

2解答
getFrames()をオーバーライドするという意味なら無理だが、別に自分で
getJFrames()とかいうユーティリティメソッドを適当に作って、そこで
Frame.getFrames()を呼び出して、返値の配列からinstanceofでJFrame
のインスタンスだけ選び出して別の配列につっこんで返してやれば、望みの
ものになるだろ。
0907デフォルトの名無しさんNGNG
どなたかお願いします。
マウスイベントで線などを描写しても、最小化したり、
別のウィンドウを前に出すと線が消えてしまうのですが、
どうしたら消えなくなるでしょうか。
座標位置をどこかに保存しておいて、paintメソッドで線を描き直すのは分かるのですが、
なにかそのようなメソッドでもありますか?

0908デフォルトの名無しさんNGNG
>>907
そんなメソッドは標準APIにはありませんが、あなたのハードディスクの中にヒントがあるでしょう。
%JAVA_HOME%\demo\applets\DrawTest
0909907NGNG
>>908
Vectorを使うしかないんでしょうか?
一番スマートにいけますか?
0910デフォルトの名無しさんNGNG
>>909
public void paint(Graphics g)をオーバーライドして
そこに同じ線を書くコードを含めるか、createImage()で
バッファ用のイメージを作成して、そのイメージに線を描くようにし、
オーバーライドしたpaint内で そのバッファイメージをdrawImage()で
コピーしませう。
0911907NGNG
>>910
ありがとうございます。
試してみます。
0912デフォルトの名無しさんNGNG
逆コンパイルについての質問です。以下「e-words」ttp://e-words.jp からの
転載:
 Javaで開発されたプログラムは逆コンパイルされやすい構造であることが知ら
 れており、逆コンパイル対策ソフトも開発されている。

となっていますが、逆コンパイル対策の最新技術動向を教えて下さい。
0913デフォルトの名無しさんNGNG
>>912
新しいものはないんじゃないの?
0914デフォルトの名無しさんNGNG
ちょっと聞きたいのだが、
「Java 2 プラットフォーム API 仕様」は
前はダウンロードできたんですか?
今できないんですが。
0915デフォルトの名無しさんNGNG
double[6][5]の配列に
テキストファイルの
***.txt
___________
|0 1 2 3 4
|0 1 2 3 4
|0 1 2 3 4
|0 1 2 3 4
|0 1 2 3 4
|0 1 2 3 4

のようなデータを読ませたいのですが、
コードの書き方が分かりません・・・。

StreamTokenizer等を使うのは想像がつくのですが(これ自体違うかも)。
*データの数字は任意で本当はランダムです。
0916デフォルトの名無しさんNGNG
BufferedReaderで読んで1行を" "区切りでStringTokenizerで分割、でどうかしら。
0917デフォルトの名無しさんNGNG
>>914
できます。
0918デフォルトの名無しさんNGNG
>>915
StreamTokenizer st=new StreamTokenizer(new StringReader(text));
st.eolIsSignificant(true);
double[][] num=new double[6][5];
int x=0, y=0;
loop: while(st.ttype!=StreamTokenizer.TT_EOF) {
  try { st.nextToken(); }
  catch (IOException ex) { break; }
  switch(st.ttype) {
    case StreamTokenizer.TT_EOF: break loop;
    case StreamTokenizer.TT_NUMBER: num[y][x++]=st.nval; break;
    case StreamTokenizer.TT_EOL: ++y; x=0;
  }
}
0919間違えた訂正NGNG
>>915
StreamTokenizer st=new StreamTokenizer(new FileReader(file));
st.eolIsSignificant(true);
double[][] num=new double[6][5];
int x=0, y=0;
loop: while(true) {
  try { st.nextToken(); }
  catch (IOException ex) { break; }
  switch(st.ttype) {
    case StreamTokenizer.TT_EOF: break loop;
    case StreamTokenizer.TT_NUMBER: num[y][x++]=st.nval; break;
    case StreamTokenizer.TT_EOL: ++y; x=0;
  }
}
0920915NGNG
>>919,917
ありがとうございます。
「なるほど」と言う感じです。
0921912NGNG
逆コンパイル防止の常套手段ってありますか?
0922デフォルトの名無しさんNGNG
>>921
契約。
0923デフォルトの名無しさんNGNG
>>921
わざとエラーが出るコードにすれば、逆コンパイルされても無問題だ。
0924デフォルトの名無しさんNGNG
>>906
親切な香具師キター(・∀・)
質問は両方です。2.は追加での質問です。

あぁ〜やっぱり・・・2のgetJFrames()みたいのを作るのが一番かぁ。
イベント発生時にウインドウを生成させる仕様のプログラムで、
メソッド内でnewしたウインドウを他のメソッドで取得していじりたかったんだよねぇ。
仕様の関係上、クラスのフィールドとしてJFrameを定義するわけにもいかなかったので--;

なんでJFrameでのgetFramesはないんだろう?と疑問だったもんで、これでスキーリしましたm(_ _)m
0925  NGNG
Javaアプレットでオウガバトルのようなゲームを作っています。フィールドマップ時と戦闘時で画面を切り替えるようなプログラムを上手く書くにはどうしたらいいのでしょうか?2つを1つのアプレットに突っ込むとプログラムが分かりづらくなってしまいます。
0926デフォルトの名無しさんNGNG
>>925
普通に切り替えればいいじゃん。もしかしてpaintとかupdateで全部やろうとしてないか?
0927  NGNG
ペイントで全て描画しています。普通に切り替える方法を教えて下さい。
0928デフォルトの名無しさんNGNG
>>925
public void paint(Graphics g){

if (map_mode) paintMap(g);
else paintBattle(g);

g.dispose();
}
0929デフォルトの名無しさんNGNG
>>927
カードレイアウトを使いませう。
パネルを二つ用意して、それをカードレイアウトで
メインペインにセットして、CardLayout#show()で切り替えませう。
0930   NGNG
ありがとうございます。しかし、フィールドマップと戦闘時では画面だけでは無く、マウスやキー操作なども大きく変わってしまいます。
0931デフォルトの名無しさんNGNG
基本中の基本なんですが、
オブジェクトを生成するときに
「new」がシンボル解釈できませんとコンパイラに言われるんですが
どのようなことが原因なんでしょう?
予約語が解釈できないというのは。
0932デフォルトの名無しさんNGNG
>>930
問題ありません。
戦闘パネルとフィールドパネル、それぞれに違うマウスイベントと
キーボードイベントをつければ、パネルを切り替えると一緒に
操作法も変わってくれます。
0933904NGNG
>>931
せめて該当ソースくらいだせ
0934デフォルトの名無しさんNGNG
>>931
そのコードを書いてください。
0935デフォルトの名無しさんNGNG
おっと名前をミスってしまった
0936デフォルトの名無しさんNGNG
失礼しました。
肝心な部分をコピペします。これでエラーが。
public class Section {
public static void main(String[] args) {
int nof=10;
Test test[]=new Test[nof];
for(int i=0; i<nof; i++)
{
test[i]=new Test(i);
}
}
}

class Test{
public void Test(int num){
}
}
0937デフォルトの名無しさんNGNG
>>936
public void Test(int num){
を
public Test(int num){
とすればOK
0938デフォルトの名無しさんNGNG
もう、このスレ来る前にやることがあるだろ。
その時間を勉強に回せよ。

全然できないくせに一から勉強しようとしない奴多杉・・・
0939デフォルトの名無しさんNGNG
>>938
はぁ?
一応勉強はしてるよ。全然できないって何を根拠に言ってるのよ。
そうやって上から見下すような無駄レスをする方が問題じゃないですか?
0940デフォルトの名無しさんNGNG
>>937
ありがとうございます。
引数を取らないコンストラクタは明示する必要もない、ということですね。
はじめて、javaを書いているので、ご迷惑おかけしました。
0941デフォルトの名無しさんNGNG
>>939
してたらこんな糞質問するか。

>>940
>引数を取らないコンストラクタは明示する必要もない
そうじゃない。
0942デフォルトの名無しさんNGNG
j2sdk1.4.2/demo/にあるhtmlをDonutPで表示するとアプレットの部分が灰色です。
IEだと問題ないです。
もちろんjavaの実行はenableにしてあります。
IEを拡張したブラウザでは動かないのでしょうか?
0943デフォルトの名無しさんNGNG
>>939
一応、ね。
あんたの思う一応じゃ足りてないっていう指摘だろ。
実際全然できてないんだし。
0944デフォルトの名無しさんNGNG
>>940
デフォルトコンストラクタで検索しる。
0945デフォルトの名無しさんNGNG
エクリプスで実行するとき、コマンドラインを入力するにはどうすればいいのでしょうか
0946デフォルトの名無しさんNGNG
【Java/C/PHP/他】統合開発環境Eclipse M14
http://pc5.2ch.net/test/read.cgi/tech/1093787515/
0947デフォルトの名無しさんNGNG
Javaを初めて1年未満なのですが、先日HDの不調で環境を変えざるえない状況になってしまい
改めてSunのサイトからSDKなどをダウンロードしていたのですが、以前はあったダウンロード可能な
圧縮された1.4.2のドキュメントが見当たりません。今はもうオンライン上でしか閲覧できないのでしょうか?
0948デフォルトの名無しさんNGNG
>>947
1.4.2のドキュメントって、英語版だよね。
普通にダウンロードできると思うんだけど……
0949デフォルトの名無しさんNGNG
>>947
日本語のドキュメントが欲しいなら
http://java.sun.com/j2se/1.4.2/ja/download.html
で取れる。1.4.0 のドキュメントだけど。
0950デフォルトの名無しさんNGNG
>>948 >>949
すいません、どうやらセキュリティレベルの設定のせいか、ダウンロードのリンクのボタンだけが
なぜか表示されていなかったようです。ありがとうございます、どうもすいませんでした。
0951デフォルトの名無しさんNGNG
>>938
勉強したいから質問するんでしょ?
1から勉強してる状態だからこそ簡単な事すらわからないんじゃないの?
ちょっと調べればわかるようなことでも、初心者にとっては何がいけないのかって事自体がまったくわからない状況だってあるわけだし。
この板の暗黙の了解事項やテンプレ等を相手が理解していない場合だったら、もっとやさしい言い回しして教えてやればいいじゃない。
そんなの面倒だ、っていうぐらいならレスしなきゃいい。スルーもしない、教えもしない、ただ「もっと勉強しろ」っていうんじゃ・・・反感を買うだけだと思うよ

それよりおまえの心の狭さの方がやばい気がするぞ
まぁこんな駄スレしてるオレも同罪だというなら、その批判は甘んじて受けるけど。>>938みたいなレスってずっと疑問だったもんでつい。
0952デフォルトの名無しさんNGNG
>>951
もっと詳しいことが本には書いてある
0953デフォルトの名無しさんNGNG
私は誰にも聞かなくても出来たけどねぇ。
軟弱だよ。
0954デフォルトの名無しさんNGNG
>>953
初めはどうやって勉強したの?
0955デフォルトの名無しさんNGNG
>>954
もともと電子工学に興味があったんだけど、
マイコンを使って制御するっていうのが流行ったので、
コンピュータにも興味があった。
はじめはアセンブリでZ80を制御して遊んでいた。
べーマガを本屋で見つけて興味を持ったから読んでみて、
自分でも何か作ってみたくなってBASIC言語の本を買った。
何を買ったかは忘れたけれど。
あとはCとかFortranとかLispとか、他にもいろいろ覚えてみた。
今は言語自体にはあまり興味はない。
0956デフォルトの名無しさんNGNG
>>951
1から勉強していればわかること。
ショートカットしようとするからこんなトンチンカンな質問が出てくる。
0957デフォルトの名無しさんNGNG
>>955
Z80でマイコンって生粋のマニアじゃないですか。
マニアと一般人を一緒にされてもね。
0958デフォルトの名無しさんNGNG
大体、900番台のレスのやり取りを見ても、回答者に明らかに
二種類のタイプがいるな。丁寧な口調で具体的に教えてくれる人と
乱暴な口調で回答も書かずに悪口ばかりいうタイプ。
後者にはこのスレに来て欲しくないね。
まさにレスの無駄だし、人の心を傷つけてその人の学習意欲を減退させ
未来のプログラマーを一人潰している。
無駄レス以前に害悪なんだよ。何でも一からやればいいってもんじゃ
ないんだよ。それじゃ時間が掛かりすぎる。外にやる事がたくさんある
一般人には非常に効率が悪い。マニアほどその辺が分かってない。
プログラミング指向でもあなた方みたいにずっとパソコンの前にはりつける
訳じゃないんだよ。重要なポイントを飛ばし飛ばし覚える事ではるかに
短時間で着実に力をつけるケースは幾らでもあるんですよ。
一から勉強しろ、このお決まりの妄言を書くのはやめるべきだし、それは
もう回答じゃないから資源の無駄遣いをやめるべきだな。
0959デフォルトの名無しさんNGNG
その「重要なポイントを飛ばし飛ばし覚える事ではるかに
短時間で着実に力をつける」のが気に入らないんだろうよ。
泥臭く「1から勉強」した身にとっては、な。
(断じて1から勉強するのが悪いという意味ではない)

そういうやつに限って質疑応答はヘタクソだったりするな、経験上。
むしろそういうやつだからこそ、と言うべきか。
0960デフォルトの名無しさんNGNG
重要なポイントを飛ばしてしまっているから質問がとんちんかんなのでは?
「ポイントを押さえて勉強する」をはき違えているヤツは多いと思う。
0961デフォルトの名無しさんNGNG
>>958
むしろ、程度の低いプログラマが生まれるならつぶれた方がまし。
プログラミングを学ぶ意欲が無いのにプログラマになられても迷惑。
意欲があるなら自分で全てできる。
0962デフォルトの名無しさんNGNG
プログラマの地位を下げているのが程度の低いプログラマなんだから。
0963デフォルトの名無しさんNGNG
>>958
回答者に悪意が見られるというのは否定しないが、
質問者側に悪意を誘う要因があると思えるね。
なんか、ド新人相手のOJTでのやり取りをそのまま2chに持ってきたみたいな
質問が繰り返されるとうんざりする。そんなの本を読め、と言いたくなる。
それは本を読んだ方が早いから、という親切心からでもある。
本を読んで基本から理解していればもっと早く自分で答えを得られたはず。
今回はそれでいいとして、これからも2chのお世話になるのか?

それに、一から勉強した方が長い目で見れば早い。
スタック構造やスレッドを理解しないで
「同じメソッドを同時に呼ぶと引数やローカル変数はどうなる」
みたいな質問するやつもいるし。
0964デフォルトの名無しさんNGNG
>>963
>>同じメソッドを同時に呼ぶと引数やローカル変数はどうなる

その辺の疑問はJAVAが初プログラミングの人じゃしょうがないな。
JAVAのOOPとマルチスレッドの整合を理解するには、
Cの特にポインタ関係を理解しなければいけない。
Cを理解するにはアセンブラを知らなきゃいけない。
って訳で、昔からのPならともかく
今の若い人には結構厳しいように思うよ。
0965デフォルトの名無しさんNGNG
> その「重要なポイントを飛ばし飛ばし覚える事ではるかに
> 短時間で着実に力をつける」のが気に入らないんだろうよ。

自分では短時間に着実に力をつけてるつもりなのかもしれないが
人はそれを 行 き 当 た り ば っ た り という。
0966デフォルトの名無しさんNGNG
こんにちは

質問したいのですが、

ArrayList al = new ArrayList();
al.add("001");
al.add("002");
al.add("003");
al.add("004");
al.add("005");
return (String[])al.toArray();

String[]にキャストするところで、例外が発生してしまいます。
ClassCastExceptionだそうです。
何か問題でもあるんでしょうか?
object[]からstring[]へのキャストは問題ないと思うのですが・・・。
0967デフォルトの名無しさんNGNG
行き当たりばったりでつまみ食いすると変な知識持った奴が量産される。
「ここは(String)つけとけば動くんですよ。理由?別にいいじゃないですか」
「コンパイルエラー出たのでtry catchしました。エラー処理?{}でいいでしょ。動くんだし」
「System.getEnv()で環境変数取れるはずなのに失敗するんです。」
0968デフォルトの名無しさんNGNG
>>966
これも何度もでてくるね
一つ一つStringでキャストするか
もう一つのtoArrayメソッドを使うか
0969デフォルトの名無しさんNGNG
>>967
ttp://www.google.co.jp/search?q=Java+ArrayList+toArray&lr=lang_ja
0970966NGNG
ご返答ありがとうございます
わかりました。
0971デフォルトの名無しさんNGNG
ウインドウ閉じようとしてバツボタン押したときに
「終了しますか?はい/いいえ」というダイアログ出して
「いいえ」が選ばれた時はウインドウ閉じないようにするには
どうしたらいいんでしょう?
という質問を発する前に「FAQ見ろ」ですか?

WindowAdapterのwindowClosing内でやってもウインドウ消失は回避できませんでしたので・・・
>>1のFAQ集サイトにはなかったのですが・・・
0972デフォルトの名無しさんNGNG
>>971
ttp://java.sun.com/j2se/1.4/ja/docs/ja/api/java/awt/event/WindowListener.html#windowClosing(java.awt.event.WindowEvent)
より
「このイベントの処理において、プログラムが明示的にウィンドウを隠したり
廃棄したりする処理をしない場合、ウィンドウクローズオペレーションは取り消されます。 」
とあるので、WindowAdapter#windowsClosing(WindowEvent)を正しくオーバライドしていれば
上手くいくはずなんですが。コードはどうなってます?
0973デフォルトの名無しさんNGNG
>>971
setDefaultCloseOperation()
で設定してるのが、DO_NOTHING_ON_CLOSE以外じゃないですか?

0974デフォルトの名無しさんNGNG
エラー行: lampL.setForeground(Color.RED);
エラー: java.lang.NullPointerException

lampLはグローバルなJLabelです。
なぜnullpoが出てしまうのかわからずだれか助けてくだちい_| ̄|○ スンゴク厨シツモンカモシレマセンガドウカオナガイスマス
0975デフォルトの名無しさんNGNG
>>974
lampL = new JLabel("ガッ");
0976974NGNG
>>975
サンクス!!!m(_ _)mタスカリマスタ
0977デフォルトの名無しさんNGNG
swing(あるいはAWT)で日本語の縦書きってできます?
0978942NGNG
自己解決しました。
IEコンポーネントのブラウザでSunのJavaを使いたい。

タスクバーの[スタート]-[ファイル名を指定して実行]で
「regsvr32 /u msjava.dll」としてMicrosoft JavaVMの使用を停止してください。
OSを再起動しても停止したままです。
元に戻す場合は[ファイル名を指定して実行]で
「regsvr32 msjava.dll」としてMicrosoft JavaVMの登録をします。

スレ汚し、失礼しました。
0979デフォルトの名無しさんNGNG
どこに書けばいいかわからんからここで言っておく。
SUNのJ2SE5.0 リリースされたぞ。
0980デフォルトの名無しさんNGNG
>>977
縦書き描画はAPI ではサポートされてないので、
一文字一文字縦に描画するしかないと思う。違ったらごめんね。
0981977NGNG
>980
なるほど。どうもです。
0982デフォルトの名無しさんNGNG
>>979
釣られねーよバーカ
0983デフォルトの名無しさんNGNG
>>981
もしくは縦書き用のフォントを(90度回転させて)使う、かな?

縦書き用のフォントがあるかどうかに依存するので
プラットフォーム依存になっちゃうような気もするけど、
横書き用のフォントを一文字一文字縦に描画すると
句読点とか括弧とかの記号が横書き用のままなのでヘンな感じになるんだよね。
0984デフォルトの名無しさんNGNG
J2SE5はバンドル版がNetBeans4.0βってのがダメだな
あれバグだらけでまともにうごかねぇのに

各種64bitが用意されているのが時代の流れを感じるねぇ
0985979NGNG
せめてサイト見て来い。
マジなんだよ!
0986デフォルトの名無しさんNGNG
サイト見た時点で釣られたってことじゃんよ。
バカじゃねーの。
0987デフォルトの名無しさんNGNG
ささ、979なんて放っておいて次スレの準備しましょ
0988979NGNG
悲しい。 (´;ω;`)…
この国の信じる心はドコへ・・・・
0989デフォルトの名無しさんNGNG
NetBeans4.0β2ってどれだけバグとれたな・・・
せめて新機能以外は動いて欲しいものだが
0990デフォルトの名無しさんNGNG
-Dsun.java2d.opengl=Trueが動いた人いる?
0991デフォルトの名無しさんNGNG
>988
見た。確かに出てる。
http://java.sun.com/j2se/1.5.0/ja/
0992デフォルトの名無しさんNGNG
>>958
勉強する機会を与えず、目先の答えを与える姿勢が、未来の「使える」プログラマーを1人潰すわけだね。
0993デフォルトの名無しさんNGNG
>>992
2ちゃんねるに答えを求めるようなマ見習は今のうちに潰しとけ
0994979NGNG
>>991
ありがとう 。・゚・(ノд`)・゚・。
0995デフォルトの名無しさんNGNG
hoge foo bar ってなんですか…
0996デフォルトの名無しさんNGNG
>>994
どうせIEのセキュリティホールついたウソページだろ
騙されねーよ
09971000NGNG
めったに無い機会だから1000取っていい?
09981000NGNG
ドキドキしてきた(〃 ̄ー ̄〃)
09991000NGNG
あと一歩 |д゚)
1000デフォルトの名無しさんNGNG
遅レスだが>>1乙
10011001Over 1000Thread
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。