c) Você não definiu um construtor para a classe e sim um método com o mesmo nome da classe; isso não é proibido mas vai lhe dar muita cabeça. Por hora, faça de conta que isso é proibido. Um construtor não pode retornar nenhum valor e também não tem retorno “void”.
d) Um nome de classe legal seria “Produto”, não “NomeProduto”, que é apenas um atributo do produto.
public String Produto(String nomeProduto) // aki o parametro eh do nome e nao do codigo!
{
if ("1".equals(codProduto))
{
nomeProduto = "balde Plastico";
}
return (nomeProduto);
}
No caso para vc corrigir esse erro, vc deve colocar o parametro (String codProduto)
public String Produto(String codProduto) {
creio que no sua saida agora irá dar certo, e mais uma pra complementar: procure usar os seus atributos com o modificados private
private String nome;
private String codigo;
E outra nao esqueça de colocar public “static” void main sem as aspas!
Espero ter ajudado!
O codigo anterior faz parte deste programa, eu apenas alterei alguma coisas e t afuncionando legal…
agora to entando criar a “interface” do “bicho”, usei parametros paracidos em uma calculadorae funcionou, pq neste caso não esta fiuncionado?
import java.awt.FlowLayout;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JTextField;
public class PrincipalSisConCAd extends JFrame implements ActionListener
{
JButton botao1 = new JButton ("Novo");// criando as variáveis "botões"
JButton botao2 = new JButton ("Alterar");
JButton botao3 = new JButton ("Salvar");
JButton botao4 = new JButton ("Excluir");
JButton botao5 = new JButton ("Imprimir");
JButton botao6 = new JButton ("Fechar");
String codPostoGraduacao; // esta variável sera enviada a outra classe
String nomePostoGraduacao;// esta variável sera enviada a outra classe
JTextField text = new JTextField(10);
public PrincipalSisConCAd ()
{
super ("SisConCAd");
setSize( 800,600);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setLayout(new FlowLayout);// usei este comando em uma calculadora e deu certo aqui não esta dando
JPanel painel = new JPanel();
add (text);
add (painel);
painel.add(botao1);//mostrar boões
painel.add(botao2);
painel.add(botao3);
painel.add(botao4);
painel.add(botao5);
painel.add(botao6);
botao1.addActionListener (this);//faz botão "escrever"
botao2.addActionListener (this);
botao3.addActionListener (this);
botao4.addActionListener (this);
botao5.addActionListener (this);
botao6.addActionListener(this);
setVisible(true);
}
public static void main(String[] args)
{
System.out.println ("teste");// isso não é nada e só pra saber se o programa ta rodando.
}
public void actionPerformed(ActionEvent evt)
{
Object acao = evt.getSource();
if (acao == botao6)
{
System.exit(DISPOSE_ON_CLOSE);
}
}
}
ta rodado e não aparece nem erro e nem a tela ue deveria…
Então, no método main, vc não chamou o construtor da classe PrincipalSisConCAd, então, não vai construir os componentes que vc declarou lá.
Na verdade, vc poderia fazer desse jeito
new PrincipalSisConCAd();
Pois daí, ia passar pelo construtor e consequentemente ia passar pelo método setVisible(true), que é o último código que tem dentro do seu método construtor.
Se vc não chamasse o contrutor em algum lugar, nunca ia criar os componentes do Swing.