采取一个简单的类,如下所示:
class Person(name: String, age: Int) {}
现在,当我实例化这个类时,我通常希望它的用户能够使用name
和age
. 喜欢:
val ronald = new Person("Ronald", 22)
val ronaldsName = ronald.name // <-
这当然行不通,除非我定义一个getter calledname
或创建Person
一个case class。后者是一个简单的解决方案,但我觉得我在滥用案例类?
前者还是有点不方便,因为我不能简单地:
class Person(name: String, age: Int) {
def name = name
}
因此,我必须将name
类构造函数中的第一个重命名为其他名称,例如personName
or_name
或n
。但这在我看来有点令人困惑,而且远没有那么优雅。它是相同的概念/变量/值,所以它应该具有完全相同的名称,对吧?
那么......这里最好或正确的做法是什么?只是添加它是如此case
诱人。