6.6 接口与多态
由接口产生的多态指:不同的类在实现同一个接口时有可能具有不同的实现方式,那么接口变量在回调接口的时候就可能具有多种形态
//例子
public interface Example6_4_CompurerAverage {
public double average(double d1, double d2);
}
public class Example6_4_A implements Example6_4_CompurerAverage {
@Override
public double average(double d1, double d2) {
double aver = 0;
aver = (d1 + d2)/2;
return aver;
}
}
public class Example6_4_B implements Example6_4_CompurerAverage {
@Override
public double average(double d1, double d2) {
double aver = 0;
aver = Math.sqrt(d1*d2);
return aver;
}
}
public class Example6_4 {
public static void main(String[] args) {
// TODO Auto-generated method stub
Example6_4_CompurerAverage compurerAverage;
double d1=11.23;
double d2=22.78;
compurerAverage=new Example6_4_A();
double result =compurerAverage.average(d1, d2);
System.out.printf("%5.2f和%5.2f的算术平均值是:%5.2f\n",d1,d2,result);
compurerAverage=new Example6_4_B();
result =compurerAverage.average(d1, d2);
System.out.printf("%5.2f和%5.2f的几何平均值是:%5.2f",d1,d2,result);
}
}
/*输出结果:
11.23和22.78的算术平均值是:17.01
11.23和22.78的几何平均值是:15.99*/