如何使用运行时参数在 Scala 中创建单例对象 [英] How to create a singleton object in Scala with runtime params

查看:54
本文介绍了如何使用运行时参数在 Scala 中创建单例对象的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试使用运行时指定的参数创建一个单例对象.示例:

I'm trying to create a singleton object with parameters which are specified by runtime. Example:

object NetworkPusher {
  val networkAdress = ???
  ...
 }

想象一下 networkAdress 参数来自命令行.我该如何解决此问题?

Imagine the networkAdress param comes from the command-line. How can I make a workaround to do this?

推荐答案

单例被延迟初始化.

scala> :pa
// Entering paste mode (ctrl-D to finish)

object Net {
  val address = Config.address
}
object Config { var address = 0L }

// Exiting paste mode, now interpreting.

defined object Net
defined object Config

scala> Config.address = "1234".toLong
Config.address: Long = 1234

scala> Net.address
res0: Long = 1234

FWIW.

这篇关于如何使用运行时参数在 Scala 中创建单例对象的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