HOWTO · Java

Java의 일반 인터페이스

이 자습서에서는 Java의 일반 인터페이스에 대해 설명합니다.

제네릭 인터페이스는 추상 데이터 유형을 처리할 수 있는 인터페이스입니다. 표현 세부 사항과 독립적으로 Java 컬렉션을 조작하는 데 도움이 됩니다.

주로 계층 구조의 형태로 다중 상속을 달성하는 데 사용됩니다. 일반 인터페이스에는 모든 메소드만 포함될 수 있습니다.

일반적으로 사용되는 클래스와 달리 제네릭 인터페이스에는 생성자가 없습니다.

구현 키워드를 사용하면 인터페이스와 쉽게 연결할 수 있습니다. 일반 인터페이스에서 아래의 이점을 얻을 수 있습니다.

  1. 다양한 데이터 유형을 쉽게 구현할 수 있습니다.
  2. 제약 조건을 설정할 수 있습니다.

이 기사에서는 제네릭 인터페이스와 이를 사용하는 방법에 대해 설명합니다. 주제를 더 쉽게 만들기 위해 예와 설명을 사용하여 주제에 대해 논의합니다.

Java의 일반 인터페이스

아래에서 일반 인터페이스를 사용하여 문자 배열과 정수 배열 모두에서 최대값을 찾는 예를 볼 수 있습니다. 예제의 코드는 다음과 같습니다.

interface FindMinMax<T extends Comparable<T>> {
  T Max();
}
class MyClass<T extends Comparable<T>> implements FindMinMax<T> {
  T[] vals;
  MyClass(T[] o) {
    vals = o;
  }
  public T Max() {
    T Value = vals[0];
    for (int i = 1; i < vals.length; i++) {
      if (vals[i].compareTo(Value) > 0) {
        Value = vals[i];
      }
    }
    return Value;
  }
}

public class GenericInterface {
  public static void main(String args[]) {
    Integer nums[] = {10, 6, 2, 8, 6};
    Character chars[] = {'b', 'r', 'p', 'Z'};
    MyClass<Integer> a = new MyClass<Integer>(nums);
    MyClass<Character> b = new MyClass<Character>(chars);
    System.out.println("The max number is: " + a.Max());
    System.out.println("The max character is: " + b.Max());
  }
}

위의 예에서 우리는 먼저 Max()라는 추상 메서드를 사용하여 FindMinMax라는 인터페이스를 만들었습니다. 그 후 인터페이스에서 해당 추상 메서드를 정의한 MyClass라는 또 다른 클래스를 만들었습니다.

마지막으로, 하나의 정수 배열과 하나의 문자 배열을 선언한 GenericInterface 클래스를 만들었습니다. 그런 다음 두 개의 개체를 만들었습니다. 하나는 숫자용이고 다른 하나는 문자용입니다.

마지막으로 결과를 출력으로 인쇄했습니다. 위의 코드를 실행하면 아래와 같은 출력이 표시됩니다.

The max number is: 10
The max character is: r

중요한 참고 사항은 바인딩을 설정한 후에는 implements 절을 사용하여 다시 명시할 필요가 없다는 것입니다.

제네릭 인터페이스를 사용하여 클래스를 구현하는 경우 모든 클래스는 인터페이스에 전달된 유형 매개변수를 사용할 수 있도록 제네릭이어야 합니다.

여기에서 공유되는 코드 예제는 Java로 되어 있으며 시스템에 Java가 포함되어 있지 않은 경우 환경에 Java를 설치해야 합니다.