JAVA学習--インタフェースの使い方

8099 ワード

*インタフェース(interface)
クラスと並行する概念です
 * 1.インタフェースは特殊な抽象クラスと見なすことができる.定数と抽象メソッドの集合であり、変数、一般的なメソッドを含めることはできません.
 * 2.インタフェースにはコンストラクタがありません.
 * 3.インタフェースは機能を定義します.この機能はクラスによって実装できます(implements).
*例えば:class CC extends DD implements AA
 * 4.インタフェースを実装するクラスは、インスタンス化するために、その中のすべての抽象メソッドを書き換える必要があります.すべての抽象メソッドを書き換えていない場合、このクラスは抽象クラスです.
 * 5.クラスは複数のインタフェースを実装できます.----JAvaのクラスの継承は単一継承です
 * 6.インタフェースとインタフェースの間も継承の関係であり,マルチ継承を実現できる.
*>5,6はjavaにおける継承の特徴を記述する.
 *
 
 1 public class TestInterface {

 2     public static void main(String[] args) {

 3         System.out.println(AA.I);

 4 //        AA.I = 13;

 5     }

 6 }

 7 

 8 interface AA{

 9     //  :       public static final  

10     int I = 12;

11     boolean FLAG = false;

12 //    int i;

13     //    :     public abstract  

14     void method1();

15     void method2();

16 }

17 

18 abstract class BB implements AA{

19    

20 }

21 class DD{

22    

23 }

24 interface MM{

25     void method3();

26 }

27 class CC extends DD implements AA,MM{

28     public void method1(){

29        

30     }

31     public void method2(){

32        

33     }

34     public void method3(){

35        

36     }

37 }

38 //          !(   )

39 interface JJ extends MM,AA{

40     void method4();

41 }

42 

43 class GG implements JJ{

44 

45     @Override

46     public void method3() {

47         // TODO Auto-generated method stub

48        

49     }

50 

51     @Override

52     public void method4() {

53         // TODO Auto-generated method stub

54        

55     }

56 

57     @Override

58     public void method1() {

59         // TODO Auto-generated method stub

60        

61     }

62 

63     @Override

64     public void method2() {

65         // TODO Auto-generated method stub

66        

67     }

68    

69 }