목차
interface 예제 - 단일 interface 구현
interface 정의
interface 예제 - 다중 interface 구현
interface 예제 - 단일 interface 구현
Hz.java
interface Site {
public void site(); // 인터페이스 메서드 선언
public void host(); // 인터페이스 메서드 선언
}
class My implements Site {
public void site() { // 인터페이스 메서드 정의
System.out.println("홈짱닷컴");
}
public void host() { // 인터페이스 메서드 정의
System.out.println("Homzzang.com");
}
}
class Hz {
public static void main(String[] args) {
My my = new My();
my.site();
my.host();
}
}
결과값:
홈짱닷컴
Homzzang.com
interface 정의
추상 메서드만 포함하는 특수 유형의 클래스 를 선언하는 데 사용.
1. 클래스 vs 인터페이스
class (클래스) :
extends 키워드 사용해 상속.
클래스가 오직 1개의 클래스만 상속 가능. (※ 다중 상속 지원 X)
interface (인터페이스) :
implements 키워드 사용해 구현.
클래스가 복수의 인터페이스를 구현 가능. (※ 다중 구현 지원 O)
2. 인터페이스 특징
직접 객체 생성 불가.
선언된 메서드의 구체적 정의는 implements 한 클래스에서 함.
인터페이스 구현 시, 반드시 선언된 메서드의 정의를 해줘야 함.
인터페이스 메서드 는 기본적으로 abstract, public 특징을 가짐.
인터페이스 속성 은 기본적으로 public, static, final 특징을 가짐.
인터페이스는 생성자 가질 수 없음 . (∵ 객체 생성 불가하므로.)
첫 글자는 대문자 사용.
3. 인터페이스 사용 이유
보안 확보. (∵ 특정 세부 정보 숨기고, 주요 정보만 표시)
코드 정합성 (= 코드 복잡성에 따른 에러 발생 방지) 확보.
interface 예제 - 다중 interface 구현
interface Site {
public void site(); // 인터페이스 메서드 선언
}
interface Host {
public void host(); // 인터페이스 메서드 선언
}
class My implements Site, Host {
public void site() { // 인터페이스 메서드 정의
System.out.println("홈짱닷컴");
}
public void host() { // 인터페이스 메서드 정의
System.out.println("Homzzang.com");
}
}
class Hz {
public static void main(String[] args) {
My my = new My();
my.site();
my.host();
}
}
주소 복사
랜덤 이동
최신댓글