[Resolvido]Me Ajudem pfv, Não consigo encontrar o Erro

2 respostas Resolvido
errorjavaprogramação
S

Então gente, sou meio que novo até em java e eu tinha que fazer um exemplo usando método abstrato e eu fiz o meu e deu certo, e meu amigo ia fazer um também mas o dele ele não tava conseguindo fazer a interface e ele pediu pra eu ajudar ele ( a gente é do mesmo grupo e no final vamos usar o meu exemplo).
Aí eu fui mexer no dele mas agora na parte da interface estou com um erro que não consigo entender o que é, não mostra nenhum código em si errado então fiquei perdidão.
Alguem pode me dizer o que é?

A classe animes

package animes;

public abstract class Anime {
private String nome;
private int temporada;
private String situacaoAnime;
private String datacc;
private String personagempp;
private int idademin;

public Anime(String nome, int temporada, String situacaoAnime, String datacc, String personagempp, int idademin) {
    this.nome = nome;
    this.temporada = temporada;
    this.situacaoAnime = situacaoAnime;
    this.datacc = datacc;
    this.personagempp = personagempp;
    this.idademin = idademin;
}

public int getIdademin() {
    return idademin;
}

public void setIdademin(int idademin) {
    this.idademin = idademin;
}


public String getNome() {
    return nome;
}

public int getTemporada() {
    return temporada;
}

public String getSituacaoAnime() {
    return situacaoAnime;
}

public void setSituacaoAnime(String situacaoAnime) {
    this.situacaoAnime = situacaoAnime;
}



public String getDatacc() {
    return datacc;
}

public String getPersonagempp() {
    return personagempp;
}

public abstract String resumo();
public abstract String generoAlvo();

public String dados(){
    return "Nome do anime: "+nome+
            "\nData de Criação: "+datacc+
            "\nTemporadas: "
            +temporada+
            "\nIdade Mínima: "+idademin
            +"\nGênero: "+generoAlvo()+
            "Personagem Principal: "+personagempp+
            "\nSinopse: \n"+resumo();
}
}

E aqui a seguir as outras classes
Shoujo

public class Shoujo extends Anime {

private String texto;
private String p1;
private String p2;

public Shoujo(String texto, String p1, String p2, String nome, int temporada, String situacaoAnime, String datacc, String personagempp, int idademin) {
    super(nome, temporada, situacaoAnime, datacc, personagempp, idademin);
    this.texto = texto;
    this.p1 = p1;
    this.p2 = p2;
}



public void setP1(String p1) {
    this.p1 = p1;
}

public void setP2(String p2) {
    this.p2 = p2;
}

public String setRomance(String p1,String p2){
    return "Romance entre "+p1+" e "+p2;
}


@Override
public String resumo(){
   return texto;
}

@Override
public String generoAlvo()
{
    return "Gênero Feminino em geral";
}
@Override
public String dados(){
    return super.dados()+"Romance entre: "+setRomance(p1,p2) ;
}

}

Shounen

public class Shounen extends Anime
{
private String protagonista;
private String vilaoPrincipal;
private String texto;

public String getProtagonista() {
    return protagonista;
}

public void setProtagonista(String protagonista) {
    this.protagonista = protagonista;
}

public String getVilaoPrincipal() {
    return vilaoPrincipal;
}

public void setVilaoPrincipal(String vilaoPrincipal) {
    this.vilaoPrincipal = vilaoPrincipal;
}

public Shounen(String protagonista, String vilaoPrincipal, String texto, String nome, int temporada, String situacaoAnime, String datacc, String personagempp, int idademin) {
    super(nome, temporada, situacaoAnime, datacc, personagempp, idademin);
    this.protagonista = protagonista;
    this.vilaoPrincipal = vilaoPrincipal;
    this.texto = texto;
}

public String getTexto() {
    return texto;
}

public void setTexto(String texto) {
    this.texto = texto;
}

@Override
public String resumo()
{
    return texto;
}
@Override
public String generoAlvo()
{
    return "Gênero Masculino em geral";
}
@Override
public String dados()
{
    return super.dados()+"\nProtagonista: "+protagonista+"\nVilão Principla: "+vilaoPrincipal;
}
}

Kodomo

public class Kodomo extends Anime{

private String texto;

public Kodomo(String texto, String nome, int temporada, String situacaoAnime, String datacc, String personagempp, int idademin) {
    super(nome, temporada, situacaoAnime, datacc, personagempp, idademin);
    this.texto = texto;
}



public String getTexto() {
    return texto;
}

public void setTexto(String texto) {
    this.texto = texto;
}

@Override
public String generoAlvo()
{
    return "Criança";
}
@Override
public String resumo(){
   return texto;
}

}

e Seinen

