java interface学习
Java接口是一系列方法的声明,是一些方法特征的集合,一个接口只有方法的特征没有方法的实现,因此这些方法可以在不同的地方被不同的类实现,而这些实现可以具有不同的行为,java中类没有多继承,但接口可以有多继承,下面介绍下接口工厂类的简单运用:
1、接口Cycle
interface Cycle { void ride(); }
2、接口工厂类CycleFactory
interface CycleFactory { Cycle getCycle(); }
3、接口Cycle和CycleFactory的实现类
class Unicycle implements Cycle { @Override public void ride() { System.out.println("Ride Unicycle"); } }
class UnicycleFactory implements CycleFactory { @Override public Cycle getCycle() { return new Unicycle(); } }
class Bicycle implements Cycle { @Override public void ride() { System.out.println("Ride Bicycle"); } }
class BicycleFactory implements CycleFactory { @Override public Cycle getCycle() { return new Bicycle(); } }
class Tricycle implements Cycle { public Tricycle() { System.out.println("Tricycle"); } @Override public void ride() { System.out.println("Ride Tricycle"); } }
class TricycleFactory implements CycleFactory { @Override public Cycle getCycle() { return new Tricycle(); } }
4、测试类Cycles
public class Cycles { /** * Function: * * @author jon DateTime 2016-4-19 下午3:31:51 * @param args */ public static void main(String[] args) { rideCycle(new UnicycleFactory()); rideCycle(new BicycleFactory()); rideCycle(new TricycleFactory()); } public static void rideCycle(CycleFactory factory) { Cycle c=factory.getCycle(); c.ride(); } }
5、测试类输出结果:
Ride Unicycle
Ride Bicycle
Tricycle
Ride Tricycle
附注:接口多继承demo可以如下
interface History { void u(); void v(); } interface Exam { void w(); void x(); } interface Labs { void y(); void z(); } interface Workup extends History, Exam, Labs { void zz(); }
浙公网安备 33010602011771号