인터페이스 Java 예와 함께

인터페이스란? Java?

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

인터페이스 선언 구문

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

interface {
//methods
}

인터페이스 구현 예

이제 인터페이스를 이해해 봅시다. Java 예를 들어:

class Dog implements Pet
interface RidableAnimal extends Animal, Vehicle

LINK 비디오에 접근할 수 없는 경우

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

인터페이스의 사용법을 이해하려면 Java 더 나은, 보자 Java 인터페이스 예. "미디어 플레이어" 클래스에는 CD 플레이어와 DVD 플레이어라는 두 가지 하위 클래스가 있습니다. 각각은 고유한 인터페이스 구현을 가지고 있습니다. Java 음악을 재생하는 방법.

인터페이스가 필요한 이유

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

인터페이스가 필요한 이유

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

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

인터페이스가 필요한 이유

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

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

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

인터페이스가 필요한 이유

Java 인터페이스 예:

아래 인터페이스 프로그램을 이해해 봅시다. Java:

단계 1) 다음 코드를 편집기에 복사하세요.

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) 코드를 저장, 컴파일 및 실행합니다. 인터페이스의 출력을 관찰하십시오. Java 프로그램.

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

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

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

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

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

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

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

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

이 게시물을 요약하면 다음과 같습니다.