Sintaxe em atributos

public class Entregador{

public CategoriaEntrega[] categorias; //NAO ENTENDI A SINTAXE DESTA LINHA

public Entregador(CategoriaEntrega[] categorias) { //NAO ENTENDI A SINTAXE DESTA LINHA
this.categorias = categorias;
}
}

Alguem poderia me xplicar as linha que eu documentei?

Obrigado.:slight_smile:

Na linha abaixo, vc está declarando um array (sabe-se disso pelos [] que usa), do tipo CategoriaEntrega (que é uma outra classe que deve estar implementada no seu projeto para funcionar). O nome do seu array é categorias.

public CategoriaEntrega[] categorias; 

Nesta linha vc está montando o método construtor da sua classe (que é o método executado toda vez que vc instancia a sua classe). E está recebendo como parâmetro um array do tipo CategoriaEntrega.

public Entregador(CategoriaEntrega[] categorias) { 

Sabe-se que é um método construtor pela sintaxe

public Entregador //public == tipo de acesso e Entregador == nome da classe

Sabe-se que é parâmetros o que fica dentro do parênteses de um método

public Entregador(CategoriaEntrega[] categorias) 

Se está aprendendo sugiro que leia um pouco sobre métodos construtores, gets, setters e instancia de objetos…

Se surgirem mais duvidas, posta aí.

Como assim, um array do “tipo” CategoriaEntrega?

toda varíavel, ao ser declarada, tem que informar o tipo de dado que ela retorna.

Por exemplo:

int num; // uma variável do tipo int, quer dizer que ela retornará um número inteiro.
String texto; // uma variável do tipo String, retornará uma string

Então, no seu caso o tipo de retorno dela é um objeto CategoriaEntrega

Entendi,

Brigadao :slight_smile:

sempre quando você vai definir um atributo você pode (Ou deve) fazer:

controle-de-acesso tipo-da-atributo nome-do-atributo

lembrando que atributo == variavel

sendo o controle de acesso:

public - publico, todas as classes e pacotes tem acesso a variavel

private - somente a classe atual que tem acesso a variavel, por isso tem se os getters e setters…

protected - acesso para os filhos (na herança) …

o tipo-do-atributo pode ser os básicos que nós conhecemos: int, String, double, float, char etc,
ou objetos de outra classe, como é no caso que você mostrou ai…

é… pesquise sobre conceitos de POO (Programação Orientada a Objetos)

abraçs

…pelo q eu sei hj em dia naum tem muito fundamento usar array assim ([]) se existem: HASH, HASHMAP, MAP, LIST ok, q sao muita mais uteis e dinamicos…pelo q sei tah!!!

E não se esqueça de usar a tag code quando postar código fonte: http://www.guj.com.br/java/50115-voce-e-novo-no-guj-vai-criar-um-topico-e-colar-seu-codigo-fonte-leia-aqui-antes-por-favor

Li em algum lugar, que dependendo da situação deve-se utilizar arrays, quando trabalha-se com volume grande de dados de forma a melhorar o desempenho.