【初心者】Java質問・相談スレ21【大歓迎】

このエントリーをはてなブックマークに追加
>>950
そういう話は必ず宗教論に発展するので別スレでやってくだちい。
>>951
プ
来た来た
954928:03/04/06 12:42
なんかいろいろなことになってるな。
で、オススメの本はないんでしょうか?
0x80以上のbyteをprintln()で表示させる時、そのままだと
負の表示になりますが、0xFFと&すると符号無しとして
表示されるのは何故でしょうか?
byteと0xFFの&では変わらないように思うのですが・・・。

byte buff =(byte)0x80;

System.out.println(buff);//-128と表示
System.out.println((buff & 0xFF));//128と表示
956デフォルトの名無しさん:03/04/06 13:05
>>955

0x80のbyteはintに拡張されて
00000000000000000000000010000000

0xFFのintは
00000000000000000000000011111111

andすると
00000000000000000000000010000000

となる。

Javaではintよりも小さな基本データ型つまり
char byte shortに対して何らかの演算を行う場合
処理の前にintに拡張され、結果もintとなる。
957956:03/04/06 13:14
>>956訂正

0x80のbyteはintに拡張されて
×00000000000000000000000010000000
○11111111111111111111111110000000

だね
958デフォルトの名無しさん:03/04/06 13:15
>>950
Hello Worldプログラムの前にやるべきこと。
Hello Saitamaです。
System.out.println("                \ │ / ")
System.out.println("                 / ̄\   / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ")
System.out.println("               ─( ゚ ∀ ゚ )< さいたまさいたま! ")
System.out.println("                 \_/   \_________ ")
System.out.println("                / │ \ ")
System.out.println("")
System.out.println("")
System.out.println("               ∧ ∧   / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ")
System.out.println("              ( ゚∀゚ ) < さいたまさいたまさいたま!")
System.out.println("       ∧ ∧   /    )   \___________ ")
System.out.println("       ( ゚∀゚ ) 0=┳=0     ∧ ∧ ")
System.out.println("      0=┳=0  / ┃ ヽ    ( ゚∀゚ ) ")
System.out.println("       / ┃ )  = ‖( ノ    0=┳=0      ∧ ∧    / ̄ ̄ ̄ ̄ ")
System.out.println("        ヽ ‖ノ     ‖=    l⌒┃ ヽ     (゚∀゚ )  < さいたまー!")
System.out.println("";;;゙゙;';'"゙゙;''"';;;゙゙';"'';;";゙゙''";;''"';'"゙゙';;'"';;;'"''"';';"'゙゙'";"''';;;,、0=┳=0 \   \____ ")
System.out.println("''";''"';゙゙'"''"゙゙';'"';'";''゙゙";;''"゙゙;''゙゙"';'"'';''"';'         "''';;;,、 / | ∧ ∧ ")
System.out.println(""゙゙';;'"';;;''"';'"゙゙';;'"';;;'"''"';';"'゙゙'";;''                "''';;;,、( ゚∀゚ ) ")
System.out.println(""';'"゙゙';;'"';;;'"''"';';"'゙゙'";                         "''';;;,、=0 ")
System.out.println("'"''"';';"'゙゙'";;                                  "''';;;,、 ")

>>950
自分の経験を元に、教えればすむことじゃないの?
>>956-957
分かり易い解説ありがとうございました。
頭がこんがらがっていましたが理解できました。
>>950
パソコンの一般的な使い方。
ファイルシステムのこととか。
圧縮・解凍とか。コマンド検索パスとか。
>>950
> 例えば、2進・8進・10進・16進数の基数変換について机上で計算できる
> ようになっておくことは、HelloWorldより先に済ましておくべきと思いますか。

アホですか?
>>962
基礎って話題が出たらムキになるJavaプログラマ。 プ
964名無し3.BAT:03/04/06 18:19
統合環境みたいに、自動インデント機能を自作のエディタにつけたいときは、どうすればよいんでしょうか?
また、統合環境みたいにポップアップで単語を補完する機能をつけるには、どうすればよいんですか?

秀丸エディタなどは、何言語で書かれているのですか?あのような高度な機能は、Javaでは無理なのですか?
965デフォルトの名無しさん:03/04/06 18:39
serverSocketについて質問なんですが
クライアントが落ちてしまった時、
どこらへんでエラーが発生するんでしょうか?
966デフォルトの名無しさん:03/04/06 19:14
924 名前:デフォルトの名無しさん 投稿日:03/04/05 23:58
Netscape7.0 でjava appletが二つあるhtmlファイルを読み込むと毎回フリーズしますが、
仕様ですか?

誰か教えてください
967デフォルトの名無しさん:03/04/06 20:51
>>965
コネクションで。
質問です。
コンストラクタを含むスーパークラスを継承したサブクラスは
コンストラクタを使ってスーパークラスのインスタンスを自動で生成しているのでしょうか?
969デフォルトの名無しさん:03/04/06 22:01
>>968
言ってる意味がわからん。
>>968
おそらく。

ただし、コンストラクタをもたないクラスはないよ。
すべてのクラスにおいて、インスタンス化するためには
必ずコンストラクタが実行される

すべてのクラスのコンストラクタの実行では
明示的にスーパクラスのコンストラクタを呼んでいない場合
スーパクラスのデフォルトコンストラクタが必ず最初に呼ばれる

コンストラクタが明示的に書かれていないクラスでは
引数のないコンストラクタ(デフォルトコンストラクタ)が自動的に生成される
972968:03/04/06 22:30
すみません。言い方が悪かったです。
スーパークラスの自前のコンストラクタが
サブクラスのインスタンス生成の時に自動で実行されるかってことなんですけど。
理解していただけたでしょうか?
>>972
実行されない。
実行したければサブクラスのコンストラクタ中で明示的に
super();
と記述するべし。
>>973
ネタのときはわかるようにしてね。
>>950
ネットワークの基本。
976968:03/04/06 22:40
>>973
あ、今本読んでたら説明が載ってました。
引数なしで自前のコンストラクタとデフォルトの引数なしコンストラクタは自動だけど、
引数ありのコンストラクタはsuper(引数);を記述しないといけない。
んですよね?
>>972
明示的に記述されていない場合にはデフォルトコンストラクタが
暗黙的に呼ばれる。だがスーパークラスのコンストラクタの暗黙的
呼び出しを期待する位なら明示的に書け。

C:\>copy con a.java
public class a{
a.java を上書きしますか? (Yes/No/All): y
public a(){
System.out.println("a");
}
public static void main(String[] args){
new b();
}
}
class b extends a{
public b(){
System.out.println("b");
}
}
^Z
1 個のファイルをコピーしました。
C:\>"\program files\j2sdk1.4.0_02\bin\javac" a.java

C:\>java a
a
b

C:\>
>>971
ほぼ正解。
java.lang.Object の場合も書いてくれたら完璧。

>>977
copy con でソースファイル書きますかぁ。(笑)
Bill Joy的?
979デフォルトの名無しさん:03/04/07 06:28
ドキュメントに

「現在のスレッドはこのオブジェクトのモニターのオーナでなければなりません。」
という記述があったんだけど、意味がわからない。

モニターのオーナーってどういう意味?
>>979
私も良くわからないけど、synchronized でロックしておけばよいと思う。

ロックを獲得した = モニタのオーナーである

ということだと思う。
981デフォルトの名無しさん:03/04/07 08:57
finalyブロックには
どんな処理を書いているのですか?
使い道がなさそうな。。。
教えて!!
>>981
メソッドのローカル変数で、OSのリソースを消費するようなことをしている時。
なんか例外がthrowされてしまったときでも、きちんとリソースを解放して欲し
いわけで。
エミュを作ってます

256 種のオペコードに対する CPU の動作をエミュレートするのに、
今のところ
1. switch 1段で並列 256分岐
2. switch 2段で上4bit分岐 →下4bit分岐
3. switch 8段で各 bit ごとに分岐
4. オペコード一つに内部クラス・インスタンスを一つ作って
  opecodes[i].do(); みたいな感じでテーブルからジャンプ
でそれぞれやったら、4 > 2 > 1 > 3 の順に速いようです
( 3 が遅いのは switch 自身のオーバヘッドのため?)。

とはいえ 4 の方法はクラスの数が馬鹿馬鹿しいことになるので、
これを基礎として工夫も考えていますが、
他に全然別のいい方法はありますでしょうか?
>>983
オペコードっつても、256種類まったく別の動きするわけじゃねぇだろ。
985983:03/04/07 13:22
>>984
レジスタ群を配列化するといい、ということでしょうか。
986デフォルトの名無しさん:03/04/07 14:45
throwは呼び出し側に例外を返すという事で
よいのでしょうか?
983が何のエミュを作っているかきになるなぁ・・・
988デフォルトの名無しさん:03/04/07 18:37
notify()
notifyAll()
は待ちスレッドに通知すると言いますが
具体的に何を通知するのですか??

>>988
[待たなくていいよ]というメッセージ
>>988
丁度3月号からのJavaWorldで初心者向けのスレッド講座が連載してたよ。
4月号あたりにそこらへんが詳しく載ってた。
991983:03/04/07 19:42
>>984 さんお世話になりました
bit 演算を少し簡略化しました
これ以降の高速化は別のところに力点をおきます。

おじゃましました〜
あるアンチJavaが次スレの偽物を立てたらしい。
テンプレートがいい加減だ。これは荒らしとしかいいようがないのではなかろうか。
だれか真の「【初心者】Java質問・相談スレ22【大歓迎】」
を立ててくれ。

>>992
新スレの1が荒らしってのは同意だが、
別すれ立てるほどでもないような。

しっかし、春休みってまだ終わってないのか?
>>992
自分はホストの関係でたたられません。
このスレのものをそのままはればいいだけだから、誰かよろしく。
>>992
今からテンプレ貼って定期的に 「テンプレ >>m-n」 とかすれば。
あんま騒ぐと 3 スレとか 4 スレとか乱立させられる。
>>995
それも手か。
それで、誹謗しているレスだけ削除依頼出してあぼーんさせるようか。
>>995
この手のケースの場合、明らかに荒らしとわかるから
乱立スレ削除は削除依頼の対象として十分に成り立つ。
998デフォルトの名無しさん:03/04/07 22:37

成り立つ。
>>997
ま、そうなんだけど、処理されるまで鬱陶しいじゃん。
1000デフォルトの名無しさん:03/04/07 22:37
そして1000ゲット。
10011001
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。