Здесь я пытаюсь использовать интерфейс под названием «Измеримый» с одним методом, называемым getMeasure. Проблема в том, что я пытаюсь получить средний рост всех людей в моей программе, используя метод в моем интерфейсе. Одна из проблем - я не могу получить доступ к методу getMeasure по какой-то причине и, наконец, получить средний рост всех людей в массиве. Как я могу решить эту проблему?
class Main {
public static void main(String args[]) {
Person[] people = new Person[4];
people[0] = new Person("Larry", 65);
people[1] = new Person("Susan", 45);
people[2] = new Person("Joe", -45);
people[3] = new Person("", 0);
double averageHeight = average(people);
}
public static double average(Person[] objects)
{
if (objects.length == 0) { return 0; }
double sum = 0;
for (Person obj : objects)
{
double measure = obj.getMeasure();
sum = sum + measure;
}
double result = sum / objects.length;
return result;
}
}
interface Measurable {
double getMeasure();
}
public class Person {
private String name;
private Integer height;
public Person(String name, Integer height)
{
this.name = name;
this.height = height;
}
public double getMeasure() {
return height;
}
}