首页 > 代码库 > 接口举例分析

接口举例分析

接口是更加抽象的抽象的类,抽象类里的方法可以有方法体,接口里的所有方法都没有方法体。接口体现了程序设计的多态和高内聚低耦合的设计思想。

 

接口——注意事项

<1> 接口不能被实例化

<2> 接口中的所有方法都不能有主体,如void aaa(){  } ;抽象类中抽象方法不能有主体,而非抽象方法可以有主体!!!

<3> 一个类可以有多个接口

<4> 接口中可以有变量,但变量不能用privateprotected修饰

A. 接口中的变量,本质上都是static的,而且是final类型的

B. java开发中,我们把常用的变量,定义在接口中,作为全局变量使用。使用形式:接口名.变量名

<5> 一个接口不能继承其他的类,但是可以继承别的接口

 

  1 /**  2   3  * 功能:接口的讲解  4   5  */  6   7 public class Demo {  8   9     public static void main(String[] args) { 10  11                12  13         // 创建一个计算机 14  15         Computer computer=new Computer(); 16  17         // 创建Camera 18  19         Camera camera1=new Camera(); 20  21         // 创建Phone 22  23         Phone phone1=new Phone(); 24  25         computer.useUsb(camera1); 26  27         computer.useUsb(phone1); 28  29            30  31         System.out.println(Usb.a); 32  33     } 34  35 } 36  37    38  39 // 先写一个Usb接口 40  41 interface Usb 42  43 { 44  45     int a=1; 46  47        48  49     // 声明了两个方法 50  51     public void start();    // 接口开始工作 52  53     public void stop();   // 接口停止工作 54  55 } 56  57    58  59 // 编写了一个照相机类 60  61 // implements实现了Usb接口 62  63 // 一个重要的原则——当一个类实现了一个接口 64  65 // 就要求该类把这个接口的所有方法统统实现 66  67 class Camera implements Usb 68  69 { 70  71     public void start() 72  73     { 74  75         System.out.println("我是照相机!!开始工作了!!"); 76  77     } 78  79     public void stop() 80  81     { 82  83         System.out.println("我是照相机!!停止工作了!!"); 84  85     } 86  87 } 88  89    90  91 // 编写手机类 92  93 class Phone implements Usb 94  95 { 96  97     public void start() 98  99     {100 101         System.out.println("我是手机!!开始工作了!!");102 103     }104 105     public void stop()106 107     {108 109         System.out.println("我是手机!!停止工作了!!");110 111     }112 113 }114 115   116 117 // 计算机118 119 class Computer120 121 {122 123     // 开始使用usb接口124 125     // 接口体现的多态性126 127     public void useUsb(Usb usb)128 129     {130 131         usb.start();132 133         usb.stop();134 135     }136 137 }