Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Dúvida no Ex. 1 da Aula 7 - Atributos e métodos estáticos

Gente na aula de Arrys tivemos que criar um atributo para classe empresa (int livre) que funciona como um contador para manipular o arry Funcionarios[] em alguns métodos. Para que essa variável fosse usada como "global", toda vez que ela era chamada usávamos o prefixo "this". Estou enganado? O stacti seria o mais correto usar certo? Ou entendi tudo errado.

Eu entendo que usando o this ou criando a variavel como static funcionará da mesma forma.

private int livre;
public void setEmpregado(Funcionario f) {
        this.empregados[this.livre] = f;
        this.livre++;                      
   }

ou

pivate static int livre;
public void setEmpregado(Funcionario f) {
        this.empregados[livre] = f;
        livre++;                      
}
1 resposta
solução!

Oi Henrique, tudo bem? Sim, funciona do mesmo jeito, mas em relação aos conceitos você se enganou um pouco ou pode não ter ficado muito claro na aula. Explico-lhe:

Quando usamos this, estamos usando o operador de objeto que acessa os atributos da classe, ou seja, não é algo "global", é um atributo do objeto.

Quando usamos static, sim, é "global", o que isso quer dizer? Que o valor guardado no atributo estático, pertence a classe e é comum a todos os objetos da mesma.

Deu pra melhorar ai com essa explicação? Espero que sim hein! :)Bons estudos...

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software