Ainda não tem acesso? Estude com a gente! Matricule-se
Ainda não tem acesso? Estude com a gente! Matricule-se

Solucionado (ver solução)

Arrays e Objetos

Obs.: Ja compreendi o funcionamentos dos arrays, porem continuo com duas duvidas antigas sobre arrays sendo objetos. Acredito que preciso de uma resposta mais detalhada do que é exatamente um objeto e sobre o uso do "new".

1 - Se sempre que crio um objeto com o "new" tenho que chamar o construtor da classe que vou instanciar o objeto, por que então quando crio um array nao preciso usar os parenteses?

int[] a = new int[1];

*** Nao deveria ter necessariamente depois da palavra "new" uma classe como base pro objeto e os parenteses pra indicar que está se chamando seus construtor?

2 - E por que quando inicio um array de int, double, char, boolean... é criado um objeto (com os metodos da Classe Object, como o ToString() por exemplo). E quando crio um variavel primitiva não é criado um objeto?

int a = 1;

a.toString(); //* Nao existe *//

int[] b = new int[1];

b.toString(); //* Existe *//

1 resposta
solução
  1. Porque essa é a sintaxe do array: new Tipo[tamanho]. Ex.: new int[3];

  2. Porque array é um Object também, não é um tipo primitivo.