[Dart] Interface

devvace ㅣ 2022. 12. 8. 20:56

void main() {

}

class IdolInterface { // dart에서는 따로 interface 키워드를 쓰지 않음
	String name;

	IdolInterface(this.name);
	
	void sayName() {}
}

class BoyGroup implements IdolInterface {
	String name;
	
	BoyGroup(this.name);

	void sayName() {}
}

Dart에서는 interface 키워드가 없기 때문에, 실수로 선언할 수도 있다. (ex. IdolInsterface ii = IdolInterface('블랙핑크');)

그래서 이런 실수를 막기 위해서는 abstract 선언을 해주면 된다.

abstract를 사용하면 body(중괄호)를 넣을 필요도 없어진다.

//...

abstract class IdolInterface {
	String name;

	IdolInterface(this.name);

	void sayName();
}

class BoyGroup implements IdolInterface {
	String name;
	
	BoyGroup(this.name);

	void sayName();
}