interface 一直不太理解在此请教.请给详细说明
interface   是什么工能?在什么时候可以考虑用?   定义时有什么要注意的
------解决方案--------------------up
------解决方案--------------------一两句好像说不玩
------解决方案--------------------比如:DAO设计模式.最主要的就是设计接口.   
 接口就是定义了一种规则.
------解决方案--------------------你不想别人看到你的代码
------解决方案--------------------暴露接口 
 多态设计的基础
------解决方案--------------------顶
------解决方案--------------------很简单。interface就是在JAVA程序需要多重继承的时候发挥作用的。JAVA规定了单一继承,但是很多时候是需要用到C++中的多重继承的,那怎么办?extends只能继承一个,那只好放在 implements里面了。
------解决方案--------------------接口就是象电脑主机内部(功能)封装,留下给用户的是一些插线的接口 
 !
------解决方案--------------------就是幕后黑手
------解决方案--------------------接口定义规则,适用于团队开发
------解决方案--------------------定义一个接口 可以让多个类来实现,如果使用一个类来继承另外一个类的话,这样的类多了会使继承体系越来越庞大,这样程序之间的偶合度就得不到降低,程序就难于管理。 
 定义一个接口它里面的所有方法都是用Public 修饰的抽象方法,定义的变量呢都必须用static fianl 来修饰 相当于一个静态常量。
------解决方案--------------------凡是一讨论接口就说多重继承的人,对接口的理解就是有些问题的。
------解决方案--------------------接口的用法要慢慢体会的,在这里我简单说一下吧。 
 接口其实是一种特殊的抽象类,里面的方法都是抽象的,需要被继承实现的。接口中可以定义final static变量。 
 接口往往用来表示一类东西,比如鸟类,你可以定义一个interface bird,里面有方法void fly(),然后各种具体的鸟的实现类都继承这个统一的方法,实现fly方法。 
 进一步说,接口是为了体现多态性,开-闭原则。
------解决方案--------------------http://blog.csdn.net/dunai2003/archive/2007/01/13/1481713.aspx
------解决方案--------------------电脑了解多少  
 主板上的PCI插槽就是现实中的接口  
 你可你把声卡,显卡,网卡都插在PCI插槽上,而不用担心那个插槽是专门插哪个的  
 原因是做主板的厂家和做各种卡的厂家都遵守了统一的规定  
 包括尺寸,排线等等  
 但是各种卡的内部结构是一样的么?答案必然是否定的!  
 我们来模拟一下:  
 interface PCI  
 {  
   void start();  
   void stop();  
 }  
 //这是接口,相当于主板上的PCI插槽    
 class NetworkCard implements PCI  
 {  
   public void start()  
   {  
     System.out.println( "Send... ");  
   }  
   public void stop()  
   {  
     System.out.println( "Network stop! ");  
   }  
 }  
 //网卡  
 class SoundCard implements PCI  
 {  
   public void start()  
   {  
     System.out.println( "Du du... ");  
   }  
   public void stop()  
   {  
     System.out.println( "Sound stop! ");  
   }  
 }  
 //声卡    
 class MainBoard  
 {  
   public void usePCICard(PCI p)  
   {  
     p.start();  
     p.stop();  
   }  
 }  
 //主板调用接口的运行方法,也就是调用PCI的函数  
 public class Assembler  
 {  
   public static void main(String[] args)  
   {  
     MainBoard mb=new MainBoard();  
     NetworkCard nc=new NetworkCard();  
     mb.usePCICard(nc);  
     SoundCard sc=new SoundCard();  
     mb.usePCICard(sc);  
   }  
 }  
 //这是运行    
 我觉的这个例子不错,仔细想一想。 
 就好像,如果你实现了pci接口,就一定可以 
 做为参数,被主板应用,如果没有实现,就算你有 
 start(),stop()编译器也报错,不让你这么用。
------解决方案--------------------