Scala构造函数中的函数不会被调用

时间:2014-10-11 21:17:42

标签: class scala constructor playframework

我正在使用Scala和Play框架来创建一个web应用程序。我有一个连接到Cassandra DB的类。我使用构造函数连接到数据库,但它不起作用,实际上,我无法从构造函数中调用任何函数函数。我是Scala的新手,但是从我在Scala上的教程中读到它应该可行。这是代码:

class Database
{       
var cluster = Cluster.builder().addContactPoint(Play.application.configuration.getString("cassandra.node")).build()
var session = cluster.connect("acm")
}
为了清楚起见,我删除了课堂的其他部分。 当我创建一个类的实例时,这些函数不会被调用,并且当在另一个函数中使用它们时,变量将被保留为unnassigned。他们从常规功能中工作得很好。我还用记录器对它进行了测试,但没有写入任何内容。那么这里发生了什么?

1 个答案:

答案 0 :(得分:0)

scala> class A {
         var x = 1
         println(s"x = $x")
       }

       val a = new A

我得到了预期的结果

scala> x = 1

从上下文中给出的内容,我认为它应该有用。如果它没有,它应该驻留在其他地方。