目录1. 什么是接口2. 接口的特点3. 接口的使用1. 什么是接口公共行为的标准规范是一种引用数据类型。谁implements它谁就必须提供这些行为。用interface关键字来修饰接口。interfaceAnimal{}类实现接口用implements关键字interfaceAnimal{voideat();}classCatimplementsAnimal{Overridepublicvoideat(){}}2. 接口的特点接口中的成员方法只能是abstract修饰的方法且不能有具体的实现interfaceAnimal{publicabstractvoideat(){}}接口中的成员方法默认是public abstractinterfaceAnimal{//public abstract 可加可不加voideat();}如果一定要具体实现的方法需要用default来修饰方法interfaceAnimal{publicabstractvoideat();defaultpublicvoidsleep(){System.out.println(睡觉);}}接口中可以有静态成员方法interfaceAnimal{publicstaticvoideat(){System.out.println(吃);}}接口中的变量默认是public static final的修饰的成员变量常量interfaceAnimal{publicstaticfinalinta10;intb10;}接口不能直接实例化interfaceAnimal{voideat();}publicclassTest{publicstaticvoidmain(String[]args){AnimalaninewAnimal();}}普通类实现接口必须重写接口的抽象方法interfaceAnimal{voideat();voidsleep();}classCatimplementsAnimal{Overridepublicvoideat(){System.out.println(猫正在吃);}Overridepublicvoidsleep(){System.out.println(猫正在睡觉);}}如果不想普通类中重写接口的抽象类需要把类用abstract修饰变成抽象类interfaceAnimal{voideat();voidsleep();}abstractclassCatimplementsAnimal{}3. 接口的使用接口也是可以实现多态的interfacePaint{voidpaint();}classPaintFlowerimplementsPaint{Overridepublicvoidpaint(){System.out.println(painting flower);}}classPaintGrassimplementsPaint{Overridepublicvoidpaint(){System.out.println(painting Grass);}}classPaintFieldimplementsPaint{Overridepublicvoidpaint(){System.out.println(painting Field);}}publicclassTest{publicstaticvoidfunc(Paintp){p.paint();}publicstaticvoidmain(String[]args){func(newPaintField());func(newPaintGrass());func(newPaintFlower());}}
郑州网站建设
网页设计
企业官网