【初心者】Java質問・相談スレッド124【歓迎】 at TECH
[2ch|▼Menu]
1:デフォルトの名無しさん
09/02/22 22:50:53
プログラミング言語Javaに関する質問スレです。
JavaScript, Ajaxの質問は、ここでは受け付けていません。
Web製作管理    URLリンク(pc11.2ch.net)
Webプログラミング URLリンク(pc11.2ch.net)
をご利用下さい。

よくある質問
・「コマンドまたはファイル名が違います」
 「'javac' は、内部コマンドまたは外部コマンド、
 操作可能なプログラムまたはバッチ ファイルとして認識されていません。」
 「Exception in thread "main" java.lang.NoClassDefFoundError: 」
 URLリンク(www.wikiroom.com)
・String に == は使うな。equals() を使え。
・「\12288 は不正な文字です。」
文字リテラル以外で全角スペースは使えません。半角スペースに。
・その他の質問→「APIのjavadoc見ろ」

前スレッド
【初心者】Java質問・相談スレッド123【歓迎】
スレリンク(tech板)

次スレは>>990あたりで。

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

2:デフォルトの名無しさん
09/02/22 22:54:16
**** 関連スレッド案内 ****
■ AWT と Swing は --
Java低速GUI Swing 8
スレリンク(tech板)l50
■ SWT は --
Java 高速GUI SWT 3
スレリンク(tech板)l50

■ NTT DoCoMo の iモード携帯電話用 Java (iアプリ) は --
iモード携帯電話用Java(iアプリ) Part19
スレリンク(tech板)l50
■ DoCoMo 以外は --
CLDC+MIDP+携帯電話用Javaスレッド part 8
スレリンク(tech板)l50

■ 課題・宿題は --
★★ Java の宿題ここで答えます Part 67 ★★
スレリンク(tech板)l50

**** 開発環境が必要の場合は ****
■ J2SE 1.4.0
URLリンク(sdc.sun.co.jp)
■ J2SE 5.0 (1.5.0)
URLリンク(java.sun.com)
■ Java SE 6
URLリンク(java.sun.com)

**** 実行環境だけが必要の場合は ****
■ Java ソフトウェアのダウンロード
URLリンク(www.java.com)

3:デフォルトの名無しさん
09/02/22 22:59:00
けけけっ勝手に立ててやったぜ

4:デフォルトの名無しさん
09/02/22 22:59:27

これはひどいパクリ会社
URLリンク(www.nicovideo.jp)

5:デフォルトの名無しさん
09/02/22 23:08:16
Object3つを1つのbyte[]に入れたいのです。
さらに、それをJMSで別サーバに送信し、byteの配列から
Objectを3つ取得したいのです。
どうすればよいのでしょうか?


6:936
09/02/22 23:08:20
BoxRoomMainに
player.setEnemy(enemy);
を追加して
Playerには
public void setEnemy(){
}
でいいんでしょうか?
で、そこからEnemyにPlayer内の数値を渡して受け取るには何がいりますか?

7:デフォルトの名無しさん
09/02/22 23:10:16
>>6
プレイヤーにエネミー渡せば、今までどおりのエネミー.セットターゲットで値渡せるじゃん

8:デフォルトの名無しさん
09/02/22 23:21:18
BoxRoomMainに
player.setEnemy(enemy);
と記述した後
具体的にどうすればいいのか教えていただけないでしょうか・・・

9:デフォルトの名無しさん
09/02/22 23:25:46
>>8
今までプレイヤーの中でnewしてたエネミーはもうnewしない。
その代わり、セットエネミーで貰ったエネミーを、プレイヤーのクラス変数エネミーにセットする。

セットターゲットとやってることは同じだろ!

プレイヤーからエネミーに値渡すのは、もう書いてあるから、そのまま動く筈だぜ
※セットディレクトの中でやってるセットターゲットな

10:デフォルトの名無しさん
09/02/22 23:34:30
ん〜
2日寝てないせいか頭が回らない・・・
>セットエネミーで貰ったエネミーを、プレイヤーのクラス変数エネミーにセットする
ってのはどう記述するんでしょうか?
Player内で
enemy = new Enemy();
を消して
public void setEnemy(enemy){
}
と追加したけど
型 Player のメソッド setEnemy() は引数 (Enemy) に適用できません
とのエラーが・・・
メソッドとかセッターとかの用語とJavaの記述で頭の中で関連付けできてないから
いまいち理解ができなくて・・・

11:デフォルトの名無しさん
09/02/22 23:36:02
>>10
セットターゲットとやってることは同じって言ってんだろw

変数の型がイントかエネミーかの違いだよ

12:デフォルトの名無しさん
09/02/22 23:40:39
最近もこみちの名前みなくなったけど、何やってるか分かります?

13:デフォルトの名無しさん
09/02/22 23:43:00
同じといわれてもあまり理解できてないので・・・
public void setTarget(int tx){
cx = tx;
}
見たいに書いてもらえないでしょうか・・・
intかエネミーの違いといわれても
intは型だけどenemyは型じゃないし
enemyだけだと>>10に書いたようなエラーが出てしまうので・・・

14:デフォルトの名無しさん
09/02/22 23:50:25
セッターゲッターでぐぐって調べてみればいいじゃん

intもEnemyも型じゃん

15:デフォルトの名無しさん
09/02/23 00:02:27
セッターとかメソッドとかコンストラクタとかいう用語がどれがどれにあたるのかを
昔習った以来でもう覚えてなくて今はどれがどれなのか理解していなくて
そういう用語でごちゃごちゃ説明されても頭が回らない今理解できないので
そういう遠まわしなのじゃなくて
直接プログラムで教えてもらえないでしょうか

16:デフォルトの名無しさん
09/02/23 00:04:41
しかたないなセットエネミーはこうすりゃ直るんじゃねえかな

public void setEnemy(enemy){
}



public void setEnemy(Enemy enemy){
this.enemy = enemy;
}


17:デフォルトの名無しさん
09/02/23 00:08:42
>>13
あんな、よくわからんが、長さ4の配列を用意して 1-3 だけ使うようなのはやめい。
長さ3を用意して 0-2 を使いなさい。

