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