JavaとAction ScriptにおけるString型の違い
昨日、「Flex入門」という社内勉強会の資料を公開
したことろ、いろいろとフィードバックを頂きました。
> フィードバック有難うございます。
Flex入門
http://d.hatena.ne.jp/dewa/20080124#1201162231
スライドの15ページ目に
「JavaではString型はオブジェクト型なので挙動が異なる。」
という箇所に id:cero-t さんから
『Stringの挙動、Javaと変わらなくないですか?』という
ツッコミが入る。
コードを書いて確認してみると、確かに挙動は変らない。
なんでだろう?
JavaのString型はクラス(オブジェクト)、
Action ScriptのString型はプリミティブ型。
この違いのため、JavaとAction Scriptで
代入に関する同様の操作をしたところ、
結果が異なることを予想していました。
しかし、実際には挙動というか同じ結果が
得られたので、不思議に思って少し調べてみました。
それを整理したのが下図です。
内部的なメカニズムが異なるにも関わらず、
挙動が同じように見える謎が解けて、
スッキリしました。