본문으로 바로가기

인터페이스 (Interface)

category onYouTube/Java 2021. 3. 24. 17:38
  • "인터페이스 (Interface)" : 명세서 역할로써, 클래스 외부에서 제어(규제)하기 위한 장치
  • 인터페이스는 형식만 존재함
  • 클래스가 특정 인터페이스를 사용한다면,
    그 클래스는 반드시 인터페이스의 메소드들을 구현해야 함
interface I {

	public void z();
	// 형식만 존재
}

class A implements I {

	public void z() {}
}

 

  • 클래스 외부에서 제어할 수 있어야 함으로 안에 있는 메소드는 전부 public이어야 함
  • 하나의 클래스는 여러 개의 인터페이스를 구현할 수 있음
interface I1 {

	public void x();
}

interface I2 {

	public void z();
}

class A implements I1, I2 {

	public void x() {...}
	public void z() {...}
}

 

  • 인터페이스도 상속할 수 있음
interface I3 {

	public void x();
}

interface I4 extends I3 {

	public void z();
}

class B implements I4 {

	public void x() {...}
	public void z() {...}
}

 

  • 추상 클래스는 형식만 갖고 있는 메소드가 있지만 구체적인 메소드나 필드가 존재할 수 있음
  • 인터페이스는 형식만 갖고 있는 메소드들만 존재할 수 있음
    (구체적인 메소드나 필드가 존재할 수 없음)

'onYouTube > Java' 카테고리의 다른 글

예외  (0) 2021.03.26
다형성 (Polymorphism)  (0) 2021.03.24
final  (0) 2021.03.24
추상 (Abstract)  (0) 2021.03.24
접근 제어자  (0) 2021.03.24