文章目录
一、使用 对象名.@成员名 访问 Groovy 对象成员
二、完整代码示例
一、使用 对象名.@成员名 访问 Groovy 对象成员
针对 Groovy 中的类 ,
class Student { def name def age }
创建 Student 对象 , 如果使用 对象名.成员名 访问该对象中的成员 , 其本质上是调用 Student 对象的 getter 和 setter 方法 ;
// 实例化 Student 类 def student = new Student() // 对 对象名.成员名 赋值 , 相当于执行 setter 方法 student.name = "Jerry" student.age = 16 // 使用 对象名.成员名 访问成员 , 相当于执行 getter 方法 println student.name println student.age
如果不想调用 getter 和 setter 方法 , 可以使用 对象名.@成员名 的格式 , 访问对象的成员变量 ;
// 使用 对象名.@成员名 访问对象成员 student.@name = "Jim" student.@age = 58 println student.@name println student.@age
打印结果为 :
Jim 58
二、完整代码示例
完整代码示例 :
/** * 创建 Groovy 类 * 在其中定义 2 个成员 */ class Student { def name def age } // 实例化 Student 类 def student = new Student() // I. 使用 getter 和 setter 方法访问成员 // 使用 setter 方法设置成员变量 student.setName("Tom") student.setAge(18) // 使用 getter 方法获取成员值 println student.getName() println student.getAge() // II. 使用 对象名.成员名 访问对象成员 // 对 对象名.成员名 赋值 , 相当于执行 setter 方法 student.name = "Jerry" student.age = 16 // 使用 对象名.成员名 访问成员 , 相当于执行 getter 方法 println student.name println student.age // III. 使用 对象名.'成员名' 访问对象成员 // 对 对象名.'成员名' 赋值 , 相当于执行 setter 方法 student.'name' = "Han" student.'age' = 32 // 使用 对象名.'成员名' 访问成员 , 相当于执行 getter 方法 println student.'name' println student.'age' // IV. 使用 对象名['成员名'] 访问对象成员 // 对 对象名['成员名'] 赋值 , 相当于执行 setter 方法 student['name'] = "CSDN" student['age'] = 9 // 使用 对象名['成员名'] 访问成员 , 相当于执行 getter 方法 println student['name'] println student['age'] println student.getAt("age") // V. 使用 字符串变量 访问对象成员 // 定义字符串变量 def field = "name" // 通过字符串变量访问 对象成员 println student."${field}" // VI. 使用 对象名.@成员名 访问对象成员 // 使用 对象名.@成员名 访问对象成员 student.@name = "Jim" student.@age = 58 println student.@name println student.@age
执行结果 :
Tom 18 Jerry 16 Han 32 CSDN 9 9 CSDN Jim 58