クラスEnemy について
メンバ int cx; は初期化されていない。よってオブジェクト生成時には0が入る。
cx は paint が呼び出されたときに muki に代入されている。

muki の有効値は 1-4 。
setTarget が呼ばれる場合には 1-4 のいずれかが muki 入る呼ばれ方をしている。

しかし、setTarget が呼ばれないうちに paint が呼ばれて、再度 paint が呼ばれる場合には
pan[0] が呼ばれる。この要素値には null が入ってる。
引数に使われている drawImage の先で NullPointer例外が発生する可能性がある。

18:デフォルトの名無しさん
09/02/23 00:11:02
>>936
正解以外に興味がないなら帰れ

19:デフォルトの名無しさん
09/02/23 00:13:05
まだやってたのかよw
甘いな

20:デフォルトの名無しさん
09/02/23 00:24:39
>>16
ありがとうございますできました
(Enemy enemy)と並んでるのがなんとなくしか理解できてませんが
そうすればいけるってことですね
これであとは時間との戦い・・・
あと8時間・・・眠い・・・orz

>>17
確かにそうですね
キー入力の判定のサンプルのところで1〜4でやられてたのでそのまま使ってました
いろいろなサンプル見ながら突貫で作ってましたが
やはりそういう細かいところから考えてやらないとマズイですよね
時間があればいろいろ基礎からやり直して練って作りたいんですが
今はとりあえずしょうがないですね

>>18
テスト勉強でもテスト直前に今まで勉強してなかった教科を
公式だけから勉強していくよりも公式+答えであぁこういう風になってるんだぁって勉強するでしょ?
時間があればじっくり勉強したいんだけどね・・・
いろいろできて面白そうだし

とりあえず皆さんご迷惑おかけしてすいませんでした

21:デフォルトの名無しさん
09/02/23 00:26:06
>>20
>テスト勉強でもテスト直前に今まで勉強してなかった教科を
>公式だけから勉強していくよりも公式+答えであぁこういう風になってるんだぁって勉強するでしょ?

そんなもんに人を巻き込むな

22:デフォルトの名無しさん
09/02/23 00:30:00
>>21
思考力が身につかないのに、よく出来た気がする最悪のパターンだよな。
失敗と言うことが無いし。

23:デフォルトの名無しさん
09/02/23 00:33:03
初心者歓迎の質問スレで質問に答えずに文句と基礎から勉強しろとしか行ってないヤツが
巻き込むなとか言ってもしょうがなくねぇか?
教えてあげたらちゃんとお礼も言ってるし
状況が状況だし答え聞いて理解するのもいいんじゃねぇの?
>>20見るとまだ理解できてはいないみたいだけど

24:デフォルトの名無しさん
09/02/23 00:33:23
>(Enemy enemy)と並んでるのがなんとなくしか理解できてませんが

(int tx)

意味はこれと同じようなもんだボケ



25:デフォルトの名無しさん
09/02/23 00:36:40
>>23
じゃあがんばって教えてやってくれ。

26:936
09/02/23 00:37:19
>>21
ごめんなさい
期限が明日なもんで焦ってたんです

>>22
そうなりそうですね・・・
とりあえず明日ある程度の形にしたものを提出できたら
次回完成させて提出するまでには基礎から勉強したいです

>>24
それと同じようなものだなぁとは理解してますよ
ただそれそんな感じなんだろうなぁって思ってるだけだからなんとなくってことです

27:17
09/02/23 01:07:04
>>20
最初の段落は無視して良いから、他の段落を読んでくれ

やるかやらないかは勝手だが
そんな切羽詰まってる時点で設計に手を付けることを強いたりはしないよ

28:17
09/02/23 01:15:42
手っ取り早い解決法が書いてないから無視しただけなら、

private int cx; の行を
private int cx = muki; にでも換えて下さい。

29:936
09/02/23 01:44:03
>>17さん
いえ、ちゃんと全部読みましたし
書いてある内容もちゃんと理解してますよ
ただ製作過程では突貫でサンプルのツギハギレベルで作ってたので
そこに気づかなかった感じです
今はちゃんと0から始まるように記入しなおしました
指摘していただきありがとうございます

30:デフォルトの名無しさん
09/02/23 13:58:48
新しいクラスを作る時にクラス内にコンストラクターって作りますか?
作らなくても、new()出来ますよね?
何故コンストラクターを定義しなくてもnew()出来るのでしょうか?

31:デフォルトの名無しさん
09/02/23 14:16:58
>>30
明示的にコンストラクタ一つも定義しないと、
言語仕様により引数一つも取らないデフォルトコンストラクタが生成される。

32:デフォルトの名無しさん
09/02/23 14:29:12
>>30
まぁnewされたくなかたらprivateのコンストラクタ作ればおk

33:デフォルトの名無しさん
09/02/23 15:16:27
>>30
クラスの継承にて。
サブクラスのコンストラクタで、親クラスのコンストラクタを明示的に呼び出さない場合、
引数を一つも取らないコンストラクタが呼ばれます。
記述が簡略にでき、便利です。

親クラスで、引数を取るコンストラクタだけを作成した場合、
サブクラスでは、コンストラクタを作成する必要があります。
さらに、親クラスで定義されているコンストラクタの何れかを呼び出す必要があります。
オブジェクト生成に必須なパラメータを明示でき、不用意な生成を抑制できます。

34:デフォルトの名無しさん
09/02/23 15:37:54
>>31≫32≫33
さるでもわかる教え方で大変判りやすかったです。
ありがとうございました。

35:デフォルトの名無しさん
09/02/24 01:27:39
シンボルを解決できませんってなに?
柴田先生の明解javaでScannerクラスをインポート?しようとしてもScannerが書いてある文全部にシンボルエラーが出ますたsけて

36:デフォルトの名無しさん
09/02/24 01:44:03
jdk1.4だとか・・?
Scannerは1.5からだよ

