암시적 인터페이스
// Person 클래스는 암시적 인터페이스인 greet() 메서드를 갖습니다.
class Person {
// 인터페이스에 있지만, 이 라이브러리에서만 접근 가능합니다.
final String _name;
// 생성자는 인터페이스에 존재하지 않습니다.
Person(this._name);
String greet(String who) => 'Hello, $who. I am $_name.';
}
// Person 인터페이스를 구현합니다.
class Impostor implements Person {
// Error: The non-abstract class 'Impostor' is missing implementations for these members: - Person._name
String get _name => '';
String greet(String who) => 'Hi $who. Do you know who I am?';
}
String greetBob(Person person) => person.greet('Bob');
void main() {
print(greetBob(Person('Kathy')));
print(greetBob(Impostor()));
}Last updated