클래스가 해야하는 행동(메소드) 결정합니다.
구현체가 없습니다.
인터페이스를 상속하는 실체 클래스는 반드시 인터페이스에서 선언된 메소드를 모두 구현해야 합니다.
접근한정자를 명시하지 않아도 됩니다. (상속하는 클래스에서는 필요)
interface 인터페이스이름(I로 시작하느나 이름으로 명명)
{
반환형식 메소드이름 (매개변수 목록); //{}구현 없음
}
메소드의 구현을 가질 수 있습니다. (클래스와의 공통점)
객체를 생성할 수 없습니다. (인터페이스와의 공통점)
abstract calss 클래스이름
{ abstract 추상메소드이름();
메소드이름()
{
//구현코드
}
}