- 1 名前:名無しさん@そうだ選挙に行こう mailto:sage [2009/08/30(日) 20:02:41 ]
- プログラミング言語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質問・相談スレッド131【歓迎】 ttp://pc12.2ch.net/test/read.cgi/tech/1250369910/ 次スレは>>950あたりで。 過去ログ、関連スレッド、よくある質問とその回答など、 質問をする前に、貴方が見なければならないサイトについての情報は、 下のwikiのページにまとめてあります。 ttp://www.wikiroom.com/java/
- 116 名前:デフォルトの名無しさん mailto:sage [2009/09/03(木) 19:13:45 ]
- >>115
System.arraycopy
- 117 名前:デフォルトの名無しさん [2009/09/03(木) 20:14:30 ]
- 文字列の長さを得る方法など、あらゆるコマンドが載ったリファレンスってないのでしょうか?
ちょっと大きめの書店に行ってみましたが、見つかりませんでした。 良い本があれば教えてください!
- 118 名前:デフォルトの名無しさん mailto:sage [2009/09/03(木) 20:15:59 ]
- javadocで十分だろが。釣りか?
- 119 名前:デフォルトの名無しさん mailto:sage [2009/09/03(木) 20:17:26 ]
- 紙信者って奴だ
- 120 名前:デフォルトの名無しさん mailto:sage [2009/09/03(木) 20:18:49 ]
- Javadocじゃあ視認性悪いね。
- 121 名前:デフォルトの名無しさん mailto:sage [2009/09/03(木) 20:21:12 ]
- 紙媒体のリファレンス求めるのは諦めた方がいい
非効率過ぎる 微妙に畑が違うが、Win32APIのリファレンスなんて3000ページ以上あったぜ
- 122 名前:117 [2009/09/03(木) 20:25:37 ]
- Javadocというものを知らなかったので検索してみましたが、
自分で書いたコードの解説をHTML形式で作成できる機能でしょうか?
- 123 名前:デフォルトの名無しさん mailto:sage [2009/09/03(木) 20:25:49 ]
- 改訂のたびに廃棄してたらとんでもねーな。
- 124 名前:デフォルトの名無しさん mailto:sage [2009/09/03(木) 20:28:31 ]
- >>117 はそもそもJavadocを知らなさそうだな
これだ java.sun.com/javase/ja/6/docs/ja/api/index.html 標準で入ってるあらゆるクラス・インタフェイス・メソッド・フィールドが載っている
- 125 名前:デフォルトの名無しさん mailto:sage [2009/09/03(木) 20:28:57 ]
- >>122
とりあえず↓で事足りないかい? java.sun.com/j2se/1.5.0/ja/docs/ja/api/
- 126 名前:デフォルトの名無しさん mailto:sage [2009/09/03(木) 20:29:49 ]
- 貼る奴間違えた
- 127 名前:デフォルトの名無しさん [2009/09/03(木) 20:35:30 ]
- >>124-125
十分事足ります! >>124さんのリンクのほうが新しいみたいですね。 機能からの逆引きの仕方がわかりませんけど、ブックマークして後で部分的に目を通してみます。 (Firefoxでスクリプトの処理に時間がかかる、みたいなダイアログが出ますけど…) ありがとうございました!!
- 128 名前:デフォルトの名無しさん mailto:sage [2009/09/03(木) 20:37:54 ]
- API仕様書
- 129 名前:デフォルトの名無しさん mailto:sage [2009/09/03(木) 20:50:56 ]
- Win32APIってやっぱりMSDNしかないの?あそこIEじゃないとMSの嫌がらせが多いから嫌なんだよな・・・
- 130 名前:デフォルトの名無しさん [2009/09/03(木) 20:54:52 ]
- JSFのリファレンスっていうかチュートリアルっていうか、公式なやつない?
- 131 名前:デフォルトの名無しさん mailto:sage [2009/09/03(木) 21:43:49 ]
- 質問。
総称型配列を返すメソッドを持つクラスを楽に作れるような改良は、予定に ありませんか? class GenArray<T> { public T[] RetArray() {...} } というか、T[] = new T[100]; もできんし。
- 132 名前:デフォルトの名無しさん mailto:sage [2009/09/03(木) 22:00:11 ]
- List<T> の何が不満なんだ?
- 133 名前:デフォルトの名無しさん mailto:sage [2009/09/03(木) 22:10:41 ]
- List<笑>
- 134 名前:デフォルトの名無しさん mailto:sage [2009/09/03(木) 22:14:49 ]
- イレイジャなのでnew T[]は出来る予定はまずない
- 135 名前:デフォルトの名無しさん mailto:sage [2009/09/03(木) 22:24:06 ]
- >>132
某クラウドのWEBサービスのプロキシで配列渡すんだけど、一回に渡せる 個数が制限されていて何回も分割して処理しなきゃならないんだ。 んで、指定した個数の部分配列をイテレータみたいにgetNext()できるクラス を書いたんだけど、総称型つかえねーよとコンパイラに怒られた。 仕方なくList<T>返すようにしてtoArray(new String[0])して渡したんだけど、 これはちょっとなぁぁと思った。
- 136 名前:デフォルトの名無しさん mailto:sage [2009/09/03(木) 22:33:16 ]
- >>135
「これはちょっとなぁぁ」と思っても仕方がない Javaの場合、後方互換性を保つため、実行時には型情報はなくなる なので、明示的な型を指定しない限り配列は作ることが不可能 おかげで1.4の頃のライブラリが使えるんだから諦めてくれ
- 137 名前:デフォルトの名無しさん mailto:sage [2009/09/03(木) 23:57:08 ]
- >>135
リフレクションじゃいかんの?
- 138 名前:137 mailto:sage [2009/09/04(金) 00:15:02 ]
- 一応補足しとくか。
T[] array = (T[]) java.lang.reflect.Array.newInstance(elem.getClass(), 100); >>135の要件だと、 配列に詰める(適当な)要素のオブジェクトからgetClassしないとダメ。 ただしT[]作る時の要素はTのサブクラスだとダメ。 TのサブクラスでT[]作っても、T入れる時点でArrayStoreExceptionが出る。 明示的にクライアントAPIからClass<T>貰うのが 配列型の共変が無くて一番無難。
- 139 名前:デフォルトの名無しさん mailto:sage [2009/09/04(金) 00:23:08 ]
- >>127
こっちも見とけ。 JDK 6 ドキュメント java.sun.com/javase/ja/6/docs/ja/index.html 公式のドキュメントは全部ここからたどれる。
- 140 名前:131 mailto:sage [2009/09/04(金) 01:07:11 ]
- やはり予定には無いですか。ありがとうございました。
おまけに 138 さんにインスパイアされて・・・Array・・・Arraysってあったよな。 public class Main { public static void main(String[] args) { String[] arr = new String[] {"0","1","2","3","4","5","6","7","8","9","10"}; GenArray<String> gen = new GenArray<String>(arr); String[] strs; while ((strs = gen.retArray(3)).length>0) { System.out.println("---"); for (String str : strs) { System.out.println(str); } } } static class GenArray<T> { T[] array; int pos = 0; public GenArray(T[] arr) { array = arr; } public T[] retArray(int count) { int size = Math.min(array.length-pos, count); T[] ret = java.util.Arrays.copyOfRange(array, pos, pos+size); pos += size; return ret; } } } あれれ・・・通った _orz
- 141 名前:デフォルトの名無しさん mailto:sage [2009/09/04(金) 01:20:07 ]
- Arraysの中を覗いたら、まさに 138 さん方式でした。
T[] copy = ((Object)newType == (Object)Object[].class) ? (T[]) new Object[newLength] : (T[]) Array.newInstance(newType.getComponentType(), newLength);
- 142 名前:デフォルトの名無しさん mailto:sage [2009/09/04(金) 02:29:24 ]
- >>116
ありがとうございます。 64個配列作って、 一部分だけ、指定したい。 1, String image_gif[ ] = new String[64]; 2, image_gif[ ] = {"panda.gif","midori.gif","hi.gif","nobasu.gif","ha.gif","",}; 2行目の書き方がとても楽。 →けど、これではエラーになる。 →2つ配列を作って、くっつけよう。 そこで質問しました。
- 143 名前:デフォルトの名無しさん mailto:sage [2009/09/04(金) 12:03:16 ]
- >>111
クラス名を HOGE010010 とか記号でつけて管理台帳で管理するような現場だと *.java と *.class の数がそろわず管理できないから というわけのわからん理由で内部クラスが禁止になったりする
- 144 名前:デフォルトの名無しさん mailto:sage [2009/09/04(金) 12:05:59 ]
- ワラタw
そうなると、匿名クラスも禁止?
- 145 名前:デフォルトの名無しさん mailto:sage [2009/09/04(金) 12:25:45 ]
- >>143
イミフw
- 146 名前:デフォルトの名無しさん mailto:sage [2009/09/04(金) 12:37:25 ]
- >>143
そんなアホな現場があるなんて信じられないし信じたくない そう思っていた時期が俺にもありました
- 147 名前:デフォルトの名無しさん mailto:sage [2009/09/04(金) 13:00:08 ]
- まさに今の現場だw
内部クラスサブクラス禁止で1クラス3000行とか普通にあるww
- 148 名前:デフォルトの名無しさん mailto:sage [2009/09/04(金) 13:05:52 ]
- 管理台帳に修正内容は1行1行書かないと行けないんですね、わかります
- 149 名前:デフォルトの名無しさん mailto:sage [2009/09/04(金) 15:58:37 ]
- >>147
アマチュアの製作現場ですね よく分かります
- 150 名前:デフォルトの名無しさん mailto:sage [2009/09/04(金) 18:20:00 ]
- アホか、銀行とかむしろ基幹系の方がそういうルール残っているんだよ
- 151 名前:デフォルトの名無しさん mailto:sage [2009/09/04(金) 18:45:04 ]
- クラス設計がウンコなんだろ
- 152 名前:デフォルトの名無しさん mailto:sage [2009/09/04(金) 18:53:21 ]
- COBOLを前提としたルールとかある。
経験の無いツールに移行する時は、どの前提が間違っているか分からないまま詳細設計とかに進むこともまま。
- 153 名前:デフォルトの名無しさん mailto:sage [2009/09/04(金) 19:04:31 ]
- >>152
<アマチュアの製作現場ですね
- 154 名前:デフォルトの名無しさん mailto:sage [2009/09/04(金) 19:07:28 ]
- >>153
そういうところほど、いいお金をもらってる…
- 155 名前:デフォルトの名無しさん mailto:sage [2009/09/04(金) 20:45:40 ]
- 質問です!
常駐してるjavaプログラムAに対して 新しくコマンドプロンプトを開き、そこからデータを送信することおは可能でしょうか? パイプとか、いろいろ調べてみたんですがなかなかー・・・
- 156 名前:デフォルトの名無しさん mailto:sage [2009/09/04(金) 20:51:34 ]
- つ socket
- 157 名前:デフォルトの名無しさん mailto:sage [2009/09/04(金) 20:59:31 ]
- C→Java
Java→Java みたいに言語間で通信できるのはわかったんですが DOS窓から直に送るって方法がわからんのです(´・ω・`)
- 158 名前:デフォルトの名無しさん mailto:sage [2009/09/04(金) 21:02:58 ]
- DOS窓からCなりJavaのプログラムを起動すればいいだろ、お前は何を言っているんだ?
- 159 名前:デフォルトの名無しさん mailto:sage [2009/09/04(金) 21:03:34 ]
- >>156
データグラムだとたまに取りこぼしがあるとか言う話ですがどういうときに発生するんですか?
- 160 名前:デフォルトの名無しさん mailto:sage [2009/09/04(金) 21:09:30 ]
- >>159
伝送路が混んでるときとか
- 161 名前:デフォルトの名無しさん mailto:sage [2009/09/04(金) 21:13:07 ]
- >>158
大量のデータを裁かなくてはいけないので その都度プロセスを起動するのは心もとなくて 同時に300くらいは軽く裁きたいのです
- 162 名前:デフォルトの名無しさん mailto:sage [2009/09/04(金) 21:35:55 ]
- 同時に300くらい軽く捌くjavaなりCのプログラムを1回起動すればいいだろ
お前は何を言っているんだ?
- 163 名前:デフォルトの名無しさん mailto:sage [2009/09/04(金) 21:44:05 ]
- DOS窓に垂れ流されてるコマンドを
1行ずつ常駐してるJavaに送信したいんですが たった一回の起動で可能なのです? 調べてみたんですが、今ひとつわからないのでヒントを(´・ω・)
- 164 名前:デフォルトの名無しさん mailto:sage [2009/09/04(金) 22:00:51 ]
- >>163は仕様書をかけないタイプ
- 165 名前:デフォルトの名無しさん mailto:sage [2009/09/04(金) 22:09:38 ]
- >>160
配信するときTTLの寿命で死んじゃうからパケットは消滅するんですか? そうするとメッセージが渡ったかどうかチェックする必要があるのでTCPしかないですよね。
- 166 名前:デフォルトの名無しさん mailto:sage [2009/09/04(金) 22:19:12 ]
- 「DOS窓に垂れ流されてるコマンド」
まず、これが何のことだか
- 167 名前:デフォルトの名無しさん mailto:sage [2009/09/04(金) 22:25:09 ]
- >>165
TCPが持つ他の機能は不要で、メッセージが必ず渡ることだけを保証するのなら、 データグラムの上にそういうプロトコル階層を作るか持ってきて乗っけるという手もある。 この話題はJavaとは無関係なのでネットワーク関係のスレへいけ。
- 168 名前:デフォルトの名無しさん mailto:sage [2009/09/04(金) 22:27:12 ]
- >>165
消滅というか、送信先にたどり着かないこともあろう 送信した方もちゃんと届いたかどうかわからない そういうのが要らない場面で使うのが前提
- 169 名前:デフォルトの名無しさん mailto:sage [2009/09/04(金) 23:32:55 ]
- IPデータグラムにポート番号とチェックサムついただけなのがUDP
- 170 名前:デフォルトの名無しさん mailto:sage [2009/09/04(金) 23:37:02 ]
- jreがダウンロードできない。
サンのサイト死んでない?
- 171 名前:デフォルトの名無しさん mailto:sage [2009/09/04(金) 23:37:56 ]
- ごめん繋がった。なんだこりゃ
- 172 名前:デフォルトの名無しさん mailto:sage [2009/09/05(土) 00:07:24 ]
- UDPだとデータ損失しちゃうだろ
- 173 名前:デフォルトの名無しさん mailto:sage [2009/09/05(土) 00:19:49 ]
- それじゃメッセージ用途でsocketを使うというのはTCPを使うってことじゃないですか!
SOCKETやRCPをも含め結局メッセージはOSが必要でJAVAだけじゃ無理ってことでいいですか?
- 174 名前:デフォルトの名無しさん mailto:sage [2009/09/05(土) 00:20:58 ]
- はぁ〜?
- 175 名前:デフォルトの名無しさん mailto:sage [2009/09/05(土) 01:33:37 ]
- JavaでOSがなくなる!?
pc12.2ch.net/test/read.cgi/tech/1193757528/
- 176 名前:デフォルトの名無しさん mailto:sage [2009/09/05(土) 01:51:40 ]
- >>174がみやむーの声で再生されたorz
ちょっとアスカに馬鹿にされてくる・・・。
- 177 名前:デフォルトの名無しさん mailto:sage [2009/09/05(土) 01:52:10 ]
- >>173
意味不明過ぎる。 Javaが動くにはOSが必要だし、Javaのネットワーク機能はOSの機能を呼び出してるだけ。 あと、UDPで信頼性が欲しけりゃUDPの上に俺々プロトコルを構築すればいい。
- 178 名前:デフォルトの名無しさん mailto:sage [2009/09/05(土) 02:18:25 ]
- TCPで信用ならないならSHA1のハッシュを配布するもよし
- 179 名前:デフォルトの名無しさん mailto:sage [2009/09/05(土) 02:36:04 ]
- >>178
TCPで信用ならないってどういうときですか? SHA-1とかパケットがちゃんと届いたかどうかの信用性に関係ないでしょ。
- 180 名前:デフォルトの名無しさん mailto:sage [2009/09/05(土) 02:38:24 ]
- >>177
他アプリへのメッセージはJAVAでは原則サポートしてないでしょ。 RPCとかOS関係ないし、さっきはメッセージならsocket使えっていったよね?
- 181 名前:デフォルトの名無しさん mailto:sage [2009/09/05(土) 02:39:46 ]
- 既に最初の質問者と違ってる件
構って君なのでしばらく付き合ってやってください
- 182 名前:デフォルトの名無しさん mailto:sage [2009/09/05(土) 02:59:49 ]
- 自己紹介乙
- 183 名前:デフォルトの名無しさん mailto:sage [2009/09/05(土) 04:16:37 ]
- >>180
その「他アプリへのメッセージ」って具体的に何よ。 Javaが標準でサポートしてる、ソケットやRMIやCORBAは「他アプリへのメッセージ」に入らないのか?
- 184 名前:デフォルトの名無しさん mailto:sage [2009/09/05(土) 04:16:59 ]
- 乙
- 185 名前:デフォルトの名無しさん mailto:age [2009/09/05(土) 04:19:20 ]
- >>183
はいりません
- 186 名前:デフォルトの名無しさん mailto:sage [2009/09/05(土) 06:34:23 ]
- >>183
XML-RPCも入れてあげて下さい
- 187 名前:デフォルトの名無しさん mailto:sage [2009/09/05(土) 07:05:13 ]
- >>180
Windowsメッセージと誤解しているとエスパー。
- 188 名前:デフォルトの名無しさん [2009/09/05(土) 09:20:35 ]
- Aクラスにメソッドを追加したクラス名はどのような名前にしたらいいですか?
- 189 名前:575 mailto:sage [2009/09/05(土) 09:58:17 ]
- >>188
Å
- 190 名前:デフォルトの名無しさん mailto:sage [2009/09/05(土) 10:02:20 ]
-
クラス名がAじゃなくても何でもよくて名前の前や後ろに文字を付け加える方法でお願いします。
- 191 名前:デフォルトの名無しさん mailto:sage [2009/09/05(土) 10:10:36 ]
- >>188
Readerにバッファリングを付けたから BufferedReader とか、追加機能にちなんだ 名前をつける以外には正解は無い。 正直な話、「メソッドを追加した」という情報だけの質問が、まじめな答えが戻って くるような質問だと思っているのか?と小一時間略
- 192 名前:デフォルトの名無しさん mailto:sage [2009/09/05(土) 10:12:28 ]
- じゃあ、Aクラスは数学的な機能しかないものに、機能追加でコピーペーストや文字の検索なんかの
機能をつける場合は何をつけますか?
- 193 名前:デフォルトの名無しさん mailto:sage [2009/09/05(土) 10:22:34 ]
- >>192
馬鹿に付ける薬
- 194 名前:デフォルトの名無しさん mailto:sage [2009/09/05(土) 10:39:30 ]
- >Aクラスは数学的な機能しかないものに、機能追加でコピーペーストや文字の検索
今思いついただけのいい加減なクラスだろうから、「000」「001」でOK ユーティリティ以外でそんなクラスをつくるなら、関数に戻した方がいい
- 195 名前:デフォルトの名無しさん mailto:sage [2009/09/05(土) 10:52:57 ]
- SomethingExtendedA
- 196 名前:デフォルトの名無しさん [2009/09/05(土) 10:54:46 ]
- AImplX
- 197 名前:デフォルトの名無しさん mailto:sage [2009/09/05(土) 11:01:14 ]
- なにかのメソッドを追加したA
- 198 名前:デフォルトの名無しさん mailto:sage [2009/09/05(土) 11:05:16 ]
- 何か便利な機能を詰め込んだクラスの名前を教えてください。
例えば配列を繋げたりするようなものなどが沢山入ってます。 >>195 有難うございます。
- 199 名前:デフォルトの名無しさん mailto:sage [2009/09/05(土) 11:06:58 ]
- 配列を繋げたりするようなものなどが沢山入っているA
- 200 名前:デフォルトの名無しさん mailto:sage [2009/09/05(土) 11:08:48 ]
- 便利な機能を詰め込んだA
- 201 名前:デフォルトの名無しさん mailto:sage [2009/09/05(土) 11:08:55 ]
- 日本語は使いたくないので英語でお願いします。
- 202 名前:デフォルトの名無しさん mailto:sage [2009/09/05(土) 11:10:12 ]
- AWithUsefulUnkoMethods
- 203 名前:デフォルトの名無しさん mailto:sage [2009/09/05(土) 11:12:31 ]
- AfeaturingEXILE
AWithSupportingSomeOperations
- 204 名前:デフォルトの名無しさん [2009/09/05(土) 11:13:57 ]
- >>198
ManyBigBenClass
- 205 名前:デフォルトの名無しさん mailto:sage [2009/09/05(土) 11:14:14 ]
- ありがとうございます!
- 206 名前:デフォルトの名無しさん mailto:sage [2009/09/05(土) 11:14:56 ]
- >>204
Manyなのかは審議が必要
- 207 名前:デフォルトの名無しさん mailto:sage [2009/09/05(土) 12:03:54 ]
- >>187
DOS窓とやり取りするって話じゃなかったっけ?
- 208 名前:デフォルトの名無しさん mailto:sage [2009/09/05(土) 13:42:56 ]
- >>192
リスコフの置換原則に反するからそういう設計はしない。
- 209 名前:デフォルトの名無しさん mailto:sage [2009/09/05(土) 13:47:39 ]
- >>208
反してませんよ? クラスをコピペして別のクラスをつくってやってますから。 なぜかというと、再帰を使っているので、
- 210 名前:デフォルトの名無しさん mailto:sage [2009/09/05(土) 14:12:40 ]
- >>209
DRYの、
- 211 名前:デフォルトの名無しさん mailto:sage [2009/09/05(土) 17:03:58 ]
- ようやくEffective Java 第2版を昨日手に入れたぜ
他にいい感じのjava本ないか
- 212 名前:デフォルトの名無しさん mailto:sage [2009/09/05(土) 18:45:59 ]
- >>208
君は何もわかってないバカなんだから これ以上しゃべらない方がいいよ >>211 軽快なJava
- 213 名前:デフォルトの名無しさん mailto:sage [2009/09/05(土) 19:05:57 ]
- だが俺は鈍重
- 214 名前:212 mailto:sage [2009/09/05(土) 19:07:36 ]
- >>208
じゃなくて >>209 な。
- 215 名前:デフォルトの名無しさん mailto:sage [2009/09/05(土) 20:09:01 ]
- >>211
Java魂 だけどEffectiveの前に読むレベルの本
- 216 名前:デフォルトの名無しさん mailto:sage [2009/09/05(土) 20:20:37 ]
- >>211
APIドキュメント読んだほうがましなぐらいの本 Javaチュートリアルのほうが無料で内容濃くてどこでも読める
|

|