예제가 포함된 Java 인터페이스

Java의 인터페이스란 무엇입니까?

An 자바 인터페이스 프로그래밍 언어는 클래스의 동작을 지정하는 데 사용되는 추상 유형으로 정의됩니다. Java 인터페이스에는 정적 상수와 추상 메소드가 포함되어 있습니다. 클래스는 여러 인터페이스를 구현할 수 있습니다. Java에서는 인터페이스 키워드를 사용하여 인터페이스를 선언합니다. 인터페이스의 모든 메소드는 암시적으로 공개적이고 추상적입니다.

인터페이스 선언 구문

클래스에서 인터페이스를 사용하려면 클래스 이름 뒤에 인터페이스 이름 뒤에 "implements"라는 키워드를 추가하세요.

interface {
//methods
}

인터페이스 구현 예

이제 예를 들어 Java의 인터페이스를 이해해 보겠습니다.

class Dog implements Pet
interface RidableAnimal extends Animal, Vehicle

여기를 눌러 더 많은 정보를 찾으세요. 비디오에 접근할 수 없는 경우

인터페이스가 필요한 이유는 무엇입니까?

Java에서 인터페이스 사용을 더 잘 이해하려면 Java 인터페이스 예제를 참조하십시오. "미디어 플레이어" 클래스에는 CD 플레이어와 DVD 플레이어라는 두 가지 하위 클래스가 있습니다. 각각은 음악을 재생하기 위해 Java 방식으로 고유한 인터페이스를 구현합니다.

인터페이스가 필요한 이유

또 다른 클래스인 "콤보 드라이브"는 CD와 DVD를 모두 상속합니다(아래 이미지 참조). 어떤 플레이 방식을 상속받아야 할까요? 이로 인해 심각한 디자인 문제가 발생할 수 있습니다. 따라서 Java는 다중을 허용하지 않습니다. 계승.

인터페이스가 필요한 이유

이제 Dog의 또 다른 예를 들어보겠습니다.

"animal" 클래스와 "Pet" 클래스를 상속하는 "dog" 클래스 요구사항이 있다고 가정합니다(아래 이미지 참조). 그러나 Java에서는 두 클래스를 확장할 수 없습니다. 그럼 당신은 무엇을 하시겠습니까? 해결책은 인터페이스입니다.

인터페이스가 필요한 이유

인터페이스 규칙서는 다음과 같이 말합니다.

  • Java 구현 인터페이스는 100% 추상 클래스이며 추상적인 방법.
  • 클래스는 원하는 수의 인터페이스를 구현할 수 있습니다.

Dog 클래스는 “Animal” 클래스로 확장되어 “Pet” 인터페이스를 구현할 수 있습니다.

인터페이스가 필요한 이유

Java 인터페이스 예:

아래 Java 인터페이스 프로그램을 이해해 보겠습니다.

단계 1) 팔로우 복사wing 편집기에 코드를 입력하세요.

interface Pet{
  public void test();
}
class Dog implements Pet{
   public void test(){
     System.out.println("Interface Method Implemented");
  }
   public static void main(String args[]){
     Pet p = new Dog();
     p.test();
  }
}

단계 2) 코드를 저장, 컴파일 및 실행합니다. 인터페이스의 출력을 관찰하십시오. 자바 프로그램.

클래스와 인터페이스의 차이점

클래스
인터페이스
클래스에서는 변수를 인스턴스화하고 객체를 생성할 수 있습니다. 인터페이스에서는 변수를 인스턴스화하고 객체를 생성할 수 없습니다.
클래스에는 구체적인(구현 포함) 메소드가 포함될 수 있습니다. 인터페이스는 구체적인(구현 포함) 메소드를 포함할 수 없습니다.
클래스와 함께 사용되는 액세스 지정자는 private, protected 및 public입니다. 인터페이스에서는 하나의 지정자(Public)만 사용됩니다.

인터페이스와 추상 클래스는 언제 사용합니까?

  • 서브클래스 그룹에 대해 템플릿을 정의해야 하는 경우 추상 클래스를 사용하세요.
  • 해당 클래스의 상속 트리에 관계없이 다른 클래스에 대한 역할을 정의해야 하는 경우 인터페이스를 사용하십시오.

인터페이스에 대한 사실을 알아야 합니다

  • Java 클래스는 여러 Java 인터페이스를 구현할 수 있습니다. 클래스는 인터페이스에 선언된 모든 메서드를 구현해야 합니다.
  • 클래스는 인터페이스에 선언된 모든 추상 메서드를 재정의해야 합니다.
  • 인터페이스를 사용하면 해당 객체가 속한 클래스에 관계없이 객체에 메시지를 보낼 수 있습니다.
  • 클래스는 인터페이스에 선언된 메서드에 대한 기능을 제공해야 합니다.
  • 인터페이스의 모든 메소드는 암시적으로 공개적이고 추상적입니다.
  • 인터페이스를 인스턴스화할 수 없습니다.
  • 인터페이스 참조는 구현 클래스의 객체를 가리킬 수 있습니다.
  • 인터페이스는 하나 이상의 인터페이스에서 확장될 수 있습니다. 클래스는 하나의 클래스만 확장할 수 있지만 인터페이스는 원하는 수만큼 구현할 수 있습니다.
  • 인터페이스는 다른 인터페이스를 구현할 수 없습니다. 필요한 경우 다른 인터페이스를 확장해야 합니다.
  • 다른 인터페이스 내부에 선언된 인터페이스를 중첩 인터페이스라고 합니다.
  • 선언 시 인터페이스 변수를 초기화해야 합니다. 다른wise, 컴파일러에서 오류가 발생합니다.
  • 클래스는 이름은 동일하지만 반환 유형이 다른 메서드가 있는 Java의 두 인터페이스를 구현할 수 없습니다.

슬립폼 공법 선택시 고려사항

  • 인터페이스를 구현하는 클래스는 인터페이스에 선언된 메서드에 대한 기능을 제공해야 합니다.
  • 인터페이스의 모든 메소드는 암시적으로 공개적이고 추상적입니다.
  • 인터페이스를 인스턴스화할 수 없습니다.
  • 인터페이스 참조는 구현 클래스의 객체를 가리킬 수 있습니다.
  • 인터페이스는 하나 이상의 인터페이스에서 확장될 수 있습니다. 클래스는 하나의 클래스만 확장할 수 있지만 인터페이스는 원하는 수만큼 구현할 수 있습니다.