[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[jfriends] Re: Javaとポインタ




>このスレッドでは結論が出ていないようなのですが、RMIではどう
>なのでしょう? > 詳しい人

詳しくないですが、普通の Java オブジェクトと同じだったように記憶しています。
RMI はその名の通り、遠隔オブジェクトのメソッドを呼び出せるだけなので、
そのメソッドが別のオブジェクトを取り出すメソッドなら、
取り出したオブジェクトは普通の Java オブジェクトだったはずです。

>私も今時のCのアプリケーションプログラマなので、ポインタは、
>「何かを指し示すモノ」としてしか使いません。ポインタ演算っつー
>のは、昔々コンパイラの最適化を手抜きするために付けた歴史的遺
>物であって、今時こんなものを使うのは、邪道だと信じております。
># もちろん、syntax sugar としての添字演算子[]を使ったポイン
># タ演算は別として、です。

そうなのかなあ。
C は明確にメモリーをイメージできないと扱えない言語だと思います。

>「Javaにはポインタはない」と言われると、「あなたはポインタを
>アドレスのことだでも思っていたのですか?」と言い返したくなり
>ます。

でも Java ではそれをポインターという名前では呼んでいません。

以前私は「ポインター(値)はアドレスではない」とどこかで書きましたが、
C のポインター値はアセンブラで言うアドレス値と同じと(単純に)考えてはいけない、
という意味において「ポインターはアドレスではない」と言うことはできます。
私が理解するポインター(値)は「型を持ったアドレス値」です。

JavaHouse-Brewers での議論でも、

「同じオブジェクトをさしているかどうかを調べるのが == で、
  意味が同じかどうかを調べるのが equals()」
「でも、同じ場所を指しているかどうかは重要ではない」

という重要な意見が出ました。

># でも、Cの場合、ひとたびバグると、ポインタがアドレスである
># ことを思い知らされるのであった(;_;)

同じ場所を指しているかどうかが重要だから、ですかね。

>>うういそがしいいい.休みたい...

私はこの連休が勝負です。
-- 
えんどう やすゆき <yasuyuki@xxxxxxxxxx>
http://www.javaopen.org/jfriends/ (Java互助会ホームページ)