코드팩토리의 플러터 프로그래밍 2판 책을 참고하여 공부용으로 작성한 게시글입니다.
📌 인터페이스
인터페이스는 공통으로 필요한 기능을 정의만 해두는 역할이다.
implements 키워드로 원하는 클래스를 인터페이스로 사용할 수 있다.
인터페이스 적용 개수에는 제한이 없다.
인터페이스(implements)와 상속(extends)과의 차이점
- 상속: 일부 기능 재정의 가능. (모든 기능이 extends 키워드로 상속되므로 따로 재정의해줄 필요가 없다.)
- 인터페이스: 모든 기능을 재정의해야 함 (애초에 반드시 재정의할 필요가 있는 기능을 정의하는 용도이기 때문에 모두 정의해야 함)
@override 키워드는 선택사항
인터페이스는 클래스 계층을 만들지 않고 단순히 구현만 강제하는 방식이다.
상속과 달리 계층 구조가 생기지 않는다. 그래서 super키워드를 사용할 수 없다.
class Person{
final String name;
void printName(){
}
}
class Student implements Person{
final String name;
final int age;
void printName(){
}
}
#코드팩토리의플러터프로그래밍2판 #공부용
'◼️Flutter' 카테고리의 다른 글
[Flutter Dart] 클래스 - 추상 클래스 'abstract' 키워드 (0) | 2025.01.25 |
---|---|
[Flutter Dart] 클래스 - mixin 클래스, with 혼합 (0) | 2025.01.25 |
[Flutter Dart] 클래스 - 오버라이드 @override (0) | 2025.01.25 |
[Flutter Dart] 클래스 - 상속 extends, override (0) | 2025.01.25 |
[Flutter Dart] 클래스 - 게터 세터 (0) | 2025.01.25 |