Olá!
Segue minha resolução:
- Classe senha:
package br.com.alura.exercicios;
public class Senha {
private String login;
private String senha;
public Senha(String login, String senha) {
this.login = login;
this.senha = senha;
}
public String getLogin() {
return login;
}
public void setLogin(String login) {
this.login = login;
}
public String getSenha() {
return senha;
}
public void setSenha(String senha) {
this.senha = senha;
}
public void verificaSenha(){
System.out.printf("Login bem sucedido!");
}
}
- Main:
package br.com.alura.exercicios;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int tentativa = 3;
boolean loginCorreto = false;
Senha senha = new Senha("Aluno2025", "escola@123");
System.out.println("Digite o nome de usuário: ");
for (int i = 0; i < tentativa; i++) {
String loginInserido = sc.next();
sc.nextLine();
if (loginInserido.equals(senha.getLogin())){
loginCorreto = true;
break;
} else {
int numeroTentativas = tentativa - (i + 1);
System.out.printf("Nome de usuário incorreto. Tente novamente. " +
"\nTentativas restantes: %d ", numeroTentativas);
if (numeroTentativas == 0){
System.out.println("Acesso bloqueado!");
System.exit(0);
}
}
}
System.out.println("Digite a senha: ");
boolean senhaCorreta = false;
for(int j = 0; j < tentativa; j++){
String senhaInserida = sc.next();
sc.nextLine();
if (senhaInserida.equals(senha.getSenha())) {
senhaCorreta = true;
senha.verificaSenha();
} else {
int numeroTentativas = tentativa - (j +1);
System.out.printf("Senha incorreta! Tente novamente!" +
"Tentativas restantes: %d", numeroTentativas);
if (numeroTentativas == 0){
System.out.println("Acesso bloqueado!");
System.exit(0);
}
}
}
sc.close();
}
}