개발이 좋아서/Flutter가 좋아서
[Dart] 3일차_객체지향_상속_override
zoaseo
2022. 12. 14. 13:21
1)
void main() {
TimesTwo tt = TimesTwo(2);
print(tt.calculate());
TimesFour tf = TimesFour(2);
print(tf.calculate());
}
// method - function (class 내부에 있는 함수)
// override - 덮어쓰다 (우선시하다)
class TimesTwo {
final int number;
TimesTwo(
this.number,
);
// method
int calculate() {
return number * 2;
}
}
class TimesFour extends TimesTwo {
TimesFour(
int number,
) : super(number);
@override
int calculate() {
// return super.number*4; // 이게 정석이지만 아래로 표현할 수 있다!!!
// return number * 4;
return super.calculate() * 2; // 이렇게 쓸수도 있다!!!
}
}