【初心者】Java質問・相談スレッド55【大歓迎】
1 :
デフォルトの名無しさん :
04/10/20 23:35:28
スレ立て、乙!
3 :
デフォルトの名無しさん :04/10/20 23:38:39
2を下さい
4 :
デフォルトの名無しさん :04/10/20 23:39:33
前スレの994です。 やっぱりCができないと駄目なんですね・・・
>>1 乙。
>>4 プログラマになるつもり?
学校の課題ならJavaだけでもいい気がするが。
>>4 Cを知らなくても、Javaは理解できる。
Cを知れば、Javaの理解も深まる。
>>4 できないよりできたほうがいい。
やったほうがいいかやらないほうがいいか不明確な場合、
やらないでいいことをやる前に避けようとするのはあまり賢くはない。
食わず嫌いができるだけです。
前スレ955です。 う〜ん。 出力直前でSystem.outしてみたんですが、ほしいレコードはみんなきてるんですよね。 なのに、 bw.write(lineStr +"\n"); //出力 で書いてもファイルには出力されてません。。。しょぼーん
9 :
デフォルトの名無しさん :04/10/20 23:44:47
>>1 乙
>>4 自分で勉強できなければCを選んでもあまり意味ない。
学校で習っただけではどっちとっても微妙
12 :
デフォルトの名無しさん :04/10/20 23:47:08
>>8 bw.close();
の前に
bw.flush();
を入れてみる
13 :
デフォルトの名無しさん :04/10/20 23:49:01
いま、JAVAが無効な状態です。 どこで有効/無効を切り換えるんでしょうか? 教えてください。
14 :
955 :04/10/20 23:50:48
>>12 カミサマキタ━━━(゚∀゚)━( ゚∀)━( ゚)━( )━(゚ )━(∀゚ )━(゚∀゚)━━━!!!!!
解決しました!これなんのおまじないデツカ?
forルーブはどうなったんだよw
16 :
955 :04/10/20 23:53:37
>>15 すみません。ちゃんとブレイクしてたみたいです。
(情けない。。。)
すいませんがポリモルフィズムとやらをわかりやすく解説してください。 要はifとかswitchを使わずに具象クラスを作るってことですか?
>>14 何か嘘くせぇ。自分に都合の悪いことかくしてないか?
close()文が初めからなかったと思うんだが?
close()したらflush()の必要はないはず。
>>18 「生き物」クラスのサブクラスである「人間」クラスがあるとする。
おれが誰かに「生き物を連れてこい」と言われたとき、
「生き物」クラスのインスタンスを連れて行けば当然OKだが、
「人間」クラスのインスタンスを連れて行ってもOKになる。
なぜなら「人間」クラスは「生き物」クラスでもあるからだ。
>>20 はぁ。なんとなくわかったような。
で、それが実際PGする際にどう利点になるんですか?
自分で
>>18 に書いてるやん。ifとかswitchに頼らなくて済む。
>>22 そうですか。なるほど。
具象クラスを作ることで実行クラス(?)には修正することもなく修正ミス等がすくなくなってひいては保守性とかも高くなるってことですか。
どうもでした!!
25 :
955 :04/10/21 00:14:57
ご迷惑をおかけしたので、ソースを完全公開します。 ※コメント一部つぶしてますが。 仕様としては、あるディレクトリにファイルすべてを読み込んで 指定した文字列を部分検索した結果、Hitした場合、そのレコードをすべて出力するPGMです。 以下部分的に公開します。
26 :
955 :04/10/21 00:15:46
import java.io.*; import java.util.*; public class KAWASE001 { /** ********************************************************************** メイン ********************************************************************** **/ static String lineStr = ""; public static void CutRateFile(String idir,String ofilename) throws FileNotFoundException, Exception { // 1行データ String kawase_data = null; //? int skip_len = 48; //読み飛ばしレングス長 int get_value_len = 8; //取得値レングス int keyword_len = keyword.length(); //検索キーワードの長さ */ String fileLine = null; //レコード読み込みエリア String keyword = "xxxxxxxxxxxx"; //検索キーワード String Putflg = "N";//該当レコード出力フラグ intger // ファイルオープン(output) FileWriter fw = new FileWriter(ofilename); //バッファ書き出しコンストラクタ定義 BufferedWriter bw = new BufferedWriter(fw);
質問です。 swingとかでボタンにカーソル合わせるだけでミニ吹き出しが出て解説が出るのはどうやるんですか?
>>throws FileNotFoundException, Exception { ちょっとワラタ。例外適当に投げすぎ(w
29 :
955 :04/10/21 00:19:36
ひぇー!ソースを書こうと思ったけどココ汚すだけになりそう。 もう皆様の興味が引けてしまいましたら、FAにしますが、いかがでしょう? うぷするよい方法ありましたらお教えくださいませ!!
>>27 JComponent#setToolTipText(String text);
>>27 コンポーネントのsetToolTipText()メソッドを探してみるのじゃ。
upまだー
>>29 1.アップローダを開設する
2.ウェブページを開設する
34 :
955 :04/10/21 00:21:06
>>28 大いに笑ってください。
神々の方々に恥をさらして、さらに上を目指したいです。
ありがとう。
36 :
デフォルトの名無しさん :04/10/21 00:21:19
>>27 JComponent#setTooltipText(String s)でテキストをセットするか
JComponent#getTooltipText()をオーバーライドして、任意の
Stringを返すようにすればOK
コメントの「コンストラクタ*定義*」が凄く気になる そこは呼び出してるだけで、定義してないだろうと
俺は2chに晒す用の無料Webスペースを持っている。
40 :
955 :04/10/21 00:24:29
自分の”趣味のプログラミング”に神々のお力をお借りしてしまって よいものか・・・今、ガクブルしてますよ。。。
41 :
古代帝國富士皇朝総帥・伯壬旭 :04/10/21 00:25:52
よくぞ次スレを立てた。 誉めてつかわす さあ、皆の者、質問するがいい!
>レングス長 ワラタ 残りも早く晒せよ。どっかコード公開できるとこなかったっけ?
>>40 神なんているわけないだろ
2chなんて引きこもりからニートまでだぞ
晒すならさっさと晒せ
笑ってすまんこ。 ここは初心者が勉強するスレだね。 例外を投げる時は、そこで発生する例外を全て書いておいた方がいいよ。 面倒だけどそこで発生しうる例外を全てきちんと把握できる。 FileNotFoundExceptionはExceptionのサブクラスだから両方書いても重複するね。 ランタイム例外は書かなくてもスローされるから別にいいとしても、 ここで発生する例外はFileNotFoundException,IOExceptionときちんと書いた方がいいと思う。
48 :
955 :04/10/21 00:31:59
>43 ありがとう。 で、また相談なんだけどココに書こうとして、ゴミ消しとかしたら またおかしくなっちゃったんだよね。。。(鬱) で、自力で修正するまで待ってもらえます? それとも途中でいーから、UPしていー?
はやくー
思うんだが、確かにコメントは重要だと思うが 一行一行にコメントつけんのはどーよ? 現場でひどいのになると // Fileオブジェクト作成 File file = new File(path); とかあるんだが 処理読んで理解できないけどこのコメントで「ああ、なるほど」と思う事… ってあるか?
>>955 (・∀・ )っ/凵 ⌒☆チン マダー?
>>955 おめーひょっとして株ロボコンにでも挑戦してるんじゃねーだろな
もしそうなら自動作成ロボでやめとけ
いきなりソースいじろうとしても無理だから
いずれにしても、まずは基本をしっかり勉強しろ
>>26 のコメント見る限り、理解が全然足りていないようだ
この瞬間、世界で一番注目されているプログラマの ソースupまだー。
>>50 オイラはメソッドごととか要所とかにしか書いてないな。
コメント難しいよ。コメントの上手いソースってのも読んでみたいな。
あ、 FileNotFoundExceptionはIOExceptionのサブクラスだから一つでいっか。
>>50 コメントは「何をしているか」ではなく「何故そうしているか」を
書くとよいとどっかで聞いたことがあります
コメントはテストだけに書くっていうのも良いとどっかで聞いたことあります。
60 :
955 :04/10/21 00:43:25
>>48 今日は台風でみんなヒマだから、upしたら書き直してくれるよ
最強株ロボキタ━━━━━━(゚∀゚)━━━━━━ !!
63 :
955 :04/10/21 00:46:48
>52 これ、株じゃなくて為替分析を考えてます。 ファイル名見ればわかりますよね。 JAVA勉強するのに何か目的意識ほしかったので これをテーマにやってます。 かと言ってこれが解決したら億万長者になれる訳じゃないですよぉーw
>>56 javadocってAPIリファレンスつくるツールじゃないっけ。
66 :
955 :04/10/21 00:48:35
拡張子.javaのままでうpできるアップローダなんてねえよボケ
なんか台風もう終わっちゃったんですけど。ツマンネ
69 :
955 :04/10/21 00:50:44
まぁ、こんなクズソースでもみんなのネタにしてもらえれば 幸いです。 けど、1時間ちょいで60件も。。。ありがたい話です、はい。
32行目はいらない。 if (A[i]==null) break;
>>65 メソッド毎に書くんだろ。じゃあjavadoc書けばいいだけ、
eclipseでホバー表示もできるし
パラメーラーが足りません。
>>50 そのうち面倒になって そいつが必要だと思うところにしかコメント書かなくなるだろ。
むしろ、最初から全くコメントを書かない奴は いつまでたっても全くコメントを書かないので
仕様なのかバグなのか、変更して良いのか悪いのかわからないコードを量産してくれる。
76 :
天災人 :04/10/21 00:58:36
77 :
955 :04/10/21 01:02:00
lineStrがstaticだからいけないのかな。
lineStrを一時変数にして、"\n"とってもだめ?
>>73 javadocの形式にするとコメントが上手くなるのか?
少なくとも955がCOBOLer出身だと言うことは伝わった
>>70 いらないっていうか、forの外でA自体がnullじゃないチェックをしとかないと、
fがディレクトリじゃないときに、ぬるぽが出るんじゃね?
87 :
955 :04/10/21 01:11:47
>>85 「メソッドごととか」に対して突っ込んでるだけだろ。
少なくともjavadoc書いてりゃ
ソース中にメソッド毎にいちいち処理内容書く必要はない。
>>87 コメントやABENDってあたりがモロなんだが…
955かわいいよ955
91 :
955 :04/10/21 01:15:07
>89 そうなん?それはASMをやってた頃の名残ですね。
PL/IだろうがASMだろうがCOBOLだろうが変わんねーよ っていうことはプログラミング初心者じゃないんだな…
93 :
955 :04/10/21 01:17:50
補足なんだけど、アセンブラはコメント書いてないと全然追えないですよ。 昔、それですごい苦労した時の名残です。
>>93 指定フォルダ内にフォルダがあったら落ちないか?
>補足なんだけど、アセンブラはコメント書いてないと全然追えないですよ。
>昔、それですごい苦労した時の名残です。
郷に入りては郷に従おうな。
>>955 取りあえずちゃんと動くね。改善の余地はあるけども。
java.io.File#list()より、java.io.File#listFiles()を使った方が、
見やすいソースになると思われ。
前スレよみました で、955さん。いまの状況は?配列のエラーは消えてるの?
97 :
955 :04/10/21 01:31:51
>96 ありがとう。 今は、Exception in thread "main" java.lang.NoClassDefFoundError なエラーがでちゃいます。 壊しちゃったのかなぁー?
あ、上の方で解決したって書いてあるじゃん。 じゃー。終了か。 ソースの方は直す点が多すぎてつっこむ気にもならない。
"\\" -> File.separator かな?
この落とし所ってどぉーするんでしょ? 神々の皆様のお声をお聞かせくださいませ。
あと、ArrayIndexOutOfBoundsException はキャッチしないでもよくなってるよな?
二行に一回はつっこみポイントがあるのもすごいな
> if (args.length != 2) { //引数チェック 2個以上あるか? コメントと条件文が意味合ってないよな?
>>105 もうそのテの添削やると、それだけでスレ埋まっちゃうから
> new FileInputStream(A[i]), "SJIS")); SJISではなく、MS932が恐らく意図するところ。 > lineStr = null; //初期化 いらない ああ、キリがない
while((fileLine = br.readLine()) != null) このwhile文にはちょっと感心した。
"\n"と書かないで System.getProperty("line.separator") と書かないとマズイことになります。
アセンブラとはいえ仮にもプログラミング経験者が
こんなコードを書くはずがない。
特に
>>105 なんかはどう考えてもおかしいだろ。
大なり小なりなんか「算数」のレベルだろ。
どういうことだ。これは
>>108 確かに。他の行と違って、いたってオーソドックスだもんね。
955に幸あれ。おやすみなさい。
むしゃくしゃしてやった。 相手は誰でもよかった。 だってヒマなんだもん。
>>110 そう、
>>107 や
>>109 なんかは「Javaに慣れてない」って感じだし
フロー本体に直接関わることではないからまだいいけどね
どうもおかしいね
>>110 ゼロフラグとキャリーフラグの使い間違いってとこですな
>>115 コメントで「以上」と書いてるんだから
不等号の一つくらいは入れてくれないと困る
皆様。 いろいろとご迷惑をおかけいたしました。 お蔭様で正しく動作するPGMとなったようです。 ですが、私の無知ゆえの潜在BUGは多々あるかと思います。 今後、さらにJAVAの理解を深めた時にでもブラッシュアップしたいと思います。 現在のPGMは、仕様の途中ですのでさらにコーディングを続けたいと思います。 当面の目標はふたつです。 ・該当レコードを単に出力→出力内容を編集して出力 ・検索キーワードの外部ファイル化 また、皆様のお時間がございましたら、弄んで罵倒してくださいませ。 本日はまことにありがとうございました。
うんうん、プログラム基本はできていると思いこんでいる初心者は怖いね。 Javaの理解以前の根本的な問題はあると思うよ。
>>117 そんで結局落とし所って何のことだったんだ
>>117 ここまでできたんなら、残りの二つは目標でも何でもないと思うが…
まあ適当にやれ
>>122 改良も何も、これを直すのなんか勉強してから一ヶ月程度のヤシでもできるだろ…
ラウンジの改良、ちょっと中途半端だなぁ。。
>>124 いつまで人に質問してれば気が済むんだ?
少しは自分で何とかしようという気は起きないのか?
このスレ最初から読み直せ
>>125 直してる(つもりの)香具師が明らかに初心者(から中級者の間くらい)。
あと半年もすれば恥ずかしく思うようになるだろう
>>126 _____
/_ |
/. \ ̄ ̄ ̄ ̄|
/ / ― ― |
| / - - |
||| (6 > |
| | | ┏━┓| / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
| | | | ┃─┃| < 正直、スマンカッタ。
|| | | | \ ┃ ┃/ \________
| || | |  ̄  ̄|
肝心の955はどこにいったんだ?
添削スレに書き込みいただきました方々 本当にありがとうございます。 勉強させていただきます。 今日はもう2時ですので失礼させていただきます。 皆様おやすみなさい。
4の感想 public static void main(String[] args) throws IOException 例外投げっぱなし? argsの引数チェックが欲しい。 import文の該当クラスはちゃんと書いて欲しい。 え?ひょっとして拡張for?俺読めないよ。
えーっと、
>>131 じゃないけど。
Exceptionなげっぱなんだったら、try文は1つでいいかな?と。
どっちもロジック的に終了でしょ
>>136 >public static void main(String[] args) throws IOException
>例外投げっぱなし?
きっとJVMが適切に処理してくれるから問題ないよん。
このコードではcatchしたところでprintStackTrace()ぐらいだろ?
他はどうでもいいことだね。
>>137 ファイルcloseしないとダメ。
cutRateFile()は例外投げた後にすぐJVMが終了するかどうか知らないから。
tryは2個の方が綺麗では? finallyとの対応関係が分かりやすい。
例外は、ファイルが無いのか、IOエラーなのか原因がつかみにくい。 引数チェックはちゃんとしなきゃ。 ま。この場合例だからいいかもしれないけど。 あとimport文をちゃんと書く習慣があったほうがいい。これもいいかもしれないけど。 でも4は綺麗だとは思いますよ。
>>138 えーと、out.print(line); って out.println(line); のがいーのでは?
もとの奴には改行ついてたみたいだし。
あと、import java.util.*; って必要だったっけ?
皆様おはようございます。 昨日はお騒がせしました。 >むこうヨン様 私の環境ではヨン様のソースコンパイルが通りません。 KAWASE.java:22: ';' がありません。 for (File inputFile : new File(inputDirectoryPath).listFiles()) { ^ KAWASE.java:40: 式の開始が不正です。 } finally { ^ エラー 2 個 ってなエラーでます。 これって環境の問題なんでしょうか?
143 :
デフォルトの名無しさん :04/10/21 08:20:58
Javaの実行環境整えようとDLしようと思ったら 公式サイトが重くてダウンロードページにたどり着けない・・・ 何かいい方法はないものか・・・orz
144 :
デフォルトの名無しさん :04/10/21 08:25:58
質問です。 1.抽象クラスはテンプレートみたいなものって理解でOKですか? 2.そうであれば複数の開発者がいる場合の利点はわかりますが 開発者が一人なときは抽象クラス作る意味はあまりないと考えてOK?
>>142 1.4なら、
File[] inputFiles = new File(inputDirectoryPath).listFiles();
for (int i = 0; i < inputFiles.length; i++) {
File inputFile = inputFiles[i];
に変える。
後もう一箇所、
System.err.printf("Keyword not found. file: %s%n", inputFile.getPath());
を
System.err.println("Keyword not found. file: " + inputFile.getPath());
に書き換える。
1と10を指定すると 1+2+3+4+5+6+7+8+9+10 を計算するメソッドはないでしょうか?
>>147 ある、無いの前にどこに?って範囲が分からないと。
標準apiには多分ない。
1+2+3+4+5=(1+5)×5÷2
1+2+・・・+9+10=(1+10)×10÷2
今勉強してるサイトではAWTを使ってるみたいなんですが AWTを学ぶことは時間の無駄となるんでしょうか?
>>144 インタフェースの拡張版みたいなもの。
おれにとっては一人で開発してても抽象クラスは重宝するけど。
>>149 Swingも基本はAWTにあり。ぜんぜん無駄じゃない。
>>144 > 1.抽象クラスはテンプレートみたいなものって理解でOKですか?
ダメ。
> 開発者が一人なときは抽象クラス作る意味はあまりないと考えてOK?
開発者が一人なときはスパゲッティコードで良い、とか
開発者が一人なときは他人に読めないようなコードで良いってんならそれでOK
153 :
デフォルトの名無しさん :04/10/21 13:12:18
>>149 GUIコンポーネント完全制覇という本によると
「AWTを知らずしてSwingなし」だそうです。
昨日はどうもありがとうございました。 先日のPGMにつきましては、Closeという事でお願いします。 これで指定した文字列を変えることで、欲しいレコードを抜けますので。 本当は、このレコードを編集しようかと思いましたが、入力レイアウトが保証 されている訳ではないので編集PGMは機能分割することとしました。 またご相談させていただくやもしれませんがその節はよろしくお願いいたします。 m(__)m
完璧なソースとやらを見せてくれ。
あ!!! 一つだけお伺いしたいことがありました。すみません!!m(__)m 今のPGMでは、"指定した文字列を部分検索してHitしたレコードを 出力"していますが、これを"指定した文字列を部分検索してHitしたレコードの 「Hitした文字列の先頭からレコードの終末まで出力する」ということはできるものなのでしょうか? (指定した文字列の前にある文字列は意味がないので) これくらいの編集はしたいです。 何卒よろしくお願いいたします。
>156 できるけど。 APIドキュメントのjava.lang.Stringの項を端から端までよーく読んで ちっとは自分で考えてから聞きんさい。
setAcceleratorでメニューにショートカットキーをつけたんですが 一つの処理が終わるまでキーを受け付けないようにするにはどうすればいいですか? アクションはAbstractActionでヤッテマス
>>158 AbstractAction#setEnabled(boolean)
かな、
俺は使ったことないけど
アクション開始でfalseにして終わりでtrueにしてみましたが駄目でした
>157 乏しいスキルから、 (1)条件に合ったレコードの長さを取得 length() (2)条件に合ったレコードの先頭から終端まで、切り取り substringで。 いう手順でできました。 このコーディングで良いか悪いのかはまったくわかりません。 ありがとございました。
>>161 それ晒してみ?採点してくれる人がいるかもしれん。
>>160 ひょっとしてその処理って
Swingのイベント処理のスレッドで実行してる?
その処理を別スレッドでやるか、
setEnabled(false)した後で
SwingUtility.invokeLater()で実行すればいい気がする
166 :
144 :04/10/21 16:19:02
>>150 インタフェースこそ、抽象クラスのメソッドだけ版、つまり特殊版だと思ってました。
重宝するときってどうやって使ってるんですか?
>>152 (´・ω・`)ショボーン
再び。
抽象クラスとかインタフェースはソースを読みやすくするもの
って理解でOK?
(他にも利点あるんでしょうが、1つの利点って意味で)
>>163 スレッドじゃないです
JMenuItemをActionに登録(?)して、そのメニューをsetAcceleratorしてます
さらしてみました。(´・ω・`)
169 :
デフォルトの名無しさん :04/10/21 17:18:15
前スレ最後のほうで「Swing コンポーネントのアイコンってどうやって取得してるの?」と質問したものです。 調べたら解決しましたので報告します。 SDK ディレクトリ /lib/dt.jar というファイルの中に Swing コンポーネントのアイコンデータが入っています。 (AWT は入っていませんでした) JAVA_HOME 環境変数から SDK の位置を取得すれば各自のアプリから使えると思われます。
170 :
デフォルトの名無しさん :04/10/21 18:37:57
質問です。 SwingのJDesktopPaneとJInternalFrameを使って、簡単なMDIを作ろうとしているのですが、 JInternalFrameを継承したクラスのコンストラクタ内で、内部フレームのサイズをsetSize(int,int)を使って変更したのに、 JDesktopのインスタンスにその内部フレームをaddして表示させてみると、そのサイズが反映されていません。 どのような原因が考えられるでしょうか? ちなみに内部フレームのクラスのコンストラクタは以下の通りです。 public Workspace(){ super("untitled"+ ++count,true,true,true,true); this.getContentPane().add(new JScrollPane(new JTextArea("")),"Center"); this.reshape(0,0,default_new_width,default_new_height); this.setVisible(true); }
171 :
170 :04/10/21 18:39:48
訂正です 二行目 × setSize(int,int) ○ reshape(int,int,int,int)
172 :
デフォルトの名無しさん :04/10/21 19:03:33
>>170 setSize()でザイズ設定するのでなく、
setPreferredSize()にしてみてください。
>>158 その場合Swingによるイベントの処理はこうなる
1.ユーザがショートカットキーを押す
2.Actionが呼ばれて処理を始める
3.ユーザがまたショートカットキーを押す
4.2の処理がおわる
5.3の入力に対するActionの処理が始まる
なので2でsetEnabled(false)しても
4のところでsetEnabled(true)すれば
5の処理はそのまま行われる、と。
長い処理は別スレッドでやるべし。
174 :
デフォルトの名無しさん :04/10/21 19:51:22
PATHを設定したのでスタートメニューからコマンドプロンプトを開き、javacを実行すれば可能なのですが ランチャーからコマンドプロンプトを開いた場合、javacを実行してもPATHを設定していないのと同じ、 「'javac' は、内部コマンドまたは外部コマンド、 操作可能なプログラムまたはバッチ ファイルとして認識されていません。」 が表示されます。 ランチャー側にコマンドプロンプトのexeファイルを直接入れても、スタートメニューのものと同じショートカットを入れてもダメでした。 直接Javaのことでは無いのでスレ違いかもしれませんが、よろしければ理由と解決法を教えてください。
>>173 それが4で2の処理が反映する前に次の処理が起きてる気がするんですけど
setEnabled(false)していればそれはないのでしょうか?
例えばCtrl+A一回押すごとにでボタンの色が赤→青→黄→赤(以下ループ)になるはずなのに
Ctrl+Aを長押しすると押してる間は色が変わらず、離した時に幾度も処理された結果が反映されると言う感じなのですが
これはスリープ(?)みたいなのをやればいいんでしょうか?
ボタンの色を変えた後にsetEnabled(true)をやればうまくいくかと思ったんですが変わりませんでした
やっぱ955ってプログラミング初心者だったか こんなのが「それはASMをやってた頃の名残ですね」なんて偉そうに言うんじゃ 他のASM経験者が可哀想すぎる
>174 いずれにせよPATHの設定方法に問題があると思われ。 2k/XPなら[システム]-[詳細設定]-[環境変数]で設定。 9x/MeならC:\autoexec.batに記述。 (Meは何か設定用のユーティリティがあるんだよな……覚えてないが)
>>174 環境変数のトコで名前がPATH、値もbinフォルダに合わせました。
だからまぁ、普通にコマンドプロンプトを開けばできるのです。
ただランチャーから開くと…。
>178 そーなるとランチャのCreateProcessの使い方がおかしいのかも。 ランチャの乗り換えをお勧めする。
>>172 reshape()からsetPreferredSize()に替えて実行してみましたが、
やはりサイズの変更は反映されませんでした。
あと、手動で内部フレームのサイズを変更しようとしたのですが、それも反映されず、
サイズを変更しようとすると強制的に最大化されてしまいます。
182 :
144 :04/10/21 22:45:40
抽象クラスやっと意味わかりました。(と思います) 抽象クラスX内に抽象メソッドget()を定義しておいて AとBっていう2つの具象クラスにXクラスを継承させたときに、 A、Bのそれぞれの具象クラス内での実装方法によらず A、Bのオブジェクトに対して Xクラスのメソッド経由で使えるっていう利点があるんですよね? 書いててに日本語わけわからなくなったw ひとまず答えてくれた人ありがとう。
>>182 それはabstractメソッドの説明だと思われ。
>>182 抽象クラスっつーよりインターフェイスになってる罠
>>180 見た目だけで使ってるSKランチャーだから普通にそれありそうです。
となるとどうしようもないですね。ありがとうございました。
コンソールで[Enter]を押さずに、キーをタイプするごとに処理させたいんだけど System.inでは対応できないようですが、どうしたらいいですか?
>>186 そのランチャーの作者に
スタートメニューから起動したときと環境変数が違うんですけど、ってバグレポートだせば?
乗り換えるのは良いとして。
>>182 まあそんな感じでいいと思う。
インタフェースと抽象クラスの使い分けはそのうち何となくわかってくるよ。
>>187 標準APIじゃ無理。
JNI で curses だったかをラップしてるライブラリとか使えばできるかも。
基本的すぎることかもしれませんが、 lengthとString#length()の違いはなんですか。 動作の違いなどを教えてください。
> lengthとString#length()の違いはなんですか。 length って何の length だ?
lengthは配列のフィールドだと思えばいい。 length()はメソッド。
>>193 >>194 レスありがとうございます。
String#lengthは文字列内の文字数をカウント、
lengthは配列のフィールド数をカウントする
というとこでOKですか?
>>196 > String#lengthは文字列内の文字数をカウント、
合成文字やサロゲートペアがあるので String#length() は必ずしも文字数と一致しない。
char の数とは一致するけど。
> lengthは配列のフィールド数をカウントする
配列の要素数ね。
199 :
144 :04/10/22 03:05:06
意味合いとしては ・インタフェース→それを実装したクラスが特定のメソッドを持つことを保証する ・抽象クラス→メソッドの具体的な内容は子クラスに任せる てな感じか。
JavaでのO/Rマッピングを勉強したいと思ってるのですが、 EJBとかHibernate?とかあるみたいなんですが、 何がよさそうですか?
JavaじゃなくてJavascriptのほうで質問があります。 正規表現でRegExpを使用しているのですが \が見つけるにはどのように行えばよいでしょうか? var a = new RegExp("[#-&]|[\]"); ↑だと\入ってた場合でも見つけれなくて・・・ すいません、誰か教えてください・・・
すいません1の下読んでませんでした・・・ 吊ってきます
205 :
デフォルトの名無しさん :04/10/22 18:53:15
パーサのXercesを利用するためのjavaプログラムを作成しようと しているのですが、プログラム内で、次の指定をすると、 import org.apache.xerces.parsers.DOMParser 「org.apache.xerces.parsers.DOMParseを解決できません」という メッセージが出ます。 バージョンは、Xerces.2.5.0を使っております。 Xerces-J-bin.2.5.0を落として、下記のファイルを クラスパスに追加したのですが他に必要な設定はありますでしょうか? ・xml-apis.jar ・xercesSamples.jar ・xercesImpl.jar eclipseを使っているのですが、eclipseでライブラリの追加が 必要だと思っているのですが。。
classAが大きくなりすぎるのでclassBを呼んで処理してもらおうとしたのですが classBでclassAの変数をうまく使えるにはどうすればいいですか? staticでない変数をstaticコンテキストから参照することはできません。と エラーがでるのです static変数にはしたくなく、仮引数にするにもすこし多い量なんです。 newも値が変わるので駄目でした。
>>206 とりあえず getter 定義して使え、でいいのかな?
>>206 無茶言わず引数にしろ。
素で引き渡すのが嫌ならそれ用のBeanでも作れ。
なぜにBean・・・w 普通に構造体みたいにクラスでも作ればいいと思うのだが・・・
>>206 1000行くらいあるなら200行くらいに分けて階層構造にでもしろ
どんなクラスなのか見てみたい。
>>206 ・多かろうが何だろうが引数にして全部渡す
・Mapか何かにでも突っ込む
・専用のBean作る
・アクセサメソッド作って自分自身を引数に渡す
・氏ね
強く氏ね
>>213 classAから新しいウィンドウとしてclassBを作って
classBで起こった結果をclassAに反映させたいのです。
引数にして代入しなおせばいいんですが、何かいい方法ないかと質問しました。
Beanっての分からないので調べてきます・・・
強く生きれば強く氏ねる
時計の針を、1秒ごとにチックタックではなくなめらかに動かしたい場合、 どうすればいいのでしょうか? 今は針描画専用の内部クラス(Threadを継承)を定義し、 public void run(){ while(ture){ 針描画処理 } } というふうにrun()を実装して そのインスタンスのstart()を呼んでいるのですが、 CPU使用率が常に100%になってしまいます。 動作そのものは期待どうりなんですが・・・。
>>206 お前全然わかってないじゃんかよ。
ちゃんと勉強してないからそうなる。
多分人のソースをコピペだけして来たんだろう。
newも値が変わるので駄目でした。だって。
勉強して一週間目の奴が言うような内容だな。
本とか読んでもインスタンスの話なんか最初の方に出てくるだろうが。
>>219 今は針描画専用の内部クラス(Threadを継承)を定義し、
public void run(){
while(ture){ 針描画処理 }
}
というふうにrun()を実装して
そのインスタンスのstart()を呼べばいいと思うよ。
Timerでも使えば
>>219 1/30秒ずつくらいの処理にすればいいんじゃない?
>>219 たぶん秒でとってるでしょ
ミリ秒も取ってきて適当に処理
それとsleepもいれて
Timerクラスは使ったことありませんでした。 Timerクラスやsleepメソッドで針描画処理の頻度を落とせる、ということですね。 試してみます。ありがとうございました
NTPサーバと通信して時刻合わせをするようなものを書きたいと思ってるのですが、 Javaにシステムの時刻をセットするようなメソッドorライブラリみたいなのは無いでしょうか。 SystemクラスやJakarta Commonsあたりを探ったり、ググってみたりしてもいまいち見つからず…。
Javaでシステム時刻設定なんてできるのかな? Windowsだと Runtime.getRuntime().exec("time 22:30:59.99"); とかしてtimeコマンドを実行するとかすればできるかも
今作ってるのが、Windowsでの動作前提プログラム(JNI使ってたりするんで)なので、
>>228 さんの方法が簡単っちゃー簡単ですが
一応、勉強も兼ねてPure Javaでなんとかならないかなーと思っていました。
とりあえず、今のところは
>>228 さんので実装してみます。
ありがとうございました。
230 :
デフォルトの名無しさん :04/10/22 23:44:34
すいません、JTableのコンポーネントのサイズを大きくしたいのですが JTable tb = new JTable(5,5); tb.setSize(500,500); tb.repaint(); などやっても変わりません、なぜでしょうか? また、表示する文字列によって列幅を変えたいのですが、情報が見つかりません、 レンダーをいじくるらしいのですが、さっぱりです。 どなたか教えてください。ちなみに、GUIはほとんどいじった事ありません。 よろしくおねがいします。
>>230 Swingというかレイアウトマネージャ勉強したら?
234 :
デフォルトの名無しさん :04/10/23 01:09:10
Javaで、一番下に出る棒のようなスペース、俗にいうステイタスバーは実現 できるんでしょうか?そういうコンポーネントはないようなのですが。 どなたか、よろしくです。
>>230 > また、表示する文字列によって列幅を変えたいのですが、情報が見つかりません、
TableColumn column = table.getColumnModel().getColumn(columnIndex);
とかして
column.setPreferredWidth(好きな幅);
とかでサイズ指定すれば出来るかも。
>>234 うむ。V2Cとソフトでは実現しとる。
「V2C」でググッて起動してみろ。びびるぞ。
どうやってやるかは知らん。
>>230 setPreferredSizeあたりをいじれば大概なんでもできる。
>>234 ステータスバーは JPanel とか、
必要なら好きな javax.swing.border.Border の実装クラスとかを使って
比較的簡単に実現できるが、
Swing には JStatusBar みたいなコンポーネントは無かったような。
>>236 漏れ、このコメントV2Cで見てまつ。
2chビューアの中で一番しっくり来たのがコレ。
GUIの勉強にもなる。デコンパイルしてソース見ろとまでは言わないが、
Swingの表現力とパフォーマンスについて認識を改めた一品。
>>234 BorderLayoutのSouthにステータスバーにしたいコンポーネントをはっつければOKでしょ。
239 :
デフォルトの名無しさん :04/10/23 02:09:04
デコンパイルってどうやるの?
java decompiler とかでぐぐるとデコンパイラが見つかると思うから、それ使えば?
>>239 jadが有名、GUIのフロントエンドもいくつかある
Eclipseを使ってるのならjadを使うプラグインがある
これだけ情報あれば検索で見つけられるはずからがんばれ
242 :
デフォルトの名無しさん :04/10/23 02:43:56
なんか、ちょっと前の本とかSwingでマックのルックアンドフィールとか使ってたりする んだけど、今、はそのクラス自体ないようなのです。 J2SDK1.4.0とかでもできるの?
243 :
デフォルトの名無しさん :04/10/23 02:44:37
244 :
デフォルトの名無しさん :04/10/23 02:58:27
JavaScriptでWebページ内のFormの値を取得して、それをアプレット に渡して、アプレットからファイル出力させるにはどうすればいいの? いろいろ試したけど、JavaScriptかアプレットどちらかのセキュリティ権限に 引っかかって、うまくいきませんでした。無理って事?
クライアント側にファイル出力するのは基本的に無理。
246 :
デフォルトの名無しさん :04/10/23 03:08:06
247 :
デフォルトの名無しさん :04/10/23 03:19:12
JFrameクラスで setResizableを下方向のみ許可することはできますか?
248 :
デフォルトの名無しさん :04/10/23 03:39:22
249 :
デフォルトの名無しさん :04/10/23 04:40:00
setTextメソッドで("<html>a<br>b<br>c") と指定した場合 JTextAreaクラスなら文字列がそのまま表示されるけど JLabelクラスならhtmlで解釈されるから改行されますよね 他にJavaでhtmlを使ってテーブルを表示する方法ってありませんか?
251 :
デフォルトの名無しさん :04/10/23 09:38:06
>>249 JEditPaneとJTextPane
StringTokenizerとか、String#splitとか
文字列を分割するための道具が、Javaには幾つか準備されているようですが、
エスケープが扱える物って、なんかあるでしょうか。
たとえば
1. 文字列を空白文字で区切る
2. 空白文字が連続した時は、一個の空白であると見なす
3. 大文字は小文字に変換する
4. 連続した空白、大文字を表現したい時は、"で囲む
5. "自体を表現する時は\でエスケープする
6. \自体を表現する時は\でエスケープする
などというルールを実装するには、普通どうやるのだろう。
とりあえず、一文字ずつ、状態遷移しながらパースするコードを書いてみますた。
http://do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/lounge/file/1076074304_21/Parse.java ルールが変わるたびに、マルコフ的な状態遷移を考えて、
新しくたくさんのコードを書いて...ってのが激めんどくさいので、
どうにか簡単に表現できると嬉しいんだが。
みなさんどうやってるのです?
>>252 >一文字ずつ、状態遷移しながらパースするコードを書いてみますた。
その条件だとそれしかないと思われ
つかどうしてもそれがめんどいならJavaCC使うのが楽と思われ
でもよく考えたらJavaCCの資料探して勉強するほうがめんどくさいと思われ
254 :
デフォルトの名無しさん :04/10/23 10:30:35
まずエスケープ文字でトークン化して、調整すればいいと思うけど? new StringTokenizer(s, " ¥¥¥n¥t¥r", true);
255 :
デフォルトの名無しさん :04/10/23 10:43:00
Javaプログラミング難しいよ〜 どうすれば上達しますか? 2週間後テストなんですけどやばいかも・・・
実際にアプリケーション作ってみろ そうすればどこがわからないかがはっきりする
>>255 1.人に聞く
2.本を読む
3.自分でやってみる
これだけやれば完璧!
258 :
デフォルトの名無しさん :04/10/23 10:52:59
>>256-257 どうもありがとうございます。
質問なんですが、さっき本を読んでて思ったのですが、
論理輪である縦線2つとか特殊な記号はどうやって出すんですか?
キーボード見てもありません・・・
これをコピペして使え→||
sqrtって「スクルト」って呼ぶんですか?
261 :
デフォルトの名無しさん :04/10/23 11:05:44
>>259 ありがとうございます。
できれば表示の仕方を教えてもらいたいのですが・・・
System.out.println("||");
>>261 Javaの質問じゃないし。PC初心者板とか行って聞いた方が早そう。
>>261 ・右クリックして「貼り付け」を選択
または
・Ctrl + Insert
266 :
デフォルトの名無しさん :04/10/23 11:12:28
>>258 何年前のキーボードを使ってるのですか?
プロの人の中には、作家が同じ万年筆をいつまでも
愛用するように、手に馴染んだキーボードをいつまでも変えないで
変換コネクタを用いて未だに20年前のパソコンのキーボードを
使ってる人がいるみたいですが、アナタもその部類ですか?
>>264 普通のキーボードです、とか
PCショップで何千円で買ったキーボードです、とか言われそうな予感。
269 :
デフォルトの名無しさん :04/10/23 11:37:55
>>262-267 いろいろすいません。
僕が聞きたかったのはキーボードのどれを押せば
縦線が表示できるのか、です。
キーボードは267さんの言うように普通のです・・・
270 :
デフォルトの名無しさん :04/10/23 11:40:29
>>269 キーボードの右上の方、BackSpaceキーの左にある
\ と書かれたキーを、Shiftキーと一緒に押すと | がでます。
それを2回押すと論理和の記号 || が出ます。
271 :
261 :04/10/23 11:45:22
>>264 電脳直結式のキーボードです。
私は電脳手術(攻性防壁付き)を行い、脳を電脳化してますので
脳波で直接入力する事が可能なのです。
キーボードの機種は、東レ0420式です。
音声認識をつかっています・・・
273 :
デフォルトの名無しさん :04/10/23 11:55:28
>>270 どうもありがとうございます!
それをやるとバックスペースの左のボタンの左上が表示されるんですよね?
そこを見ると縦線の真ん中が切れてますよ。
>>271-272 なりすましはやめてください・・・
>>273 なりすましはやめてください!
>>270 やってみたら||となってしまって
コンパイルが通りません・・・
>>273 >そこを見ると縦線の真ん中が切れてますよ。
ただの印刷ミスだ。気にするな。
わけがわかんなくなってきたなw
>>273 > そこを見ると縦線の真ん中が切れてますよ。
DOS時代は 0 に斜め線が入ってたり、| が真ん中で切れてたりしたんだよ。
279 :
デフォルトの名無しさん :04/10/23 12:05:03
本物の261です。 しばらく質問するのは控えようと思います・・・ いろいろ教えてくれた方々、ありがとうございました!!
Java関係ねーよ
記念カキコ♥
283 :
デフォルトの名無しさん :04/10/23 12:13:31
人が真面目に質問してるのに、茶化すような回答するのは どうかと思います。 今回の件で、2ちゃんねるのキモオタプログラマーどもの 実態が分かりました。 やっぱり正規のプログラミングサイトとメーリングサイトに 行きます。ありがとうございました。さよなら。
本物の糞261が常時ageていることに 騙りも気づいたか
286 :
デフォルトの名無しさん :04/10/23 12:20:36
261ですけど、友達もわからないと言っていたので わからないのが普通だと思います・・・
287 :
デフォルトの名無しさん :04/10/23 12:21:03
かぶりage
288 :
デフォルトの名無しさん :04/10/23 12:24:38
261ですけど、かぶりageってなんですか?
261です。 実は釣りでした。
>>253 ん、JavaCCでググって観たが、確かに超めんどくさそうだ。
>>254 エスケープ文字でトークン化か...
一文字ずつやるのとほぼ同じ状態遷移が必要になるな....
まあいいや。一文字ずつやろうっと。
ありがとね。
友達が分からんと言ってたから分からんのが普通ってのがすごい。 ||だろ? ||なんだろ? ||は全然違う...
292 :
デフォルトの名無しさん :04/10/23 13:00:17
>>291 でも、押したら||が出たんですよ・・・
ネタじゃなかったのか どこかで全く同じ質問と回答をみたきがする・・・
半角。
295 :
デフォルトの名無しさん :04/10/23 13:07:10
>>294 すいません、板違いなのは承知していますが、
半角板は違うんじゃ・・・
>>295 とりあえずageるのをやめてからにしてくれ。
>260 脳内では好きなように読んでくれればいい 「スクルド」と無理矢理読んでハァハァするのも自由だ が、人と話をするときは「すくえあるーと」と言っとけ。
>>296 パターンによる検索が出来るだけかと思っていたが、そうではないのかな。
""で囲まれてる部分とそうでない部分をわけたりするのって
結局、一文字づつの時とほぼ同じ状態遷移が必要にならないか?
>>299 >パターンによる検索が出来るだけかと思っていたが、そうではないのかな。
そう
>結局、一文字づつの時とほぼ同じ状態遷移が必要にならないか?
その処理を自分で書くか、ライブラリに任せるかの違い。
//4. 連続した空白、大文字を表現したい場合は、"で囲む。(参考)
Pattern tokenPattern4 = Pattern.compile("((\"[^\"]*\")|(\\S+))");
//5. 6. ",\を表現するときは\でエスケープする。→(簡単のために読み替え)→ 7. \の次の文字はただの文字とみなす。
Pattern tokenPattern7 = Pattern.compile("\\G(\\s*)((\"((\\\\.)|([^\"]))*\")|([^\\s\"]+))(($)|(\\s+))");
String target = "a bc CC えお \" pp k k\" \" \\\" uK あいう \\\\ \\山 \" xy";
Matcher m = tokenPattern7.matcher(target);
while (m.find()) {
System.out.println(m.group(2));
}
301 :
デフォルトの名無しさん :04/10/23 15:59:53
ヽ(`Д´)ノウワァァン いま「AWT/Swing コンポーネント階層図」っての作ってるんだけどさ、abstract でも final でもない 普通のクラスって何て呼べばいいんだよ? しっくり来る名前が見つからないよー。 これじゃ凡例が書けない。今のところ、 □ … インスタンスを生成できるクラス □ … 抽象クラス こんな風にしてるだが。うーん。
「普通のクラス」
ふう....FAか。
しかし正規表現は慣れるとパーサーを書くスキルが無くなってしまうという諸刃の剣。 俺がそうだ_| ̄|○
>>300 ,304
正規表現のorって、こんな風に使うんだな。
つか、tokenPattern7の方のが全然わかんねー!
ガンガって理解します。
つか、ありがと。
そっか、こんな風に使えるんだな。
すこしPerlで正規表現を触った事はあるんだが、
正直、ここまで出来るもんだとは思わなかった。
まあ、今のご時世正規表現の使えない環境なんて珍しいんだし、
パーサー書かなくっても困らないんじゃないの?ほとんど。
んじゃまた
javaの開発手法はウォーターフールですかスパイラルですか?
307 :
デフォルトの名無しさん :04/10/23 16:35:44
いえ、プロトタイピングモデルかRADの方が一般的です。
308 :
デフォルトの名無しさん :04/10/23 16:43:55
>>306 プロトタイプとウォーターフォールは同列に並べられない気がするが
Oracle10gApServerの質問ってどこですればいいですか?
310 :
デフォルトの名無しさん :04/10/23 17:15:51
>>309 サーバサイドJAVA質問スレッドにいってください。
一応質問ないようです。 10gASでFrameをshowする個所があるのですが、java.awt.HeadlessExceptionがThrowされます。 Frameを使用しているのは、Imageを生成して印刷を行いたいからです。 javaでImageを生成するためにはFrameをshowしてImageを実際に画面に出さないと だめだとなんとなく思っています。 Headlessな環境でImageを生成して印刷する方法を教えてください
>>311 Image作るのにFrameが必要なんてことはない
BufferedImage勉強してみろ
>310 サーバサイドJAVA質問スレッド 見つかりません??
カタカナ→ひらがな変換可能なフリーなライブラリってありますか?
1. IBM ICU4J 2. いがぴょん いがLIB
じゅん for JAVA って結局なんなんですか!! 検索でいつも引っかかるけど意味分かりません!! うがー。
317 :
デフォルトの名無しさん :04/10/23 18:07:15
>>311 おそらくjava.awt.ComponentクラスのcreateImage()からしかイメージが
作成できないとお考えのようですが、
javax.swint.ImageIOクラスで、ファイルやネットからのダウンロード
ソースでImageは作成できます。
それでImageを作ればFramwをshowする必要はありません。
>312 >317 ありがとうございました。 ネットからダウンロードしたイメージとローカルHDDにあるイメージを使用しています。 このイメージが完全にロードされてから描画したいので、MediaTrackerを使っていますが、 MediaTrackerの引数にComponetが必要です。 さらに、そのイメージを加工する必要があります。 加工の内容は具体的には、 1.4枚のイメージを並べる。 □□ □□ 2.中心を切り取ってあたらしいイメージを作成する □ です。 この処理をオフスクリーンで出来ればいいのですが・・・ 多分どちらも出来るのでしょうね。 勉強してみます。
>>318 IoamgeIOほんとうに目を通したの?
ぜんぜんいってることおかしいよ
> このイメージが完全にロードされてから描画したいので、MediaTrackerを使っていますが、 javax.imageio.ImageIO#read(URL) とかを使えば読み込み完了したイメージが得られたような?
>319 どうもすいません・・・ ImageIOのreadで BufferedImageを取得 BufferedImageのcreateGraphics() でGraphics2Dを取得 Graphics2Dを使ってイメージの加工 でしょうか? >320 ありがとうございます。
インターネットエクスプローラの,ツールのsunのjavaコンソールを おしても,コンソールが表示されません。 検索して調べてコントロールパネルのjava-pluginやインターネットオプション の設定など,ほとんど対処方法はやりつくしているはずなのになぜかjavaコンソールが表示されません。 どなたか,原因がわかる方教えて頂けないでしょうか。
323 :
244 :04/10/23 20:07:02
>>244 できました、みなさんのアドバイスが役に立ちました。
ありがとうございました。
どうやったかは、あえて教えません。
public class Inttest { public static void main(String[] args) { String s="あいうえお"; s=s.replaceAll(".","."); System.out.println(s); } } このようにすると、実行結果が ..... となってしまいます なぜですか
>324 APIドキュメントをもう一度よく見てみよう。 それから「正規表現」について勉強しなされ。
>>324 replaceAll()は、その第一引数を正規表現形式で書かれたテキストだ
と強制的に見なしてしまう。
正規表現での . は、任意の文字を表わすとあり、
つまり上の書き方だと、ほぼ全ての文字を . に変換するとの事になる。
>>324-325 s=s.replaceAll(".",".");
->s=s.replaceAll("\\.",".");
としてうまくいきました
ありがとうございました
328 :
デフォルトの名無しさん :04/10/24 02:14:27
Java から JDBC で DB に接続するのに DB を UTF-8 で作っておくほうが、文字化け等のトラブル少ないでしょうか? それとも DB のマシンのネイティブのほうが問題少ないでしょうか?
DBをUTF-8にしておけば、Java-DB間で文字化けが発生することはない。よってトラブルが少ないと言える。 ※仮に文字化けが起こってもJava側で対処できる。 プレゼンテーション層もUTF-8にするともっとトラブルは少なくなるはず。 ただしUnicodeですべての問題が解決されるわけではない。
文字化けなんてみるの久しぶり
332 :
デフォルトの名無しさん :04/10/24 14:09:30
class a { public static void main(String args[]) { boolean b = Boolean.getBoolean("true"); System.out.println(b); } } の結果がfalseになるのはなぜでしょうか? 教えてください
現場でJavaってる人に聞きたいが、率直なところJavaの需要多い? 今やってないからよくわからんが、Javaはなかなか浸透してないようで・・
>>333 うちに来る仕事の大半がJava。
まぁ、もともとそっちよりの会社だからだと思うけど。
336 :
デフォルトの名無しさん :04/10/24 14:26:40
>>334 できました。ありがとうございます。
しかし根本的には理解してないですけど。
>>336 できましたって…… orz
根本的に理解してないと自覚してるならリンク先ちゃんと読めよ。
boolean b = Boolean.getBoolean("true");
は
boolean b;
try{
b = new Boolean(System.getProperty("true")).booleanValue();
}catch(Exception e){
b = false;
}
とほぼ同等。
配列の最後の要素を求める時何で A[A.length-1]のように配列の要素数から1を引くのか教えてください
>>338 配列 A の先頭から 1個目の要素には A[0] でアクセスできる。
配列 A の先頭から 2個目の要素には A[1] でアクセスできる。
一般化すると、配列 A の先頭から n個目の要素には A[n-1] でアクセスできる。
よって、配列 A の先頭から A.length個目の要素には A[A.length-1] でアクセスできる。
340 :
デフォルトの名無しさん :04/10/24 15:30:03
>>337 まったくです。
しかし、現在独習javaを片手にやっている初心者なんでシステムプロパティの
意味もわかりません。どういう意味でしょう?
>>340 システムプロパティは環境変数とかWindowsのレジストリとかみたいなもの。
っつーか、面倒くさがらずに自分で調べろ。
検索するなり、Sun のドキュメントみるなり手段はいくつもある。
>>341 Windows のレジストリは違うような……
>>332 ところで、
boolean b = Boolean.valueOf("true");
と間違えているわけではないよね。
344 :
332 :04/10/24 15:56:34
Boolean.valueOfはBoolean型 Boolean.getGooleanはboolean型を返すんですよね。 一応勘違いはしてないんですが。
>>343 > boolean b = Boolean.valueOf("true");
コンパイルエラーです。
boolean b = Boolean.valueOf("true").booleanValue();
とかしないとだめね。
たぶん、
>>332 は
boolean b;
if("true".equals(string)) b = true;
else if("false".equals(string)) b = false;
else throw new IllegalArgumentException();
みたいな事がやりたいのではないかと推測。
346 :
332 :04/10/24 16:17:54
boolean b = Boolean.valueOf("true").booleanValue(); はできたんですが boolean b = Boolean.getBoolean("true"); ができないのが気になっただけなんです。 それより "true".equals みたいな使い方もできるんですね。
>>346 結局、
boolean b = Boolean.getBoolean("true");
が何をするのか分かったのか?
このへんわからないままJ2SE5でコンパイルとおってまぁいいやとなるやつ大量生産な予感
349 :
332 :04/10/24 17:05:13
全然わかりません。 System.getProperty("true")が存在しないからってことでしょうか?
350 :
デフォルトの名無しさん :04/10/24 17:34:10
すいません、質問です。 javaで、簡単なアプリをつくりたいと思うんだけど、java2SDKだけでGUIのプログラム、つくれますか? 今までコンソール画面で動くプログラムしか作ったことないんです
>>332 違うでしょ。
System.getProperty(String key)で取得した値が、「true」だった場合
、戻り値としてtrueが返ってくるということ。
ちなみに、取得した値の大文字と小文字を判断しないはずです。
つくれます
>>350 Java の Swing ライブラリっていうやつを使うんだよ。
354 :
332 :04/10/24 18:33:38
>>351 つまり初期設定ではSystem.getProperty("true")の戻り値が
trueではないということですよね?
調べたのですがgetPropertyがよくわからないです。
> 調べたのですがgetPropertyがよくわからないです。 もっと きちんと調べろ。
356 :
デフォルトの名無しさん :04/10/24 18:58:33
>>353 レスありがとうございます。swingライブラリですか。
>>352 レスどうもありがとうございます。
357 :
デフォルトの名無しさん :04/10/24 19:14:22
Vector型に格納しているEmployee型配列があります。 これをランダムに並べ替えられた状態で Employee型を取り出したいのですが、 どのような方法がありますでしょうか? employee = new Employee[v.size()]; v.copyInto(emplyee); for (int i=0; i<employee.length; i++) { System.out.println(employee.getName()); //こうやって順番に取り出すと //格納した順番に出力される。 //ランダムに過不足なく全部出力したい。 }
358 :
332 :04/10/24 19:25:08
ところで Boolean.getBoolean() ってどういう場合に使用するのですか
>>357 Collections.shuffle
すいません質問です。 javaの統合開発環境についてなんですが、どれがどのように良いのでしょう。 できれば違いなんかも教えてもらいたいです。 よろしくお願いします。
361 :
242 :04/10/24 21:12:13
>>242 誰か教えてください。勘違いなら勘違いで結構ですので。
>>357 質問とは関係ないがVector使うのやめれ。時代はArrayList
>>361 無い。MacのJREでなら使える。逆にMacでWindowsのL&Fは使えない。
>>358 そんなものは使わない。使う場面に遭遇することは無いだろう。忘れていい。
365 :
242 :04/10/24 21:20:45
>>363 なるほど、そういう事だったんですね。。
ちょっと興味心でマックのLook&Feelにしたかったのですが、残念。
でも、すっきりしました。ありがとうございます。
366 :
332 :04/10/24 21:20:56
>>358 システムプロパティから boolean の値を読み込むときに使う。
使うかどうかは人による。
jarファイルから実行するアプリを作っています。 その時OutOfMemoryが出るので初期ヒープメモリーを増やして実行したいのですが、 jarの場合はどうやってオプション付けます? MFの中かな?
>>332 ちょっと、長いですがご参考になれば。
>つまり初期設定ではSystem.getProperty("true")の戻り値が
>trueではないということですよね?
そうです。初期設定ではシステムプロパティに「true」というプロパティが
登録されていないので、falseが返ってくるはずです。
初期設定で登録されているプロパティの一覧は、APIの「System.getProperties()」に記述されています。
例えば、「System.getProperty("java.version")」を表示するとJREのバージョンが表示されます。
また、アプリケーション(厳密にはJVM起動時かな?)起動時に、パラメータを渡すことで
独自のプロパティを設定することもできるんです。
>Boolean.getBoolean()ってどういう場合に使用するのですか
独自にプロパティを設定して、アプリケーション実行中に、getBoolean()で
値を取得し、動的に制御を行うとかかな?私は、Boolean.getBoolean()を使用
したことがないんですけどね。。。
そういうのはpropertiesファイルにまとめて・・・。ってな感じで。このへんは
勉強していって身につけて下さい。
こんなサンプルを作ってみたので、参考にして下さい。
システムプロパティに簡単な使用方法です。
まず、以下のソースをコピペして、コンパイルしてください。
public class Sample {
public static void main(String args[]) {
// フルーツは?
System.out.println("私の好きなフルーツは" + System.getProperty("fruit") + "です");
}
}
次の手順で、実行してみて下さい。
@「java Sample」で実行して下さい。getPropertyの部分に「null」が表示されるはずです。
A「java -Dfruit=banana Sample」で実行して下さい。getPropertyの部分に「banana」が表示
されるはずです。
>>368 jar ファイルの中で指定できたっけか?
起動用スクリプトとか書いて
javaw -Xmx必要な量 -jar hoge.jar
とかしないとダメなような気がするんだけど。
69行目のforの始まり括弧が無い。 あとメソッド名は小文字ではじめような。Move()→move()とか。Ini()→init()とか。
>>372 うおーーー。
有難うございました☆
メソッド名のはじめは小文字ですね。分かりました。
GUI関連の勉強したいなら、やっぱり一冊本を買った方がいいでしょうか?
>>370 調べてみましたがそれしかなさそうです。残念・・。
とうぜん位置とイメージを持った玉クラスを作ってほしいものだ
376 :
デフォルトの名無しさん :04/10/25 12:15:40
Javaでビット列を解釈するときはどんな風に書くの? たとえばIPヘッダを解釈するときとか。 CだとIPヘッダと同じフォーマットの構造体をつくってキャストすると その構造体のフィールドを使って見たり書いたりできると思うけど。
377 :
デフォルトの名無しさん :04/10/25 12:34:48
>CだとIPヘッダと同じフォーマットの構造体をつくってキャストすると >その構造体のフィールドを使って見たり書いたりできると思うけど。 パディング考慮しないで大丈夫なの?
>378 その辺は大概#pragmaで何とかなるでしょ。それがC。
あー、#pragmaか。
で、
>>376 の質問は、たとえば、パディングの問題が解決しているとして、
typedef struct color {
unsigned char red;
unsigned char green;
unsigned char blue;
unsigned char alpha;
} Color;
typedef unsigned int color32_t;
color32_t color_code = /*なんか4バイト読み込む*/;
Color color = *((Color*)&color_code);
/*以下red,green,blue,alphaを個別アクセス*/
みたいなことが出来るかということだと認識しているのだが、
Javaでは「同じように」は出来ないよね。
地道に8ビットずつシフトするとかしないと。
382 :
デフォルトの名無しさん :04/10/25 17:20:34
SDKはJREを含んでます。 JREは、実行環境であり SDKは、開発環境+実行環境なのです。
>>380 DataInputStream が使えるならちょっとだけ楽にはなるけどね。
誰か、Apache Beehive と Eclipse Pollinate を試したヤシいる? いたら聞きたいことがあるんだけど・・・・
385 :
デフォルトの名無しさん :04/10/25 18:09:57
こんにちは JPanelをextendsして、内部にJTextBox等を配置したコントロールを作成しています。 これをJBuilderで配置するとモトがパネルだけにコンテナとして動いてしまい、 他のコントロールを自由に配置できてしまいます。 作成したコントロールにこれ以上配置させないようにするにはどのように すればよいのでしょうか。 よろしくお願いいたします。
386 :
デフォルトの名無しさん :04/10/25 18:19:34
>>285 JBuilderのGUIエディタで、そのコントロールに配置できないように
するとの事ですか?
387 :
デフォルトの名無しさん :04/10/25 18:21:40
>386 そうですそうです。 そのコントロールの上に他のコントロールを配置できないようにしたいのです。
388 :
デフォルトの名無しさん :04/10/25 18:23:16
それはJBuilderの問題になってしまうので、 不可能かと。。。。
389 :
デフォルトの名無しさん :04/10/25 18:25:55
GUIエディタ上では、他コンポーネントが追加されてても 実際には追加されてないようにするには、各add()メソッドを オーバーライドして、そのままreturnするようにすれば良いのでは。
390 :
デフォルトの名無しさん :04/10/25 18:47:08
あとで質問してもいいですか?
391 :
デフォルトの名無しさん :04/10/25 19:07:08
>388 JLabel(Containerより継承)的な動きを求めているのですが、 JBuilder特有の問題なのでしょうか・・・ その辺の切り分けが自分でも出来ていないのです。 >389 アドバイスありがとうございます。 早速やってみました。 確かに追加はされないのですが、生成されたコントロールが行方不明に なるようなイメージとなってしまうので、あまり良くないような気がしました。 JLabelのように元をたどるとContainerのコントロールって、どうやって いるのでしょうか。 なんとなく、UIまわりかなぁとか思っているのですが、いまいち追いきれません。
392 :
デフォルトの名無しさん :04/10/25 20:05:48
一度作ったインスタンスは消去できないんですか? Dog Poti = new Dog(); Poti = null; Cat Poti = new Cat(); と書くとコンパイルエラーになります。 2行目で中身がnullになっても それはガーベッジコレクションの対象になるというだけで Potiという名前はもう使用できないんでしょうか?
>>392 当たり前だろ。
どうしてもっていうなら、親クラスの参照をお使いなさい。
394 :
デフォルトの名無しさん :04/10/25 20:22:28
親クラスの参照を使ってもコンパイルエラーがでます。 どうしたらいいですか? Animal Poti = new Dog(); Poti = null; Animal Poti = new Cat();
答えになっていないので、 わかりやすく解説してください。
同じ変数名が使えないだけだ。 int i = 0; int i = 0; これがコンパイルできないことぐらいはわかるのか?
同じ名前のローカル変数は使えません。
じゃあ親クラスが云々てのは意味ねーのかよ。 誰だよ間違い教えてるの。
>>396 2回目のAnimalは不要。
それと、親クラスで必要なメソッドが宣言されていないと、
そのままじゃ使えないよ。
>>400 同じ名前で使いたいなら、親クラスの変数を使いまわすしかないと思うが。
例え同名の変数定義でも、クラスインスタンシエートオーバーロード されるのが普通ですよね? JAVAって変則的な言語仕様があるみたいですけど いきなりそれに当たってしまったんですか。。。orz
おいおい、こないだから糞しか来ねーが どういうわけだ?
>404 >例え同名の変数定義でも、クラスインスタンシエートオーバーロード >されるのが普通ですよね? それが普通ってどういう環境なんだ……激しく気になる。 よもや予約語がないも同然のPL/I?
>>404 他にどんな言語を知ってるかしらんが、
スコープに同じ変数名を使えないのはどう考えても普通。
ところで、クラスインスタンシエートオーバーロードって何?
409 :
デフォルトの名無しさん :04/10/25 21:24:26
インスタンス初期化子とコンストラクタの違い(どうやって使い分けるのか)について 教えてください。
名前が無いクラスはコンストラクが定義できない(書けない)ので変わりにインスタンス初期化子を使います。 で、良いのかな。 あと名前のあるクラスでも複数のコンストラクタで共通の初期化処理をしたいときに使えるかもしれない。 でも普通は普通のコンストラクタ使いな。多用するもんじゃない。
411 :
デフォルトの名無しさん :04/10/25 21:49:59
式y=sqrt(x+4)のyの値を表示するプログラムを作りたいんですが、 x=0のとき、「正解!2」 x≠0のとき、「間違い!(他の数字)」 と表示させたんです。とりあえず、 import java.io.*; class keisan{ public static void main(String args[]){ double x=0,y; System.out.println("数値は?"); y = Math.sqrt(x+4); x = keyInput.calc; if(x== 0){ System.out.println("正解!"+y); } else{ System.out.println("間違い!"+y); } } } と考えたんですが、 x = keyInput.calc; のところで、シンボルを解決できませんとエラーがでます。 どうすればいいか教えていただけないでしょうか?
412 :
デフォルトの名無しさん :04/10/25 21:50:29
javascript:GoSubmit() とかがリンク先になってるページに いけなくなってしまいました・・・。 どっかいじっちゃったのかな・・・。 押しても反応ないんですよね ダレカ対処法を教えてください。お願いします
413 :
デフォルトの名無しさん :04/10/25 21:51:21
あっ本当にプログラムの板みたいですね 板違いだ(;´Д`)すみませんでした
>>392 そんな使い方できないのは当たり前だろと言ったつもりなんだが、
激しく釣ってしまったorz
392は、別のクラスのインスタンスの参照に同じ変数が使いたいのかと思って、
親クラスの変数を使いまわすしかないと言ったんだが。
せっかくなので丁寧に書かせていただきます。
クラスに関係なく同一スコープ内で同名の変数は定義できません。
変数にはそのクラスの参照ならいつでも代入できますが、
別のクラスの参照を代入することは出来ません。
その時、その変数が参照を保持しているかどうかは関係ありません。
だからPotiはDogクラスの変数としてならスコープが切れるまで使い続けられますが、
その範囲で同名の変数を定義することは出来ませんし、
Catクラスなどの他のクラスの参照を代入することも出来ません。
Potiという変数をDogクラスとCatクラス両方で使いたいなら、
親クラスの変数を使えば出来なくはないですが、
そのまま使うには、必要なメソッドが親クラスで宣言されていなければなりません。
>>411 calcはメソッドで、()を付け忘れているとか?
そもそもkeyInputが定義されていないとか。 KeyInputだったとか。
417 :
デフォルトの名無しさん :04/10/25 22:25:32
java初心者なのですが pathの設定方法がわかりません。 マシンはWINXPです。 環境変数からC:\jdk1.3.1_02\bin; を設定してもうまくいきません。 もともとWINに 設定されてたPathは消えてます。
>>417 バージョンによってというか、インストール先によって必要なパスは変わります。
JDKのインストールディレクトリはどこかわかりませんか?
>んで、
>>1 のリンク先も100回読んで、
URLを100回読めと
423 :
デフォルトの名無しさん :04/10/26 03:24:22
「クラス」を日本語に訳すと? 型? 種?
型のほうじゃない?
425 :
242 :04/10/26 09:40:06
antを使おうとしているのですが、以下のようなエラーがでてしまいます。 [javac] BUILD FAILED: file:C:/Program Files/eclipse/workspace/antTest/build.xml:5: Unable to find a javac compiler; com.sun.tools.javac.Main is not on the classpath. Perhaps JAVA_HOME does not point to the JDK 最初はECLIPSEで使っていてダメだったので、antのバイナリをダウンロードしてきて、ECLIPSEからではない方法でもやって みましたが、同じエラーが出てしまいます。 そして、JAVA_HOME、ANT_HOMEの環境変数はもちろん設定してあります。 コンパイルしようとしているファイルの存在するディレクトリではjavacは通ります。JDKのextフォルダにantをおいておくとだめという 不都合が報告されているようですが、そこにおいているわけではないですし。 もうお手上げです。 どなたか教えてください。orz
>>425 「ECLIPSEからではない方法」が不明なのだが、
コマンドラインからAntを実行するのなら、実行前にコマンドラインで
set ANT_HOME=(Antインストールディレクトリ)
set JAVA_HOME=(JDKインストールディレクトリ)
set Path=%ANT_HOME%\bin;%Path%
としてから実行してみれ。
まさか JAVA_HOME、ANT_HOME が全角じゃないだろうな?
揚げ足取りでも何でもなく、質問のレベルからそんな恐れも見え隠れする。
ある画像をJLabelに貼ってるappletをhtmlファイルから開くとjavaコンソールで以下のエラーメッセージが でてきます。例えば,eclipse上でappletを実行すると,正常に画像も読み取られエラーが出ないのですが, htmlからだとなぜか以下のエラーが出てしまいます。 このコードは,300行くらいのやや複雑なものなのですが,試しに参考書に書いてる例題レベルの appletをhtmlファイルで開くとなぜかエラーがでません。全く同じ画像を読み込んでいるのにもかかわらず です。 正常に画像が読み取れ,以下のエラーが出てこないように出来る方法どなたか教えていただけないでしょうか。 java.security.AccessControlException: access denied (java.io.FilePermission .\photo\small.gif read) at java.security.AccessControlContext.checkPermission(Unknown Source) at java.security.AccessController.checkPermission(Unknown Source) at java.lang.SecurityManager.checkPermission(Unknown Source) at java.lang.SecurityManager.checkRead(Unknown Source) at sun.awt.SunToolkit.getImageFromHash(Unknown Source) at sun.awt.SunToolkit.getImage(Unknown Source) at javax.swing.ImageIcon.<init>(Unknown Source) at javax.swing.ImageIcon.<init>(Unknown Source) at photo.read3jpg.init(read3jpg.java:232) at sun.applet.AppletPanel.run(Unknown Source) at java.lang.Thread.run(Unknown Source)
アプレットの典型的なパターンだな
429 :
デフォルトの名無しさん :04/10/26 11:50:25
質問に答えてる人に質問なんですが、 どうしたらそんなに詳しくなれますか? また、どんな勉強法をすればいいですか?
>>429 私は詳しくないですが、一般的に言われているのは、
1.まず、言語仕様を(本などを読んで)きっちり覚える。
2.コードをたくさん書く。
3.コードをたくさん読む。
4.言語仕様の変化などに注意しつつ、2-3を繰り返す。
431 :
242 :04/10/26 12:22:14
>>426 原因がわかりました。JAVA_HOME に C:\j2sdk1.4.2_04\bin とバイナリの
フォルダまで含めていました。初歩的な失敗でしたね。
ご迷惑おかけしました。
どんな問題でも、原因がわかった時、 そのミスはすでに自分にとって初歩的なものになっている。 とか言いますな。
433 :
デフォルトの名無しさん :04/10/26 12:30:31
if (Koizumi.Go("Niigata")==true) { Okada.Say("総理が被災地に行っても何の役にも立たない。パフォーマンスだ!"); } else { Okada.Say("被害者感情を無視した対応だ!"); }
>433 メソッドの最初を大文字にしない ifの==trueは不要 ついでに岡田も日本には不要
435 :
デフォルトの名無しさん :04/10/26 13:22:58
HashMapでIteratorを使って順に要素をたどっていく事はできますか? また、それらの順序はいつも同じなのでしょうか? あとiteratorメソッドでIteratorを得る時は、毎回最初の位置へリセットされるのでしょうか? 駄文で申し訳ありませんが、どなたがご回答おねがいします。
> HashMapでIteratorを使って順に要素をたどっていく事はできますか? values() で値のコレクションを、keySet() でキーのコレクションを得られるので、お好きにどうぞ。 > また、それらの順序はいつも同じなのでしょうか? 順序が同じである保障はない。 > あとiteratorメソッドでIteratorを得る時は、毎回最初の位置へリセットされるのでしょうか? 若干意味不明だが、Collectionのiterator()メソッドはインタフェースに定義された抽象メソッドにすぎないので、 実装依存になる、と答えておこう。
Mapのiteratorは、 aMap.entrySet()で、Map.Entry型のCollectionを得る。 aMap.keySet()で、キーのCollection(Set)を得る。 aMap.values()で、値のCollection(Set)を得る。 などとして得られたCollectionに対してiterator()メソッドを呼び出して得る。
441 :
デフォルトの名無しさん :04/10/26 15:40:55
IBMJDK 1.1.8 for LINUXをダウンロードしようと思ってるんですが、 もうダウンロードできないようで・・・ 入手方法ないですか?
443 :
ケータイからのアクセス :04/10/26 17:39:27
おいらのパソコンが、JAVAの開発しようと思って、Cドライブのautoexec batっていうファイルいじってたら、MS-DOSでしかパソコンが立ちあがらないようになってしまった….・゚(´Д`)゚・. だれかMS-DOSでautoexec batの書き替え方教えて… ちなみにOSは98です…
ばかかこいつ OS入れなおせ。カスが
r--=ニ二"`' 、 r-=!,.i‐:、ヽヽ`'i .\ | |`‐r'-‐ヽヽヽ.ir=:、 | ',|', |、、.riェ|i:i .|ィ;!l .! ! /')、| ` ,!' | /゙rく | _/ /_ `、-‐' !',. '゙ `!_ r‐‐'i‐,、' ノ .ヽ__,._-,..-‐'ニ:i`、_ / .フノ/// /rl i_,.-'" / '; `ー-: ,,,,___ ,./ `i゙ ゙ノ ./" | i-‐'_,:,'_ _,ゝ ,.:-‐`=、 .,:'゙!'ー-´<"-i'"iくr''、i"`i_.',// `'-、 ,:' i ,.:' ヽ / .,'、 /_ i_,,,_ .r:、! ./ ,.:' .,' | ,:' `-'!'i i r'iヽヽ' |`| .| / ,:' .| ./ ,.! ,' .| `i'゙i,l''i_,) `゙.,' ./ 、 | r'" / i | .|ヽl,.:'/ .l / ヽ | i゙ ./ | | .| |:'O .| ./ | | ┌‐────┐-‐'i .l .| | | ,' | | │ミツルギSE.| | ',.| | O | .i | | ├───‐─┴───────────────────────── | そんなことより議題を進めようか。 | └──────────────────────────────‐
>>444 てめーこそ、カスだろ。
人が困ってるのに何て事言いやがる。
てめーのようなキモオタは、ネットでしかでかい口叩けん癖に
現実じゃ人前に出ただけでガクブルなんだろが。
このクズ。
i、 ノ,.'‐'´,.-'ニ'-‐ 'ッ .N .!' / , , -;=‐‐‐< !_,,. '_‐,ヽ_'´r''_,ニニ'' `ー,.- ノ,ニ-,._,`ーi`.i´ヽー-.、く _ /.i,='三_-' .ノヽ!ノ,!、ヽヽ.、ヽ ,.-r‐r',ノ'っ'ヾ三='‐'ヽノ'i;ド' '、i,ヽヾ` ,1,.!..iン' //. 'ーi'_,,,.. ノ '_ゝN` ./ 7´ ノ ヽ.,, ,'_,'-‐'"´,. ‐`-,..,,_ ,iー' ,ィ' '"i´ ,ゝ、/'./.,.'.,.'´r',`'"''''ー.、 io'iー‐ 'i ,ィ7/.`! ,イ /././ /./, ' .', l l .l ,.//〃 .,' ,.'/././././././ i /`7 '''' ヽ ノ//// !/.,'./././././ ,' ! ! .i r'´ /i,'.,'/ ./ /.,' ,' ,' ,' ,'./ ,' ', iノ-.、i.i.i.i.i ./,'.,' ,' ,' ,' ,' ,!' , ' i i'; l !l.l ! ,'.,'.,' ,' ,' ,' ,'.,ヘ,_ ,.' | ,' .!',',','i ,' ,'.,' ,' ,' ,' i r'ー'‐`=、、 ./ '; _,,.!i」,!r'ー'‐ー'‐' ''"`i; `ヾ'、ノ ┌‐────┐_ , ‐'´./ / ,./ │ゴ ド ー SE |!r',. i,__.i // ├───‐─┴────────────────────―──── | なんで怒ってるのか知らんが | 助けたきゃ勝手に助ければいいだろ └─────────────────―────────────‐
443のがキモオタだろw 98ユーザーって昔のエロゲやるために98使ってるんだよwww
450 :
デフォルトの名無しさん :04/10/26 18:39:06
Dog Poti と Cat Potiの話ですが インスタンスを消去することはできないのですか? 消去できないとなると、どんどんインスタンスが増えることになり メモリがいっぱいになってしまいそうな気がするのですが・・・
452 :
デフォルトの名無しさん :04/10/26 18:46:10
すみません、ちょっと質問なんですが、 あるフォルダにある.jarファイルを全部クラスパスに通したいとき、 (あるフォルダ)\*.jar という書き方はできないのですか?
できない。つーか環境は?
454 :
デフォルトの名無しさん :04/10/26 19:07:39
J2SE SDK v1.4.2_05 を落としたのはいいけど プラグインの設定をしたところでエラーになるし パソコンは何だか重いし・・・ これ、向いてないからいれるなってことでしょうかね? OSはWindows98 SE なんですけど・・・
未だに98SEってありえない
456 :
デフォルトの名無しさん :04/10/26 19:19:22
こんばんは、よろしくお願いします。 マウスを手や、矢印の形に変化させたいのですが、 どのような、classを使うのでしょうか。
457 :
デフォルトの名無しさん :04/10/26 19:25:29
クラスじゃなくてメソッドです。 各コンポーネントのsetCursor()を使いませう
458 :
452 :04/10/26 19:30:43
>>453 レスありがとうございます。
環境はxpにjava5です。
やはり何度試してもできませんでした(涙
不便です。
>>456 java.awt.Cursor#getPrefdefinedCursor(int) とか
java.awt.Toolkit#createCustomCursor(Image,Point,String) とか
を使って望みの形のjava.awt.Cursorのインスタンスを作ってから
java.awt.Component#setCursor(Cursor) する。
>458 どーしよーもないほど多いならextフォルダに入れてしまっては。
>>458 java @setting.txt
こうやるとsetting.txtにコマンドラインの中身書けたようなキガス
>>452 javac -Djava.ext.dirs=JARDIR1;JARDIR2 Hello.java
試してみ
>>460 >>463 拡張クラスはユーザクラスとクラスローディングの優先度が違うし、
シールされたjarの動作も違ってくる。
面倒でもユーザクラスとして使うjarはユーザクラスとして使うしかない。
465 :
456 :04/10/26 19:48:42
>>457 さん
>>459 さん
へ。
早々にこんなに詳しく教えていただきありがとうございます。
無事できました。
初心者です。 最近Strutsをはじめました。 画面出力するデータをValueObjectに保存する方法にしているのですが、 このValueObjectをスレッドセーフにするには Serializableにしないといけないのでしょうか?
>>466 出力用のValueObjectをスレッドセーフにしなければならない、とはどんな設計だろう?
そもそも、HttpSession に入れるのであればスレッドセーフかどうかに関わらずSerializableに
する必要があるし、ServletRequestに入れるのであればスレッドセーフとか考えなくていいと思うけど?
>>466 そのValueObjectをImmutableにすればOK。完璧にスレッドセーフになる。
>>467 ServletRequestに入れるのであればスレッドセーフにしなくてもいいのですか?
ServletRequestに入れる前に書き換えられる可能性は考えなくても良いということですか?
>>出力用のValueObjectをスレッドセーフにしなければならない、とはどんな設計だろう?
ValueObjectがスレッドセーフになっていなかったら、
読み出す前に書き換えられる可能性があるのではないかと思ったのですが。
もしかして考え方間違っています?
>>470 一般的もなにも、属性を持つオブジェクトをスレッドセーフにする唯一の方法。
ただし、
>>467 の言うように、本当にそれらをスレッドセーフにする必要があるのかどうかをまず考えれ
>>469 逆に聞くけど、requestスコープのオブジェクトが他のスレッドから書き換えられる場合ってどんな場合?
ちょっと想像つかない・・・
俺もImmutableってのも有りかもと思った。
>>468 調べてみましたがImmutableって内部変数の変更不可って奴ですか?
それだと困るんですが。。。
>>473 ActionでValueObject生成して、
値をセットして、
RequestにsetAttributeしようかと思っているのですが。
このやりかただとオブジェクト生成時点からRequestにセットするまでの間は、
書き換える可能性があるのかな?と思っていたのですが。
>>475 Action以外のスレッドに渡す可能性があるなら書き換えられるだろうな
>>475 >値をセットして、
どこから持ってきた値だこの馬鹿野郎
>>474 じゃぁそのValueObjectをスレッドセーフにするのはあきらめれ。
複数スレッドで共有しないようにすればOK。
>>477 なんでもいいのですが、
例えば前画面から送られてきた値から算出した値とか、
データベースの検索結果から取り出した値とかですが。
>>475 > このやりかただとオブジェクト生成時点からRequestにセットするまでの間は、
書き換える可能性があるのかな?と思っていたのですが。
プログラム中で他のスレッドに明示的に渡してなければOK。
Actionのexecute()メソッドそのものはスレッドセーフだ。
>>480 そうですか。
execute()メソッドの中で定義していれば問題ないんですか。
ValueObjectのインスタンスが使いまわされて、
同時アクセスの際におかしな挙動になるのではないかと心配してたのですが。
余計な心配でしたか。
>>481 > ValueObjectのインスタンスが使いまわされて、
使い回すような設計・実装をしているのか?
>>484 execute()が同時アクセスで複数同時に実行されたとき、
ValueObjectのインスタンスがひとつなら値が保障されないのではないですか?
という意味です。
「使いまわす」という表現は間違っていました。
486 :
デフォルトの名無しさん :04/10/26 21:40:24
おもしれーな。質問内容の揚げ足とるやつばっかり。それにまじめに答え返して、更に揚げ足取られる(藁Java厨ってこんな奴ばっかなのか?466もちゃんと言葉を選んで聞かねーと答えまでたどりつけねーぞ(藁
おまえモナー
>>486 荒らしは(・∀・)カエレ!
466からは非常にスムーズにQとAが続いてるんだが。
初心者をなめちゃあかんよ。
>>486 いやいや、私が素人なんでうまく考えを伝えられないんでしょうがないです。
少しずつでも理解できるようにしたいです。
それまで、皆さんが付き合ってくれるかが一番の問題ですが。
>>485 execute()の中で変数宣言して、newして、Request/Responseにしか渡してないなら
複数スレッドから共有されることはない、
からオブジェクト自身のスレッドセーフ性は考慮しなくても大丈夫。
複数同時にexecute()が実行されたなら、それぞれのリクエスト処理中に別々のObjectが生成されるだけ。
こういう奴が量産されない為にも、初心者はスレッドとスタックの基礎を必ず学んでおいてほしいと思う。
>>485 execute()が同時アクセスで複数同時に実行されたときは、それぞれのスレッド中で別々に処理されるから無問題。
そもそも、元の質問(
>>466 )にあった
Serializable は synchronized の間違いではないか、とチョットつっこんでみる。
>>491 学んでいる最中だからこそ初心者というのだよ。
466みたいなのは良いんじゃない。素直で向上心ありそうだから。
>>490 >>492 execute()メソッドで何らかのオブジェクトのインスタンスを生成する場合は
リクエストごとにインスタンスが生成されるということでよいですか?
ということは、execute()でインスタンスを生成するオブジェクトはスレッドセーフを
意識する必要は無いということですか。
VBでCOM+作成したときはクラス変数を持ったDLLをコンポーネントサービスに登録し、
ASPで呼び出していたのですが、
同時アクセスの際にクラス変数が
他のリクエストで呼び出されたときに書き換えられて正常な動作をしなかったので
同じようなことになるのかと思ってました。
先輩にクラス変数は使用するなって言われたもので。
>>494 ありがとうございます。
皆さんの貴重な時間を費やしていただいているので、
せめて「理解しました」という書き込みをしたいと思います。
>>491 時間を見つけて勉強します。
>>495 「クラス変数は使用するな」は正しい。
execute()の中で宣言する変数はクラス変数ではなく、ローカル変数。
The Struts Users Guide の 4.4.1 Action Class Design Guidelines にも
「Only Use Local Variables」とある。
Actionのフィールドとして宣言したクラス変数は複数スレッド間で参照される恐れがあり、
このオブジェクトはスレッドセーフではなくなる。
execute()メソッド内のみで閉じていれば無問題。
>>496 Actionではそうなりますが、
気にしていたのはValueObjectはクラス変数を持たなければならないということです。
今回でいうValueObjectのようにexecute()メソッドでインスタンス化されるオブジェクトは
複数のスレッド間では参照されないということでよいのですね。
MSのアプリではADOのRecordSetかSessionオブジェクトにセットするしかありませんでしたのでValueObjectみたいなものは作成できないと言われた(と思う)もので。
その辺のギャップがいまいち分かりませんでした。
>>491 で言われているように根本的な知識が無いのかもしれませんね。
しかし、Webアプリ作っている方々は皆さんその辺を十分理解したうえで作成してるんでしょうか?
私の周りではあまり気にしてないようで聞いても誰も明確な回答をもらえませんでした。
すいません。仕組みを理解しとかないと気が済まない性質で。。。
>497 玉クラスで画像を管理してなかったときはどこにどーやって画像を持ってました? それを玉クラスに移して、setter/getterなりを備え付ければいいだけですぞ。
>>498 > 気にしていたのはValueObjectはクラス変数を持たなければならないということです。
気にすることはない。
> MSのアプリでは
逆に俺はMSのアプリを知らないので何とも言えないが・・・・
> しかし、Webアプリ作っている方々は皆さんその辺を十分理解したうえで作成してるんでしょうか?
知っておかないとマズイだろう。バグやセキュリティホールの温床になる。
>>498 VBの「クラス変数」ってのはインスタンス変数のことか?
Javaだと、
インスタンスに属する、インスタンスメンバ変数と
クラスに属する、staticメンバ変数(クラス変数)と呼ぶ。
static変数は使用してはいけない。そのクラスのすべてのインスタンスで共有されるから。
VBは奇妙な仕様が多い上に知識のある人間が極端に少ないから、
VBでの知識・経験は忘れた方がいい。
どこまで正しいのか、他の言語でも一般的な事柄なのか判断しにくい。
自分で書いて思った。Javaで「クラス変数」という言葉はあまり一般的でないと思う。 使っている人がいないわけじゃないが。 インスタンスに属するもの:インスタンスメンバ、インスタンス変数、インスタンスフィールド クラスに属するもの:static変数、staticメンバ変数、staticフィールド あたりが一般的だと思う。
>>502 クラス変数(class variable)はJLSでもバリバリ使ってるし、
Java界隈でも一般的にも使ってると思うが。
「staticメンバ変数」ってのは初めて聞いた。
メンバ〜はC++だね。
>>491 で書いてることや、
WEBアプリとスレッドセーフなどについての知識が得られる良い書籍はありますか?
506 :
デフォルトの名無しさん :04/10/27 02:37:15
外部ファイルの内容の、特定の1行だけを読み込みたくて LineNumberReaderを使い、以下のようなプログラムを組んでみました。 例えば、5行目を読み込みたいときには while(5>reader.getLineNumber()) { line = reader.readLine(); } としています。 しかし、これでは1万行目を読み込むようなことがあった場合に 効率が悪いような気がします。 他に方法はあるのでしょうか?
>>506 簡単に思いつくのは
・一行の文字数かバイト数を固定する
・全ての行について(何行かごとでも良いけど)
その行がファイル先頭から何バイト目から始まるかをどこかに保存しておく
ぐらいかな。
>>506 ・解決策1
1万行ぐらい全然たいしたこと無いから気にするな。
・解決策2
FileInputStreamからbyte[]でまとめて取ってきてbyteのまま改行を数える。
>>509 サンプルをそのままコンパイルしていて、
コマンドライン引数でのポート番号指定をしていないのでは?
そのサンプルは実行するマシンでポート 13 が使われている場合を考慮してか
TimeServer はデフォルトで 8013、NBTimeServer はデフォルトで 8900 を使う。
ところが TimeQuery はデフォルトでポート 13 につなぎに行くようになってる。
>>510 >>511 レスありがとうです。
>>511 ポート番号指定してます。
java -classpath hoge TimeQuery 8900 localhost
な感じです。127.0.0.1で試しても同じでした。
ちなみにtelnetでlocalhostの8900をopenしても失敗します( ´ω`)
なぜjava.netで出来てjava.nioのチャンネルだと出来ないのでしょう・・・
学生証番号を入力すると,学生証番号の最後についているアルファベットを 算出するプログラム 320135→Jでおながいしまつ。
>>514 スレ違いな上に要件が全然足りてないぜ、ベイビー
>>515 教えてくんですみません。
要件とは??
JAVA初心者で学校の課題なのでつが
数字を分解しないといけないのでつか?
直接導出するプログラムは組めませんか?
>>516 おいおい、その前の「スレ違い」って所は完全無視かよ?
え?ここはプログラミングは教えて頂けないんでつか?
プログラミングの仕方なら学校の先生に聞けばぁ? ここはプログラミングをしてて疑問にぶち当たって調べて、それでもわからなかったら聞くところ。
520 :
デフォルトの名無しさん :04/10/27 12:26:24
>>518 問題を全部書きなさい。
すれば即座に回答する
320135がどういう計算でJになるのか、 仕組みが書かれていないから答えようがない、と言っている。 明らかに末尾が1→A、末尾が2→Bとかいう単純なものじゃないだろ?
523 :
デフォルトの名無しさん :04/10/27 12:46:24
いや、ですからあの暗号デコード式ですよ。 分からないんですか?
暗号デコード式なんて世の中に掃いて捨てるほどある それを全部適用して「ああ、これか」と確認しろと? 素直に「宿題が出来ませんでした〜」って教授に怒られてこい。
今世紀最大のなぞだな 320135->J 何かものすごい真理が潜んでいるに違いない
>>525 たいしたことないよ
32bitの対応表があるだけだ
質問 A: 1 + x = 6 の場合の、x の値が分かりません。教えてください。 質問 B: 1 + x = y の場合の、x の値が分かりません。教えてください。 (以下略)
Javascriptの変数をjavaに持ち込むことは可能でしょうか? 可能だった場合、やり方はどのように行えばよいでしょうか。 ぐぐっても全然分からなくて泣きそう(ノД`)
>529 何がしたいのか、いまいちよー分からんが JavaScriptでAPPLETタグを出力するんではダメなん? (PARAM属性に渡したい変数の値が入るようにして)
>>529 クライアントサイドなのかサーバーサイドなのかわからん。
>>499 Image型の変数にgetImage(getCodeBase(), "tama1.gif");で画像入れてました。
はい。答えになってません。
で、それを他のクラスでやっちゃいけないのですか?
コンパイルは通るのに、実行のとき、メインのクラスすらないってステータスバーに出ます。
Image クラス型オブジェクトとして取得 して、 Graphics クラス型オブジェクトにセット です。 Graphics クラス型オブジェクトにセットというのが、無いのでしょうか? でも、玉クラスで管理してなかったときと、同じ方法でやってると思うのですが・・。
すんません、クライアント側で宣言したjavascript内での変数を サーバー側にあるjavaにある変数に渡したいって事だったんです。 説明不足でホントごめん・・・
>534
ttp://rerere.zive.net/res/up/source/up3994.zip 解凍したら手を加えたTama3.javaが出てくる。
一応手元で動作は確認済み。
注意点はソースの中のコメントに##の目印つけて書いておいたから
とりあえず読んで。
てゆーか、みんなJavaの入門書ちゃんと読もうよ……
オブジェクト指向全般理解しろとは言わないが、クラスとか継承とか
最低限その辺りは理解してからやってくれ……
(別スレでも明らかにその辺が分かってない香具師が奇怪なコードを書いてたし……)
538 :
デフォルトの名無しさん :04/10/27 17:54:16
すいません、staticメソッド内で作った ローカル(?)クラスのスコープはどうなるんでしょうか? class Test{ static void method(){ Dog Poti = new Dog(); } } ここで別のクラスからmethodを2回呼び出すとどうなりますか?
541 :
デフォルトの名無しさん :04/10/27 17:58:45
上書きされて消されるなら構わないんですが 毎回毎回インスタンスが作成されたとして ちゃんとガーベッジコレクションでメモリは解放されるんでしょうか?
メソッド呼び出し中に上書きされて消されたらまずいだろ。 毎回インスタンスが作成されて、きちんとGCで解放される。
>>538 ローカル変数とローカルクラスとは違う。
あと変数とインスタンスも違う。
ローカルクラスってのはこーゆー奴ね。
class Test {
static void method(){
class Dog {} //ローカルクラス
}
}
内部クラスのpublic/privateの違いは、 他のクラスからClassA.ClassBみたいなアクセスを許すかどうかの違いですよね? ではprivate内部クラスのメンバはpublic/privateによってどうかわるのでしょうか・・・ あと、内部クラスのstaticの有無の違いもわかりません・・・ どうも内部クラスはうまく想像できないみたいです。 設計図(クラス)の中にさらにべつの設計図の小冊子がはさまってるようなもんでしょうか。
>>447 困る困らない以前に
Windows板か初心者板の話題だろ
Javaと関係ない。
以下の文が何をするのか教えて下さい int offset = ( (x < 0) ? -x : 0) + ( (y < 0) ? -y : 0) * width;
>>537 ありがとうございます。
やっぱり画像関連はメインのクラスでやるしかないんですね。
これで単純なゲームなら作れそうです。
>>549 3項演算子 なのはわかってるんだけど…
これって何処で途切れてるの??わかりやすく言い換えてくれませんか?
>>547 xが負なら-xを、そうでないなら0を求めて、
yについても同様にして求めた値にwidthを掛けたものを加え、その値をoffsetに代入する。
a ? b : c;は以下に同じ。
if(a){
b;
}
else{
c;
}
同じではなかった・・orz 3項演算子は評価して値を返すのか。
>> 551 サンクスこ。
あの〜ホントに初心者でパソコン音痴の女なんですが ちょっと質問させて下さい!! ネットにあったHelloWorldっていうソースをメモ帳でコピペして、 それをコマンドプロンプトでコンパイルしようとしたら エラー:HelloWorld.javaを読み込めません。 エラー1個 っていうふうになっちゃうんです(涙) 学校の宿題であさってまでにやらなきゃいけないんでとても焦ってます できたら教えてもらえないでしょうか☆お願いします!
こんな感じのSPAMがよく来る
1. Collection に、データがたくさん入ってます。 データは、Hogeクラスのサブクラスのインスタンスです。 2. そのCollectionから、データを一個探します。 検索にはFugaクラスのサブクラスのインスタンスを使います。 このとき Fuga findKey = ...; for( Iterator it = Collection.iterator; it.hasNext(); ) if( findKey.isEqualsTo( (Hoge)it.next() ) ) return true; return false; と検索用のコードを書き、抽象メソッドFuga#isEqualsTo( Hoge hoge )を boolean FugaSub1#isEqualsTo( Hoge hoge ) { return hoge instanceof hogeSub1 && ((hogeSub1)hoge).foo() == fugaSub1.member; } などのように実装しました。 俺ってinstanceofが嫌いなんです。 で、このような、コレクションからオブジェクトを検索するような方法が 全うなのかそうでないのかを教えてもらいたいのです。 もしもさ、もしも、きみなら、どんな風に書く?
>>556 訂正
boolean FugaSub1#isEqualsTo( Hoge hoge ) {
return ( hoge instanceof HogeSub1 ) &&((HogeSub1)hoge).foo() == this.member;
}
かな。
558 :
デフォルトの名無しさん :04/10/28 01:30:12
BorderLayoutにJScrollPaneを載せてみたんですが 最初スクロールバーが出てる状態で、最大化するとスクロールバーが消えました。 また元の大きさに戻すとスクロールバーが出たんですが マウスホイールが効かなくなってしまいました。なぜでしょうか?
>>556 そのListだかにHogeオブジェクトしか入ってないなら
Genericsで解決しそうな気がするよ
>>558 スクロールバーが消えるのがいやなら
JScrollPane#setVerticalScrollBarPolicy(int policy)
でScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYSを指定で
マウスホイールの方はもう少しヒントがないとわからんちん
勘で答えるとsetSizeで変なことやってるとか
フォーカスが変なことになってるとか、かな
560 :
デフォルトの名無しさん :04/10/28 02:25:32
Javaの入門書でオススメは何ですか? 知識ゼロからでも理解できて、最終的に自分でJavaプログラムを組めるようになるやつがいいでつ。
>>528 の修正プログラムあてたけどダメでした。
不貞寝してやるわ。
これから Java を学ぼうと思ってるんですが、Java の将来性ってどんなもんでしょう? なんかもうすぐ消えるとの噂も聞きますが… 将来性がどうとかで学ぶのを辞める気はありませんけど、一応知っておきたいので…
2chでそんなこと聞いても偏った答えしか返ってこないんじゃない?
>>563 確かに、JAVAはもう駄目だろうね。
みんなもう分かってきてる。
今じゃもう完全にサーバサイド向けだって開き直ってしまったけど、
そのサーバサイドでも、意外と開発工数が掛かり効率が悪い事が
現場じゃ知られてきてしまったから、だんだん外の言語にシフトしつつある。
招来性は暗いね。
> 招来性は暗いね。 なんで こんなトコロで誤変換してんだろ?
>>563 一言で言えば、帯に短したすきに長しなんだよな。
JAVAって。
Webアプリケーション開発でも開発時間が思ったほど短縮できないから
意外と使われてなかったり、倦厭されてたりする。
何時の間にか自然消滅してる可能性は高いね。
これからJAVAを学習しても、せいぜいオブジェクト指向の理解にしか
役立たなかったて事になるかも。。。
つーか、JAVAの将来性が無いなんて、いろんな所で言われてるじゃん。
SEもマも将来性なんて無いんだから、言語なんて何やってたって同じだろ
571 :
デフォルトの名無しさん :04/10/28 11:45:40
このスレのJavaの達人さんはどんな仕事をしてるんですか?
Webアプリの開発メイン。 しかしJAVAで開発する事は少ない。 自分は、元々SUNのデザインが気に入らなかったのでいいが。。。
574 :
デフォルトの名無しさん :04/10/28 11:58:15
>>573 すごいですね〜。
僕みたいな素人には何の仕事か分からないけどw
Javaの起動オプションの-Dline.separator=設定がわからん。 -Dline.separator=\nとかやっても\nが表示されて改行されない。 おまえら、おしえれ
UNIXなら $ java -Dline.separator=[Ctrl-V][Ctrl-J] でどう?
577 :
デフォルトの名無しさん :04/10/28 19:04:21
アメリカでJAVAを使っているのですが、日本語が見れなくてかわりに □□□ と表示されます。誰か直し方知ってましたら教えてください。 初心者なのでできればわかりやすくお願いします
>>565 具体的に何がくる?
転職の参考にするからオシエレ
スマンコ
583 :
デフォルトの名無しさん :04/10/28 19:27:28
>>583 >初心者なのでできればわかりやすくお願いします
585 :
デフォルトの名無しさん :04/10/28 19:54:25
>>584 まぁそういわれれば(笑)
質問スレなんだからいちいち初心者おちょくんなよ。
586 :
デフォルトの名無しさん :04/10/28 20:58:39
>>577 コンパネの「地域と言語のオプション」から日本語入れてもだめ?
587 :
デフォルトの名無しさん :04/10/28 21:25:28
//Enshuu43.java class Enshuu43{ public static void main(String[]args){ int a=1; int b=2; int c=3; System.out.println("a+b+c="+a+b+c); } } のプログラムを実行すると 表示がa+b+c=6 にならないのはなぜ?
>>587 "a+b+c="+a+b+c は ((("a+b+c="+a)+b)+c) と同じ。
589 :
587 :04/10/28 21:31:02
590 :
デフォルトの名無しさん :04/10/28 22:06:42
アプレットの実行中に、appletviewerの再読込みと同じような動作をさせるには どのようにすればいいのでしょうか? 「ボタンを押すとアプレットが再読込みされる」 というものを作りたいと思っています。
>>590 getAppletContext().showDocument()で開きなおしじゃだめなん?
593 :
デフォルトの名無しさん :04/10/28 23:18:47
java.exeとjavaw.exeの違いはなんですか?
>593 AWTかSwingでアプリケーション作って(アプレットじゃあかんですよ) それぞれで実行してみ。すぐ分かる。
javawはコンソールを使わないjava。
596 :
デフォルトの名無しさん :04/10/29 06:40:57
Object[]からHoge[]にキャストするにはどうすればいいんですか?
(Hoge[])array ただし、array は Hoge もしくはサブクラスの配列のインスタンスを持っている必要がある。
599 :
デフォルトの名無しさん :04/10/29 11:53:56
超初心者です。javaのジャも知りません。 このスレは初心者歓迎らしいので質問させていただきます。 あるホームページでExecutable Jar Fileとjavaバーチャルマシンというものを ダウンロードしました。このマシンでファイルが実行できる(半導体材料の物性値,移動度の キャリヤ濃度依存を様子がパラメータを変えつつ対数グラフで観察できる)のですが このファイルに書かれている数式やプログラムが見たいときはどうすればいいのでしょうか。 メモ帳でみても漢字ばかりのものになってしまいます。
>>599 プログラム知らないなら見ても理解できないと思うが?
>599 必ずできますが基本的に無理です
>>599 ダウンロード元のホームページの作者に聞けよ。
604 :
デフォルトの名無しさん :04/10/29 12:50:47
>600 プログラムというよりは数式が知りたいので。 それがわかればigorで作れると思います。
>>604 だからお前さんにゃプログラムから数式を読みとることができねーだろって。
ここは初心者歓迎かもしれんが、ド素人はお断りだ。
>>605 何を言ってるんだよ。
プログラム読めば数式くらい読み取れるに決まってるだろ。
>>599 は、あかでみっくな人と見た。
んなくだらない野次入れる前に質問に素直に答えたらどうだ?
分からないのなら分からないって素直に言えばいいだろ。
ここはお前さんのみじめな現実の憂さ晴らしをする為に
ストレス解消スレッドじゃないんだよ。
他人を中傷したいだけなら外のスレッドに行ってくれ。
>>606 jad や jode みたいなデコンパイラ使え。
デコンパイラの使い方やどこでダウンロードできるかは google 使って自分で探せ。
608 :
デフォルトの名無しさん :04/10/29 13:19:33
>607 ありがとうございます。調べてみます。
うるさい。黙れ。クズどもが。 俺は天才だ。
というお話だったのサ。AA略
みんな仲がいいな。夫婦漫才みたいだ。 このスレ気に入ったよ。
614 :
デフォルトの名無しさん :04/10/29 15:02:35
>607 DJ java decompiler を使ってできました。ありがとうございました。 普通に数式わかりました。
615 :
デフォルトの名無しさん :04/10/29 15:07:18
JTextField を継承して OriginalTextFieldを作成しています。 JComponent > JTextComponent > JTextField > OriginalTextField こういう継承でJTextComponentのgetPreferredSize()を取得するには どのようにすればよいのでしょうか。 super.super.getPreferredSize(); という方法ではうまくいかないようです。 どなたかお教え下さい。 宜しくお願いいたします。
616 :
デフォルトの名無しさん :04/10/29 15:24:18
JTextFieldとJTextComponentとJComponentの getPreferredSize()は同じものなので、 普通にsuper.getPreferredSize()とするだけでいいです。 JAVAでは、スーパークラスより上を遡ってのメソッド呼び出しは できません。
もう一度言う。 俺は天才だ。
618 :
デフォルトの名無しさん :04/10/29 15:33:25
> 616 やっぱりスーパークラスより上は無理なんですね。 JDK1.4ですがそれぞれ実装は違うんですよ。 一個上ではcolumnsの計算が追加されています。 (そこだけ変えようと考えていました) とりあえず出来ないことが判ればOKです。 ありがとうございました。
619 :
デフォルトの名無しさん :04/10/29 16:01:25
620 :
デフォルトの名無しさん :04/10/29 17:36:56
>619 文字数でサイズを計算する処理です。 JTextFieldの計算だと、LookAndFeelのせいか、文字数より若干切れることが あるので、自分で実装しようとしてました。
文字数でサイズって…… FontMetrics.stringWidth()か、 SwingUtilities.computeStringWidth() あたりを使うんじゃあ?
622 :
デフォルトの名無しさん :04/10/29 18:56:04
>>620 それは、もしかしてJTextFieldの先頭部分の文字が少し切れてしまう
(左側の部分が表示されない)という事ですか?
よくあるGUIで 上下の矢印(スクロールバーの矢印のやつ)があってそれをおすと 隣のラベルかなんかの中の数字が増えたり減ったりするやつ作りたいんですが あれはどうやればいいんですか?リストでやろうとしたけど選択されないからイベントが拾えなかったです
うっひょぉ!そんながあったとは!ありがつお!
直接関係ないと思うんだけど、 FormタグSubmitで作られたボタンを感知・Pushしたり出来る?
627 :
デフォルトの名無しさん :04/10/29 22:00:26
無理
>>626 アプレットの話?
JavaScriptでイベントとらえられるなら
LiveConnectでアプレット側に伝えられる気がするけど