5ちゃんねる ★スマホ版★ ■掲示板に戻る■ 全部 1- 最新50  

JAVAってこんなことも出来ないの?

404 :デフォルトの名無しさん:2011/07/06(水) 23:02:57.38
>>402
あなたが言わんとしていることはなんとなくわかるが、でもJAVAの設計思想
はやっぱりおかしいと思う。
たとえば、あえてVB.NETを例に出すけど、参照渡し、値渡しはサポートし、
ポインタを使った配列アクセスは禁止してる。
で、(あくまでこの部分だけを取り上げると)JAVAとVB.NETを比べたとき、
どちらが(プログラム的に)安全で将来性があるかと考えると、
安全性ではほぼイコールで、将来性では、VB.NETに軍配があがると思う。
(たとえば、JAVAのGENERICとVB.NETのGENERICの実装を比較するとよくわかる
と思う。)
こんな不利があるのを承知の上でセールストークのためだけに引数の参照渡し
を禁止しておいて、NullPointerExceptionなんてエラーが発生する矛盾を作っ
てる言語の設計思想が理解できないわけで・・・。
ちなみに、VB.NETよりもやっぱりC丼のほうが言語仕様的には優れてると思う。
(参照渡しの場合、呼び出す側にも呼び出される側にも参照渡しを示すキーワード
が必要だというのは、いいと思う。)
まあ、ヘジとゴスの器の差というところだと思うけど。

後、自分の恥をさらすけど、
参照渡しと値のポインタ渡しの違いが理解できないんで、教えてもらえると
ありがたい。
個人的には、引数の種類と渡し方の違いで、
・値の値渡し
・値の参照渡し
・参照の値渡し
・参照の参照渡し
の4種類があると思ってるんだけど。
で、一番危険なのは、参照の値渡しだと思ってる。(動きが中途半端だから)
このなかでJAVAのように(安全な言語仕様にするために)2つ禁止するなら、
1.参照の値渡し
2.値の参照渡し
の順だと思うけど。

164 KB
新着レスの表示

★スマホ版★ 掲示板に戻る 全部 前100 次100 最新50
名前: E-mail (省略可) :


read.cgi ver 05.04.00 2017/10/04 Walang Kapalit ★
FOX ★ DSO(Dynamic Shared Object)