Setter, Getter, và Kế Thừa trong Dart
- Setter
- là 1 phương thức giúp đặt giá trị cho 1 thuộc tính trong đối tượng
- được gọi và sử dụng với tên là set
class Rectangle {
double _width;
set width(double value) {
if (value > 0) {
_width = value;
} else {
print("Width should be greater than 0.");
}
}
}
void main() {
Rectangle rectangle = Rectangle();
rectangle.width = 10; // Gọi setter để đặt giá trị cho width.
}
2. Getter
- là 1 phương thức giúp lấy giá trị của 1 thuộc tính trong đối tượng
- được gọi và sử dụng với tên là get
class Rectangle {
double _width;
set width(double value) {
if (value > 0) {
_width = value;
} else {
print("Width should be greater than 0.");
}
}
double get width => _width;
}
void main() {
Rectangle rectangle = Rectangle();
rectangle.width = 10;
print(rectangle.width); // Gọi getter để lấy giá trị của width.
}
3. Kế thừa (extends)
- cho phép 1 class con sử dụng lại các phương thức và thuộc tính của class cha
- Ngoài ra khi khởi tạo 1 class con mà muốn gọi tới constructor của class cha thì có thể sử dụng super
class Animal {
String name;
Animal(this.name);
void speak() {
print("Animal speaks");
}
}
class Dog extends Animal {
Dog(String name) : super(name);
void bark() {
print("Woof! Woof!");
}
// Override phương thức speak từ lớp cha.
@override
void speak() {
print("Dog barks");
}
}
void main() {
Dog myDog = Dog("Buddy");
myDog.bark();
myDog.speak(); // Gọi phương thức speak của lớp con.
}