Olá, boa tarde!
Estava lendo o material do curso( 2. Declare, instancie, inicialize e use um array uni-dimensional - Array de referências ) e codificando para testar.
Fiquei com dúvida no código abaixo:
Object[] valores = new Object[2];
valores[0] = "Certificação";
valores[1] = "Java";
String[] vals = (String[]) valores;
for(Object valor : vals) {
System.out.println(valor);
}
Não entendi muito bem a explicação do porquê o código compila. Já que: "...a classe pai de array de string não é um array de objeto, e sim, um Object (lembre-se: todo array herda de Object):" Como o compilador analisa a linha abaixo?
String[] vals = (String[]) valores;
Abs!