Re: [問題] private繼承問題

作者: qrtt1 (有些事,有時候。。。)   2014-07-16 09:49:27
※ 引述《kiwatami (悠游自在)》之銘言:
............................................... 43
→ kiwatami:官方文件有說我就不能問嗎= =? 怎麼感覺你很不想我發言 07/15 22:08
→ Chikei:因為你一直在"你的想法"、"你覺得",這邊是Java版我們在討 07/15 22:59
→ Chikei:論的是Java,那當然所有不清楚的名詞最終都以JLS為標準 07/15 22:59
→ Chikei:現在JLS直接說明了private field就是不會被繼承,或者說這 07/15 23:00
→ Chikei:就是Java the Language的"繼承"定義,你再覺得不合理也請接 07/15 23:00
→ Chikei:受,因為我們是在討論Java語言。 07/15 23:01
→ Chikei:當然要來大戰Java定義的繼承跟一般programmer談到繼承時候 07/15 23:08
→ Chikei:的心靈模型一不一樣不是不可,但很明顯跟原po的問題無關 07/15 23:09
→ TonyQ:其實我覺得都可以討論啦 就是對語意瞭解不一致而已XD 07/16 06:21
→ TonyQ:也沒有人說不能/不想發言,原 po 多心了~ XD 07/16 06:22
→ kiwatami:不好意思 從小到大我覺得不合理的都不會接受... 沒有要吵 07/16 08:58
→ kiwatami:架的意思啦 只是覺得好像講出自己的想法反而不行的感覺 07/16 08:58
http://docs.oracle.com/javase/specs/jls/se7/html/jls-8.html#jls-8.2
Members of a class that are declared private are
not inherited by subclasses of that class.
目前問題的關鍵在於 kiwatami 版友
沒有把 field 與 method 的繼承視為獨立事件。
Members of a class 可以是 field 或 method,
版上已經接受規格定義的人,是將這二種 member 的繼承與否當成獨立事件
作者: kiwatami (悠游自在)   2014-07-15 22:08:00
官方文件有說我就不能問嗎= =? 怎麼感覺你很不想我發言
作者: Chikei ( )   2014-07-15 22:59:00
因為你一直在"你的想法"、"你覺得",這邊是Java版我們在討論的是Java,那當然所有不清楚的名詞最終都以JLS為標準現在JLS直接說明了private field就是不會被繼承,或者說這就是Java the Language的"繼承"定義,你再覺得不合理也請接受,因為我們是在討論Java語言。當然要來大戰Java定義的繼承跟一般programmer談到繼承時候的心靈模型一不一樣不是不可,但很明顯跟原po的問題無關
作者: TonyQ (自立而後立人。)   2014-07-16 06:21:00
其實我覺得都可以討論啦 就是對語意瞭解不一致而已XD也沒有人說不能/不想發言,原 po 多心了~ XD
作者: kiwatami (悠游自在)   2014-07-16 08:58:00
不好意思 從小到大我覺得不合理的都不會接受... 沒有要吵架的意思啦 只是覺得好像講出自己的想法反而不行的感覺
作者: swpoker (swpoker)   2014-07-16 11:44:00
每種語言都有不同的特質~要先放下自己~才能得到世界
作者: ssccg (23)   2014-07-16 12:42:00
我不覺得他的問題跟field和method是不是獨立有關上一篇回的比較好,問題在inherit是可存取還是存在
作者: swpoker (swpoker)   2014-07-16 14:29:00
k版友的問題在於用自己的角度去理解JAVA~而忽略JAVA特性繼承是可不用複製貼上就可以存取成員~達到模組化的目的但是java特別注重在存取成員的特性包括對象及範圍類別A想套用類別X~那麼不用複製類別X的程式碼~繼承就好了但是也不代表類別X就要給人看光光~也些東西不可以給人看到所以根據對象及範圍的不同就有了這四種存取限制
作者: NewSpec (新規格)   2014-07-16 21:05:00
勸k不要用這種心態來學習語言, 除了遇到瓶頸不容易突破外也很容易在熟練某種技術後過於堅持, 而忽略其他技術的優點

Links booklink

Contact Us: admin [ a t ] ucptt.com