[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 2chのread.cgiへ]
Update time : 08/21 17:37 / Filesize : 238 KB / Number-of Response : 992
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

★★Java質問・相談スレッド134★★



1 名前:テンプレ(1/3) mailto:sage [2009/11/21(土) 17:58:46 ]
プログラミング言語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質問・相談スレッド133★★
pc12.2ch.net/test/read.cgi/tech/1253376151/
次スレは>>950あたりで。

過去ログ、関連スレッド、よくある質問とその回答など、
質問をする前に、貴方が見なければならないサイトについての情報は、
下のwikiのページにまとめてあります。
ttp://www.wikiroom.com/java/


654 名前:デフォルトの名無しさん mailto:sage [2009/12/19(土) 16:59:48 ]
NetBeansって名前がダメだよね
豆だもん、豆。

655 名前:デフォルトの名無しさん mailto:sage [2009/12/19(土) 17:04:53 ]
JavaBeansさんをdisってんの?

disられてもしょうがないと思うけど

656 名前:デフォルトの名無しさん mailto:sage [2009/12/19(土) 17:05:24 ]
>>654
Javaェ...

657 名前:デフォルトの名無しさん mailto:sage [2009/12/19(土) 17:08:39 ]
......

658 名前:デフォルトの名無しさん mailto:sage [2009/12/19(土) 20:38:23 ]
日曜プログラマーはふつうにC#やれよ。
なんでこのスレに来るんだ?

659 名前:デフォルトの名無しさん mailto:sage [2009/12/19(土) 21:21:55 ]
クラスローダを明示的に呼び出している操作の事を、リフレクションと読んでいるのですか?
リフレクションする時は、*.getClass();ってやっているじゃないですか

660 名前:デフォルトの名無しさん mailto:sage [2009/12/19(土) 21:46:45 ]
>>659
違います。getClasはクラスローダの呼び出しでもありません。


661 名前:デフォルトの名無しさん mailto:sage [2009/12/19(土) 22:47:40 ]
>>660
わかりました
ありがとうございます

662 名前:デフォルトの名無しさん mailto:sage [2009/12/19(土) 23:03:16 ]
SwingUtilities#paintComponent(Graphics g, Component c, Container p, int x, int y, int w, int h)
p - 中間 Container

javadocを見てもパラメータpの意味がわかりません
どなたか教えてください



663 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 05:24:26 ]
>>662
教える人を呼んできますね。

664 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 10:03:33 ]
pっていうのは、最終的なcの描画対象コンポーネントだと思っていいみたい。
pがCellRendererPaneならばそれがそのまま使われるし、そうじゃなかったら、CellRendererPaneを新たに作成して、それにpを乗せる感じ。

665 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 11:00:43 ]
>>664
thx

666 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 11:47:08 ]
JNIを多用し、システムに負荷をかけると性能があまり出なくなりました。
先輩にJNIでC言語のプログラムをよんだとき、C言語のプログラムが確保したメモリって
Full GCでしか開放されないからだといわれたのですが、Full GCはあまりはしっていません。
JNIを使用すると、Full GCを意図的に誘発するようにしなければならないのでしょうか?

667 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 11:53:58 ]
いや、単にJNIが遅いだけ
最近はJITコンパイルの性能も高いから、Javaだけで書ける処理ならJavaだけで書いた方が大抵の場合速い
JNIは、どうしてもCでしか出来ない場合 (OSのAPI呼び出し等) や、
JNIのオーバーヘッドを無視できるような場合 (1回の呼び出しで大量のデータを処理する等) でないと、無意味
あと、Cで確保したメモリはGCは面倒見てくれないから自分で解放しなければならない

668 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 12:24:54 ]
>>664
呼んでからどれだけ待たせるんだw

669 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 12:49:08 ]
「15歳からはじめるJavaオンラインゲームプログラミング教室」という本を書店で見つけて、
ステップアップのための本として読みやすそうだと思いましたが、その本について調べてみると
子ども向けということで一歩踏み込んだ説明が省かれてしまっているとのことでした。

ゲームプログラミングのようなとっつき易い内容で、もう少し詳しい説明が書かれた良書は
何かないでしょうか?ご存知の方、どうぞご教示ください。

670 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 12:53:58 ]
>>667
出番だよ
さっさと回答してやれ

