Computer[] labComputers = new Computer[10];
с
public class Computer {
...
void toString(){
// print computer specs
}
}
public class Notebook extends Computer{
...
void toString(){
// print computer specs + laptop color
}
}
каждая индексированная переменная labComputers[i]
может ссылаться либо на объект Computer
, либо на объект Notebook
, потому что Notebook
является подклассом Computer
. Для вызова метода labComputers[i].toString()
, полиморфизм гарантирует, что вызывается правильный метод toString
.
Интересно, что если мы делаем
Notebook[] labComputers = new Notebook[10];
какой тип или ошибка я получу, если ссылаюсь на объект Computer
и объект Notebook