Java学习笔记之接口Interface

接口interface是与类并行的一个概念。

 

 

  • 接口可以看成是一个特殊的抽象类,是一个常量与抽象方法的集合。常量:所有的常量都是用public static final来修饰的。抽象方法:所有的方法都用public abstract修饰
  • 接口没有构造器。
  • 接口定义的就是一种功能,此功能可以被类实现(implements) 
  • 实现接口的类,必须要重写接口中全部的抽象方法,这个类才能被实例化,否则该实现类仍然是一个抽象类。
  • 类可以实现多个接口,Java类是单继承。
  • 接口与接口之间是继承关系,而且可以是多继承。
  • 第5点和第6点是描述的继承的特点。

 

 

 

接口的多态性:

 

 

接口与具体的实现类之间也存在多态性

 

[java] view plain copy
 
 print?
  1. public class Polymorphic {  
  2.     public static void main(String[] args) {  
  3.         Duck d = new Duck();  
  4.         Polymorphic p = new Polymorphic();  
  5.         p.method1(d);  
  6.         p.method2(d);  
  7.         p.method3(d);  
  8.   
  9.     }  
  10.   
  11.     public void method1(Runner r) {  
  12.         r.run();  
  13.     }  
  14.   
  15.     public void method2(Swimmer s) {  
  16.         s.swim();  
  17.     }  
  18.   
  19.     public void method3(Flier f) {  
  20.         f.fly();  
  21.     }  
  22. }  
  23.   
  24. interface Runner {  
  25.     void run();  
  26. }  
  27.   
  28. interface Swimmer {  
  29.     void swim();  
  30. }  
  31.   
  32. interface Flier {  
  33.     void fly();// public abstract void fly();  
  34. }  
  35.   
  36. class Duck implements Runner, Swimmer, Flier {  
  37.     @Override  
  38.     public void fly() {  
  39.         System.out.println("煮熟的鸭子飞了!");  
  40.     }  
  41.   
  42.     @Override  
  43.     public void run() {  
  44.         System.out.println("鸭子扭扭的跑");  
  45.     }  
  46.   
  47.     @Override  
  48.     public void swim() {  
  49.         System.out.println("红掌拨青波");  
  50.     }  
  51. }  
 
 
posted @ 2016-12-05 15:20  天涯海角路  阅读(95)  评论(0)    收藏  举报