什么是“String toString(){..}”?

时间:2014-07-30 06:35:42

标签: groovy

那么请你帮我理解String toString() { "$email" }将在以下程序中做什么?

class User  
{        
    Long id          
    Long version    

    String email   
    String password     

    String toString()
    { "$email" }

    def constraints = 
    {  
    email(email:true)  
    password(blank:false, password:true)     
    }  
}

1 个答案:

答案 0 :(得分:4)

这意味着调用email时将返回toString()变量中的任何内容。

它也可以写成:

@Override
String toString() { 
  email 
}

但作者决定“聪明”(是的,我正在讽刺!)并使用$ notation将变量嵌入到字符串中。

备注
在groovy中,您不必使用return - 默认行为是返回方法中的最后一个语句。