ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [Java] 인터페이스(interface)
    프로그래밍/JAVA 2022. 8. 8. 22:46
    728x90

     

     

    자바는 다중상속을 지원하지 않으므로 인터페이스를 사용해서 다중상속을 구현할 수 있다. 인터페이스는 다른 클래스를 작성할 때 기본이 되는 틀을 제공하면서, 다른 클래스 사이의 매개 역할을 담당하는 일종의 추상클래스와 비슷한 개념을 가지고 있다. 인터페이스는 추상 메소드와 상수만을 포함 할 수 있고 JDK8이상부터는 인스턴스 메소드, static메소드도 포함한다.

     

    인터페이스는 다중 상속뿐만 아닌 장점도 존재한다. 개발 시 일관되고 정형화된 개발을 위한 표준화가 가능하고 개발시간 단축의 이점이 있다.

     

     

    인터페이스 선언

    인터페이스를 선언하기 위해서는 interface 키워드를 사용한다.

     

    접근제어자 interface 인터페이스명{
    	
        // 인터페이스의 모든 필드는 public static final
        // 인터페이스의 모든 메소드는 public abstract
        public static final 타입 상수명 = 값;
        public abstract 메소드명(매개변수1, 매개변수2...);
    
    }

     

     

    인터페이스 구현

    상속과 인터페이스의 구현을 동시에 하기위해서는 extends 키워드와 implements 키워드 순으로 작성해주면되고 다중상속을 표현하고 싶다면 인터페이스 클래스를 콤마(,)를 붙여 나열하면 된다.

    class 클래스명 implements 인터페이스명{
    	...
    }
    
    // 자바의 상속과 인터페이스의 구현을 동시에 하려면
    class 클래스명 extends 부모클래스명 implements 인터페이스명{
        ...
    }
    
    // 여러개의 인터페이스를 구현하려면
    class 클래스명 extends 부모클래스명 implements 인터페이스명, 인터페이스명, 인터페이스명 ... {
        ...
    }

     

     

     

     

     

    728x90

    '프로그래밍 > JAVA' 카테고리의 다른 글

    [Java] List 컬렉션 클래스  (0) 2022.08.09
    [Java] 컬렉션 프레임워크(collection framework)  (0) 2022.08.09
    [Java] 추상 클래스(abstract class)  (0) 2022.08.08
    [Java] Wrapper class  (0) 2022.08.08
    [Java] 다형성(polymorphism)  (0) 2022.08.07

    댓글

Designed by Tistory.