• 회원가입
  • 로그인
  • 구글아이디로 로그인

[Keyword] Java - interface 키워드 - 인터페이스 선언

1,435  
목차
  1. interface 예제 - 단일 interface 구현
  2. interface 정의
  3. 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();

  }

}

 



분류 제목
Keyword Java - short 키워드 - short 정수 자료형 선언.
Keyword Java - static 키워드 - 객체 생성 없이 바로 접근 가능한 (메서드/속성) 선언.
Keyword Java - strictfp 키워드 △ - 부동 소수점 계산 정밀도 및 반올림 제한.
Keyword Java - super 키워드 - 슈퍼클래스 (= 부모클래스) 객체 의미.
Keyword Java - switch 키워드 - switch 조건문 선언.
Keyword Java - synchronized 키워드 △ - 한 번에 하나의 스레드에서만 메소드에 접근 가능 지정하는 …
Keyword Java - this 키워드 - (메서드・생성자)에서 현재 객체 지칭. (= 디스)
Keyword Java - throw 키워드 - exception (= 예외 = 사용자 지정 오류) 던지기
Keyword Java - throws 키워드 -
Keyword Java - transient 키워드 △ - 속성이 객체의 지속 상태의 일부가 아님을 지정하는 비접근 수정자…
Keyword Java - try 키워드 - 오류 테스트 할 코드 블록 정의
Keyword Java - var 키워드 △ - 변수 선언. (Java 10 이상부터.)
Keyword Java - void 키워드 - 해당 메서드가 반환값을 가져서 안 됨 지정.
Keyword Java - volatile 키워드 △ - 속성을 항상 "주 메모리"에서 읽음 의미.
Keyword Java - while 키워드 - while 반복문 선언.
3/3
목록
찾아주셔서 감사합니다. Since 2012