作者pzyc79 (I'm bored)
看板java
標題[問題] 在子類別new建構子為protected的父類別
時間Sun May 11 00:53:48 2014
===============Class Test:===============
package a;
public class Test {
protected Test(){
}
}
===============Class Test2:==============
package b;
import a.Test;
public class Test2 extends Test{
void fun(){
Test t = new Test(); //Test() is not visible
}
}
WHY? 宣告protected不是可以在子類別中看見嗎?
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.240.30.17
※ 文章網址: http://webptt.com/m.aspx?n=bbs/java/M.1399740834.A.2E7.html
※ 編輯: pzyc79 (111.240.30.17), 05/11/2014 00:56:05
1F:推 luoqr:是在 new Test2() 時 super() 看的見, 不是在new Test()看見 05/11 01:00
===============Class Test:===============
package a;
public class Test {
Test(){
}
}
===============Class Test2:==============
package a;
import a.Test;
public class Test2 extends Test{
void fun(){
Test t = new Test(); //OK
}
}
照你說的「是在new Test2()時super()看的見 ,不是在 new Test() 看見 那換成這樣…… 在new Test()又看的見了?
※ 編輯: pzyc79 (111.240.30.17), 05/11/2014 01:33:01
2F:→ luoqr:default 是在同一個pkg下看的見沒錯呀 XD 05/11 02:45
3F:→ pzyc79:在等這句...代換一下protected是在子類別下看的見沒錯呀 XD 05/11 03:43
4F:推 luoqr:這應該是定義問題 constructor 和 function 不一樣 05/11 12:34