iT邦幫忙

2022 iThome 鐵人賽

DAY 21
0
自我挑戰組

連續30天 初學者介紹Scala語言系列 第 21

[Day 21]Scala Access modifiers

  • 分享至 

  • xImage
  •  

今天來聊聊Scala的存取修飾詞(Access modifiers)

Access modifier即存取修飾詞也就是publicprivateprotected,這些修飾詞可以限制套件、類別、物件裡的成員存取特定區域的程式。而Scala對存取修飾詞的操作就類似於Java,不過多了一些重要的差別。

public成員

Scala對public成員沒有明確的修飾詞
所有成員只要沒有標示為privateprotected,那它就是public
public成員可以存去任何地方的code

private成員

Scala的private成員類似Java的private成員
一個被標示為private的成員它只能存取那些定義過它的類別或物件

class Outer:

    class Inner:
        private def f = "f"
        class InnerMost:
            // f is OK
    (new Inner).f    // error

protected成員

在Scala裡,protected成員只能從定義該成員的子類別訪問

package h:
    class Super:
        protected def f = "f"
    class Sub extends SUper:
        f
    class other:
        (new Super).f    //error

上一篇
[Day 20]Scala Imports
下一篇
[Day 22]Scala Case class
系列文
連續30天 初學者介紹Scala語言30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言