PTT
Submit
Submit
选择语言
正體中文
简体中文
PTT
java
Re: [问题] 关于向上转型
楼主:
jackblack
2016-10-09 02:07:43
※ 引述《DisdainU (茎茎濡吮汁)》之铭言:
: class Derived extends PrivateOverride{}
: public class PrivateOverride{
: private void f(){
: System.out.println("private f()");
: }
: public static void main(String[] args){
: PrivateOverride p=new Derived();
: p.f();
: }
: }
: /* output:
: private f()
: */
: 想问的是 既然base class的f()是private
: 也就代表在Derived中看不到f()
: 那为什么例子中却可以执行出结果?
: 手机排版 请见谅
:
作者:
v9290026
(CH)
2016-10-09 02:19:00
推!
作者:
DisdainU
(茎茎濡吮汁)
2016-10-09 02:47:00
意思是说,如果我在Derived中加入同样的f(),但将此method改成public(意味两个f()为不一样的method只是名字一样),其余不变,执行结果依然是呼叫private method,是因为java在操作物件是先以reference的型别为主。我这样理解有误吗?
作者:
haha02
(来人!上夹棍!)
2016-10-09 03:42:00
应该是因为private method无法被override 两者视为不同的method吧你到Derived#f()
[email protected]
如果会表示没有override到
作者:
DisdainU
(茎茎濡吮汁)
2016-10-09 12:52:00
了解了!谢谢解答
作者:
v9290026
(CH)
2016-10-09 17:26:00
[email protected]
继续阅读
[问题] eclipse scala run Spark 找不到class
popo14777
[问题] 新手提问 猛虎124题
shehrevar
[问题] 关于向上转型
DisdainU
[问题] autowired问题一问
goldberg123
[问题] createNativeQuery的SQL打印
h06h06
[书籍] 征JAVA考试卷一张
alex020917
[书籍] 卖Java SE8技术手册(已售出)
max80713
[问题] 如何查询物件的内存位置?
OnlyCourage
[问题] 程式撰写问题
happy80313
[卖书]Java SE 7 技术手册(附光盘)
heartsky7
Links
booklink
Contact Us: admin [ a t ] ucptt.com