Rectancle class with getter and setter (and with “classic” methods)
class Rectangle {
double left, top, width, height;
Rectangle(this.left, this.top, this.width, this.height);
//Getter
//======
double get right => left + width;
//Alternative 'getter'
double getRight() {
return left + width;
}
//Setter
//======
set right(double value) => left = value - width;
//Alternative 'setter'
void setRight(double value) {
left = value - width;
}
toString() {
return 'left=$left, top=$top, width=$width, height=$height';
}
}
void main() {
var rect = Rectangle(3, 4, 20, 15);
print(rect);
//Call setter
rect.right = 12;
//Call getter
print(rect.right);
//Alternative
rect.setRight(12);
print(rect.getRight());
print(rect);
}