자바에서 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에서 사용할 수 없습니다.
'개발 언어 > 자바 java' 카테고리의 다른 글
[자바] 어노테이션 이란? (사용법, 커스텀,왜 사용하나?) (0) | 2020.08.20 |
---|---|
자바 [java] this 란?/ 의미 / 사용법 (0) | 2020.04.21 |
[java] 따옴표 제거 하기 (replaceall) (0) | 2020.03.03 |
[java] 문자열 바꾸기 (replace) (0) | 2020.02.18 |
[java] String, int 형 변환 (0) | 2020.02.18 |
댓글