Re: [問題] 請問toString的觀念
看來您的觀念還是不很清楚,
建議您去google查一下啥是dynamic binding,
啥是polymorphism.
※ 引述《pshuang@kkcity.com.tw》之銘言:
> ※ 引述《adrianshum》之銘言:
> > 建議你去看看有關 virtual function table 那些東西的概念吧...
> > 嘗試用抽象一點的方法說一說
> > 當你的 object (叫 A class 吧) 被建立時, 其 vftab 也會被建立.
> 以上是 compiler 時期建立的。
> > 當中有一個entry 是 "toString" 而該 entry 則指著 A 的 toString
> > 而當一個 Object 的 reference 指著一個實體時, invoke
> > obj.toString() 時, compiler 並不是把這句譯成 invoke A 的 toString
> > (因為這是不可能的, 這是 runtime 才能決定的, 不然就沒有了 polymorphism
> > 的用意了), 而實際的動作, 是去到該 object 的 vftab 中, 找出 "toString"
> > 的 entry, 然後 invoke 該entry 所指著的 method.
> 當一個 instance 被宣告並定義時,它的 type 就被決定了,
> 也代表相關的 virtual function 已經指定到該呼叫的地方(compiler 時即以決定)。
> 那麼,這該算是由 compiler 做好多型的mapping嗎 ?
> > 大概的概念是這樣.
> > Alien
--
夫兵者不祥之器物或惡之故有道者不處君子居則貴左用兵則貴右兵者不祥之器非君子
之器不得已而用之恬淡為上勝而不美而美之者是樂殺人夫樂殺人者則不可得志於天下
矣吉事尚左凶事尚右偏將軍居左上將軍居右言以喪禮處之殺人之眾以哀悲泣之戰勝以
喪禮處之道常無名樸雖小天下莫能臣侯王若能守之萬物將自賓天地相合以降甘露民莫
之令而自均始制有名名亦既有夫亦將知止知止可以不殆譬道之在天下202.75.4.140海
討論串 (同標題文章)
java 近期熱門文章
PTT數位生活區 即時熱門文章