개발 언어/자바 java

자바 interface static 사용법

삐뚤어진 개발자 2020. 4. 11.

자바에서 interface를 사용할 때, 사용하는 메서드에서 static을 사용하려면 어떻게 해야할까요?

 

자바 8에서 interface 에 default 메서드를 지원한다고 합니다.

 

static 메소드 내에서 interface 객체를 사용하고 싶다면, default 메소드로 선언하여야 사용할 수 있습니다.

 

 

test_interface.java

public interface test_interface{
	public String test_if(int a, int b);
    defualt String test_if_default(int a, int b);
}

 

 

other_class.java

public class other_class{
    test_interface t_if new test_interface();
    public void test_method_1(){
        String test = t_if.test_if(1,2);
    }
    public static void test_method_2(){
        String test = t_if.test_if_default(1,2);
    }
}

 

위와 같이 static 메소드에서는 default 메소드를 사용한 인터페이스 객체를 사용할 수 있습니다.

default 메소드를 사용하지 않은 인터페이스 객체는 static 메소드 test_method_2에서 사용할 수 없습니다.

댓글