//少说废话,上代码:
import java.util.*; interface Instrument { static final int i = 2; void tune(); } //测试多个接口的测试 interface Chord { void shake(); } interface RockCase { void cover(); } //利用抽象类的情况; abstract class Sum implements Chord, RockCase, Instrument { abstract public void tune(); abstract public void shake(); abstract public void cover(); } interface Sum_2 extends Chord, RockCase, Instrument { //有次可以发现,一般情况下, extends 由于单一类,但是可以引用多个基类的接口,只要用逗号以一分开就好了; } //本质是实现也是继承 class Piano implements Instrument { public void tune (){ System.out.println("钢琴的声音"); } } class Drum implements Instrument { public void tune(){ System.out.println("鼓的声音"); } } class Violine implements Instrument { public void tune(){ System.out.println("小提琴的声音"); } } class Erhu implements Instrument { public void tune (){ System.out.println("二胡的声音"); } } class Flute extends Sum { public void tune(){ System.out.println("笛子再吹"); } public void shake(){ System.out.println("空气在震动"); } public void cover(){ System.out.println("箱子装起来笛子了,笛子不吹了!"); } } class Flute_2 implements Sum_2 { public void tune(){ System.out.println("笛子再吹"); } public void shake(){ System.out.println("空气在震动"); } public void cover(){ System.out.println("箱子装起来笛子了,笛子不吹了!"); } } public class InterfaceTest { public static void test(Sum a){ System.out.println("这是实现了接口的符合的使用的情况!"); a.tune(); a.shake(); a.cover(); } public static void test_2(Sum_2 a){ System.out.println("这是实现了接口的符合的使用的情况!"); a.tune(); a.shake(); a.cover(); } public static void main(String[] args){ System.out.println("------------ 1"); System.out.println("这是接口的测试"); Flute f = new Flute(); f.tune(); f.shake(); f.cover(); System.out.println("------------ 2"); test(new Flute()); System.out.println("------------ 3"); //利用接口实现多重接口继承的情况; test_2(new Flute_2()); //接口的实现,利用抽象类,实现多重接口的复用; } }
小红旗-2015/4/28
原文:http://blog.csdn.net/happylaoxu/article/details/45340173