トップページ⇒tech
982コメント338KB

ネタ心者歓迎!今更ながらにJava相談室 その4

■ このスレッドは過去ログ倉庫に格納されています
00011NGNG
                        
 || ̄ ̄|   ∧_∧
 ||Java|  (     )   ∧∧    / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
 ||__|  ( ○  )  (   ) < 俺達の旅はここから始まる。
   ||    │ |  │   /  |    \___________
((二二)) .(_(__)〜(___ノ

( ゚Д゚) < カキコする前に>>2-10をチェックしとけゴルァ!!
>>2 過去スレの一覧
>>3 Javaの基礎と よくある質問 (初心者はここをチェック!)
>>4 Java関連スレいろいろ
>>5 Javaを撲滅させたい方、死滅を心配してる方、Cとの違いを知りたい方はこちらへ
* 諸般の事情により、リンクがずれる事もあります。
0252デフォルトの名無しさんNGNG
>>249
いや、ないと思うけど。多分。
0253デフォルトの名無しさんNGNG
ていうか、想定内のエラーを例外処理に任せるのはよくないって、
Effective Javaに書いてあたヨ。
つか、読まなくても分かってると思うけど。

ArrayOutOfRangeException(だっけ?)でループから抜ける処理って
初めて見たヨ。
0254デフォルトの名無しさんNGNG
java.lang.ArrayIndexOutOfBoundsException かな?
0255デフォルトの名無しさんNGNG
ArrayIndexOutOfBoundsExceptionでループを抜ける処理、俺もなにかで見た覚えがある。
やっぱ、普通は例外処理には頼らないよね。
0256デフォルトの名無しさんNGNG
懺悔します。
write(byte[],int,int) とかで
範囲チェックしなかったのは俺です。
0257デフォルトの名無しさんNGNG
Σ(゚д゚lll)ガーン

0x100逃した‥‥。
0258214NGNG
>>251
結局何にも使えないって事?
0259デフォルトの名無しさんNGNG
>>258
まあ、ぶっちゃけ そういうことになるね
0260デフォルトの名無しさんNGNG
あの〜
Linuxで作業してる人います?

$ java [RETURN]

ってすると、日本語でusageでます?
0261260NGNG
Lunxで実行
hoge@hoge:~$ java test
????
dump(????): 30de 30f3 5316 3059

Winで実行
C:\temp999>java test
マン化す
dump(マン化す): 30de 30f3 5316 3059

結果は同じなんだけど、Linuxだと日本語出なくてこまってるんですけど、
一応、
LANG=ja_JP.sjis
LC_ALL=ja_JP.sjis
LC_CTYPE=ja_JP.sjis
LC_MESSAGES=ja_JP.sjis
とか、ujisにしたりしてんだけど、でないんですよ。
誰か情報ないですか?
0262デフォルトの名無しさんNGNG
とりあえず、どのlinuxか、ヴァージョンとかもつけてかけや。
あと、telnetかXtermかとかの情報モナ。
0263デフォルトの名無しさんNGNG
JTableについて教えてください

テーブルヘッダーのカラム名を変更する時

>> myJTable.getColumn(myJTable.getColumnName(index)).setHeaderValue(str)

・・としているのですが、myJTable.getColumn()のパラメータはidentifiter、
一方、myJTable.getColumnName()のリターン値はStringで、、
最初両者の値は一致しているが、一度setHeaderValue()すると値が変わって
(identifiterの値はこれでは変わらない) 2度目の書き換えで失敗しています。

どのようにすればよいのでしょうか?
0264デフォルトの名無しさんNGNG
すいません、自己レス・・
myJTable.getColumnModel().getColumn(index).setHeaderValue(str)
でいけました。
OOP難しい・・・
0265 NGNG
ネタ心者です。
JavaとJavaリングの関係の必然性が判りません。
教えてください。
0266デフォルトの名無しさんNGNG
結構知らない人多いのね…。string.length() == 0
0267デフォルトの名無しさんNGNG
>>266
ハァ?
0268デフォルトの名無しさんNGNG
>>266

>>214 に書いてあるんですけど。
0269デフォルトの名無しさんNGNG
>>261
そういうのはPropertiesのリソースファイルに定義されていると思われ。
日本語用Windows版なんかは、既に日本語用のリソースファイルが含まれてるけど
Linux版にはそれがないんじゃないかな。
JREのjar解凍してja_JP用リソースファイル追加するかなんかするしかないんじゃ
ないの?
0270デフォルトの名無しさんNGNG
>>261
% cat Hello.java
public class Hello {
public static void main(String[] args) {
System.out.println("うんこ");
}
}
% javac Hello.java
% java Hello
うんこ
% java -version
java version "1.3.0"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.3.0)
Classic VM (build 1.3.0, J2RE 1.3.0 IBM build cx130-20010925 (JIT enabled: jitc))
% setenv |grep ja
LANG=ja_JP.eucJP
SUPPORTED=en_US:en:ja_JP.eucJP:ja_JP:ja
JLESSCHARSET=japanese
CLASSPATH=/usr/local/horb/lib/horb20.jar:.
% cat /etc/redhat-release
Red Hat Linux release 7.1.94 (Roswell)
%

JDKは入れたまんま。
0271デフォルトの名無しさんNGNG
visual cafeを今使っているのですが、ペン4にインストールできません.
開発ソフトを乗り換えるか迷っているのですが、何がお勧めですか?
0272 NGNG
http://www.vector.co.jp/soft/win95/prog/se153698.html
0273デフォルトの名無しさんNGNG
平仮名->カタカナ
カタカナ->カタカナ
対応のtoUpper、lowerってないすか?
oroのperlutil試したら。
tr/[A-Z]/[a-z]/対応してないのね、
がつかりぃ〜
0274SJCDNGNG
俺も愛用しています。
かなり使いやすいツールです。
JDeveloperとかVisualAge、JBuilderとか使ってても、多くの人は「自動生成されるコードが気に入らない」、「融通が利かない」、「即席JAVA開発者育成ツールにしか思えない」、「Radツール重い」と言った理由から
(いろいろ理由があるけど)ノートパッド型開発ツールに先祖帰りしている人が多いのです。
この「CPad」かなりいけてます。
1.「F9」でコンパイル後、即実行←JBuilderよりコンパイル早い気がする(リソースの関係かな?)
2.登録したキーワードの色を自在に変えられる。←最初は予約語がカラフルな色で登録されています。追加として自分の良く使うキーワードを色付きで登録できるから、かなり見やすいよ。
3.なんと「grep検索」機能付き。
4.複数のソースを一度に扱える。←TabPaneでいくつものソースを開いても一つのウインドウで管理できる。
5.インクリメンタルサーチ付き。←かなり便利な検索機能。
つうか、テキストエディターとしてもかなり使えるので、簡単な報告書もサクサクかけるよ!
0275デフォルトの名無しさんNGNG
うちの会社、みんなCPAD使ってる。なぜかJDeveloperは使わなくなった。
上司は、統一化したいから統合開発環境使いたがるけど、部下の方はCPad中心で。
まぁ、使い安さはぴか一なのでね。

つうか、JAVA使いの皆さん、あなたはRADツール派ですか、ノートパッド派ですか?
0276デフォルトの名無しさんNGNG
頑なにteikade
0277デフォルトの名無しさんNGNG
Linuxでもつかえる?
0278デフォルトの名無しさんNGNG
使える(はず)。何度か使ったことあるし。
ただ、オイラは今は故あってWin2K。
0279初NGNG
いまさらながら、 ネタ って無理があるような気が・・・

ネ刀心者 はどう?
0280デフォルトの名無しさんNGNG
次スレはシンプルに「Java相談室」に回帰しません?
ネタ心者も、初心者を免罪符に課題丸投げしてくるドキュソもイヤン。
0281デフォルトの名無しさんNGNG
賛成
0282デフォルトの名無しさんNGNG
丸投げしてくるゼネコンもイヤン。
0283デフォルトの名無しさんNGNG
【質問】
サーバーサイドでCRegKey::QueryValueで値の参照ができない。

サーブレット/JSPでWebアプリを開発しています。
一部JNIを使用しています。
CRegkey::Openは成功しているようだが、
CRegKey::QueryValueでエラーが発生して取得できないようです。
これは使えないってことですか?

サーバー環境は以下のとおりです。
Windows2000
Apache 1.3.12
topcat 3.2.3
Java SDK 1.3.0_02
0284組長NGNG
こんにちは。アプレットでゲームを作っているものです。
質問です!あるキーを押しているときに他のキーを受け付けないようにする基本的な
コードが書けずに何日も悩んでいます。
また、キーを押してから数秒後にキーを受け付けるようなコードも是非知りたいので
何方かアドバイスいただけないでしょうか?
よろしくです
0285デフォルトの名無しさんNGNG
>>284
「あるキー」が押されたらKeyUpするまで「他のキー」のKeyイベント無視すればいいじゃん。

「キーを押し」たときの時刻をDate.getTime()で取得しておいて
あとから押したキーはその時刻から「数秒」たっていなければ無視するようにすればいいじゃん。
0286組長NGNG
>>285
ありがとうございます。KeyUpの関数がないような気がしましたが・・・・・
気のせいでしょうか?

あとは了解です。
0287デフォルトの名無しさんNGNG
はぁ、こんなんもご存知ないような43歳のSEが入社希望でいらっしゃいました。
うちのJAVAテスト。
コンパイルが通る宣言はどれか。複数解答せよ。
1.String[] test[] = new String[3][3];
2.String [][]test= new String[1][2];
3.int[] test= new int[]{1,2,3};
4.String[] testr= new String[];
5.String Integer[] = new String[2];
0288デフォルトの名無しさんNGNG
ごめん>>286
KeyListener#keyReleased(KeyEvent e)だった
0289デフォルトの名無しさんNGNG
>>287
オレ、1とか2とかは見た事すらないけど、
そんなのを分からなくとも永遠に問題は無いだろうなぁ。
どうでも良い知識をひけらかしてるだけの嫌味な問題に見える。

Sunの認定試験ですら、こんな問題は出ないんじゃ無いかな。
一応Developerまでは持ってるけど・・。
0290デフォルトの名無しさんNGNG
>>287
おめでてぇ〜会社だなぁ〜
これが出来る事にどれだけ意味があるよ、
それとも、お前んとこじゃ、この書式が標準なのか?
0291デフォルトの名無しさんNGNG
>>274
漏れは、エディターとコンソールでjavacだが、
そんなええの?
274の言う程度の便利さなら、
必要に感じないんだけど、
ほかに、もっと便利な事あんの?

てか、皆どうなの?
コンソールでjavacってもう普通じゃないの?
0292デフォルトの名無しさんNGNG
>>291

274じゃないけど、良いところもあるよ。
JBuilder使っているけど、パッケージやクラスの内容を
理解しやすいと思う。
ただ、普通のエディターが良いという人に無理に薦める
ほどじゃない。
0293デフォルトの名無しさんNGNG
>>287
Javaで業務アプリ関係で配列はあんまり使わないと思う。
0294デフォルトの名無しさんNGNG
>JBuilder使っているけど、パッケージやクラスの内容を
>理解しやすいと思う。

コレが必要な人っていうのは、javadocドキュメントを読むのが嫌いな人?
マルチディスプレイで片方でドキュメント開きながら秀丸でも、おいらは
十分だなあ。強調表示カラーリングのファイルとかはいろんな言語用のが
いっぱい出回ってるし。
0295デフォルトの名無しさんNGNG
>>294

292です。
だから、普通のエディターで満足している人には薦める
ほどじゃないんです。
0296デフォルトの名無しさんNGNG
ぐうう・・・
JBuilderからCPadへ移植できん・・・・
0297B-TNGNG
>>287
やはりこれくらいの事は知っていなくてはな!
>>289,290「これを知ってても意味ない」て言っているみたいだが、何?知らなかったの?
俺らんとこでは研修でこういうのを詳しく教えてくれえたぞ。
ちゃんと道理というものがあってこういう記述法が用意されているのだ。
何故、Integer[]をString型の変数名として利用できるのか、それくらいの事は分かるよね?
>>289,290共にろくに理論も知らずにやってるんじゃない?常識だよ常識。
0298 NGNG
1,2,5!
0299コルバNGNG
>>297
>何故、Integer[]をString型の変数名として利用できるのか、それくらいの事は分かるよね?
要はimportする中のクラス名とだぶった変数名を付けてコンパイラがブーブー言い出したら混乱の元だもんね。
これは知っておかないとね。
>>289
これらの問題、米国の過去のsun認定試験に出た実績のある問題です。どこかのホームページに出ていたのを見たことあります。
なので、別に問題無いわけじゃないのよ。
0300 NGNG
>>292
キー打つのが嫌。
0301デフォルトの名無しさんNGNG
>>297
ほほぅ.君んとこは,「常識」のとこを「研修で詳しく教えて」んのか.
0302コルバNGNG
>>298
確か正解は、1,2,5。
3番の、int[] test= new int[]{1,2,3}は、
    int[] test= new int[3]{1,2,3}
とすればコンパイルは通るはずです。
0303デフォルトの名無しさんNGNG
本当にどうでもいい質問なんで恐縮なんですが・・・

SwingやAWT、Servletってよく「コンポーネント」って言い方するけど、
俺は「Javaのコンポーネント=JavaBeansとEJB」だと思っていたけど、
SwingやAWTやServletも実はJavaBeansなの?

俺はこいつらはてっきり普通のクラスだと思っていたのだけど。
0304 NGNG
>>287の答え:
1.
2.
3.
4.
5.
が余計な為全て通りません。
外しても名前重複のため1しか通りません。
0305  NGNG
マジな正解は1,2,3,5のもよう。
0306コルバNGNG
>>304
確かにそうかもね。
でも上げ足取りすぎでは?
そういうこと言ってたらすべてのテストは誤問ばかりだがな。
0307コルバNGNG
>>305
マジで3番OK?
そしたら失礼しやした。
0308デフォルトの名無しさんNGNG
>>168でも質問されてますが、自分もJava Helloを実行すると
Exception in thread "main"java.lang.NoClassDefFoundErrorが出ます。
-classpathオプションで”.”を付けたり、\jdk1.3.1_02\jre\lib等指定してみたんですが、上手くいきません。
googleで上記のエラーを検索してみたんですが、>>173、>>178の方法しか見つけられませんでした。
Hello!!も見れないとは…
鬱駄市悩…

OSはWin2000、JDK1.3.1_02で、インストール先はC:\JDK1.3.1_02です。
このスレの方たちから見れば、何度も既出で(゚Д゚)ハァ?なレベルの質問かと思いますが、
ご教授願えますでしょうか?
0309こんなのは?NGNG
1=SET CLASSPATH = C:\jdk1.3.1_01\lib;C:\jdk1.3.1_01\jre\lib
2=SET CLASSPATH = C:\jdk1.3.1_01\jre\lib
3=SET CLASSPATH C:\jdk1.3.1_01\jre\lib
0310これだけでいいのかな?NGNG
SET CLASSPATH = C:\jdk1.3.1_02\lib;C:\jdk1.3.1_02\jre\lib
0311それでだめなら実行時オプションNGNG
-classpath C:\jdk1.3.1_01\lib;C:\jdk1.3.1_01\jre\lib
0312.もいれようよNGNG
SET CLASSPATH = .;C:\jdk1.3.1_02\lib;C:\jdk1.3.1_02\jre\lib
0313デフォルトの名無しさんNGNG
クラスパス以外に原因がある可能性も考えてみたらどうか。

実行しようとしてるディレクトリにHello.classがちゃんとあるか?
mainメソッドのシグニチャが間違ってないか?
実はパッケージ設定してないか?
0314デフォルトの名無しさんNGNG
>>299
>これらの問題、米国の過去のsun認定試験に出た実績のある問題です。

その試験でしか使わんような知識だよ。
もしも使うとしたら、どこかのバカが「俺ってこんなのも知ってるんだよー」的に
書いてしまったコードをデバッグする時ぐらいだろうけど、
まあ、人生に一度有るか無いかじゃないの?

なんでワザワザそんなに優先順位が低い知識を入社時にテストしなけりゃならんのか
俺にはワケワカラン。
0315308NGNG
>>309-313
レスありがとうございます。
set CLASSPATHも、-classpathもダメでした。
309-312まで全て試したんですが…

>>313
Hello.classはd:\java\に置いてあるんで、実行する時のファイル名指定はd:\java\Hello.classとしています。
とりあえずソース貼ります。

public class Hello {
public static void main(String[] args) {
System.out.println("Hello World!!");
}
}
0316308NGNG
インデントが無くなってる…(;´д`)
0317デフォルトの名無しさんNGNG
>>315
>実行する時のファイル名指定はd:\java\Hello.classとしています。

これの意味がよくわからない。
0318308NGNG
>>317
java d:\java\Hello って意味なんですが…
0319デフォルトの名無しさんNGNG
>>318
そりゃぁ動かないよ。
次の通りにやって味噌。

1. c:\tmpを作成
2. c:\tmpにHello.classを置く
3. DOSでc:\tmpに移動
4. CLASSPATHを消す。具体的にはDOS画面で
c:\tmp>SET CLASSPATH=
と打つ。
4. DOSでc:\tmp>java Helloと打つ。
0320デフォルトの名無しさんNGNG
Ruby >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>. Java
0321308NGNG
>>319
動きました!
ありがとうございます。
でも原因が分かってないです。
d:\java\ってしてたのが悪かったんでしょうか?
環境変数の問題なんでしょうか?
0322デフォルトの名無しさんNGNG
両方かもね。
0323308NGNG
>>319
すみません。自己解決?しました。
DOSでd:\java>java Helloで動きました。
これ以降は自分で調べます。
遅くまでありがとうございました。
0324デフォルトの名無しさんNGNG
そういうのは自己解決とは…
0325308NGNG
>>324
表現の仕方が悪かったですね。
「何となく原因が判ったので、これ以降は自分で調べます。」に置き換えてください。
スレ汚しすみませんでした。
0326hogeNGNG
Java2Dの質問です。
環境は、JDK1.3 win2kです。

ある図形を,AffineTransformを使って、回転しました。
マウスを使ってその図形をドラックしようとしたところ、うまく行きません。多分、画面の上ではマ図形をウスで
クリックしているつもりでも、図面は、変換された座標上に有るので、一致しないのだと思います。
マウスが図形の中に入っているかどうかの判定は,図形r.contains(p)でやっています。
それで、二つ方法を考えました。
一つは、マウスのポイントを図形の座標へと変換する。
二つ目は、図形の座標を、実際の座標に変換し、マウスポインタと比較する。
一つ目の方法で、マウスのポイントをtransformしましたが、うまく変換していないみたいです。
二つ目の方法は、どの様にして良いのか分かりませんでした。
皆さんは、どんな方法で、マウスが図形の中に有るか判定してますか?
0327デフォルトの名無しさんNGNG
やったことないのでわからんけど、二つ目で、
AffinTransform#createTransformedShape()
で帰ってきたShapeをGraphicsにdrawするようにしたらどうでしょうか?
0328デフォルトの名無しさんNGNG
>>287
おたくの会社、
頭堅いやつばっかりでしょ?
0329デフォルトの名無しさんNGNG
TextFieldをGrigbagLayoutしたら、Frame下部に変な仕切りが
できてしまったのですが、逝っていいですか?
Linux+JDK1.3.1_02だす。
0330デフォルトの名無しさんNGNG
>>329
あ、それ経験があるYO!
いろいろレイアウトを弄って何とか消した記憶がある。
消し方は忘れたけど、消せるはず。
0331デフォルトの名無しさんNGNG
は〜〜。
「俺cobolしか書けないYO!」とか言われ、
java->cobolの呼び出しを実現できるのか調査してます。
microfocus cobolにはライブラリがあるようですが、
一般的な手法で何か参考になるようなwebとかご存知ないでしょうか?
0332デフォルトの名無しさんNGNG
>>331
COBOLオンリーな奴は、プロジェクトからはずすのが正解。
Cならまだしも。
0333331NGNG
それは提案もしたのですが・・・。
java->C->cobolと三段経由しか無いんでしょうか?
cobolなんて全く知らないんで、どうしたらいいでしょう。
0334331NGNG
連続カキコスマソ。

Javaを勉強する気が無い人たちに、
CORBAを理解させるのも同じぐらい骨が折れそうだし・・・。
0335 NGNG
JVM用のCOBOLコンパイラがあるでしょうが。
0336331NGNG
>>335
PREcobolというものでしょうか?ググルで検索したらありました。
ちょっと、調べてみます。

しかし、こういうものって、実際の業務で使われているのでしょうかね?
使ったことある方おられますか?
0337教えてクンNGNG
3つのソースファイルを作りました。
Mother.java
Human.java
Elevator.java
です。
# Mother.java #
public class Mother {
Mother() {}

public static void main(String args[]) {
/* クラスの生成 */
Elevator ev = new Elevator(***);
NewHuman hu = new NewHuman(***);
}
}

こうやってElavatorクラスの関数をNewHumanくらすが、
NewHumanの関数をElavatorクラスが使うにはどうしたらいいの?
0338 NGNG
static public
0339 NGNG
static public 関数で定義してー

Elevetor.関数名()で呼び出し。
0340デフォルトの名無しさんNGNG
>337
・同パッケージにする。
か、
・importする。
か、
・プルパスで記述する。

いじょ。
0341337NGNG
>>338
どういうことですか?
>>337
***の部分にはそれぞれなんて書けばいいのですか?
0342337NGNG
ちょっと用事ができたのでしばらく抜けます。
m(__)m
0343デフォルトの名無しさんNGNG
ひょっとして、new を関数と思っているのか?
こりゃ、コンストラクタなんで、あなたのつくったその
Elevator なり、NewHumanなりのコンストラクタの引数を書く。
で、ev.メソッド名()でメソッドが呼べる。
338さんが言っているのは、staticメソッドにしておけば、
インスタンスを生成しなくてもメソッドが呼べるってこと。

いじょ。
0344329NGNG
おお、同志がイタノカ・・・。
レイアウトからTextField抜いたYo!
文字列入力制御がイタイヨ。
0345風呂がま洗いNGNG
IPv6でちょっとしたツール書きたいんだけど、Javaじゃムリでしょうか?
すでに作ったことある人がいるなら、僕もJavaでがんばってみようかなと思ってます。
ムリならC逝きます。。。どシロウトだけど。
0346デフォルトの名無しさんNGNG
Inet6Address だかを使うんじゃないの?良く知らんけど。
このクラスって 1.4beta からだっけ?
0347風呂がま洗いNGNG
>>346
さんきゅー!
Inet6Addressでサーチしてみます。
なんとかなりそうで嬉。
0348332NGNG
>>331
どうしてCOBOLオンリーの奴をプロジェクトからはずせないのか、非常に気になる。
なんかすごい技術を持ってるの?

スレ違いだから、プログラマー板の愚痴スレにでも来てよ。
0349デフォルトの名無しさんNGNG
>>336
漏れも知りたい。
誰か人柱プロジェクトきぼんぬ。
http://flp.cs.tu-berlin.de/~tolk/vmlanguages.html
0350デフォルトの名無しさんNGNG
サーバー間との送受信データ量を調べたいのですが
どこかにサンプルプログラムとかないですか?
0351デフォルトの名無しさんNGNG
JVMについて知りたくなったのですが、
JVMのアセンブラーやCライクな言語でおすすめは?
■ このスレッドは過去ログ倉庫に格納されています