671 名前:667 mailto:sage [2009/12/20(日) 12:57:53 ]
本の善し悪しはわからん
誰か回答してやってくれ

672 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 13:00:23 ]
本読まないで始めた奴の方が多いだろうしな



673 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 13:26:51 ]
スレチしてしまったのでここで改めて質問します。

Canvas3Dをフレームの領域指定して貼り付けたいのですがどうすればいいでしょうか?
例えばフレームサイズが(500,400)として,Rect(10, 10, 390, 390)くらいの領域だけで3D描画を行わせたり等がしたいです。

674 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 13:33:42 ]
オフスクリーンに描画して切り取ったのをコピーすればいいんじゃね?

675 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 13:39:29 ]
>669
細かい説明なんて2冊目で読めばいいから、
1冊目は立ち読みしてみてわかりやすい本でいいと思う

まさか1冊で終わるわけないし。

676 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 13:44:56 ]
Java3Dやらんから的外れかもしれないけど、普通にコンポーネント化して
フレームに貼り付けるんじゃね?

677 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 14:03:03 ]
Javaの入門書について質問です。

多言語で実務経験があるものがJavaを学習するのにオススメの入門書ってありますか?

今のところ独習Javaの購入を検討しています。

実務経験はC:4年、VB5.0:1.5年、VB2005:1年、VC6.0:0.5年といったところです。


678 名前:673 mailto:sage [2009/12/20(日) 14:07:10 ]
>>674
>>676
ありがとうございます。これから本・ネットで調べてその方法で出来るか試してみます。
ただ出来れば具体的な解決策を例示してくれるとありがたいです。

679 名前:669 mailto:sage [2009/12/20(日) 14:19:34 ]
>>672
本を読まずに覚えた人は代わりにどうやって勉強したんでしょうか・・・?

>>675
1冊目はもうすぐ読み終わりそうです。
実用的なスキルが身についていないので、ゲーム等を実際に作って覚えるための
2冊目の本を探してます。

680 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 14:23:05 ]
>>678
おいおい、ヒントだけじゃ出来ませんってか?
例えば www7.plala.or.jp/keny01/java3d/java3d_pg_introduction.html とか。
これにしたって、AppletはPanelなんだからFrameとかに貼り付けられる立派なコンポーネントだぜ。

681 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 14:32:08 ]
>>679
>本を読まずに覚えた人
JDKを読む。
sunのチュートリアルを読む。
samplesを読む。
src.zipを読む。
Jakartaなどオープンソースのコードを読む。

682 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 14:55:57 ]
>JDKを読む。

| % od -h java_xx_sdk-x_xx-jdk-xuxx-xxxl.bin
|
| フムフム、なるほど・・・・

   ̄ ̄ ̄|/ ̄ ̄ ̄ ̄
          /つ_∧!
    ∧_∧ 〈(゚д゚ )
   ( ・∀・) ヽ ⊂ニ)
   (つ/ ̄ ̄ ̄/  |
   ̄\/___/ ̄ ̄ ̄




683 名前:デフォルトの名無しさん [2009/12/20(日) 15:37:11 ]
Javaはサンプルソースがてんこ盛りだから本なんかいらない

684 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 15:50:49 ]
Java 本 に一致する日本語のページ 約 2,610,000 件中 1 - 10 件目 (0.20 秒)
C++ 本 に一致する日本語のページ 約 1,490,000 件中 1 - 10 件目 (0.26 秒)
JavaScript 本 に一致する日本語のページ 約 12,600,000 件中 1 - 10 件目 (0.09 秒)
PHP 本 に一致する日本語のページ 約 15,200,000 件中 1 - 10 件目 (0.37 秒)
C 本 に一致する日本語のページ 約 35,100,000 件中 1 - 10 件目 (0.15 秒)

685 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 15:57:58 ]
サンプルは基本がわかった上で参考にするものだろ

686 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 16:05:44 ]
>>684
本だけとか、Cだけとか、JavaよりC!、みたいな検索結果も混じってるんでない?

687 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 16:11:47 ]
>>683
てことは、このスレもいらないわけだね。

688 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 16:18:13 ]
>>685
sunのサイトにあるSwingのチュートリアル読んで来い。
それにしかかいてない大事なことがいくつかある。

