1 名前:デフォルトの名無しさん [2010/05/01(土) 12:46:59 ] 1 名前:デフォルトの名無しさん[] 投稿日:2010/03/16(火) 10:23:04 プログラミング言語Javaに関する質問スレです。 JavaScript, Ajaxの質問は、ここでは受け付けていません。 Web製作管理 ttp://pc11.2ch.net/hp/ Webプログラミング ttp://pc11.2ch.net/php/ をご利用下さい。 よくある質問 ・「コマンドまたはファイル名が違います」 「'javac' は、内部コマンドまたは外部コマンド、 操作可能なプログラムまたはバッチ ファイルとして認識されていません。」 「Exception in thread "main" java.lang.NoClassDefFoundError: 」 ttp://www.wikiroom.com/java/?path,classpath ・String に == は使うな。equals() を使え。 ・「\12288 は不正な文字です。」 文字リテラル以外で全角スペースは使えません。半角スペースに。 ・その他の質問→「APIのjavadoc見ろ」 前スレッド ★★Java質問・相談スレッド137★★ pc12.2ch.net/test/read.cgi/tech/1268702584/ 次スレは>>950 あたりで。 過去ログ、関連スレッド、よくある質問とその回答など、 質問をする前に、貴方が見なければならないサイトについての情報は、 下のwikiのページにまとめてあります。 ttp://www.wikiroom.com/java/
152 名前:デフォルトの名無しさん mailto:sage [2010/05/06(木) 21:39:35 ] おまえはコンクリートクラスをベタ書きで使ってるのがお似合い。
153 名前:デフォルトの名無しさん mailto:sage [2010/05/06(木) 21:41:53 ] >>151 意味が分からない俺は初心者です。ハイ。
154 名前:デフォルトの名無しさん mailto:sage [2010/05/06(木) 22:02:30 ] >>151 まさにLinkedListの性質が必要となっているので、 インタフェースを指定する必要はない。 ところで、<E, T extends List<E> & Deque<E>> とか&指定する機会ってあんまりないよねー。
155 名前:デフォルトの名無しさん mailto:sage [2010/05/06(木) 22:47:47 ] >>151 意味がわからん。 なんでqueue使うのにlistIteratorが要るんだ? だいたいLinkedListじゃなくてArrayDequeue使うところだろ。 listIterator使うってことはカーソル基準の相対位置にアクセスしたいのか? pop要らんしpopしたら意味が変わってくるだろ。
156 名前:デフォルトの名無しさん mailto:sage [2010/05/06(木) 22:50:34 ] ところでリスト更新したらConcurrentModificationでない?
157 名前:デフォルトの名無しさん mailto:sage [2010/05/06(木) 23:40:44 ] >>155 というかさ、LinkedListだとしても普通に Queue<String> queue = new LinkedList<String>(); queue.add("1"); queue.add("2"); queue.add("3"); String elm; while((elm = queue.poll()) != null ){ System.out.println(elm); } だと思うんだ。
158 名前:デフォルトの名無しさん mailto:sage [2010/05/06(木) 23:53:08 ] >>151 Queue<String> q = new LinkedList<String>(); q.add("test"); q.add("abc"); q.add("def"); Iterator<String> i = q.iterator(); while (i.hasNext()) { System.out.println(i.next()); } System.out.println("-----"); String s; while ((s=q.poll())!=null) { System.out.println(s); } とかはダメなのか?ListIteratorしか使えない呪いでも?
159 名前:157 mailto:sage [2010/05/07(金) 00:00:16 ] >>158 Iterator<String> i = q.iterator(); while (i.hasNext()) { System.out.println(i.next()); } の部分は、 for(String s : queue){ System.out.println(s); } の方がスッキリして好きだな。
160 名前:デフォルトの名無しさん mailto:sage [2010/05/07(金) 00:04:30 ] 前の LinkedList 厨だからスルーが吉
161 名前:デフォルトの名無しさん mailto:sage [2010/05/07(金) 05:38:23 ] え?厨?
162 名前:デフォルトの名無しさん [2010/05/07(金) 09:04:58 ] 初心者です。試験勉強用の事で、言葉の定義とかなんですが、質問させて下さい。 1)メソッドに渡した基本型のフィールド変数は、メソッド内側の操作は、 外側の変数には反映されないでしょうか。(合っていますよね。) 2)このメソッド内の変数をローカル変数と呼ぶ、合っていますか。 3)通常、引数で渡した変数の反映を読んだ側でも反映して返すには、 戻り値で返すのが普通でしょうか。(static変数との使い分けがよく分からない;) 4)メソッドに参照型の参照で渡した場合、 メソッド内部のインスタンスに対する操作は反映される、っていうのが、 当たり前だと個人的には感じるんだけども、 わざわざ参考書とかで説明してあるのが謎です。 例えば、 method1(Vector v)の中で Vector v = new Vector(); v.add(new String("abc"); とやった場合には外側のvにはabcはくっつかない、 method2(Vector v)の中で v.add(new String("abc"); とかやると、くっつく、と。 当たり前の様な気もしますし、どうなんでしょう。 5)この4)の場合と、1)の場合を比較した時の理論がよくわかりません。 1)だと、メソッド側に引数で渡された基本型の値はコピーされて (多分JVMのメモリにはその値用の領域が確保されますよね) メソッド内の操作はそのコピーされた領域に保存された値を操作しているんだと 思いますが、4)で参照を渡した時も、参照は別の領域にコピーされるんですよね。 すると、4−method2の場合には、v.add〜のvで指せる参照はコピーされた 値な様な気がして・・どうなんでしょうか。
163 名前:デフォルトの名無しさん mailto:sage [2010/05/07(金) 09:25:20 ] >>162 1:反映されません。というよりは、関数内の変数に値がコピーされます。 2:ローカル変数と読んでもいいです。パラメータって普通言うけど。 3:staticは基本的に何度も値を書き込むのに使わないでください。 基本的に定数に使うものです。 返り(戻り)値で済むなら返り値を使ってください。 返り値で済まないなら、状態を持つクラスのインスタンスを渡して、 それに対してメソッド内部で操作を行います。 void method(VOClass vo){ vo.setXXXX("hogehoge"); } クラスを作るのが面倒な時は配列で渡します。 あんまりやらないほうがいいですが。 void method(Object[] o){ o[0] = "hogehoge"; } 4.どうなんでしょう?っていわれてもね、参考書は初学者のためのものだからね。 でもオブジェクトの値渡しするような言語(C++)は、普通に引数にモノを渡すと 一般的にはオブジェクトがコピーされるんで、その理論は通用しません。 どうでもいいですが、Stringのコンストラクタは意味がないどころか 普通はコスト的に有害なので超特別な理由がない限り呼ばないでください。 あとVectorじゃなくて普通はArrayListを使います。 5.Javaには参照渡しはありません。メソッドのオブジェクトを渡した時は、 オブジェクトへの参照がコピられて値渡しされてるだけ。 オブジェクト以外の基本型(プリミティヴ)を 渡した時もその値がコピられて値渡しされてるだけ。 method2はmethod2に渡した引数(オブジェクト)の参照がコピられて method2のvパラメータに設定されているだけ。 参照ってのは32bitのメモリ空間を表す数字ね。
164 名前:デフォルトの名無しさん mailto:sage [2010/05/07(金) 09:41:37 ] >>163 >staticは基本的に何度も値を書き込むのに使わないでください。 >基本的に定数に使うものです。 定数のときはstatic final クラス内で共通、唯一つな時に使えばいいのであって何度も値を書いて問題なし FPSでの弾の数とか
165 名前:デフォルトの名無しさん mailto:sage [2010/05/07(金) 10:41:33 ] >>164 弾の数… ビミョー。使っちゃダメってことはないけど、 あんまり正当化できるシーンは少ない。 少なくともstatic変数が現れたら「きちんと使っているかどうか」 ってのは見てしまうね。コードレビューの時とか。 だいたい「使う正当な理由はないよね。じゃやめて。」 って注意して終わる。
166 名前:デフォルトの名無しさん mailto:sage [2010/05/07(金) 17:41:40 ] javaの公式サイトにここ数日まったく繋がらないんですが・・・
167 名前:デフォルトの名無しさん mailto:sage [2010/05/07(金) 17:51:15 ] >>166 java.sun.com/ 普通にこのサイトにつながるけど
168 名前:デフォルトの名無しさん mailto:sage [2010/05/07(金) 18:49:58 ] >>155 それArrayDequeueじゃなくてArrayDeque javadocにも書いてある通りdequeとdequeueでは英語的にもまったく意味が違う 話を戻して、Listに入れたい要素のオブジェクトを作るクラスを独自に作って 前後関係をもたせたので結局Iteratorを使う必要がなくなってしまった。 Chain of Responsibilityのたらい回しを参考に、となりどうしのオブジェクトがお互い参照しあう方式をとることにした。 それとは別にこういうデータ構造が必要だった。 ・基本的に、Stackのように端からしかデータを取得除去する必要がないからpop()を使う。 ・ひたすら端からデータを取るだけ。 ・要素が空になったときのみ一気に補充する。 ・感覚としては弾薬の再装填や燃料補給に近い。しかし個々の要素はまったく異なるものを含み重複を許可する。 だから削除速度が速いらしいLinkedListにした。 Dequeによるとpoll()はpollFirst()と同じ。 pop()はremoveFirst()同じ。 removeFirst()は空のときNoSushElementExceptionをthrowするpollFirst()。空のときはnullを返す。 (isEmpty()を使えば例外は気にしなくていい) みたいだったがnullで判定するのが好きな人が多いね。
169 名前:デフォルトの名無しさん mailto:sage [2010/05/07(金) 18:55:45 ] >>165 > >>164 > 弾の数… ビミョー。使っちゃダメってことはないけど、 > あんまり正当化できるシーンは少ない。 > 少なくともstatic変数が現れたら「きちんと使っているかどうか」 > ってのは見てしまうね。コードレビューの時とか。 > だいたい「使う正当な理由はないよね。じゃやめて。」 > って注意して終わる。 複数のインスタンスでひとつの状態を共有するときはstatic変数は重宝する。
170 名前:デフォルトの名無しさん mailto:sage [2010/05/07(金) 19:28:14 ] だから"ビミョー"なんじゃないの?
171 名前:デフォルトの名無しさん mailto:sage [2010/05/07(金) 20:00:11 ] 書籍『Java言語仕様』によると、純粋主義者はインスタンスフィールドはすべてprivateにすべき staticフィールドはfinalにすべきというが、そんな感じの意見か。 staticなフィールドの代替をCollectionを集約したSlngletonで代用するとかいう感じか。
172 名前:デフォルトの名無しさん [2010/05/07(金) 21:51:12 ] 入力するときに、import java.io.* とimport java.io.* って何が違うの? JAVA初めて即効分からなくなった。 どっちのがいいとかある? IOで解説してるサイトが多いからそっちのが簡単とか?
173 名前:デフォルトの名無しさん mailto:sage [2010/05/07(金) 21:52:56 ] 間違えた。 java.util.
174 名前:デフォルトの名無しさん mailto:sage [2010/05/07(金) 21:55:27 ] ( ゚Д゚)ポカーン
175 名前:デフォルトの名無しさん mailto:sage [2010/05/07(金) 22:01:12 ] イギリスとフランスって何が違うの?級の質問
176 名前:デフォルトの名無しさん [2010/05/07(金) 22:09:21 ] そうなんですか。 ではテキスト通りutilにします。 有難うございました。
177 名前:デフォルトの名無しさん mailto:sage [2010/05/07(金) 22:23:00 ] test
178 名前:デフォルトの名無しさん mailto:sage [2010/05/07(金) 22:28:00 ] 質問させてください。 現在コンソール入力でヒットアンドブロー(数字当て)のゲームを開発中で詰まっている点があります。 まず、プログラム上で乱数にて4桁の数字をセットします。 コンソール画面上の例 : ▲回目:1234 ⇒ Hit :● Blow :● ※▲には入力の回数カウンタを表示。 ※●には入力した数字に対して正否の数字がそれぞれ入る。 @『 ▲回目: 』 と表示させた後、ユーザーが入力で4桁の数字を入力してEnterを押す。 ABufferedReaderクラスのInputStreamReaderメソッドにてSystem.Inを入力し変換させ表示 B正否判定を表示 『 ⇒ Hit :● Blow :● 』 このAとBの間で、改行させずに入力を行いたいのですがうまくいきません。 改行はBの正否の判定を表示した時にSystem.out.printlnでするだけにしたいんです。 以下のような形での画面・入力仕様が目標です。 1回目:1234 ⇒ Hit :0 Blow :4 2回目:2525 ⇒ Hit :2 Blow :2 1回目:7777 ⇒ Hit :4 Blow :0 Congratulation・・・
179 名前:デフォルトの名無しさん mailto:sage [2010/05/07(金) 22:29:48 ] >>178 どうせBufferedReaderでreadlineとかしてんでしょ。
180 名前:デフォルトの名無しさん mailto:sage [2010/05/07(金) 22:32:18 ] >>179 はい、その通りです。
181 名前:デフォルトの名無しさん mailto:sage [2010/05/07(金) 22:36:19 ] >>168 おれなら、 public class Test { public static void main(String[] args) { Deque<String> queue = new ReloadableDeque<String>() { @Override public void reload() { System.out.println("リロードっ"); this.add("1"); this.add("2"); this.add("3"); } }; String elm; while ((elm = queue.pollFirst())!=null) System.out.println(elm); } } public abstract class ReloadableDeque<E> extends ArrayDeque<E> implements Reloadable{ @Override public E pollFirst() { E elm; if ((elm = super.pollFirst()) == null) { reload(); elm = super.pollFirst(); } return elm; } } public interface Reloadable { void reload(); } だな。
182 名前:デフォルトの名無しさん mailto:sage [2010/05/07(金) 22:39:38 ] >>180 readlineは一行分読み込みが終わるまで読み込めない。 ファイルが読み込み元なら改行文字にブチ当たるまで読み込めない。 コンソールが読み込み元なら改行してくれるまで読み込めない。 別の読み込みメソッドを使いましょう。
183 名前:182 mailto:sage [2010/05/07(金) 22:43:17 ] と思ったけど、無理だな
184 名前:178 mailto:sage [2010/05/07(金) 22:54:36 ] >>183 ありがとうです。 やっぱり無理なんですかねぇ 3日3晩APIの仕様書熟読とWeb中探しがしんどい・・・orz
185 名前:デフォルトの名無しさん mailto:sage [2010/05/07(金) 23:02:09 ] >>184 一応言っておくと、 Java6使ってるならSystem.console()使おうぜ
186 名前:デフォルトの名無しさん mailto:sage [2010/05/07(金) 23:08:03 ] >>178 こんなの使うとできる、のかも。 ttp://www.nilab.info/resource/bbslog/megabbs/1070189533.html
187 名前:デフォルトの名無しさん mailto:sage [2010/05/07(金) 23:12:35 ] >>172 は? java.sql.Date と java.util.Date との違い、 これらを同時に使用するにはどうすればいいのかっていう質問ならわかるんだが。 それともimport java.io.*とimport java.io.PrintWriterとの違いやimport java.util.Collectionとimport java.util.*との違いのことをいっているのか?
188 名前:デフォルトの名無しさん mailto:sage [2010/05/07(金) 23:13:28 ] >>184 どうしてもやりたかったらawt.keyevent あとはlinux、cygwinとか?
189 名前:デフォルトの名無しさん mailto:sage [2010/05/07(金) 23:18:27 ] こんなのとか。 jline.sourceforge.net/
190 名前:デフォルトの名無しさん mailto:sage [2010/05/07(金) 23:20:12 ] >>172 www.atmarkit.co.jp/fjava/rensai4/java5eclipse10/java5eclipse10_1.html
191 名前:178 mailto:sage [2010/05/07(金) 23:24:46 ] >>185 >>186 >>188-189 みんなありがとう。ちょっと調べてみて吟味して後の仕様拡張とあわせて 選択しようかなと思います。
192 名前:デフォルトの名無しさん mailto:sage [2010/05/07(金) 23:28:31 ] >>181 そこまでやるか。 Template Methodに匿名クラスに抽象メソッドにインタフェース全部作ってまでやるか。 そこまでやりだすメリットってそんなにあるのか? ジェネリックスにワイルドカード指定すればもっと凄い堅牢性が高いものが できあがりそうだが、やりだすと苦労しそうだ。
193 名前:デフォルトの名無しさん mailto:sage [2010/05/07(金) 23:35:38 ] >>185 C#のSystem.Console.WriteLine()かと思った。 そんなメソッドとjava.io.Consoleが追加されていたとは。 これでScannerクラスを使う必要もなくなるのか
194 名前:デフォルトの名無しさん mailto:sage [2010/05/07(金) 23:37:03 ] Apache Commons CLIという選択肢もあり commons.apache.org/cli/
195 名前:デフォルトの名無しさん mailto:sage [2010/05/07(金) 23:50:30 ] >>194 cliってgetoptみたいなものでは。
196 名前:デフォルトの名無しさん [2010/05/08(土) 00:14:24 ] 超初心者増えたなぁ
197 名前:デフォルトの名無しさん mailto:sage [2010/05/08(土) 00:15:32 ] >>192 匿名クラスなのは、ReloadableDequeの中でreloadを実装すると融通効かなそうだから(部品として弱そうだから)、 匿名クラスでReloadable#reloadを実装した。それから、クラス名考えるのめんどくさかったからってのもある。 抽象クラスなのは、ReloadableDequeを使う人に、 確実にreloadをOverrideさせるため。 Reloadableをインタフェースにしたのは、なんか全然違うところでも使いそうじゃない?そんな理由。マーカ的につかえるかなぁ〜って。
198 名前:デフォルトの名無しさん mailto:sage [2010/05/08(土) 00:21:25 ] 誤)Reloadableをインタフェースにしたのは、 正)Reloadableインタフェースをつくったのは、
199 名前:デフォルトの名無しさん mailto:sage [2010/05/08(土) 01:26:02 ] >>193 正直いってConsoleは微妙 というかeclipseで使えない
200 名前:デフォルトの名無しさん mailto:sage [2010/05/08(土) 01:52:39 ] うわあマジだ。ある意味正しい動きではあるが。クソだな。
201 名前:デフォルトの名無しさん mailto:sage [2010/05/08(土) 01:59:33 ] >>196 お前いっつもそれしか言わないよな。
202 名前:デフォルトの名無しさん mailto:sage [2010/05/08(土) 02:00:14 ] 初心者の域を抜け出せない初心者が初心者批判してるんですね
203 名前:デフォルトの名無しさん mailto:sage [2010/05/08(土) 02:43:15 ] >>200 利点はioexceptionなげないのとpasswordだけ・・・ 自分はIDE上で登録済み br Java ステートメント try { BufferedReader br=new BufferedReader(new InputStreamReader(System.in)); String line; while((line=br.readLine())!=null){ ${cursor} } } catch (IOException e) { // TODO 自動生成された catch ブロック e.printStackTrace(); }
204 名前:デフォルトの名無しさん mailto:sage [2010/05/08(土) 05:14:29 ] マルチスレッドについての質問です。 マルチコアCPUの場合、プロセスのコア割り当てはOSが管理しますよね。 Javaプロセスを複数立ち上げれば、OSが適切にプロセスごとに割り振るのは分かります。 でも、一つのJavaプロセスの中で複数スレッドを走らせた場合、 OSからは一つのJavaプロセスに見えてると思うのですが、 どうやって複数コアへ処理の割り当てを行っているのでしょうか。
205 名前:デフォルトの名無しさん [2010/05/08(土) 05:51:05 ] / 名前を読み込んで挨拶する(その2:nextLine()版) import java.util.Scanner; class HelloNextLine { public static void main(String[] args) { Scanner stdIn = new Scanner(System.in); System.out.print("お名前は:"); String s = stdIn.nextLine(); // 1行分の文字列を読み込む System.out.println("こんにちは" + s + "さん。"); // 表示 } } Exception in thread "main" java.lang.NoClassDefFoundError: HelloNextline (wrong name: HelloNextLine) at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClassCond(Unknown Source) at java.lang.ClassLoader.defineClass(Unknown Source) at java.security.SecureClassLoader.defineClass(Unknown Source) at java.net.URLClassLoader.defineClass(Unknown Source) at java.net.URLClassLoader.access$000(Unknown Source) at java.net.URLClassLoader$1.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) Could not find the main class: HelloNextline. Program will exit. 上記のようになったのですが、エラーが出た時はどの部分をみればいいのでしょうか?
206 名前:デフォルトの名無しさん mailto:sage [2010/05/08(土) 06:02:11 ] HelloNextline (wrong name: HelloNextLine)
207 名前:デフォルトの名無しさん [2010/05/08(土) 07:37:04 ] compress形式で圧縮されたファイル(拡張子 .z のファイル)を解凍したいのですが、 どうすればいいのでしょうか?
208 名前:デフォルトの名無しさん mailto:sage [2010/05/08(土) 07:42:39 ] >>204 vmのスレッディングapi実装はosネイティブのスレッディングapiを利用して行われる
209 名前:デフォルトの名無しさん mailto:sage [2010/05/08(土) 08:45:03 ] バックグラウンドで画像のサムネールを作る処理を走らせたときに MIN_PRIORITY に 設定しても CPU 100% 行ってしまい、枚数が多いと CPU 熱のフェールセーフが働いて スリープ状態になってしまう。もうこれ以上って Timer か何かから細かい間隔で suspend resume してやるしかないかな。
210 名前:デフォルトの名無しさん mailto:sage [2010/05/08(土) 08:48:11 ] >>207 標準 API には無いから Runtime#exec() 使ってシェル経由でやるしかない。 ネットで探せばどこかにライブラリが落ちているかもしれないが。
211 名前:デフォルトの名無しさん mailto:sage [2010/05/08(土) 08:49:55 ] >>204 今時の Java VM 実装では OS は Java のスレッドまで見えているので スレッドを適切に CPU に割り当てられる。
212 名前:デフォルトの名無しさん mailto:sage [2010/05/08(土) 09:21:50 ] >>209 100%になるのが悪いんじゃなくて冷却が足らないだけだ ヒートシンク掃除して扇風機でも当てとけ ハードウェア的な話だから続けるならよそでやってくれ
213 名前:デフォルトの名無しさん mailto:sage [2010/05/08(土) 09:40:28 ] ThinkPad だからどうしようもない。役に立たないしょうもない煽りだけならよそでやってくれ。 で、200ms ごとに suspend, resume 繰り返すようにしたらとりあえず 80% ほどに落ち着いた。 TimerTask × ImageIO の閉じた処理どうしなのでデッドロックもないだろう。 少し調整の余地はあるがこれでやるか。
214 名前:デフォルトの名無しさん mailto:sage [2010/05/08(土) 11:56:35 ] >>213 PC買い換えろ
215 名前:デフォルトの名無しさん mailto:sage [2010/05/08(土) 12:39:47 ] >>213 java.sun.com/javase/ja/6/docs/ja/api/java/lang/management/ThreadMXBean.html ここら辺使ってスレッドのCPU時間の測定してsuspend~resumeの間隔を調整すれば、CPU使用率の調整とかも出来るかも?
216 名前:207 mailto:sage [2010/05/08(土) 13:10:46 ] >>210 標準にはないですか。ありがとうございます。 Windowsでも動かすかもしれないので、シェルはちょっと不味いです。 ライブラリ探すか、自作してみます。
217 名前:デフォルトの名無しさん mailto:sage [2010/05/08(土) 13:12:52 ] デュアルコアならCPU1つに制限するとかなしなの?
218 名前:デフォルトの名無しさん mailto:sage [2010/05/08(土) 13:59:26 ] >>211 >>208 ありがとうございます。よく分かりました。
219 名前:デフォルトの名無しさん mailto:sage [2010/05/08(土) 14:36:44 ] >>199 なんでEclipseで使えないんだ と思ってやってみたら本当に例外を吐いて DOSプロンプトではちゃんと動く。 さすがにEclipseのコミュニティにバグ報告されている内容だろうか。
220 名前:デフォルトの名無しさん mailto:sage [2010/05/08(土) 15:26:00 ] すんませんjavaの練習したいと思ってJDKインスコしたんですが。ユーザー変数にC:\Sun\SDK\bin入れてるけどコマンドプロントで認識しません。 いまいま始めたばっかでよく分からないんですが。 とにかくコマンドプロントで練習できるようにするにはどうすればいいんでしょうか?
221 名前:デフォルトの名無しさん mailto:sage [2010/05/08(土) 15:28:40 ] PATH %PATH%;C:\Sun\SDK\bin
222 名前:デフォルトの名無しさん mailto:sage [2010/05/08(土) 15:29:56 ] インストール先のフォルダそれで合ってるの? ユーザー変数?環境変数のこと?
223 名前:デフォルトの名無しさん mailto:sage [2010/05/08(土) 15:31:00 ] C:\Program Files\Java\jdk1.*.*_**\bin
224 名前:デフォルトの名無しさん mailto:sage [2010/05/08(土) 15:33:11 ] SDKファイルの中の何を指定すればいいのかがよくわかりません・・・
225 名前:デフォルトの名無しさん mailto:sage [2010/05/08(土) 15:33:55 ] C:\Sun\SDK\bin フォルダの場所自体はこれであってるんですが
226 名前:デフォルトの名無しさん mailto:sage [2010/05/08(土) 15:34:53 ] >ユーザー変数にC:\Sun\SDK\bin入れてるけど これを具体的に説明
227 名前:デフォルトの名無しさん mailto:sage [2010/05/08(土) 15:36:27 ] 環境変数のユーザー編集 変数名 PATH 変数値 C:\Sun\SDK\bin にしてて、フォルダの位置も正しいはずなんですが コマンドはC:\>setでやってます
228 名前:デフォルトの名無しさん mailto:sage [2010/05/08(土) 15:40:30 ] 環境変数の設定変更したあとPC再起動した?
229 名前:デフォルトの名無しさん mailto:sage [2010/05/08(土) 15:44:07 ] 先程しましたが結果は同じでした
230 名前:デフォルトの名無しさん mailto:sage [2010/05/08(土) 16:01:36 ] >>220 OSとJDKインストールした場所は?
231 名前:デフォルトの名無しさん mailto:sage [2010/05/08(土) 16:05:09 ] >>230 OSはCです JDKはC:\Sun\SDKです
232 名前:デフォルトの名無しさん mailto:sage [2010/05/08(土) 16:08:07 ] 環境変数の設定をsetコマンドでやってるならPC再起動したらダメじゃん
233 名前:デフォルトの名無しさん mailto:sage [2010/05/08(土) 16:08:58 ] 設定はパフォーマンスとメンテナンスのシステムからやってます
234 名前:デフォルトの名無しさん mailto:sage [2010/05/08(土) 16:08:59 ] >>220 は何をしたかったの? javacが実行されないってこと?
235 名前:デフォルトの名無しさん mailto:sage [2010/05/08(土) 16:09:40 ] コマンドプロントでjavaが認識されないってことです 'java' は、内部コマンドまたは外部コマンド、 操作可能なプログラムまたはバッチ ファイルとして認識されていません。 ってメッセージがでるんです
236 名前:デフォルトの名無しさん mailto:sage [2010/05/08(土) 16:12:51 ] >>227 環境変数の設定画面見て、一度、スペルミスが無いかチェック コロンとセミコロンの打ち間違いや、ドットとカンマの打ち間違いとかの可能性はあるかも 問題なかったらコマンドプロンプトでpath[エンター]打つと 現在のPATHが表示されるからPATHにC:\Sun\SDK\binが含まれていることを確認 それと、C:\Sun\SDK\binのフォルダ内に、javac.exe等のファイルが存在してるかを確認 もしかするとインストール失敗してるのかも
237 名前:デフォルトの名無しさん mailto:sage [2010/05/08(土) 16:15:09 ] cmdでpathと打つとC:\Sun\SDK\binは含まれてます binのフォルダの中にjavac.exeらしきファイルが見当たらないんですが
238 名前:デフォルトの名無しさん mailto:sage [2010/05/08(土) 16:18:14 ] うちはJDKインストールしたら>>223 のように Program Files\Jana\ のところにインストールされたけど C:\Sun\SDK\bin って自分でフォルダ指定してインストールしたの?
239 名前:デフォルトの名無しさん mailto:sage [2010/05/08(土) 16:18:54 ] 実はJDKをインスコしたつもりでJREをインスコしたとか… んなわけないかw
240 名前:デフォルトの名無しさん mailto:sage [2010/05/08(土) 16:18:58 ] >>238 自分はそこにインストールされました
241 名前:デフォルトの名無しさん mailto:sage [2010/05/08(土) 16:22:03 ] もう一回違うJDKインスコします
242 名前:デフォルトの名無しさん mailto:sage [2010/05/08(土) 16:23:47 ] jreがインスコされちまった。これはJKDとは違うの?
243 名前:デフォルトの名無しさん mailto:sage [2010/05/08(土) 16:29:39 ] JKD? Joshi Kousei Daisuki 女子 高生 大好き ?
244 名前:デフォルトの名無しさん mailto:sage [2010/05/08(土) 16:33:59 ] JDKもインスコされてました。 新しいファイルは C:\Program Files\Java\jdk16.0_20\binに指定しましたが結果は同じです 他に設定するべき所があるんでしょうか・・・・?
245 名前:デフォルトの名無しさん mailto:sage [2010/05/08(土) 16:41:00 ] コマンドプロンプトでpathと入力 C:\Program Files\Java\jdk1.6.0_20\bin がちゃんと指定されているか確認 (>>244 C:\Program Files\Java\jdk16.0_20\bin ← 16.0は間違いじゃね?) C:\Program Files\Java\jdk1.6.0_20\binフォルダに java.exeやjavac.exeが存在していることを確認 もし、java.exeやjavac.exeが存在していなかったら 可能性としては、インストール時にセキュリティソフトがjava.exeやjavac.exeをウィルスと誤検知して、削除か移動された可能性もある
246 名前:デフォルトの名無しさん mailto:sage [2010/05/08(土) 16:56:47 ] >>231 >OSはCです WindowsC ?
247 名前:デフォルトの名無しさん mailto:sage [2010/05/08(土) 17:00:38 ] >>1 よくある質問 ・「コマンドまたはファイル名が違います」 「'javac' は、内部コマンドまたは外部コマンド、 操作可能なプログラムまたはバッチ ファイルとして認識されていません。」 過去ログ、関連スレッド、よくある質問とその回答など、 質問をする前に、貴方が見なければならないサイトについての情報は、 下のwikiのページにまとめてあります。 ttp://www.wikiroom.com/java/
248 名前:デフォルトの名無しさん mailto:sage [2010/05/08(土) 17:02:05 ] >>246 Cドライブってことでしょ
249 名前:デフォルトの名無しさん [2010/05/08(土) 17:44:56 ] どうした
250 名前:デフォルトの名無しさん mailto:sage [2010/05/08(土) 18:38:07 ] 他クラスのpublicな定数を利用するときって定数名だけじゃダメなんですか?
251 名前:デフォルトの名無しさん mailto:sage [2010/05/08(土) 18:44:44 ] public staticな定数ならstatic importという物があってだな。
252 名前:デフォルトの名無しさん mailto:sage [2010/05/08(土) 18:50:09 ] 全部自前のクラスなら 定数だけのインターフェース作って全部のクラスにインプリメントしてる