close

這篇是想跟大家分享在物件導向的語言中經常會出現的「修飾元」或「修飾詞」(Modifier):

修飾元可分為 存取權限修飾元 (access level modifier) 以及 非存取權限修飾元 (non access modifier)

本篇只介紹存取權限修飾元的 private、protected、public

 

private:

private宣告的函式或變數,只能由自己類別所存取

 

protected:

繼承類別准許存取 protected 成員,但外部使用仍然禁止

 

public:

private宣告的函式或變數,不管是自己類別、繼承自己的類別或外部的類別都能存取

 

那如果不加上述任何一個「修飾元」,那會怎樣呢?
不用擔心,java還有「default」這招~

default:

在同一Package的類別可以存取

 

為了讓大家更能了解它們的分別,我總結成下表

存取修飾元的可視範圍:

存取修飾元

同一Class

同一Package

子類別

不同的Package

Private

Yes

-

-

-

Default 無修飾元

Yes

Yes

-

-

Protected

Yes

Yes

Yes

(Yes)要繼承

Public

Yes

Yes

Yes

Yes

 

reference:
http://blog.yam.com/swwuyam/article/11844517
http://blog.xuite.net/andy19890411/Orz/33646696-%E3%80%90JAVA%E3%80%91%E5%AD%98%E5%8F%96%E4%BF%AE%E9%A3%BE%E5%85%83%E3%80%82

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 Chris_U in CSIE 的頭像
    Chris_U in CSIE

    Chris_U的CSIE部落格

    Chris_U in CSIE 發表在 痞客邦 留言(0) 人氣()