689 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 16:20:20 ]
チュートリアル ≠ サンプル

690 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 16:31:12 ]
>>688
これ?
java.sun.com/docs/books/tutorial/uiswing/index.html

691 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 16:33:26 ]
まあ、プログラミングの基本がある程度しっかりできてれば、
ソースだけみてもかなりのことがわかるだろう。
プログラミングの基本を知らない人間は、本かなんかで勉強しないと、
いきなりソースコードだけみてもわからんかもしれない。

692 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 16:41:35 ]
Cヒープとは何をする領域なのでしょうか?
こちらは開発上、意識する領域なのですか?



693 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 16:46:20 ]
誤爆やスレ違いでなかったら、javaのヒープと同じものと言えば分かるかな?
newは無いからmallocなどで確保する。

694 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 17:05:56 ]
ん?

695 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 17:34:35 ]
Class.forNameでロードしたクラスはシステムクラスローダにロードされるのでしょうか?
それともVM次第なのでしょうか?

696 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 17:36:43 ]
javadocに書いてあるけど

> Class.forName("Foo")
> これは、次と同じです
> Class.forName("Foo", true, this.getClass().getClassLoader())

697 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 17:37:43 ]
>>695
java.sun.com/javase/ja/6/docs/ja/api/java/lang/Class.html#forName(java.lang.String)
> 指定された文字列名を持つクラスまたはインタフェースに関連付けられた、
> Class オブジェクトを返します。このメソッドを呼び出すことは、次の記述に相当します。
>
>   Class.forName(className, true, currentLoader)
>
> ここで、currentLoader は、現在のクラスを定義するクラスローダを示します。

698 名前:669 mailto:sage [2009/12/20(日) 17:50:03 ]
>>681
なるほど、他人のソースを読むということですね。

でも私はまだそのレベルに達してないと思いますし、
移動中に読みたいので、やはり本がいいと思っています。
どうぞよろしくお願いします。

699 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 18:08:13 ]
オブジェクトをインスタンス化すると確保されるメモリ領域には変数以外何があるんですか?
メソッドについては参照が保持されるのですか?

700 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 18:48:43 ]
>>698
www.amazon.co.jp/gp/product/4797344512
ぶっちゃけ、Java(やC#)でゲーム作ってるひとって、C/C++でのゲーム作成経験者が大半じゃない?


701 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 19:10:24 ]
ワタシイングリッシュヨメマセーン

702 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 19:47:45 ]
>>699
まずは人に聞く前に質問できるくらいの勉強はしてこようね



703 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 20:25:29 ]
現在自作のクラスのclone()を実装しようと思って色々やっているのですが、
フィールドにjava.awt.Shape型の変数があり、これのclone()を呼び出したいのですが、
if( shape instanceof RectangularShape ){
  ((RectangularShape)shape).clone();
}else
if( shape instanceof 〜 ){
  〜
}
て感じでif-elseをつなげていくしかないんでしょうか?リフレクション辺りで色々やってみたんですが
コンパイルすら通りません。ちょっとお手上げです・・・

704 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 20:48:30 ]
HashMapや自作のBeanを簡単にディープコピーする方法はあるのでしょうか?
新たにnewして、値を入れないとダメなのですか?

705 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 20:49:32 ]
>>703
Cloneable だけテストすれば済むんじゃないの?

706 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 21:05:45 ]
shape = new GeneralPath(shape); とか

707 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 21:09:42 ]
>>703
いろいろあるけど直列化と逆直列化をしてコピーするとか?

708 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 21:17:29 ]
>>700
ゲームが作りたいのではなくて、Javaが使えるようになるために
とっつき易いゲームを選ぼうとしているだけです。

アマゾンでは
>javaの本ではなくゲームプログラミングの本なのでこの本でjavaを勉強したいという人にはオススメできません
とコメントされているようです・・・。
一度立ち読みでもしてみます。

ありがとうございました。

709 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 22:11:25 ]
Javaのシステムってスレッドを多重化することでパフォーマンスがあがるといいますが、
CPUは数個しかないと思うので、100スレッド多重としてもあまり意味がないと思います。
何多重にすればよいのかは、どういう計算で求めるとよいのですか?

