在scala2.10 版本,可以通过导入import scala.reflect.BeanProperty包,在field声明,但是2.11版本这样就不行用了找不到这个包
查看官方API,我们可以导入scala.beans.BooleanBeanProperty:
https://www.scala-lang.org/api/2.11.5/index.html#scala.beans.BeanProperty
This annotation has the same functionality as scala.beans.BeanProperty, but the generated Bean getter will be named isFieldName instead of getFieldName.:意思就是我们可以通过导入scala.beans.BooleanBeanProperty包实现同样的方法,但是以前的getFieldName方法,也就是我们的getter方法,用isFieldName替代了
测试如下,编写Students类:
import scala.beans.BooleanBeanProperty
class Students {
@BooleanBeanProperty
var name1: String ="test"
}
调用getter (isFieldName) & setter方法:
object testPrint {
def main(args: Array[String]): Unit = {
val s =new Students
println(s.isName1)
s.setName1("test222")
println(s.isName1)
}
}
测试结果输出: