Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Qual é o método correto para criar uma variável membro?

Eu sei que para iniciar uma variável membro devemos inicializar ela com 0, mas eu estou com um pouco de dúvida na sintaxe, então gostaria que os mais entendidos analisassem esse código e dizerem se está certo ou errado, e ainda se possível explicarem como cada parte funciona, desde já obrigado.

void adicionar(Funcionario f) { this.funcionarios[this.variavelMembro] = f; this.variavelMembro++; }

2 respostas
solução!

A variável membro, a depender do tipo, terá com valor padrão null, 0 ou false.

Pelo exemplo que você postou, sua variavelMembro é do tipo "int". Então o valor padrão dela é zero.

private Funcionario[] funcionarios;
private int variavelMembro;

void adicionar(Funcionario f) { // Recebe uma referência do tipo Funcionário
        this.funcionarios[this.variavelMembro] = f; // Armazena a referência recebida em uma variável membro "funcionarios", que é um array e recebe como índice o valor de "variavelMembro"
        this.variavelMembro++; // Incrementa em uma unidade o valor de "variavelMembro"
    }

Esta lógica adiciona um "Funcionario" dentro de um array (coleção) de funcionários.

Tanto o array "funcionarios" como a variavel "variavelMembro" são variáveis membros da classe "Funcionario".

Ficou claro?

class Empresa { String nome; Funcionario[] funcionarios; String cnpj; int membro;

void adicionar(Funcionario f) { funcionarios[ membro ] = f; membro++; } }