scala - 我可以使用 Scala 访问 Companion Class 中的 Companion Object 属性吗
问题描述
我有以下非常简单的代码...
import org.apache.logging.log4j.{LogManager, Logger}
class TestSingle {
def doSomething(): Unit = logger.debug("My Log Statement")
}
object TestSingle {
private val logger: Logger = LogManager.getLogger(classOf[TestSingle])
}
但它不会让我从同伴类访问记录器。我是否需要将记录器移动到班级并添加 final 关键字,或者我是否还缺少其他关于如何执行此操作的内容?
解决方案
是的你可以。在使用名称时限定名称:
def doSomething(): Unit = TestSingle.logger.debug("My Log Statement")
或从伴随对象导入所有内容以引入logger
范围:
class TestSingle {
import TestSingle._
def doSomething(): Unit = logger.debug("My Log Statement")
}
推荐阅读
- javascript - 如何在 CodePen 中使用 DateFNS?(dateFns 未定义)
- python - 使用opencv python获取错误的目标旋转角度
- python-3.x - 无法在 python 上连接到 cassandra(使用 cassandra-driver
- excel - 使用 VBA 为单元格赋值
- postgresql - 如何在 postgres 中创建地图样式的索引?
- python - 烧瓶测试 - 尝试使用 SQLAlchemy 连接数据库时出现“RuntimeError:未找到应用程序”
- reactjs - Chrome 开发工具一直停在 ` if (!invalidParentOrAncestor) { return; }` 在 react-dom.development.js 中
- datastax-enterprise - dse 配置的图形生成器
- bash - Cron 不接受 bash 语法
- c# - 语音识别引擎不起作用