37:デフォルトの名無しさん
09/02/24 01:48:54
>>36
な、なんだってー!1?
ちょっと調べたら確かに1.4でしたご指摘ありがとうございます。

38:デフォルトの名無しさん
09/02/24 02:06:25
可変長引数が忘れ去られてるんだろうなw
5.0の変更点として。
曖昧になるから俺は使ってないし。

39:デフォルトの名無しさん
09/02/24 03:04:30
Integer.valueOf()のような、インスタンスからではなく型から呼び出すような関数はどのようにして作るのでしょうか?
また、そういった関数に特別な名前があれば教えてください。

40:デフォルトの名無しさん
09/02/24 03:24:46
>>39
/* ソースは、適切に設定した Eclipse で F3キーを押しましょう。*/

静的メソッド (static method) と呼ばれる物です。
静的メソッドの修飾子には static が付与されています。

あとは適当にぐぐってください。

41:デフォルトの名無しさん
09/02/24 03:32:20
>>40
おお、ありがとうございます、これでぐぐれます。

42:デフォルトの名無しさん
09/02/24 16:14:17
iframeの表示領域は、あらかじめwidthとheight属性で規定しておく必要がありますが、
表示内容が想定より大きくなったり、小さくなったりすると、表示が崩れてしまいます。

javascriptを使って他のページをフレームに合わせて表示するにはどうしたらいいのでしょうか?

例えば、こんな感じにしたいのです。

URLリンク(www.w-index.com)


43:デフォルトの名無しさん
09/02/24 17:07:06
>>42
>>1
>プログラミング言語Javaに関する質問スレです。
>JavaScript, Ajaxの質問は、ここでは受け付けていません。
>Web製作管理    URLリンク(pc11.2ch.net)
>Webプログラミング URLリンク(pc11.2ch.net)
>をご利用下さい。


44:デフォルトの名無しさん
09/02/24 19:05:28
javaインストールの時の
コアファイルの解凍に失敗しましたってなんだろう・・・

45:デフォルトの名無しさん
09/02/24 20:12:44
>>44
ダウンロードしてきたファイルが壊れてた、とかじゃね?

46:デフォルトの名無しさん
09/02/24 20:14:47
ObjectOutputStreamを使ってファイル出力しているのですが、
Stringを複数含んだクラスにおいて、文字列に漢字が入っている時

NotSerializableException: javax.swing.text.GapContent$StickyPosition

が出てしまいます。
出力するクラスのすべてStringインスタンスというわけではなく、
特定のインスタンスに漢字が含まれると例外が発生するという状況です。

原因や対処策は分かりますでしょうか。


47:デフォルトの名無しさん
09/02/24 21:26:22
まんまだよ
javax.swing.text.GapContent$StickyPosition
どういうクラスか知らんけどとりあえず直列化されてないからってのが理由ね。
対策は、それにかわるものでSerializableなやつを自作するしかないなぁ
見てないけど結構骨が折れそうだね

具体的にどういうオブジェクトの保存?

48:デフォルトの名無しさん
09/02/24 21:28:32
staticなメソッドからは、staticなフィールドにしかアクセスできないの?
初歩的な質問でごめんね

49:デフォルトの名無しさん
09/02/24 21:30:37
new でインスタンス作ってやればアクセスできる

staticなメソッドはnewしなくても使えるだけと思えばいいっす

50:デフォルトの名無しさん
09/02/24 21:42:33
>>49
thx

51:デフォルトの名無しさん
09/02/24 21:49:45
なんか日本語がおかしい

newでインスタンス作れば、staticじゃないフィールドメソッドもアクセスできる
インスタンス作らない場合は、staticなメソッドフィールドしかアクセスできない

伝わってたと思うけど訂正

52:デフォルトの名無しさん
09/02/24 22:25:01
>>51
紛らわしい。
単にyesでOK

53:46
09/02/24 22:30:07
>>47
GapContentは自作クラスではないのでライブラリのクラスと思われます。

イメージとしては
public class Item extends SuperItem {
String stra;
String strb;
・・・
}
※SuperItemにおいてSerializableを実装。

ObjectOutputStreamのインスタンスoosにおいて、
oos.writeObject(Itemクラスのインスタンス);
として書き出しています。
このとき例えば strb = "漢字";
となっている場合に、前述の例外が発生します。
strb = "alphabet";
の場合には発生しません。

54:デフォルトの名無しさん
09/02/24 22:49:57
今日からというかさっきから始めた超初心者で申し訳ないんですが・・・

流儀の問題なんですけど、エラー処理はtry catchで受けるものですか?
それとも自力でチェックするものなんでしょうか。

