java中interface使用

1.在C++中,类可以多重继承,一个类可以有好几个父类,但是在java中,类是不允许多重继承的,为了多重继承,java中出现了接口(interface)的定义。接口是可以多重继承的,接口的关键词是:interface。

如:

定义接口A:

 

interface A

{

...

}

定义接口B:

interface B

{

...

}

 

此时,接口C可以继承A和B:

interface C extends  A,B

{

...

}

 

同时类也可以同时实现多个接口

如:

class Test implements A,B

{

...

}

 

2.接口中只有2中类型的成员,一种是数据成员,一种是方法成员。其中数据成员都是final类型的,是常量,在定义的时候要设置好的,以后不能修改方法成员全是抽象方法,实现接口的类要全部实现这些抽象方法

 

3.接口不能直接实例化,只能通过其子类进行实例化。

 1 interface Usb
 2 {
 3     public    abstract void start();
 4     public  abstract void stop();
 5 }
 6 
 7 class Mp3 implements Usb
 8 {
 9     public void start()
10     {
11         System.out.println("Mp3 start");
12     }
13     
14     public void stop()
15     {
16         System.out.println("Mp3 stop");
17     }
18 }
19 
20 class Disk implements Usb
21 {
22     public void start()
23     {
24         System.out.println("Disk start");
25     }
26     
27     public void stop()
28     {
29         System.out.println("Disk stop");
30     }
31 }
32 
33 class Computer
34 {
35     public void work(Usb u)
36     {
37         u.start();
38         u.stop();
39     }
40 }
41 
42 public class InterFaceInstanceOf {
43 
44     /**
45      * @param args
46      */
47     public static void main(String[] args) {
48         // TODO Auto-generated method stub
49        //通过其子类进行实例化操作
50         Usb uD = new Disk();
51         Usb uM = new Mp3();
52         
53         Computer d = new Computer();
54         Computer m = new Computer();
55         
56         d.work(uD);
57         m.work(uM);
58         
59     }
60 
61 }

 

4.接口实际上就是定义出了一个”统一的标准“

 

posted @ 2015-02-28 13:51  chenlu1990js  阅读(899)  评论(0编辑  收藏  举报