public class Seinen extends Anime
{
private String texto;
private String cenasf;

public String getTexto() {
    return texto;
}

public void setTexto(String texto) {
    this.texto = texto;
}

public String getCenasf() {
    return cenasf;
}

public void setCenasf(String cenasf) {
    this.cenasf = cenasf;
}

public Seinen(String texto, String cenasf, String nome, int temporada, String situacaoAnime, String datacc, String personagempp, int idademin) {
    super(nome, temporada, situacaoAnime, datacc, personagempp, idademin);
    this.texto = texto;
    this.cenasf = cenasf;
}

@Override
public String generoAlvo()
{
    return "Jovens/Adultos";
}    
@Override
public String resumo(){
   return texto;
}
@Override
public String dados()
{
    return super.dados()+
            "\nCenas Fortes? "+cenasf;
}

}

e por fim aqui a interface

package tela;

import animes.Anime;
import animes.Kodomo;
   
import javax.swing.JOptionPane;
public class Tela extends javax.swing.JFrame {

Anime anime;
public Tela() {
    initComponents();
    setLocationRelativeTo(null);
    
}
private void jtNomeActionPerformed(java.awt.event.ActionEvent evt) {                                       
    // TODO add your handling code here:
}                                      

private void jrShoujoActionPerformed(java.awt.event.ActionEvent evt) {                                         
    generoEscolhido();
}                                        

private void jrSeinenActionPerformed(java.awt.event.ActionEvent evt) {                                         
    generoEscolhido();
        
}                                        

private void jtMocinhaActionPerformed(java.awt.event.ActionEvent evt) {                                          
    // TODO add your handling code here:
}                                         

private void jrKodomoActionPerformed(java.awt.event.ActionEvent evt) {                                         
    generoEscolhido();
}                                        

private void jrShounenActionPerformed(java.awt.event.ActionEvent evt) {                                          
    generoEscolhido();
}                                         

private void jrCFSimActionPerformed(java.awt.event.ActionEvent evt) {                                        
    cenasF();
}                                       

private void jrCFNaoActionPerformed(java.awt.event.ActionEvent evt) {                                        
    cenasF();
}                                       

private void jbInfActionPerformed(java.awt.event.ActionEvent evt) {                                      
    if(jtNome.getText().trim().isEmpty())
    {
        JOptionPane.showMessageDialog(null,"Campo Nome vazio, por favor preencher!","Aviso",2);
        jtNome.setText(null);
        jtNome.requestFocusInWindow();
        return;
    }
    if(jtData.getText().trim().isEmpty())
    {
        JOptionPane.showMessageDialog(null,"Campo Data de Criação vazio, por favor preencher!","Aviso",2);
        jtData.setText(null);
        jtData.requestFocusInWindow();
        return;
    }
    if(jtTemp.getText().trim().isEmpty())
    {
        JOptionPane.showMessageDialog(null,"Campo Nº Temporadas vazio, por favor preencher!","Aviso",2);
        jtTemp.setText(null);
        jtTemp.requestFocusInWindow();
        return;
    }
    if(jtIdade.getText().trim().isEmpty())
    {
        JOptionPane.showMessageDialog(null,"Campo Idade Mínima vazio, por favor preencher!","Aviso",2);
        jtIdade.setText(null);
        jtIdade.requestFocusInWindow();
        return;
    }
    if(jtResumo.getText().trim().isEmpty())
    {
        JOptionPane.showMessageDialog(null,"Campo Sinopse vazio, por favor preencher!","Aviso",2);
        jtResumo.setText(null);
        jtResumo.requestFocusInWindow();
        return;
    }
    if(jrKodomo.isSelected())
    {
        String nome = jtNome.getText();
        String data = jtData.getText();
        int temporada = Integer.parseInt(jtTemp.getText());
        int idade = Integer.parseInt(jtIdade.getText());
        String situacao = (String)jcSitu.getSelectedItem();
        String texto = jtResumo.getText();
        String pp = jtProt.getText();
        anime = new Kodomo(texto,nome,temporada,situacao,data,pp,idade);
        jtAnime.setText(anime.dados());
    }
}                                     
public void generoEscolhido()
{
    if(jrKodomo.isSelected())
    {
            jLabel1.setVisible(false);
            jLabel2.setVisible(false);
            jLabel3.setVisible(false);
            jLabel4.setVisible(true);
            jLabel5.setVisible(false);
            jLabel6.setVisible(false);
            jtProt.setVisible(true);
            jtVilao.setVisible(false);
            jtMocinha.setVisible(false);
            jtMocinho.setVisible(false);
            jrCFSim.setVisible(false);
            jrCFNao.setVisible(false);
            jtEspecificado.setVisible(false);
    }
    if(jrShounen.isSelected())
    {
            jLabel1.setVisible(false);
            jLabel2.setVisible(false);
            jLabel3.setVisible(false);
            jLabel4.setVisible(true);
            jLabel5.setVisible(true);
            jLabel6.setVisible(false);
            jtProt.setVisible(true);
            jtVilao.setVisible(true);
            jtMocinha.setVisible(false);
            jtMocinho.setVisible(false);
            jrCFSim.setVisible(false);
            jrCFNao.setVisible(false);
            jtEspecificado.setVisible(false);
    }
    if(jrSeinen.isSelected())                                         
    {
                jLabel1.setVisible(false);
                jLabel2.setVisible(false);
                jLabel3.setVisible(true);
                jLabel4.setVisible(false);
                jLabel5.setVisible(false);                    
                jtProt.setVisible(false);
                jtVilao.setVisible(false);
                jtMocinha.setVisible(false);
                jtMocinho.setVisible(false);
                jrCFSim.setVisible(true);
                jrCFNao.setVisible(true);
                jtEspecificado.setVisible(false);
                jLabel6.setVisible(false);
                            
                
    }
    if(jrShoujo.isSelected())
    {
            jLabel1.setVisible(true);
            jLabel2.setVisible(true);
            jLabel3.setVisible(false);
            jLabel4.setVisible(false);
            jLabel5.setVisible(false);
            jLabel6.setVisible(false);
            jtProt.setVisible(false);
            jtVilao.setVisible(false);
            jtMocinha.setVisible(true);
            jtMocinho.setVisible(true);
            jrCFSim.setVisible(false);
            jrCFNao.setVisible(false);
            jtEspecificado.setVisible(false);
    }
    
    
}
public void cenasF()
{
    if(jrCFSim.isSelected())
    {
        jLabel6.setVisible(true);
        jtEspecificado.setVisible(true);
    }
    if(jrCFNao.isSelected())
    {
        jLabel6.setVisible(false);
        jtEspecificado.setVisible(false);
    }
}
/**
 * @param args the command line arguments
 */
public static void main(String args[]) {
    /* Set the Nimbus look and feel */
    //<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">
    /* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel.
     * For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html 
     */
    try {
        for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) {
            if ("Nimbus".equals(info.getName())) {
                javax.swing.UIManager.setLookAndFeel(info.getClassName());
                break;
            }
        }
    } catch (ClassNotFoundException ex) {
        java.util.logging.Logger.getLogger(Tela.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
    } catch (InstantiationException ex) {
        java.util.logging.Logger.getLogger(Tela.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
    } catch (IllegalAccessException ex) {
        java.util.logging.Logger.getLogger(Tela.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
    } catch (javax.swing.UnsupportedLookAndFeelException ex) {
        java.util.logging.Logger.getLogger(Tela.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
    }
    //</editor-fold>

    /* Create and display the form */
    java.awt.EventQueue.invokeLater(new Runnable() {
        public void run() {
            new Tela().setVisible(true);
        }
    });
}

                
}

Eu ainda n terminei a interface, só testei entrando com dados e selecionando o genero Kodomo( q seria anime pra criança) mas ai quando clico pra mostrar as informações da esses erros:

run:
Exception in thread "AWT-EventQueue-0" java.lang.NumberFormatException: For input string: " 15"
at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
at java.lang.Integer.parseInt(Integer.java:569)
at java.lang.Integer.parseInt(Integer.java:615)
at tela.Tela.jbInfActionPerformed(Tela.java:505)
at tela.Tela.access$800(Tela.java:17)
at tela.Tela$9.actionPerformed(Tela.java:378)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2348)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252)
at java.awt.Component.processMouseEvent(Component.java:6539)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3324)
at java.awt.Component.processEvent(Component.java:6304)
at java.awt.Container.processEvent(Container.java:2239)
at java.awt.Component.dispatchEventImpl(Component.java:4889)
at java.awt.Container.dispatchEventImpl(Container.java:2297)
at java.awt.Component.dispatchEvent(Component.java:4711)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4904)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4535)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4476)
at java.awt.Container.dispatchEventImpl(Container.java:2283)
at java.awt.Window.dispatchEventImpl(Window.java:2746)
at java.awt.Component.dispatchEvent(Component.java:4711)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:760)
at java.awt.EventQueue.access$500(EventQueue.java:97)
at java.awt.EventQueue$3.run(EventQueue.java:709)
at java.awt.EventQueue$3.run(EventQueue.java:703)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:84)
at java.awt.EventQueue$4.run(EventQueue.java:733)
at java.awt.EventQueue$4.run(EventQueue.java:731)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:730)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:205)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
 CONSTRUÍDO COM SUCESSO (tempo total: 23 segundos)

2 Respostas

R
Solucao aceita

Pela mensagem, você está passando uma string que o código não está entendendo como numério(veja que tem um espaço em branco antes do 15). Tente aplicar um trim na String para tirar o espaço em branco.

S

Ahhhhhh entendi, consegui arrumar. Não precisou do trim. Você falou do espaço ai decidi verificar os jtextfield e descobri que meu amigo ao inves de apagar mesmo todo conteúdo ele deixou um espaço ai ficou dando esse erro. Mt obg, salvou meu dia

Criado 27 de maio de 2019
Ultima resposta 27 de mai. de 2019
Respostas 2
Participantes 2