JWorld@TW the best professional Java site in Taiwan
      註冊 | 登入 | 全文檢索 | 排行榜  

» JWorld@TW » Java 新手區  

按列印兼容模式列印這個話題 列印話題    把這個話題寄給朋友 寄給朋友    訂閱主題
reply to postflat modego to previous topicgo to next topic
本主題所含的標籤
無標籤
作者 Re:請問修飾子proteceted 和 (default) [Re:item1394]
qop

Newbie



發文: 204
積分: 3
於 2003-12-05 12:39 user profilesend a private message to userreply to postreply to postsearch all posts byselect and copy to clipboard. 
ie only, sorry for netscape users:-)add this post to my favorite list
不是 public class 都不能在別的 package 使用。

平常寫程式大概都使用 default package, 而且繼承的都是 API 裡的 public class (幾乎都是 public members), 更不會自找麻煩使用protected, 所以也沒有去注意這個問題。書上怎麼講大概就怎麼相信。
下面使用 default package (a.A 為 public class )
1
2
3
4
5
6
7
public class E extends a.A{  
  public static void main(String[] args) {
    a.A a_ = new a.A();
    a_.i = 2;
    a_.j = 2;
  }
}
編譯結果
1
2
3
4
5
6
7
8
C:\java2tb\b>javac E.java
E.java:4: i is not public in a.A; cannot be accessed from outside package
                a_.i = 2;
                  ^
E.java:5: j has protected access in a.A
                a_.j = 2;
                  ^
2 errors
其實也就是說 只要不是 public 都不能在別的 package 使用
可是已經有繼承了哩!
1
2
3
4
5
6
7
public class F extends a.A{  
  public static void main(String[] args) {
    F f = new F();
    f.i = 2;
    f.j = 2;
  }
}
編譯結果,繼承沒有問題,但是就是不讓你用繼承來的 protected member
應該說「跨 package 時,friendly members 沒被繼承」
1
2
3
4
5
C:\java2tb\b>javac F.java
F.java:4: i is not public in a.A; cannot be accessed from outside package
                f.i = 2;
                 ^
1 error
所以跨 package 時, protected members 只能透過繼承來取用
而不是在子類中可以自由取用父類的 protected members

可是什麼時候該用 protected.... 好像是個難題 >"<


reply to postreply to post
話題樹型展開
人氣 標題 作者 字數 發文時間
28574 [精華] 請問修飾子protected 和 (default) item1394 87 2003-10-07 21:50
27379 Re:請問修飾子proteceted 和 (default) Kent_tseng 1149 2003-10-08 17:52
15353 Re:請問修飾子proteceted 和 (default) rivalhw 1245 2006-02-17 09:02
26812 Re:請問修飾子proteceted 和 (default) mojo 63 2004-02-16 17:33
24284 Re:請問修飾子protected 和 (default) kpeter6 24 2004-09-19 19:05
21516 Re:請問修飾子protected 和 (default) mover 133 2004-11-26 20:32
21506 Re:請問修飾子protected 和 (default) ajyi 1287 2004-12-02 16:43
21330 Re:請問修飾子protected 和 (default) ajyi 793 2004-12-02 17:03
21619 Re:請問修飾子protected 和 (default) ajyi 2956 2004-12-03 15:49
27116 Re:請問修飾子proteceted 和 (default) item1394 26 2003-10-11 17:53
26901 Re:請問修飾子proteceted 和 (default) magicfish 65 2003-10-11 23:04
26454 Re:請問修飾子proteceted 和 (default) mojo 453 2004-02-16 17:10
26385 Re:請問修飾子proteceted 和 (default) yengceng 488 2004-05-21 20:05
26278 Re:請問修飾子proteceted 和 (default) yingssu 183 2004-05-21 21:16
24940 Re:請問修飾子proteceted 和 (default) tree671025 949 2004-09-03 15:41
24409 Re:請問修飾子proteceted 和 (default) Yoshi 158 2004-09-04 08:16
24712 Re:請問修飾子proteceted 和 (default) tree671025 179 2004-09-04 10:54
26975 Re:請問修飾子proteceted 和 (default) frank 1083 2003-10-12 00:35
26835 Re:請問修飾子proteceted 和 (default) anthonychen 123 2003-10-12 00:45
27051 Re:請問修飾子proteceted 和 (default) Duncan 285 2003-12-08 23:47
26670 Re:請問修飾子proteceted 和 (default) item1394 264 2003-12-08 23:52
26646 Re:請問修飾子proteceted 和 (default) Duncan 745 2003-12-09 00:33
26619 Re:請問修飾子proteceted 和 (default) item1394 363 2003-12-09 01:06
26411 Re:請問修飾子proteceted 和 (default) tomato 734 2004-02-15 19:45
27035 Re:請問修飾子proteceted 和 (default) metavige 182 2003-12-09 09:22
26793 Re:請問修飾子proteceted 和 (default) item1394 1039 2003-12-05 01:35
26697 Re:請問修飾子proteceted 和 (default) Duncan 258 2003-12-06 02:04
26678 Re:請問修飾子proteceted 和 (default) item1394 273 2003-12-06 10:15
27295 Re:請問修飾子proteceted 和 (default) Duncan 954 2003-12-06 17:15
26821 Re:請問修飾子proteceted 和 (default) qop 1274 2003-12-05 12:39
26738 Re:請問修飾子proteceted 和 (default) item1394 240 2003-12-05 23:15
26708 Re:請問修飾子proteceted 和 (default) qop 334 2003-12-05 23:49
26680 Re:請問修飾子proteceted 和 (default) item1394 140 2003-12-06 00:22
26721 Re:請問修飾子proteceted 和 (default) qop 324 2003-12-06 01:18
26715 Re:請問修飾子proteceted 和 (default) item1394 771 2003-12-06 09:54
26672 Re:請問修飾子proteceted 和 (default) qop 622 2003-12-06 11:33
26678 Re:請問修飾子proteceted 和 (default) item1394 472 2003-12-06 12:36
26689 Re:請問修飾子proteceted 和 (default) qop 447 2003-12-06 18:19
26620 Re:請問修飾子proteceted 和 (default) item1394 595 2003-12-08 22:49
26594 Re:請問修飾子proteceted 和 (default) Yoshi 314 2003-12-09 01:16
26993 Re:請問修飾子proteceted 和 (default) Duncan 333 2003-12-09 10:22
26622 Re:請問修飾子proteceted 和 (default) UndeadJ 361 2003-12-09 18:01
» JWorld@TW »  Java 新手區

reply to postflat modego to previous topicgo to next topic
  已讀文章
  新的文章
  被刪除的文章
Jump to the top of page

JWorld@TW 本站商標資訊

Powered by Powerful JuteForum® Version Jute 1.5.8