如何创建POJO类在Scala中只有空的构造?(How to create POJO class w

2019-10-21 12:58发布

我想创建Scala的POJO类,只有默认的空构造。 在Java中,是这样的:

public class Foo {
    private String name;

    private String address;

    ...

    //and the public getter/setter below...
}

在Scala中,我看到,你可以像这样创建POJO:

case class Foo(var name: String, var address: String, ...)

但在我的情况下,类将有许多特性(约50+),我不认为用实例50点构造函数的参数类是适合这种情况。

更新:

此外,类的属性值可以设置(它不是只读)。 这是我所期望的POJO类的usasge:

val foo = new Foo()
foo.name = "scala johnson"
foo.address = "in my sweeet dream, oh yeah"
...

Answer 1:

怎么样 :

class C {
  var p1:String = _
  var p2:Int = _
}


Answer 2:

如果您不需要实例与参数化的构造方法的类,你将有很多属性,那么也许你需要为对象或是非例类(静态属性和方法的集合)。

对象的示例:

object Foo {
  val someString = "one"

  val someNumber = 42.5    
}

可以有也无例类。 你可以不带任何参数,虽然我不知道你为什么会想在这种情况下,一类一类:

class Foo {
  val someString = "one"
  val someNumber = 42.5
}

你那样称呼他们:

val myObjectString = Foo.someString

val myClass = new Foo
val myClassNumber = myClass.someNumber


文章来源: How to create POJO class with only empty constructor in Scala?
标签: scala pojo