У меня возникают проблемы с динамической привязкой в моей программе.
Building[] b = new Building[3];//creates the object b
b[0] = new Building(squarefootage, stories);
b[1] = new House(squarefootage, stories, beds, baths);
b[2] = new School(squarefootage, stories, classes);
b[0].get_squarefootage();//calls the user to enter the area
b[0].get_stories();//calls the user to enter the floors
b[1].get_bedrooms();
b[1].get_bathrooms();
Я получаю ошибку для lines b[1].get_bedrooms();
и b[1].get_bathrooms();
что он не может найти символ get_bathrooms и get_bedrooms. Я имею эти функции в подклассе House
и назначил его в [1] слот в массиве. Почему он не регистрирует функцию в подклассе? Спасибо за помощь и, возможно, не объясняю себя лучшими, Im new here...
При использовании полиморфного массива вы должны вывести эти значения.
((House)b[1]).get_bedrooms();
Полиморфизм звучит как очень полезная функция, когда вы впервые услышали ее, и это очень полезно, но не так полезно.