先看一段代码
class Person {
String? name;
Person({this.name});
get getName {
return name;
}
set setName(String name) {
this.name = name;
}
}
void main() {
Person person = new Person(name: '张三');
print(person.getName);
person.setName = '李四';
print(person.getName);
}
结果
get
当一个方法被定义为get方法时是不用在方法名后加括号的,上面的getName方法后就没有括号。调用这个方法时可以把它当作属性来调用,就是上面的person.getName
set
set方法和普通方法的书写没什么区别,不同点也是在调用上,也和属性一样使用,和属性一样给它赋值
总结
get方法定义时不要括号,set要;get和set方法调用都不用加括号,get方法直接调用,set方法要赋值