
1. 다형성
- 부모 생성자와 자식 생성자
class Burger {
Burger() {
// 부모 생성자
print("버거");
}
}
class CheeseBurger extends Burger {
CheeseBurger() {
// 자식 생성자
print("치즈버거");
}
}
void main() {
CheeseBurger cb = CheeseBurger();
}

2. Super
- 자식이 부모의 객체를 참조할 수 있는 키워드
- 자바에서는 생략되어있음
class Animal{
String name;
Animal(this.name);
}
class Dog extends Animal{
// Dog(super.name);
Dog(String name) : super(name); // 자바처럼 기본 생성자와 super가 생략되어있지 않기에 적어야 함
}
- dart에서는 적어줘야 함
class Burger {
String? name;
Burger() {}
}
class CheeseBurger extends Burger {
CheeseBurger(String name) {
super.name = name;
}
}
void main() {
CheeseBurger cb = CheeseBurger("치즈햄버거");
print(cb.name);
}

Share article