たとえば引数の未定義をチェックするのに
perlで言えばif( !defined($hoge)){ みたいにするよりも
catchで場合分けして受けるのが正解?


55:デフォルトの名無しさん
09/02/24 22:57:42
>>53
それは本当に漢字のせいですか?

javax.swing.text.Position を実装したクラスのインスタンスをどこかで直列化してませんか?

56:デフォルトの名無しさん
09/02/24 23:19:25
>>54
未定義、、Javaで言えばnullチェックぐらいなら普通にif文で良いよ
基本的に自分でチェックできるものはしますよ

57:46
09/02/24 23:23:17
>>55
そう言われると自信が持てなくなってしまいますが・・・
あくまで現象としてはアルファベット・ひらがなでは問題なく、
漢字の時に例外が出ているということです。

>javax.swing.text.Position を実装したクラスのインスタンスをどこかで直列化してませんか?

すみません。
理解力不足でどのようなことか分かりませんでした。
javax.swing.text.GapContentクラスのインスタンスということでしょうか?

58:55
09/02/24 23:34:47
>>57
NotSerializableException: javax.swing.text.GapContent$StickyPosition の解説をします。

NotSerializableException は直列化可能インタフェースを持つ必要があることを示す例外です。
出力文字列のコロン以降はその対象クラス名で、ドル記号の後ろはクラス内クラス名です。
GapContent$StickyPosition は Position インタフェースを実装しています。

ここで 55 の話に繋がります。
本当に漢字のせいですか? と。

59:46
09/02/25 00:43:31
>>58
ありがとうございます。
ドル記号の後ろはクラス内クラス名なのですね。メソッド名かと勘違いしていました。
(GapContentのソースも確認してみました。)

ここまでのご回答から、被疑のクラスを見直していったところ、
直列化しているクラスのフィールドにJDialogクラスを継承した自作のクラスを
含んでいることが分かりました。

そのフィールドに対してtransientを修飾することで問題が解決しました。
原因の根本はおっしゃる通り漢字うんぬんでは無かったということになります。
本当にありがとうございました。


60:デフォルトの名無しさん
09/02/25 02:10:28
学生レベルでJAVAの中級者以上ってどんなレベル?

61:デフォルトの名無しさん
09/02/25 02:14:56
学生レベル

62:デフォルトの名無しさん
09/02/25 02:21:14
>>54
その辺は実は深い問題なので、あんまり「こうしとけばOK」というやり方はない。
おおまかな指針なら「Effective Java」って本に載ってるので、Javaに一通り慣れたら読んどけ。


63:デフォルトの名無しさん
09/02/25 02:26:58
高校生なら将来は情報系に進学するんだろうけど、大学生なら別にどうってことない。
それよりも英語が出来ないと次の技術に追いつけないから中級か初級かの違いはあまりない。
中級者というならランタイムのソースぐらい読んでないと恥ずかしいが。

64:デフォルトの名無しさん
09/02/25 02:30:23
サンは教育に力入れてるから小学生だとしてもジャバなら積み木のように何でも作れるって外人は多い。(ジャバだけしかつかえないけど)
C#と比べても実際そんなに複雑じゃないし。

65:デフォルトの名無しさん
09/02/25 02:50:34
>>63
今の学生は情報系よりプログラム教える専門学校の方が上だと
信じ切っててそのまま専門入って洗脳されるパターンがあるんだな。これが。
んで底辺同士で変な潰し合いやってメンヘラ化。

ITドカタ以下だからねぇ。食えるんだろうか。エロゲの外注マくらいしか思い付かん。

66:デフォルトの名無しさん
09/02/25 03:23:05
そういうと視点なら実際は底辺大学入っても同じ。エロゲを作るのか、半エロのオンラインゲームの受注を受けるのかの違いはあったとしても。
MARCH以上じゃないと、専門でも大学でもそんなに差があるとはいえないんじゃないか。

少しお花畑の話をすれば、情報の技術者を医療系のように国が保護して補償してないからこういう事態になるんだろうけど(携帯業界とかIT派遣とかで顕著でしょ)

67:デフォルトの名無しさん
09/02/25 03:55:02
医者よりは芸術家とか職人のような扱いの方がいいのではないかと思う。

他の匠と違って朝すげー遅いが他は似たようなものだろう。


68:デフォルトの名無しさん
09/02/25 03:57:07
ぶっちゃげ六帝大でも実践的なプログラミング技術を教える体制や
カリキュラムが出来ているかというと、正直かなり微妙だと思う。

教科書レベルの例題や、きちんと正解が出るように仕込み十分な
プログラミング演習の課題は一通りなぞっていても、課題だけを
ボンと投げられてそこから自分で設計したり必要な要素技術を
探し出したりしながらちゃんと動くものをゼロから作れる、そういう
学生は本当に希。

そういう実践力は現状のカリキュラムで教えるのはとうてい無理で、
むしろ課外時間に趣味とかバイトとかで実践的なプログラミングに
取り組んだ学生は研究室配属直後などは本当に強い。

他方で下手に経験があるだけに変に自信を持ってしまい、我流に
しがみついて体系的に学ぶことを拒否する学生もいる。
そう言う学生が後から来た素人に抜かされるのも時々見る光景。

69:デフォルトの名無しさん
09/02/25 04:02:08
>>68
その実践的なプログラミングってどの程度の話?

70:デフォルトの名無しさん
09/02/25 04:19:10
>>68
まあ言いたいことは分かるけどね。
しかし大事なところが抜けてるから一応補足しとくと、君は自分の能力と同等なものをその学生やらなんやらにも求めてないか?
どの分野でも何もないところから自分で設計したり実践したりすることなど出来ない。
小さいときに君は学習塾で先生に手取り足取り「解法」を学んで今やっとそのように「やる気があれば何でもできるだろ」ようなことを言ってるんじゃないかな。

どうでもいいけど、君に実力があるというなら、得意な分野でいいから誰にでも理解できる本を書いてみたらどうだろう。
プログラミング関係の書籍はほとんどが粗大ゴミだけど、君が書くプログラミングの記事もまたそのゴミの一つかもしれない。

71:デフォルトの名無しさん
09/02/25 04:28:13
>>68
我流にしがみつくような学生の方が、率先してゼロからでも課題をこなしていくタイプじゃないのか?
その長文で主張したいことは、どうも矛盾してるようだけど・・・

我流の学生なら、変な癖のところを指摘してやれば充分じゃないかと思うけどね。
海外だと学生のときに作ったプログラムで成功してるのが多いでしょ。(GIMPとかYAHOO.COMとか)
情報というかプログラムの世界は、工芸職人みたいだけど、課題をこなすような人材よりも我流でアクが強い方がいいもの(道具)を作る世界なのかも。

72:デフォルトの名無しさん
09/02/25 04:45:12
>>69
自分が関わっているところはどっちかというと理屈系の比重も
大きいから規模も複雑度も企業内でのプログラミングに比べ
たら全然大きくないと思います。

ただ痛切に感じるのは「実践力」のある使える学生というのは
量的というより質的に違っていて、明確な答えのない課題に
対して自分で答えを見つけたり、類型の問題に対する既存の
アプローチを色々組み合わせて自分で解決策をほじくり出して
しまうスキルがある。情報の探し方と探しどころを経験で学んで
いるんですね。で、こういう無形のスキルを伝達するのが実際
一番大変で難しいので、色々なところで苦労していると思います。

>>70
能力を求めてはいないし自分も実力があるわけでは無いですが、
カリキュラムで学べるプログラミング技術と研究の現場や企業で
求められるものとでは質的に大きなギャップがあるのは間違い
無いです。プログラミング技術が必要となる研究室では多かれ
少なかれ内部指導の体制を試行錯誤していると思います。
プログラミングは手段であって目的では無いのも悩みどころです。

>>71
そう。まさに我々の周りでも「変なクセがある」と呼んでいます。
クセを指摘して聞いてくれる学生だと良いんですが、時には妙に
固執する頑固な人もいて・・・。掲示板みたいに規模はともかく
前例やベストプラクティスが存在する対象をクリアして自信を
つけてものの、そういうものがない対象を扱うようになって途端に
はまる人を何度か見かけました。

73:デフォルトの名無しさん
09/02/25 04:59:19
むしろ学生のうちは、
どうして01の足し算だけでコンピュータが動くのか?とか
基本的なアルゴリズムとかその他学術的なことを
しっかりやってほしい。
会社に入ったらそういったことを勉強する機会は少ないし、
実践的なことしか勉強できなくなるから。
現場にいない大学の先生に現場で必要な実践的なことを教えるのには限界があるしね。

74:デフォルトの名無しさん
09/02/25 07:02:23
真夜中から長文ご苦労。
引き続き質問スレに貢献してくれ。

75:デフォルトの名無しさん
09/02/25 13:09:40
どうして01の足し算だけでコンピュータが動くの?


76:デフォルトの名無しさん
09/02/25 13:36:33
01の足し算だけでコンピュータが動くじゃなくて
コンピュータは01の足し算だけで動いているの方が若干正しい気がする

77:デフォルトの名無しさん
09/02/25 13:45:03
>>76
それならどうして01の足し算だけでコンピュータが動くのか教えて


78:デフォルトの名無しさん
09/02/25 14:00:08
01の足し算だけでは動かないと思うぞw

79:デフォルトの名無しさん
09/02/25 14:10:28
足し算だけじゃどう頑張っても無理ではなかろうか

80:デフォルトの名無しさん
09/02/25 14:12:03
少なくとも条件分岐は必要だな。

81:デフォルトの名無しさん
09/02/25 14:12:31
URLリンク(book.mycom.co.jp)
洒落ではなく、ビット演算からスタートして最終的にCPUがどうやって
動くのか、興味がわいた人のとっかかりとしてはマジでお薦め。

URLリンク(journal.mycom.co.jp)
内容が心持ち順不同だけど、良い連載だと思う。

82:デフォルトの名無しさん
09/02/25 14:19:08
Javaと関係ねーよー
おかーちゃーーん

83:デフォルトの名無しさん
09/02/25 14:19:31
学生さんにはしっかりと足し算だけでコンピュータが動くしくみを
勉強していただきたい


84:デフォルトの名無しさん
09/02/25 16:51:16
javaできる奴ってどれくらいいるのかな?


85:デフォルトの名無しさん
09/02/25 17:20:59
クラスでjavaできる奴何人いたって意味↑

86:デフォルトの名無しさん
09/02/25 17:31:53
>>85
そろそろ病院行ったほうがいいんじゃない?
心療内科は結構いいよ

87:デフォルトの名無しさん
09/02/25 18:03:53
>>78-79
釣り?だよね?

88:デフォルトの名無しさん
09/02/25 20:12:41
ジャンプってプログラムカウンタの足し算だよな

89:デフォルトの名無しさん
09/02/25 20:29:23
「だけ」をいうのであれば足し算というより排他的論理和だな。

90:デフォルトの名無しさん
09/02/26 00:05:50
1 - 1 = 1 + -1
2の補数

91:デフォルトの名無しさん
09/02/26 00:46:45
スレチだけども、学問と実践、研究者と技術者の区別がついていないんだと。。。

92:デフォルトの名無しさん
09/02/26 00:58:12
Linux(CENTOS)でアパッチがインストールされていれば
Java(サーブレット)を動かせますか


93:デフォルトの名無しさん
09/02/26 01:12:32
>>92
無理。サーブレットの実行にはTomcatなどのサーブレットコンテナが必要。
Apacheとサーブレットコンテナを連携させることはできる。

94:デフォルトの名無しさん
09/02/26 02:11:43
javaでcgiすりゃいい

95:デフォルトの名無しさん
09/02/26 04:43:15
>>94
それだとセッション管理が大変になるだろ。

96:デフォルトの名無しさん
09/02/26 16:21:30
すみません
OutputStreamの中身をbyte[]型で出す方法ってありますか?

97:デフォルトの名無しさん
09/02/26 16:24:01
java.io.ByteArrayOutputStream

98:デフォルトの名無しさん
09/02/26 21:53:35
>>95
マジリアクションするなよwwwwwwww

99:デフォルトの名無しさん
09/02/27 00:05:07
MQを使って別プロセスと通信を動機的にすることは可能ですか?
MQを使った時点で非同期になるのでしょうか?

100:デフォルトの名無しさん
09/02/27 03:30:51
>>98
相手初心者なんだから嘘教えるなよw

101:デフォルトの名無しさん
09/02/27 12:40:29
家でjavaをはじめようと思ってます。
まず何をしたいかと言うと、
Realtekのカニさんマークの用に
画面の真ん中にウインドウ枠を消した状態で
カに以外を表示したいです。
段取りを教えてください。

102:デフォルトの名無しさん
09/02/27 13:39:04
>>101
SWTスレへいけ

103:デフォルトの名無しさん
09/02/27 16:34:35
Realtek のことはよく知らないけど
スプラッシュスクリーンのこと?


104:デフォルトの名無しさん
09/02/27 16:39:25
(1)jspのページを直接表示させた場合
(2)サーブレットからリダイレクトによってjspのページに遷移させた場合
(3)サーブレットからフォワードによってjspのページに遷移させた場合

何で(1)と(2)では文字化けしなかったのに(3)は文字化けするんでしょうか

105:デフォルトの名無しさん
09/02/27 17:37:38
>>103
スプラッシュスクリーンがまず最初ですかね。
僕としては、今後そのスクリーン上で、フォルダを指定して、
画像データとかを表示したいなと思っています。
まったく別物ですか?

106:デフォルトの名無しさん
09/02/27 17:45:26
別物

java スプラッシュスクリーンでまずぐぐれ

107:デフォルトの名無しさん
09/02/27 20:56:42
起動処理中のサーバに接続したい場合、
サーバの起動に時間を要するので、起動確認してからtelnetしたいです。
手入力のコマンドですとpingで確認するところですが、
Javaのプログラムだとどういう方法で確認するのがよいでしょうか?やはりpingを実行するのでしょうか?

108:デフォルトの名無しさん
09/02/27 22:48:56
要求を、適当な時間間隔で適当な回数、リトライするんじゃ駄目?

109:デフォルトの名無しさん
09/02/27 23:22:40
Telnetメソッドを数回リトライということですか?

110:デフォルトの名無しさん
09/02/28 00:54:49
そもそも、pingが通ればtelnetも通る?
telnetそのものでトライするのが確実だと思うよ。

111:デフォルトの名無しさん
09/02/28 00:59:28
なるほど。納得しました。
ありがとうございます。

112:デフォルトの名無しさん
09/02/28 13:59:30
WebページにあるフォームにGetで送信したいんだけれども、どうしたらいい?
ヒントくれ

113:デフォルトの名無しさん
09/02/28 14:47:42
HttpClient

114:デフォルトの名無しさん
09/02/28 15:53:31
>>113
thx

115:デフォルトの名無しさん
09/02/28 17:07:03
わざわざ外部のライブラリ使わんでも標準でHttpURLConnectionあたり使ってできるよ
まぁ使い勝手は最悪だが。

116:デフォルトの名無しさん
09/02/28 20:32:26
public static void main(String[] args) throws IOException {
BufferedReader reader = null;
BufferedWriter writer = null;

reader = new BufferedReader(
new FileReader("F:\\temp\\Test.txt"));
writer = new BufferedWriter(
new FileWriter("F:\\temp\\Test.txt"));

writer.write("Test");
String str = reader.readLine();

System.out.println(str);

writer.write("Test");
str = reader.readLine();

System.out.println(str);

reader.close();
writer.close();
}

これ実行するとnullnullって表示されるんですけど何故ですか?
ファイルにはちゃんと出るのに。

117:デフォルトの名無しさん
09/02/28 20:36:28
書き込みながら読み込みとかやってる事が高度すぎる

書き込み終わってから、読み込みの順番ならちゃんと表示されるよ

118:デフォルトの名無しさん
09/02/28 20:46:14
System.out.println("Test");
とすればちゃんと表示されますよ

119:デフォルトの名無しさん
09/02/28 20:49:32
>>116
writer.write("Test"); の後に writer.flush(); してみれば?

120:116
09/02/28 21:50:36
>>118
ありがとうございます。解決しました

121:デフォルトの名無しさん
09/02/28 21:56:40
!?('A`

122:デフォルトの名無しさん
09/02/28 22:00:33
ストリームっていのがよく理解できてなくて・・・
深い話が聞けるかなと。
>>119
ありがとうございます。

123:デフォルトの名無しさん
09/02/28 23:46:16
windowsで言うところの.exeファイルってどうやって作成するんですか?
.javaから.classは作成できましたが、classをダブルクリックしても実行できません。

124:デフォルトの名無しさん
09/02/28 23:47:29
ArrayListに「obj連番の数字」という名前のオブジェクトを、効率よく格納したいのですが

obj1、obj2、obj3・・・・・objNとなっているのを
ArrayList<*> test = new ArrayList<*>();
test.add(obj1);
test.add(obj2);
test.add(obj3);
   ・
   ・
test.add(objN);
と書いています。これをfor文を使って綺麗に書くことができますか?
できるのならば、おしえてください

125:デフォルトの名無しさん
09/02/28 23:52:02
そもそも何でそんな名前のオブジェクトがあるんだ。

126:デフォルトの名無しさん
09/02/28 23:53:17
>>123
JAR (Java Archive) というファイルを作る。
Windows 限定なら
Java アプリケーションを EXE に変換するソフトもある。


127:デフォルトの名無しさん
09/02/28 23:56:34
>>124
フィールドにそんな名前をつけること自体
設計がよくないと思う。

強いて言うならリフレクション使う。


128:デフォルトの名無しさん
09/02/28 23:59:22
>>127
感謝します

129:デフォルトの名無しさん
09/03/01 00:18:32
>>126
jarファイルを作成し、実行できるようになりました。
有難うございました。

130:デフォルトの名無しさん
09/03/01 01:07:45
基礎を勉強した後に読む本でおすすめはありますか?

131:デフォルトの名無しさん
09/03/01 01:24:12
スレチかも知れないけど
メモ帳でtabインデントを8→3にするのってどこで設定するんですか?

132:デフォルトの名無しさん
09/03/01 01:48:40
>>131
しらん。
エクリプス突っ込むか、フリーのテキストエディタを
使った方が幸せになれると思うのだが、
顧客が馬鹿でメモ帳以外使わせないとかなのか?

133:デフォルトの名無しさん
09/03/01 11:37:45
改行コードって\r や \n そしてこれらの組み合わせがあるようですが
ファイルに書かれている改行コードが何か判別するにはどうしたらいいのでしょうかm(__)m

134:デフォルトの名無しさん
09/03/01 11:45:59
バイナリエディタで開く

135:デフォルトの名無しさん
09/03/01 12:56:32
Javaのプロセスが急に落ちるときの原因は何が考えられますか?
その際、アプリログを見ても、何も吐き出されていないのです。
環境はTomcat+Apatch+Sunで動かしているWebアプリです。

136:デフォルトの名無しさん
09/03/01 13:15:10
>>135
サーバのログは読んでみたの?

137:デフォルトの名無しさん
09/03/01 13:59:58
>>136
サーバーのログとは何ですか?
Javaのプロセスが突然落ちたのです。
コアダンプもエラーも何も出ずに、落ちてました。

138:デフォルトの名無しさん
09/03/01 14:07:10
>>133
先頭から1文字ずつ読んでみればよい


139:デフォルトの名無しさん
09/03/01 14:12:15
>>137
/var/log/httpd/error_log とか。

140:デフォルトの名無しさん
09/03/01 17:46:51
ファイルの指定行への書き込みや、
指定行からの読み出しは、
ループを回さなければならないんでしょうか?

141:デフォルトの名無しさん
09/03/01 17:53:29
org.apache.commons.io.FileUtils の readLines とか writeLines とか使えば?

142:デフォルトの名無しさん
09/03/01 18:07:03
各行のオフセットをどこかに記録しておけばループは不要

143:デフォルトの名無しさん
09/03/01 18:08:45
そんなクラスないみたいなんですけど・・・
orgはietfからみたいです。
そう言えば、java以外まだ使ったことないですけど。

144:デフォルトの名無しさん
09/03/01 18:15:56
>>143
URLリンク(commons.apache.org)

145:デフォルトの名無しさん
09/03/01 19:58:30
>>144
親切だな

146:デフォルトの名無しさん
09/03/01 22:11:41
標準クラスライブラリ以外使用不可ならどうすればいいんでしょうか?

問題
 テキストファイルの指定行に文字列を書き込むメソッドを作れ。



147:デフォルトの名無しさん
09/03/01 22:30:35
"128hoge" が 128 になるような寛容な変換メソッドはありますか?
Integer.parseIntだと例外が飛んでしまいます。
なければおとなしく切り出そうと思います。

148:デフォルトの名無しさん
09/03/01 22:45:13
int i = Integer.parseInt("128hoge".replaceAll("\\D", ""));


149:デフォルトの名無しさん
09/03/01 22:59:48
>>146
指定行までを読み込んで
文字列を追加して
ファイルの残りを読み込んで

まとめて書き出せばいい

150:147
09/03/01 23:12:36
>>148
このほうが短いですね。ありがとうございました。

151:デフォルトの名無しさん
09/03/02 00:00:06
いや、普通はこうだろ (Cのatoiとか)

replaceFirst("\\D.*","")

何れにしても、空になると例外出るから、初期値0にするのにもう一手間いるけど

152:デフォルトの名無しさん
09/03/02 00:05:44
\DってCで反応するの?

153:147
09/03/02 00:15:53
"123hoge456".replaceAll("\\D", "")が"123456"になってしまいますね。

>>151
ありがとうございます。こちらも試してみます。
String s = "128hoge".replaceFirst("\\D.*", "");
int i = foo.isEmpty() ? 0 : Integer.parseInt(s);

154:デフォルトの名無しさん
09/03/02 13:19:17
ScheduledFuture<?> s = ほげほげ
s.cancel(true);

の cancel() の引数なんですが、true と false の違いがよくわかりません。

セツメーショにはこう書いてありますが...
>このタスクを実行しているスレッドに割り込む必要がある場合は true
>そうでない場合は、実行中のタスクを完了できる

これ読んでも意味がわかりません。
「割り込む必要がある」って???
実行中のメソッドを*処理の途中*で強制停止してしまうってこと?
「そうでない場合」の「そう」はどの「そう」?
true でない場合はタスクを完了できないってこと???
じゃ false の存在価値は?

ちんぷんかんぷんです。おしえてくだしあ

155:デフォルトの名無しさん
09/03/02 14:18:58
 if (obj != null && obj instanceof クラス)
っていう文をよくみかけますが、どんな意図があるんでしょう。
外人が書いたフリーソフトのソースコードなので本人に直接は聞けません。

 if (obj instanceof クラス)
よりも
 if (obj != null && obj instanceof クラス)
の方がパフォーマンスが高いとか?
サーバアプリなんですが、
CPUの負荷にやさしいのは、どっちの書き方でしょうか?


156:デフォルトの名無しさん
09/03/02 14:30:38
>>155
場合分けとしてはどちらの場合も同じ。
null instanceof Hoge の場合は必ず false

勘違いしているか、null チェックだけでもやっておいた方が早く動くと思ってるか。
他にも何か理由があるのかね...

157:デフォルトの名無しさん
09/03/02 14:42:18
>>155
演算子の優先順位は明らかなのに わざわざ括弧つけたりするのと同じで
冗長でも意図が明確に書いてあるってだけでは?

158:デフォルトの名無しさん
09/03/02 14:48:50
ループで時間計ってみたら先にnullチェックで落とした方が半分以下の時間で済んだ。

nullチェックで落としたら、後のinstanceofが評価されないのは分かってたけど、
どれくらい時間かかるかわからんかったから、コード書いてみた。

159:デフォルトの名無しさん
09/03/02 15:02:29
>>154
実行中に割り込み食らうとキャンセルされるように作ってあれば、
true 渡してやればタスクが既に実行中の場合タスクを実行しているスレッドに割り込みかけてキャンセルできる。
false の場合はタスクが既に実行中なら諦める。

実行中に割り込まれても無視するように作ってある場合は
true にしようが false にしようが同じ。

160:デフォルトの名無しさん
09/03/02 15:18:12
すみません、質問です。

javaでロックのかかったエクセルファイルのロックを解除して
セルを取り込んだ後、またロックをかける。
といったことは可能でしょうか?

エクセルのロックのパスワードはわかっています。

161:デフォルトの名無しさん
09/03/02 15:28:38
正確に言うとシートがロックされていて、
javaのプログラムでシートのロックを解除して、もう一度ロックをかける。
ということがしたいのですが・・・無理でしょうか?

162:デフォルトの名無しさん
09/03/02 15:33:12
おすすめ本あるでしょうか?

163:デフォルトの名無しさん
09/03/02 17:32:24
swingのJColorChooserで指定した色のrgb値を取得するにはどのように
すれば良いのでしょうか、いま指定した色と調和する色を表示するアプリケーションを
作っているので、ご教授願います。

164:デフォルトの名無しさん
09/03/02 18:52:11
String.format("%.1f", hoge) // 注意: % と 1 の間に小数点があります
で小数点以下2桁で四捨五入するのですが
hoge = 1 のときは「1.0」ではなく「1」と出したいのです。
おしりの0を省く方法ありますか?

165:デフォルトの名無しさん
09/03/02 18:58:17
クラスライブラリを使うとき、ヘッダファイルは、いらないの?
コンパイルされたクラスファイルがあればいい?
ソースコードもいらないの?

166:デフォルトの名無しさん
09/03/02 19:06:18
>>165




167:デフォルトの名無しさん
09/03/02 19:13:19
log4jってクライアント側のアプリに使うと下手したら
デバッグログまで丸見えになってしまいますか?

168:デフォルトの名無しさん
09/03/02 19:19:48
>>167
log4jって、吐き出すログのレベルを簡単に切り替えれたのじゃなかった?

169:デフォルトの名無しさん
09/03/02 19:20:14
public class クラス名<E>{
の、<E>って何よ?

170:デフォルトの名無しさん
09/03/02 19:26:28
人に聞いてばかりで自分で出来ないようなら、いつまでたっても上達しませんよ。

171:デフォルトの名無しさん
09/03/02 19:27:50
>>168
はい、だから設定ファイル変えられたらトレースされて丸見えになってしまうなーと。
ググッっても向いてる用途が書いてないので、ここで聞いてみました。


172:デフォルトの名無しさん
09/03/02 19:29:15
>>167
知っているユーザーが設定ファイルを書き換えたらそうなるかも。
気になるならユーザー配布物にはダミーパッケージでも
つっこんどきゃいい気がするけど、どうなんだろう?

173:デフォルトの名無しさん
09/03/02 19:32:21
ばっちり見えまくり

あと、javaはjadっつーので逆コンパイルすると、
ばっちり読めるソースが出てくる。

そこは.netも同じらしいけど

174:デフォルトの名無しさん
09/03/02 19:32:37
>>171
複数人が関わったり、テスト工程をちゃんとやるような
大規模・中規模開発や統合開発環境やユニットテスタで
テスト回せないような開発では必須。

少人数で回せる様なものなら、エクリプスとかでのデバッガや
Junitだけで使わなくても十分だと思われ。

175:デフォルトの名無しさん
09/03/02 19:33:58
設定ファイルなしで、設定の情報をプログラムコードで設定できるのじゃね?
log4jは、設定ファイル必須なの?

176:デフォルトの名無しさん
09/03/02 19:46:10
設定ファイルでログレベルが変えられるのが売りなので、埋め込みだとあまり使う意味が無いかなと思います。
あと、Apacheライセンスなので、使っていることはばっちりバレバレですね。
クライアント側で使うべきではないようですね。


177:デフォルトの名無しさん
09/03/02 19:49:41
>>174
そういう用途はぐぐると出てくるのですが、クライアントサイド等のアプリ種別につい
て知りたかったのでした。
設定ファイルが暗号化されてたりで簡単には変えられない仕組みとかあるのかと思った
のですが、なさそうだし、クライアントサイドの用途は想定されていないのかなと。
使いたかったのに。

178:デフォルトの名無しさん
09/03/02 19:52:22
>>177
まあ、お客さんがログ見たかったら見ればいいってのはありじゃね?

デバッグログ見られたって困ることはないだろ

179:デフォルトの名無しさん
09/03/02 20:27:00
>>173
jadをダウンロードしようと
URLリンク(www.kpdus.com)
へ行って
Jad 1.5.8g for Windows 9x/NT/2000 on Intel platform (238600 bytes).
URLリンク(www.kpdus.com)
を選ぶと
Go Duddy.com とかいう変なページしか表示されません。
どこでダウンロードできるのでしょうか?

180:デフォルトの名無しさん
09/03/02 20:28:12
デバッグログを暗号化して出力すればいい

181:163
09/03/02 21:04:10
>>163
もよろしくおねがいします。

182:デフォルトの名無しさん
09/03/02 21:21:29
>>179
ありゃりゃ・・・サーバが落ちてるのかな・・・
一時的なものなら、しばらく時間をおいてから再度ためしてみるといい。

いちおう "jadnt158.zip" でググってみたら、ミラーが見つかったので
どうしても本家からダウンロードできないときのために書いておく。

URLリンク(www.esnips.com)

File Name: jadnt158.zip
MD5: FC4CB644F4783AEF5EFA8C9EBEC1EB05
Bytes: 238,600

183:デフォルトの名無しさん
09/03/02 21:22:52
>>182
たぶん一時的じゃない。数日前ダウンロードしたときも同じ状態だった。

184:デフォルトの名無しさん
09/03/02 23:23:12
CやC++でもリバースエンジニアリングやヒープをダンプされたら暗号化しようが中身丸見えだよ

185:デフォルトの名無しさん
09/03/02 23:28:52
隠すほど凄いモノを持っておるまいに……

186:デフォルトの名無しさん
09/03/03 00:01:59
市販アプリがダラダラとデバッグログをはいてたらその会社のレベルを疑うだろ普通。
チンコまるだし、ブリーフ、トランクス、ズボンはいてるのじゃ大違い。

187:デフォルトの名無しさん
09/03/03 00:03:29
客がチンコまるだしを望むならそれもありだろ

ズボン、トランクス、ブリーフを脱がす権利は客にあるんだから

188:デフォルトの名無しさん
09/03/03 00:11:46
ちんこ丸出しの男はキチ外じゃん。
ズボンとパンツを脱がそうとするやつは変態じゃん。
そういうこと。

189:デフォルトの名無しさん
09/03/03 00:14:02
客がズボンとパンツを脱がそうとする変態ならそれもいいじゃないか
納品するのは、最初からちんこ丸出しの変態じゃない、ちゃんとズボンとパンツ履いてる紳士だ。

客(変態)の要求で紳士にもキチ外にもなる、俺はそんなクマ吉になりたい。

190:デフォルトの名無しさん
09/03/03 00:18:35
ログだだ漏れ=ちんこ丸出し
log4jの設定いじりでログ漏れ=ブリーフ一丁
リバースエンジニアリング=ズボン脱がし


次ページ
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
暇つぶし2ch

5496日前に更新/148 KB
担当:undef