学ぶためのJavaインタフェース

1、インターフェース定義:

JAVAインターフェースは方法の一連のステートメントであり、この方法は、特徴の集合であるインターフェイスは、だけでなく、メソッドの実装が定義され、これらの方法は、異なる場所で異なるクラスに実装されてもよく、これらの実装を有していてもよく、異なる機能を

2、形式

[パブリック]インターフェースインターフェース名は[] 3インターフェースの親インターフェース1、2インターフェース親、親を拡張します {

//静的定数

[公開] [静的] [最終]名=データ・タイプ定数定数値。

//抽象メソッド

[共有] [抄録] [ネイティブ]戻り値の型メソッド名(パラメータリスト);

 

}

図3は、クラスはインターフェイスフォーマットを実装します。

  [修飾]クラスは、クラス名[名] [親クラスが実装するインタフェース1、インタフェース2、インタフェース3を}延び {

        クラスのメンバ変数とメンバメソッド。

        インタフェース1のすべてのメソッドのための体の製造方法は、インターフェース1を実装します。

        インタフェース2、インタフェース2を実装するためにすべてのメソッドのための体の製造方法。

         インタフェース3,3実装インタフェースのすべてのメソッドのための体の製造方法。

   }

4、インタフェースの特徴:

     1)インタフェースをインスタンス化することができません。

      2)すべてのインタフェース方法が抽象です。

     3)インターフェースフィールドは静的定数でなければなりません

     4)すべてのメンバーへのインタフェースは、パブリックでなければなりません

      5)インタフェースを実現または多重継承することができます

     6)コンストラクタをインターフェースありません

5、どのようにアクセスインタフェース定数へ

   インターフェイスの名前。定数名

コードシェア:

MyInterface1 {パブリックインターフェース
    。; A =最終int型のpublic static 1 
    //同等
    のint B = 2; 
    パブリック抽象ボイドeat1(); 
    と//等価
    ボイドwalk1(); 

}
DogInterface実装MyInterface1 {クラスのパブリック

    @Override 
    ます。public void eat1(){ 
        System.out.printlnは( "肉のような犬"); 
    } 

    @Override 
    ます。public void walk1(){ 
        System.out.printlnは( "犬を実行している愛" ); 
    } 

    パブリック無効SLEEP(){ 
        System.out.printlnは( "スリープに犬の愛"); 
    } 
}
CatInterface実装MyInterface1 {クラス公開
    @Override 
    ます。public void eat1(){ 
        System.out.printlnは( "愛の魚猫"); 
    } 

    @Override 
    ます。public void walk1(){ 
        System.out.printlnは(「愛猫クライミング「); 
    } 
}
パブリックInterfaceIest {クラス
    のpublic static無効メイン(文字列[] args){ 
        MyInterface1新しい新しいDogInterface D1 =(); //多型、インターフェイスを参照----->クラスのインスタンスオブジェクトポイント
        d1.eat1(); 
        D1 .walk1(); 
        //d1.sleep();//パスコンパイラ、d1はMyInterface、MyInterface睡眠及びない場合、コンパイラは、メソッドことため
        //d1.b;//インスタンス化オブジェクトがインタフェースによってアクセスすることができません一定

        MyInterface1新しい新しいCatInterface C1 =(); 
        c1.walk1(); 
        c1.eat1(); 

        DogInterface新しい新しいDogInterface D2 =(); 
        d2.eat1(); 
        d2.walk1(); 
        d2.sleep(); 
        システム。 out.printlnを( "どのアクセスインタフェース定数"); 
        //インターフェイス定数にアクセスする方法
       のSystem.out.println(MyInterface1.a + "B:" + MyInterface1.bを); 

    }
}

//結果

犬は肉を食べるのが大好き
ランニング愛する犬を
猫はクライミングの壁の愛
猫が魚を愛する
犬は肉を食べるのが大好き
犬が実行して愛する
犬が眠りに愛する
インタフェース定数にアクセスする方法
1件のB:2

 

  

インターフェースは、多重継承を実装することができるインタフェースが複数のインタフェースを継承することができます

パブリックインターフェースMyInterface2 { 
    文字列名=「陽」。
    空eat2(); 

}
パブリックインターフェースMyInterface3はMyInterface1、MyInterface2 {延び
    公共ボイドeat3を(); 

}

クラスは、同時に複数のインタフェースを実装することができ

MyInterface実装MyInterface1クラスパブリック、MyInterface2 { 
//クラスが実装する二つのインターフェース
    //実装二つのインタフェースのすべての方法
    公共ボイドeat1(){ 
        System.out.printlnは(「最初の食事!!!」) ; 
    } 

    パブリック無効walk1(){ 
        System.out.printlnは( "第1のウォーク!"); 
    } 

    パブリック無効eat2(){ 
        System.out.printlnは( "二食!!!"); 
    } 


}
MyInterfaceTest実装MyInterface3 {クラス公開
    @Override 
    公共ボイドeat1(){ 
        System.out.printlnは( "一日三回:最初の食事"); 
    } 

    @Override 
    公共ボイドeat2(){ 
        System.out.printlnは(「一日に三回デイトン:第食べる"); 

    } 

    @Override 
    公共ボイドeat3(){ 
        System.out.printlnは("一日三回:第三の食事「); 
    } 

    @Override 
    公共ボイドwalk1(){ 
        System.out.printlnは(「一日三食:最初の散歩」); 
    } 
}

 

 

 

 

 

 

 

 

 

 

公開された45元の記事 ウォンの賞賛8 ビュー5844

おすすめ

転載: blog.csdn.net/wenyunick/article/details/104310858