定义:public interface 接口名{ }
接口继承:public interface 接口名 extends 父接口列表{ }
接口实现:修饰符 class 类名 implements 父接口列表{ }
规则:
1.接口可以实现多重继承,即一个接口或类可以有多个父接口(用逗号隔开)。一个普通类实现接口,就必须实现接口中所有的抽象方法。
2.接口访问控制符只能为public或省略。
3.使用implements实现接口,必须重写接口中的抽象方法
4.当两个接口的方法重名时若有实体方法,则需要重写重名的方法。
5.使用关键字interface声明接口{对所用子类的方法(行为)进行规范}。
6.方法的声明:接口中声明的方法默认使用public abstract 来修饰。
7.接口只能声明default访问类型的实体方法。
8.属性的声明:接口中的默认是public static final修饰。
抽象类和接口的区别:接口不能直接实例化对象,不能有构造方法,不能包含成员变量,可以实现多重继承。接口可对不同类型对象的行为进行抽象,抽象类是对特定类型对象的抽象。
实例:
public class Test1 { public static void main(String[] args) { If1 i1=new Changfangti(3,2,1); System.out.println("长方体的表面积为:"+i1.area()); If2 i2=new Changfangti(3,2,1); System.out.println("长方体的体积为:"+i2.volume()); } } interface If1{ //实体方法 double area();//默认使用public abstract 修饰 } interface If2{ //实体方法 double volume();//默认使用public abstract 修饰 } //必须实现接口中的所有方法。area(),volume() class Changfangti implements If1,If2{ double l,s,h; public Changfangti(double l,double s,double h) { this.h=h; this.l=l; this.s=s; } @Override public double volume() {//必须重写接口中的方法 // TODO Auto-generated method stub return l*s*h; } @Override public double area() {//必须重写接口中的方法 // TODO Auto-generated method stub return 2*s*h+4*l*h; } }
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)