gpt4 book ai didi

scala - scala 类定义中这个额外的 private[class]() 是什么意思?

转载 作者:行者123 更新时间:2023-12-03 04:52:50 26 4
gpt4 key购买 nike

我正在阅读别人在 Scala 上的代码,以便更好地学习这门语言,但我对下面的“privateutil”含义感到困惑,如果我刚刚看到 [util],我会怀疑它是某种特定的通用?但它有自己的私有(private)修饰符?

class RPGPluginProperties private[util]() extends Properties {

最佳答案

来自http://www.scala-lang.org/files/archive/spec/2.11/05-classes-and-objects.html#private :

A private modifier can be qualified with an identifier C (e.g. private[C]) that must denote a class or package enclosing the definition. Members labeled with such a modifier are accessible respectively only from code inside the package C or only from code inside the class C and its companion module.

因此,在本例中,private 修饰符使无参数构造函数对 util 类/包私有(private)。

要将类声明为范围 util 的私有(private)类,它将是 private[util] class RPGPluginProperties...

关于scala - scala 类定义中这个额外的 private[class]() 是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31215884/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com