package q5;
interface CompurerAverage {
double average(double a, double b, double c);
}
class ArithmeticAverage implements CompurerAverage {
public double average(double a, double b, double c) {
return (a + b + c) / 3;
}
}
class GeometryAverage implements CompurerAverage {
@Override
public double average(double a, double b, double c) {
return Math.pow(a * b * c, 1.0 / 3);
}
}
public class TestAverage {
public static void main(String[] args) {
CompurerAverage arithmeticAverage = new ArithmeticAverage();
CompurerAverage geometryAverage = new GeometryAverage();
double a = 5.0;
double b = 8.0;
double c = 12.0;
System.out.printf("算数平均数 (%.2f + %.2f + %.2f) 为 %.2f%n",
a, b, c, arithmeticAverage.average(a, b, c));
System.out.printf("几何平均数 (%.2f * %.2f * %.2f) 为 %.2f%n",
a, b, c, geometryAverage.average(a, b, c));
}
}
package q5;
interface Animal {
void cry();
String getAnimalName();
}
class Dog implements Animal {
@Override
public void cry() {
System.out.println("汪汪汪");
}
@Override
public String getAnimalName() {
return "小狗";
}
}
class Cat implements Animal {
public void cry() {
System.out.print("喵喵喵");
}
public String getAnimalName() {
return "小猫";
}
}
class Simulator {
public void playSound(Animal animal) {
System.out.print(animal.getAnimalName() + ":");
animal.cry();
}
}
public class Demo {
public static void main(String[] args) {
Simulator simulator = new Simulator();
Dog dog = new Dog();
simulator.playSound(dog);
Cat cat = new Cat();
simulator.playSound(cat);
}
}