인터페이스(역할, 사용, 상속)
1. 인터페이스의 개념와 역할
-동일한 목적 하에 동일한 기능을 수행하게끔 강제하는 것이 바로 인터페이스의 역할이자 개념이다. (이로 인해 오류의 가능성을 줄이고, 유지보수성을 높일 수 있다)
<선언 방법>
선언방법은 다음과 같다.
-선언을 하고 클래스에 적용할 때 implements를 사용한다.
public interface 인터페이스이름 {
public void 메소드이름1()
}
class 클래스이름 implements 인터페이스이름{
public void 메소드이름1()
}
참고:
[JAVA] 자바 인터페이스란?(Interface)_이 글 하나로 박살내자
1. 인터페이스 개념과 역할 인터페이스....이 글하나로 박살내자. (회사에서 존댓말을 많이 쓰기때문에 여기서라도 반말로 글을 써보고 싶음 ㅎ) 인터페이스는 뭘까?? 결론부터 말하면, 극단적으
limkydev.tistory.com
2. 인터페이스 상속과 사용
인터페이스도 클래스처럼 상속이 가능하다.
package org.opentutorials.javatutorials.numberstring;
interface In{
public void printA();
}
interface In2 extends In{
public void printB();
}
class Cl implements In2{
public void printA() {
System.out.println("A");
};
public void printB() {
System.out.println("B");
};
}
public class Number {
public static void main(String[] args) {
Cl c = new Cl();
c.printA();
c.printB();
}
}
결과:
A
B
인터페이스 In을 상속한 In2를 만들었다. 그다음 클래스 C1을 만들어 클래스 C1이 인터페이스 In2를 적용하게 만든다. 그리고 메소드 printA에서는 A를 출력하게, printB에서는 B를 출력하게 구체적인 내용을 만든다. 이후 main메소드에서 인스턴스 c를 만들어 printA와 printB를 실행하면, A와 B가 정상적으로 출력된다. 이로서 인터페이스의 상속을 확인해 볼 수 있었다.
참고:
opentutorials.org/course/1223/6063
인터페이스 - 생활코딩
인터페이스란? 인터페이스(interface)는 다소 추상적인 개념이다. 인터페이스가 무엇인가를 철학적으로 논하려면 책 한권이 필요할지도 모르겠다. 하지만 우리는 철학 공부를 하는 것이 아니라 공
opentutorials.org
3. 인터페이스 다중상속
하나의 인터페이스가 여러개의 인터페이스를 상속받을 수 있다.
또한 하나의 클래스가 여러개의 인터페이스를 구현 할 수 있다.
###인터페의 맴버는 반드시 Public 이여야 한다!!!
4. 인터페이스와 추상 클래스의 차이점
1. 인터페이스는 클래스가 아닌 인터페이스라는 고유한 형태를 가지고 있는 반면 추상 클래스는 일반적인 클래스임.
2. 인터페이스는 구체적인 로직이나 상태를 가지고 있을 수 없고, 추상 클래스는 구체적인 로직이나 상태를 가지고 있을 수 있음.
3. 인터페이스는 클래스와 다르게 다중 상속이 가능하다.
참고(더 자세히 보기):
interconnection.tistory.com/110?category=625719
인터페이스(Interface)와 추상클래스(Abstract class) 공통점과 차이점
공통점 추상클래스와 인터페이스는 선언만 있고 구현 내용이 없는 클래스다. 자바8부터 인터페이스에 default method 구현이 가능해졌지만 일반적으로 인터페이스는 구현이 없다. 인터페이스와 추
interconnection.tistory.com