gpt4 book ai didi

scala - scala 访问限定符的保证是什么?

转载 作者:行者123 更新时间:2023-12-04 07:05:16 27 4
gpt4 key购买 nike

我有一个带有此代码的类:

package shop.orders.services.email

private[services] class EmailService {...}

然后在另一个包中,我使用该类:
package shop.ui

import shop.orders.services.email.EmailService

class PaymentConfirmation extends WithFacesContext {

var emailService: EmailService = null

查看生成的字节码,没有任何访问修饰符的迹象,这是有道理的,因为 Java 不支持此类访问限制。那么如果我创建一个包含像块一这样的代码的库,并尝试针对该库编译块 2 会发生什么 - 编译器不会失败,因为信息丢失了。或者它包含在 list 之类的东西中?

我正在使用 Scala 2.9.2。

最佳答案

您可以引用 EmailService来自 Java,但不是来自 Scala,因为 Scala 将类的签名存储为 scala.reflect.ScalaSignature注解。 Scala 编译器将失败并显示以下错误:

class EmailService in package email cannot be accessed in package shop.orders.services.email

关于scala - scala 访问限定符的保证是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13712506/

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