当将scala字段标准为@BeanProperty时,会自动生成get/set方法。java
import scala.reflect.BeanProperty class Counter_3 { @BeanProperty var name: String = "hello" } object Counter_3 { def main(args: Array[String]) { var counter_3 = new Counter_3 counter_3.setName("chen") print(counter_3.getName) counter_3.name println() counter_3.name = "skdkd" counter_3.name_= ("sdsd") println(counter_3.name) } }
结果ide
chen sdsd
将会生成四个方法spa
name:Stringscala
name_=(newValue: String): Unitci
getName(): Stringget
setName(newValue: String): Unitit
若是以主构造器参数的方式定义了某字段,而且你须要javabean版的getter和setter方法。class
import scala.reflect.BeanProperty class Counter_3(@BeanProperty var name: String) { // @BeanProperty // var name: String = "hello" } object Counter_3 { def main(args: Array[String]) { var counter_3 = new Counter_3("skdkds") counter_3.setName("chen") print(counter_3.getName) counter_3.name println() counter_3.name = "skdkd" counter_3.name_=("sdsd") println(counter_3.name) } }结果:
chen sdsd