710 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 22:11:31 ]
>>677
それは他言語で実務経験があるとはいわない。
VB.netに手が馴染まなかったのなら、java,c#ともやっても馴染まないだろう。
どの実務があるか知らないけど、最新PCを買ってlinux(virtualpcとかでも)のcでopenglやgtk+をやるといいと思うよ。
javaなら英語のチュートリアルだけど、もし読めないなら5年以上この業界にいるのに英語も読めないのだからもうあきらめた方がいい。

711 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 22:16:46 ]
ベンチマークして求めればいい

712 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 22:25:17 ]
>>709
何かの本にはCPUの数+1くらいと書いてあった



713 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 22:29:36 ]
javaでゲームとか言い出しても実際はjoglだしね。
c#だとdirectxでこれも使う言語に関係ないし。

714 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 22:48:00 ]
>>710は何で偉そうなの?

715 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 22:59:27 ]
>>703
JavaのCloneableは失敗作
コピーコンストラクタでおk
詳しくはEffective Javaを参照

716 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 23:04:06 ]
英語すら読めないならjavaなんぞ無理だな

717 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 23:07:57 ]
海外で暮らしてた俺ならJavaは余裕ってことか?

718 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 23:11:16 ]
アフリカ辺りですか?

719 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 23:12:40 ]
いや。韓国ですOrz

720 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 23:36:39 ]
・・・

721 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 23:59:27 ]
英語できるような賢い子がなんで底辺プログラマなんてやってんの?

722 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 00:02:59 ]
でも辞書引きながらでも英語よまないと情報全然足りないじゃん



723 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 00:04:10 ]
アメリカ行けば英語できるのに底辺の仕事やってる奴が掃いて捨てるほどいるぞ。

724 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 00:05:09 ]
今時、英語も読めないんなら底辺プログラマーすらやってられないのよ。

725 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 00:06:12 ]
その前に日本語勉強して下さい^^;

726 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 00:07:10 ]
>>718
イギリスです

727 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 00:14:26 ]
>>724
で、英語も出来て月給はいくらもらえるんですか?

728 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 00:25:53 ]
>>699
メソッドはクラスがロードされる時だろうね。


729 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 00:46:37 ]
>>708
ゲームって(もちろんものによるけど)結構特殊なので、Javaを学ぶ目的には
あまり適してないと思うんだけどね。

例えばゲームループって呼ばれる手法、WindowsSDKを生で使う場合には
普通にGUIのアプリを作るにも似たようなことするんだけど、
Javaで同じことする場合にはライブラリが隠蔽してくれてるので気にする必要なかったりとか。

で、入門書にはそういうゲームに特化したテクニックはあまり書いてないだろうし、
普通のJavaの使い方はそれとは別に覚える必要があると思うし。

730 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 00:54:40 ]
>>704
CommonsのLangにそういうのあるみたいね。使った事ないけど。
commons.apache.org/lang/api-release/org/apache/commons/lang/SerializationUtils.html#clone(java.io.Serializable)

731 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 00:56:49 ]
ゲームってのは、言語+英語+数学がある程度できないと無理。
javaとかc#とかライブラリ的なところはあまり重要でない。

732 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 00:58:29 ]
何故英語?



733 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 01:02:53 ]
英語英語言う奴とコミュ力コミュ力という奴の中身はだいたい同じ

734 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 01:02:56 ]
ゲームのテクはほとんど英語で書いてある。
実際は、業務アプリの数十倍の努力が必要。

735 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 01:10:22 ]
まあ、英語に比べれば Java なんて 1000倍易しいな。
で、Java に馴れるには、まずは List や Map をごちゃごちゃとこねくり回すような題材がいいな。


736 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 01:14:14 ]
で、数十倍の努力してお幾ら稼いでるんですかね。

737 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 01:15:09 ]
海外のサイトから情報が汲み取れないバカのためにここがある

738 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 01:15:15 ]
Javaはチュートリアル(英語)で挫折するかどうかだろ。
それで挫折するようなら見込みないし素直にC#(かVB)にしろ。

739 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 01:18:08 ]
英語英語言ってる奴が日本語読めない事はわかった

740 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 01:19:18 ]
オブジェクト指向の本はJAVAの方が揃っているから
JAVAのほうがいいと思う

