Por que ele nao acha o objeto?

2 respostas
E

package meuprojeto;

[color=blue]import[/color] java.util.Scanner;
[color=blue]import[/color] java.util.Random;

[color=blue]public class[/color] MeuProjeto {

[color=blue]public static void[/color] main(String[] args) {
    
    Scanner sc = [color=blue]new[/color] Scanner(System.in);
    Random gerador = [color=blue]new[/color] Random();
    [color=blue]boolean[/color] escolhaCerta = [color=blue]false[/color];
    String nomeUser = [color=blue]new[/color] String();
    String nomeComp = [color=blue]new[/color] String();
    String ataques;
    
    System.out.println("Bem vindo ao League of legends zuado. Escolha seu campeão.");

    [color=blue]while[/color] (escolhaCerta == [color=blue]false[/color]) {

        System.out.println("Escolha entre Draven, Malphite, Rumble e Jinx.");
        String opcao = sc.nextLine();
        
        [color=blue]if[/color]("Draven".equals(opcao) || "draven".equals(opcao)){
            
            Draven personagemUser = [color=blue]new[/color] Draven();
            nomeUser = personagemUser.nome;
            escolhaCerta = [color=blue]true[/color];
        }
        [color=blue]else if[/color]("Malphite".equals(opcao) || "malphite".equals(opcao)){
            
            Malphite personagemUser = [color=blue]new[/color] Malphite();
            nomeUser = personagemUser.nome;
            escolhaCerta = [color=blue]true[/color];
            
        }
        [color=blue]else if[/color]("Rumble".equals(opcao) || "rumble".equals(opcao)){
            
            Rumble personagemUser = [color=blue]new[/color] Rumble();
            nomeUser = personagemUser.nome;
            escolhaCerta = [color=blue]true[/color];
            
        }
        [color=blue]else if[/color]("Jinx".equals(opcao) || "jinx".equals(opcao)){
            
            Jinx personagemUser = [color=blue]new[/color] Jinx();
            nomeUser = personagemUser.nome;
            escolhaCerta = [color=blue]true[/color];
            
        }
        else{
            System.out.println("Você digitou incorretamente.");
        }
        
    }
        System.out.println(personagemUser.nome);

Comecei a estudar programação orientada a objetos e nada melhor que treinar.
Meu programa tem a classe Malphite, Draven, Jinx e Rumble.

Minha dúvida é, porque ele nao acha o objeto personagemUser??? Com as classes tá tudo certo, todas tem o atributo nome.

O que eu faço?

2 Respostas

F
package meuprojeto; 

import java.util.Scanner; 
import java.util.Random; 

public class MeuProjeto { 

public static void main(String[] args) { 

Scanner sc = new Scanner(System.in); 
Random gerador = new Random(); 
boolean escolhaCerta = false; 
String nomeUser = new String(); 
String nomeComp = new String(); 
String ataques; 

System.out.println("Bem vindo ao League of legends zuado. Escolha seu campeão."); 

while (escolhaCerta == false) { 

System.out.println("Escolha entre Draven, Malphite, Rumble e Jinx."); 
String opcao = sc.nextLine(); 

if("Draven".equals(opcao) || "draven".equals(opcao)){ 

Draven personagemUser = new Draven(); 
nomeUser = personagemUser.nome; 
escolhaCerta = true; 
} 
else if("Malphite".equals(opcao) || "malphite".equals(opcao)){ 

Malphite personagemUser = new Malphite(); 
nomeUser = personagemUser.nome; 
escolhaCerta = true; 

} 
else if("Rumble".equals(opcao) || "rumble".equals(opcao)){ 

Rumble personagemUser = new Rumble(); 
nomeUser = personagemUser.nome; 
escolhaCerta = true; 

} 
else if("Jinx".equals(opcao) || "jinx".equals(opcao)){ 

Jinx personagemUser = new Jinx(); 
nomeUser = personagemUser.nome; 
escolhaCerta = true; 

} 
else{ 
System.out.println("Você digitou incorretamente."); 
} 

} 
System.out.println(personagemUser.nome);
Está ocorrendo algum erro, ou o nome está sendo impresso em branco? Poderia postar uma das classes desses "personagens"?

OBS: use a tag code pra postar os códigos

Marky.Vasconcelos

Você não declaraou personagemUser no escopo de onde quer usar.

Criado 26 de junho de 2015
Ultima resposta 26 de jun. de 2015
Respostas 2
Participantes 3