ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [JAVA] 인터페이스(Interface)란?
    Java 2021. 12. 28. 02:47
    728x90

     

    인터페이스 

     

       앞으로 만들 클래스의 메소드 규격을 선언해주는 것

     

    •  클래스의 메소드 형식을 미리 선언하고, 인터페이스를 이용해(implements) 만드는 클래스는 인터페이스의 메소드   를 정의해야 함. 
    • 특정 클래스에 어떠한 기능이 있을지 미리 파악 가능.
    • 클래스의 기능이 너무 많고, 구획화를 할 필요가 있을 때 인터페이스 이용.
    • 협업을 할 때, 서로 공통적으로 적용해야 할 규격이 있을 때 이용.

     

    인터페이스의 규칙

     

    1. 인터페이스의 이름은 클래스와 마찬가지로 보통 첫 글자를 대문자로 만들며,
        "~를 할 수 있는" 것들의 규격이라는 의미로 형용사의 이름을 붙이기도 함.

    2. 클래스를 상속할 때는 하나의 클래스로부터 상속받을 수 있는 것과 대조적으로 인터페이스는 여러 개를 모두 적용할 수 있음.  (주의: 적용한 인터페이스들의 메소드를 모두 구현해야 함.)

    3. 인터페이스에는 초기화 된 변수를 정의할 수 있고, 인터페이스를 적용한 클래스는 변수를 재할당 할 수 없음.

     

     

    각각의 인터페이스 특성에 맞춰 구현한 클래스와 객체를 생성한 예시는 다음과 같다.

     

    interface Calculable {
    	double PI = 3.14;
    	int sum(int v1, int v2);
    }
    interface Printable {
    	void print();
    }
    class RealCal implements Calculable, Printable {
    	public int sum(int v1, int v2) {
    		return v1 + v2;
    	}
    	public void print() {
    		System.out.println("this is RealCal!!!");
    	}
    }
    class AdvancedPrint implements Printable {
    	public void print() {
    		System.out.println("This is RealCal!!!");
    	}
    }
    
    
    public class interfaceApp {
    
    	public static void main(String[] args) {
    		Printable r = new RealCal();
    		Printable r2 = new AdvancedPrint();
    		r.print();
    		r2.print();
    	}
    }
    728x90

    'Java' 카테고리의 다른 글

    [JAVA] Exception의 개념  (0) 2021.12.27

    댓글

Designed by Tistory.