先定义两个接口:
package cn.sasa.demo1; //接口 interface
//接口更多的是对功能的规范 public interface ICalculator { //接口是比抽象类更为抽象的概念 //接口的成员变量:接口的成员变量都是常量,不是变量 //完整定义,如果不写public static final,那也是一个常量 public static final int num = 5; //成员方法: //接口的方法一定是抽象抽象方法 //接口的方法必须被实现类重写 //如果不写public abstract 默认也会添加上去,并不是不写就没有 public abstract void open(); public abstract double JiSuan(); public abstract void close(); //接口中不允许有普通方法 /*public void add() { }*/ }
package cn.sasa.demo1; public interface IWrite { public abstract void write(); }
定义一个类实现了上面两个接口:
package cn.sasa.demo1; public class CalAdd implements ICalculator, IWrite{ //CalAdd 实现了 ICalculator 接口,要重写 ICalculator 的方法 @Override public void open() { System.out.println("open"); } @Override public double JiSuan() { return 0; } @Override public void close() { System.out.println("close"); } //CalAdd 实现了 IWrite 接口,要重写 IWrite 的方法 @Override public void write() { System.out.println("I am writting"); } //类的继承不允许多继承,但是接口是可以有多实现的 }