6
在Scala中使用def,val和var
class Person(val name:String,var age:Int ) def person = new Person("Kumar",12) person.age = 20 println(person.age) 这些代码行输出12,即使person.age=20已成功执行。我发现发生这种情况是因为我使用了def in def person = new Person("Kumar",12)。如果我使用var或val,则输出为20。我了解Scala中的默认值为val。这个: def age = 30 age = 45 ...给出编译错误,因为默认情况下为val。为什么上面的第一行行不能正常工作,但是也不会出错?
158
scala