741 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 01:20:58 ]
低学歴+底辺無能+日本人は、C#(マイクロソフト)を使ってIT土方として一生汗を流してればよろし。

742 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 01:22:36 ]
僻みっぽいスレだな



743 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 01:30:13 ]
>>741
在日乙

744 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 01:37:11 ]
>>741みたいな奴って、どの板にもいるね
ゴキブリみたいにいっぱい繁殖してるの?

745 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 02:08:16 ]
>>705
すみません。よくわかりません。
Object型にキャストしたところでObject#cloneはprotectedだし、なんらかのcloneを呼べる型にしないとダメなのでは
>>707
それも同等の問題でできあませんね
>>706
Shapeならそれで済みますね。new Area(Shape型)で
>>715
失敗作ですか・・・今回のディープコピーでの手こずりでJavaをちょっと嫌いになりました。好きだったのに・・・

皆さんありがとうございました。
結局今回は、インスタンスの型がある程度絞られていたのでめんどかったけど、>>703の方法で実装しました。


746 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 02:11:09 ]
>>744
ゴキブリにはコンバットがよく効く
コンバット置いてから俺の部屋でゴキブリを見たことがない

747 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 02:58:46 ]
>>715見てEffectiveJava読み直したんだけど、コンパイル時に型が決まってないと駄目だとか
protectedだからリフレクションで云々とか、正に>>703が直面してる問題がそのものだね。

ちなみにリフレクション使うんだったらやりたいことはこうかな?

Method method = Object.class.getDeclaredMethod("clone", new Class[] {});
method.setAccessible(true);
Shape cloned = (Shape) method.invoke(shape, new Object[]{});

748 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 03:45:21 ]
PHPでは
$className = "Foo";
$obj = new $className();

とするとFooインスタンスを作成することができるのですが
Javaで同じようなことをしたい場合どうしたらいいのでしょう?

String className = "Foo";
Foo obj = new className(); //これでは当然無理です

749 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 04:26:42 ]
String className = "Foo";
でString型の"Foo"という文字列を持ったインスタンスが生成される

んだけどPHP知らないからすごい別次元臭がする

750 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 05:38:41 ]
>>748
Class.forName("Foo").newInstance();

751 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 06:14:37 ]
www.klab.ai.kyutech.ac.jp/~yatti/sunspot/index.php?%E5%8A%A0%E9%80%9F%E5%BA%A6%E3%82%BB%E3%83%B3%E3%82%B5%E3%82%92%E4%BD%BF%E3%81%86
こっちのSunSpotの加速度センサのプログラムを少し変えたのですが、うまく動きません。
Stateクラス、
public class State {
int state = 5;

public void setState(int state){
this.state = state;
}

public void callState(){
//このstateが1と0になり続ける状態を作りたい…
System.out.println("come :"+state);
}
}

を作って、LEDが点灯している、していない状態を管理したいのです。

↑のWikiのLEDFlash.javaの
public void thresholdExceeded(IAccelerometer3D accel, int axis, double val, boolean relative) {
//閾値より高い値ならばLEDを青色に点滅させる
以降のif文の前者がLEDを点灯させる、else以降がLEDを消灯させるプログラムです。
これは閾値を超えた時だけ呼び出されます。

このifの点灯させる所にst.setState(1);消灯させる所にst.setState(0);を書いても、超えてる時はちゃんと1と0になってるんですが、
放置したら(閾値を超えてない状態)デフォルトの数値のままになってしまいます。(つまり5)
確認はAccelerometerTest.javaクラスの加速度の測定をしているスレッドでst.callState();をして確認をしています。
AccelerometerTest.java、LEDFlash.java、どちらのクラスでもState st = new State();
と書いてるのがマズいんでしょうか…だとしたらどうしたら良いんでしょうか?

752 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 07:04:47 ]
2000年頃から英語やれって云う人はいた。
ttp://piza.2ch.net/test/read.cgi/tech/971960169/132

今は入門書もあり出版や校正する人以外はどうでもいいかな。 >>751 のような制御は知らん。



753 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 07:24:46 ]
>>750
すげー

754 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 09:13:30 ]
基本の演算処理ですけど
int a =5; int b =12が宣言されているのですが
(a<=b),(a<b)&(a>b),(b%a),(a!=b),(++a)*bの実行結果を求めたいのです。






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<238KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef