Solucionado (ver solução)

Importante

Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!

Solucionado
(ver solução)
1
resposta

Atualizando dados do Colaborador

public class Colaborador {
   ///Atribui as variavis

    String nome;
    String cargo;
    int nivelAcesso;


    ///Metodo atualizarDados() que vai atualizar o dado do colaborador
    void atualizarDados(String novoCargo, int novoNivel) {
        System.out.println("--- Antes da atualização ---");
        System.out.println("Nome: " + nome);
        System.out.println("Cargo: " + cargo);
        System.out.println("Nível de acesso: " + nivelAcesso + "\n");

        cargo = novoCargo;
        nivelAcesso = novoNivel;

        System.out.println("--- Após atualização ---");
        System.out.println("Nome: " + nome);
        System.out.println("Cargo: " + cargo);
        System.out.println("Nível de acesso: " + nivelAcesso);
    }
}


public class PrincipalColaborador {
        public static void main(String[] args) {
            ///cria um colaborador
            Colaborador colaborador = new Colaborador();
            colaborador.nome = "Júlia Oliveira";
            colaborador.cargo = "Desenvolvedor Júnior";
            colaborador.nivelAcesso = 1;
            ///atualiza seus dados
            colaborador.atualizarDados("Desenvolvedor Pleno", 2);
        }
    }

  1. saida


--- Antes da atualização ---
Nome: Júlia Oliveira
Cargo: Desenvolvedor Júnior
Nível de acesso: 1

--- Após atualização ---
Nome: Júlia Oliveira
Cargo: Desenvolvedor Pleno
Nível de acesso: 2


1 resposta
solução!

Oi, Otavio! Como vai?

Parabéns pela solução! Você aplicou corretamente a criação da classe Colaborador, definindo os atributos nome, cargo e nivelAcesso de forma clara. O método atualizarDados() funcionou muito bem para atualizar os dados do colaborador, e o uso de System.out.println() para exibir as informações antes e depois da atualização tornou o fluxo bem fácil de acompanhar.

Observando a saída gerada, dá para perceber que Júlia Oliveira teve seu cargo alterado de Desenvolvedor Júnior para Desenvolvedor Pleno, com o nível de acesso passando de 1 para 2. Isso demonstra exatamente como o objeto Java reflete as mudanças feitas nos seus atributos durante a execução do programa.

Uma sugestão interessante para evoluir ainda mais o seu código é criar um método separado para centralizar a exibição dos dados, evitando a repetição de linhas com System.out.println(). Veja este exemplo:


void exibirDados() {
    System.out.println("Nome: " + nome);
    System.out.println("Cargo: " + cargo);
    System.out.println("Nível de acesso: " + nivelAcesso);
}

Com esse método, o código dentro de atualizarDados() ficaria mais enxuto, pois bastaria chamar exibirDados() nos dois momentos, antes e depois da atualização. Isso melhora a organização do projeto e facilita muito qualquer alteração futura na forma como os dados são exibidos.

Essa prática de separar responsabilidades em métodos distintos é um princípio fundamental na programação orientada a objetos e vai te ajudar muito à medida que os projetos forem crescendo.

O que você acha de tentar refatorar o método atualizarDados() utilizando o exibirDados() e ver como o código fica mais limpo?

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!