자바 인터페이스 계승 및 인터페이스 사용 예제

본 논문 의 사례 는 자바 인터페이스 계승 과 인터페이스 사용 조작 을 서술 하 였 다.여러분 께 참고 하도록 공유 하 겠 습 니 다.구체 적 으로 는 다음 과 같 습 니 다.
일련의 계승
시선
인 터 페 이 스 는 다 중 계승 을 지원 합 니 다.하나의 인 터 페 이 스 는 여러 개의 부모 인터페이스 가 있 고 하위 인 터 페 이 스 는 특정한 부모 인 터 페 이 스 를 확장 하면 부모 인터페이스 에서 정의 하 는 모든 추상 적 인 방법 과 상수 를 얻 을 수 있 습 니 다.
하나의 인터페이스 가 여러 부모 인 터 페 이 스 를 계승 할 때,여러 부모 인 터 페 이 스 는 extends 키워드 뒤에 배열 된다.
2 코드

interface interfaceA
{
  int PROP_A = 5;
  void testA();
}
interface interfaceB
{
  int PROP_B = 6;
  void testB();
}
interface interfaceC extends interfaceA, interfaceB
{
  int PROP_C = 7;
  void testC();
}
public class InterfaceExtendsTest
{
  public static void main(String[] args)
  {
   System.out.println(interfaceC.PROP_A);
   System.out.println(interfaceC.PROP_B);
   System.out.println(interfaceC.PROP_C);
  }
}

3 운행
5
6
7
설명
인터페이스 C 인 터 페 이 스 는 인터페이스 A 와 인터페이스 B 를 계승 하여 인터페이스 C 에서 상수 를 얻 었 기 때문에 main()방법 에서 인터페이스 C 를 통 해 PROP 에 접근 하 는 것 을 볼 수 있 습 니 다.A、PROP_B、PROP_C 상수.
2 중 인터페이스
시선
인 터 페 이 스 는 인 스 턴 스 를 만 드 는 데 사용 할 수 없 지만 인 터 페 이 스 는 참조 형식 변 수 를 설명 하 는 데 사용 할 수 있 습 니 다.그러나 이 인용 유형의 변 수 는 실제 클래스 의 대상 에 인용 해 야 합 니 다.인터페이스의 주요 용 도 는 실현 류 에 의 해 이 루어 지 는 것 이다.인 터 페 이 스 는 주로 다음 과 같은 용도 가 있다.
  • 변 수 를 정의 하고 강제 형식 변환 에 도 사용 할 수 있 습 니 다.
  • 인터페이스 에서 정 의 된 상수 호출.
  • 다른 유형 에 의 해 실현 된다.
  • 하나의 클래스 는 하나 이상 의 인 터 페 이 스 를 실현 할 수 있 으 며,extends 키 워드 를 계승 하여 사용 할 수 있 으 며,구현 하려 면 implements 키 워드 를 사용 합 니 다.한 가지 유형 은 여러 개의 인 터 페 이 스 를 실현 할 수 있 는데 이것 은 자바 가 단일 계승 유연성 부족 에 대한 보충 이다.
    하나의 클래스 가 하나 이상 의 인 터 페 이 스 를 실현 한 후에 이런 클래스 는 반드시 이러한 인터페이스 에서 정 의 된 모든 추상 적 인 방법(즉,이러한 추상 적 인 방법 을 다시 쓰 는 것)을 완전히 실현 해 야 한다.그렇지 않 으 면 이 종 류 는 부모 인터페이스 에서 물 려 받 은 추상 적 인 방법 을 보류 하고 이 종 류 는 추상 적 인 유형 으로 정의 해 야 한다.
    2 코드
    
    interface Output
    {
      //                
      int MAX_CACHE_LINE = 50;
      //              public     
      void out();
      void getData( String msg );
      //          ,    default  
      default void print( String... msgs )
      {
       for (String msg : msgs)
       {
         System.out.println(msg);
       }
      }
      //          ,    default  
      default void test()
      {
       System.out.println("   test()  ");
      }
      //         、    static  
      static String staticTest()
      {
       return "Class method";
      }
    }
    //     Product  
    interface Product
    {
      int getProduceTime();
    }
    //  Printer   Output Product  
    public class Printer implements Output , Product
    {
      private String[] printData
       = new String[MAX_CACHE_LINE];
      //              
      private int dataNum = 0;
      public void out()
      {
       //       ,    
       while(dataNum > 0)
       {
         System.out.println("     :" + printData[0]);
         //            ,         1
         System.arraycopy(printData , 1
          , printData, 0, --dataNum);
       }
      }
      public void getData(String msg)
      {
       if (dataNum >= MAX_CACHE_LINE)
       {
         System.out.println("      ,    ");
       }
       else
       {
         //            ,         1。
         printData[dataNum++] = msg;
       }
      }
      public int getProduceTime()
      {
       return 45;
      }
      public static void main(String[] args)
      {
       //     Printer  ,  Output  
       Output o = new Printer();
       o.getData("   Java EE      ");
       o.getData("  Java  ");
       o.out();
       o.getData("  Android  ");
       o.getData("  Ajax  ");
       o.out();
       //   Output          
       o.print("   " , "   " , "   ");
       o.test();
       //     Printer  ,  Product  
       Product p = new Printer();
       System.out.println(p.getProduceTime());
       //                  Object     
       Object obj = p;
      }
    }
    
    
    3 운행
    프린터 인쇄:경량급 Java EE 기업 응용 실전
    프린터 인쇄:미 친 자바 강의
    프린터 인쇄:미 친 안 드 로 이 드 강의
    프린터 인쇄:미 친 아 약 스 강의
    손오공
    저팔계
    백골 정
    기본 test()방법
    45
    설명
    Printer 는 Output 인터페이스 와 Product 인 터 페 이 스 를 실현 하기 때문에 Pinter 대상 은 Output 변 수 를 직접 부여 할 수도 있 고 Product 변 수 를 직접 부여 할 수도 있 습 니 다.Printer 류 는 Output 류 의 하위 클래스 이자 Product 류 의 하위 클래스 인 것 처럼 자바 가 제공 하 는 아 날로 그 다 중 계승 입 니 다.
    Printer 는 Output 인 터 페 이 스 를 실현 하면 Output 인터페이스 에서 정의 하 는 print()방법 과 test()두 가지 기본 방법 을 얻 을 수 있 기 때문에 Printer 인 스 턴 스 는 이 두 가지 기본 방법 을 직접 호출 할 수 있 습 니 다.
    인 터 페 이 스 는 계승 클래스 를 표시 할 수 없 지만 모든 인터페이스 형식의 인용 변 수 는 Object 형식의 인용 변 수 를 직접 부여 할 수 있 습 니 다.
    더 많은 자바 관련 내용 에 관심 이 있 는 독자 들 은 본 사이트 의 주 제 를 볼 수 있다.
    본 고 에서 말 한 것 이 여러분 의 자바 프로 그래 밍 에 도움 이 되 기 를 바 랍 니 다.

    좋은 웹페이지 즐겨찾기