[Resolvido]Erro - Cannot find symbol

9 respostas
A

Estou com o seguinte problema: Tenho um arraylist e na hora de adicionar os dados nele dá esse problema da imagem…

Alguém pode me ajudar?

9 Respostas

B

Ola, só identificando os erros… lendo as msgs do compilador… que são BEM claras…

Linha 311 da classe Dificil, o construtor usado para aluno não foi encontrado… verifique se existe.

Linha 312, a variável p não foi encontrada… vc a declarou onde?

Linha 312, a variável lista não foi encontrada.

Então… só corrigir.

A

Então, O construtor está em um arquivo chamado Aluno.
E eles estão na mesma pasta.

Quer que eu mande o código todo pra vc ver (posso anexar no post)?

P

Posta o codigo todo por favor, e nao se esqueça das tags code.

B

ACPF1986:
Então, O construtor está em um arquivo chamado Aluno.
E eles estão na mesma pasta.

Quer que eu mande o código todo pra vc ver (posso anexar no post)?

Posta os codigos sim.

A

Arquivo Aluno.java

public class Aluno {
	String nome,ra,endereco,cidade,sexo,cod_disc,desc_disc;
	String obrigatoria,nivel,cod_aluno,disc_matr,materia,frequencia;
		
	public String Nome(String n) {
		this.nome = n;
	}
	public String getNome() {
		return this.nome;
	}
	
	public String RA(String n){
	   this.ra = n;
	}
	public String getRA() {
		return this.ra;
	}
	
	public String Endereco(String n){
	   this.endereco = n;
	}
	public String getEndereco() {
		return this.endereco;
	}
	
	public String Cidade(String n){
	   this.cidade = n;
	}
	public String getCidade() {
		return this.cidade;
	}
	
	public String Sexo(String n){
	  this.sexo = n;
	}
	public String getSexo() {
		return this.sexo;
	}
	
	public String Cod_Disc(String n){
	   this.cod_disc = n;
	}
	public String getCod_Disc() {
		return this.cod_disc;
	}
	
	public String Desc_Disc(String n){
	   this.desc_disc = n;
	}
	public String getDesc_Disc() {
		return this.desc_disc;
	}
	
	public String Obrigatoria(String n){
	   this.obrigatoria = n;
	}
	public String getObrigatoria() {
		return this.obrigatoria;
	}
	
	public String Nivel(String n){
	   this.nivel = n;
	}
	public String getNivel() {
		return this.nivel;
	}
	
	public String Disc_Matriculada(String n){
	   this.disc_matr = n;
	}
	public String getDisc_Matriculada() {
		return this.disc_matr;
	}
	
	public String Materia(String n){
	   this.materia = n;
	}
	public String getMateria() {
		return this.materia;
	}
	
	public String Frequencia(String n){
	   this.frequencia = n;
	}
	public String Frequencia() {
		return this.frequencia;
	}
}

Arquivo Dificil1.java

/*Construa um aplicativo JAVA utilizando SWING para contruir uma GUI para mostrar um frame com ti­tulo "Controle Academico" e com panels em Abas para:
  - Dados do Aluno;
  - Dados de Disciplina;
  - Dados de Matricula;
  - Dados de Aproveitamento(Notas Bimestrais e Frequencia);
  - Relatorios;
 Todos os panels de dados devem ter labels, campos texto, combobox, botoes de radio e checkbox;.
  - Os panels de dados devem ter botoes de inserir, excluir,alterar,consultar e limpar;
  - Os dados devem ser manipulados em listas ArrayList;
 O Panel de dados deve ter botões de radio para o usuario escolher um dos seguintes relatorios: alunos, disciplinas,matriculas de alunos em disciplinas e boletim de aluno;
  - O Panel de relatorio deve ter um botao para gerar o relatorio escolhido;
  */
  
import javax.swing.*; 
import java.awt.*; 
import java.awt.event.*; 
import java.util.*;
import java.util.ArrayList;

public class Dificil1{
private Container c;
private GridBagLayout gb;
private GridBagConstraints gbc;

  JPanel pAluno, pDisciplina, pMatricula, pAproveitamento, pRelatorio, pButton;
  
  JFrame Tela;
  
  JLabel lNome,lRA, lEndereco, lCidade, lSexo, lRelatorio;
  JLabel lCodDisc, lDisciplina, lObrig, lNivel;
  JLabel lCodAluno, lDiscMatricula;
  JLabel lNomeAluno, lMateria, lFrequencia;
  JLabel lAviso;
  
  JTextField tNome, tRA, tEndereco, tCidade;
  JTextField tCodDisc, tDisc;
  JTextField tCodAluno;
  JTextField tAluno, tFrequencia,tNomeAluno,tDescDisc;
  
  JComboBox cboCidade, cboDisciplinas;
  
  JCheckBox chkBasico, chkIntermed, chkAvancado;
  
  JRadioButton rbFeminino, rbMasculino, rbAluno, rbDisciplina, rbMatricula, rbBoletim;
  JRadioButton rbSim,rbNao;
  ButtonGroup rbgSexo, rbgRelatorios, rbgOpcao;
  
  JButton bSalva;
  
  ArrayList<Aluno> DadosAluno;
  ManipulaBotoes m;
  
  JTabbedPane tabs;
  String Vcidade[], Vdisciplina[], VdisciplinaBol[];
  
  public void MontaTabAluno(){
    pAluno = new JPanel();
    gb = new GridBagLayout();
    gbc = new GridBagConstraints();

	Vcidade = new String[5];
    Vcidade[0] = "Araraquara";
    Vcidade[1] = "São Carlos";
    Vcidade[2] = "Campinas";
    Vcidade[3] = "São Paulo";
    Vcidade[4] = "São José dos Campos";
	
    c = pAluno;
	
	//lSexo, lRelatorio
	lSexo = new JLabel("Escolha o Sexo:");
	rbFeminino = new JRadioButton("Feminino",true);
	rbMasculino = new JRadioButton("Masculino");
	
	rbgSexo = new ButtonGroup();
	rbgRelatorios = new ButtonGroup();

	pAluno.setLayout(new GridBagLayout());
	
	rbgSexo.add(rbFeminino);
	rbgSexo.add(rbMasculino);
	
	rbgRelatorios.add(rbAluno);
	rbgRelatorios.add(rbDisciplina);
	rbgRelatorios.add(rbMatricula);
	rbgRelatorios.add(rbBoletim);
	
    lRA = new JLabel("Registro do Aluno:");
    tRA = new JTextField(8);

    lNome = new JLabel("Nome:");
    tNome = new JTextField(50);

    lEndereco = new JLabel("Endereço:");
    tEndereco = new JTextField(4);

    lCidade = new JLabel("Cidade:");
    cboCidade = new JComboBox(Vcidade);

	Adiciona (pAluno,lRA,         0, 0, 1, 1, 0, 0);//container,elemento,linha,coluna,comprimento,altura,crescimentox,crescimentoy
    Adiciona (pAluno,tRA,         0, 5, 1, 1, 0, 0);
    Adiciona (pAluno,lNome,       1, 0, 1, 1, 0, 0);
    Adiciona (pAluno,tNome,       1, 5, 1, 1, 0, 0);
    Adiciona (pAluno,lEndereco,   2, 0, 4, 1, 0, 0);
    Adiciona (pAluno,tEndereco,   2, 5, 1, 1, 0, 0);
    Adiciona (pAluno,lCidade,     3, 0, 1, 1, 0, 0);
    Adiciona (pAluno,cboCidade,   3, 5, 1, 1, 0, 0);
	Adiciona (pAluno,lSexo,       4, 0, 4, 1, 0, 0);
	Adiciona (pAluno,rbFeminino,  4, 5, 1, 1, 0, 0);
	Adiciona (pAluno,rbMasculino, 4, 6, 1, 1, 0, 0);
  }
  
  public void MontaTabDisciplina(){
    pDisciplina = new JPanel();
    gb = new GridBagLayout();
    gbc = new GridBagConstraints();
	
	c = pDisciplina;
	
	lObrig = new JLabel("Matéria Obrigatória?");
	lNivel = new JLabel("Nível da Disciplina: ");
	
	rbSim = new JRadioButton("Sim",true);
	rbNao = new JRadioButton("Não");
	
	rbgOpcao = new ButtonGroup();

	pDisciplina.setLayout(new GridBagLayout());
	
	rbgOpcao.add(rbSim);
	rbgOpcao.add(rbNao);
	
    lCodDisc = new JLabel("Codigo da Disciplina:");
    tCodDisc = new JTextField(8);

    lDisciplina = new JLabel("Disciplina:");
    tDisc = new JTextField(50);

	chkBasico = new JCheckBox("Basico");
	chkIntermed = new JCheckBox("Intermediario");
	chkAvancado = new JCheckBox("Avancado");

    Adiciona (pDisciplina,lCodDisc, 0, 0, 1, 1, 0, 0); //container,elemento,linha,coluna,comprimento,altura,crescimentox,crescimentoy
    Adiciona (pDisciplina,tCodDisc, 0, 1, 1, 1, 0, 0);
    Adiciona (pDisciplina,lDisciplina, 1, 0, 1, 1, 0, 0);
    Adiciona (pDisciplina,tDisc, 1, 1, 1, 1, 0, 0);
    Adiciona (pDisciplina,lObrig, 2, 0, 1, 1, 0, 0);
    Adiciona (pDisciplina,rbSim, 2, 1, 1, 1, 0, 0);
	Adiciona (pDisciplina,rbNao, 2, 2, 1, 1, 0, 0);
	Adiciona (pDisciplina,lNivel, 3, 0, 1, 1, 0, 0);
	Adiciona (pDisciplina,chkBasico, 3, 1, 1, 1, 0, 0);
	Adiciona (pDisciplina,chkIntermed, 3, 2, 1, 1, 0, 0);
	Adiciona (pDisciplina,chkAvancado, 3, 3, 1, 1, 0, 0);
  }
  
  public void MontaTabMatricula(){
    pMatricula = new JPanel();
    gb = new GridBagLayout();
    gbc = new GridBagConstraints();
	
	Vdisciplina = new String[5];
	Vdisciplina[0] = "Programacao III";
	Vdisciplina[1] = "Engenharia II";
	Vdisciplina[2] = "Administração de Sistemas";
	Vdisciplina[3] = "Redes";
	Vdisciplina[4] = "Sistemas Operacionais";
	
    c = pMatricula;
	
	pMatricula.setLayout(new GridBagLayout());
	
    lCodAluno = new JLabel("Codigo do Aluno:");
    tCodAluno = new JTextField(8);

    lDiscMatricula = new JLabel("Disciplina:");
    cboDisciplinas = new JComboBox(Vdisciplina);

    Adiciona (pMatricula,lCodAluno, 0, 0, 1, 1, 0, 0); //container,elemento,linha,coluna,comprimento,altura,crescimentox,crescimentoy
    Adiciona (pMatricula,tCodAluno, 0, 1, 1, 1, 0, 0);
    Adiciona (pMatricula,lDiscMatricula, 1, 0, 1, 1, 0, 0);
    Adiciona (pMatricula,cboDisciplinas, 1, 1, 1, 1, 0, 0);
  }
  
  public void MontaTabBoletim(){
    pAproveitamento = new JPanel();
    gb = new GridBagLayout();
    gbc = new GridBagConstraints();
	
	VdisciplinaBol = new String[5];
	VdisciplinaBol[0] = "Programacao III";
	VdisciplinaBol[1] = "Engenharia II";
	VdisciplinaBol[2] = "Administração de Sistemas";
	VdisciplinaBol[3] = "Redes";
	VdisciplinaBol[4] = "Sistemas Operacionais";
	
    c = pAproveitamento;
	
	pAproveitamento.setLayout(new GridBagLayout());
	
    lNomeAluno = new JLabel("Aluno:");
    tNomeAluno = new JTextField(50);

    lMateria = new JLabel("Disciplina:");
    cboDisciplinas = new JComboBox(VdisciplinaBol);
	
	lFrequencia = new JLabel("Frequencia:");

    Adiciona (pAproveitamento,lNomeAluno, 0, 0, 1, 1, 0, 0); //container,elemento,linha,coluna,comprimento,altura,crescimentox,crescimentoy
    Adiciona (pAproveitamento,tNomeAluno, 0, 1, 1, 1, 0, 0);
    Adiciona (pAproveitamento,lMateria, 1, 0, 1, 1, 0, 0);
    Adiciona (pAproveitamento,cboDisciplinas, 1, 1, 1, 1, 0, 0);
  }
  
  public void MontaTabRelatorio(){
    pRelatorio = new JPanel();
    gb = new GridBagLayout();
    gbc = new GridBagConstraints();
	
    c = pRelatorio;
	
	pRelatorio.setLayout(new GridBagLayout());
	
    lAviso = new JLabel("Ainda não fiz o relatório!");

    Adiciona (pRelatorio,lAviso, 0, 0, 1, 1, 0, 0); //container,elemento,linha,coluna,comprimento,altura,crescimentox,crescimentoy
  }
  
  public void MontaTabButton(){
    pButton = new JPanel();
    gb = new GridBagLayout();
    gbc = new GridBagConstraints();
	
    c = pButton;
	
	pButton.setLayout(new GridBagLayout());
	
    bSalva = new JButton("Salvar");
	Adiciona (pButton,bSalva, 1, 1, 1, 1, 0, 0); //container,elemento,linha,coluna,comprimento,altura,crescimentox,crescimentoy
  }
  
  public void Tela(){
    MontaTabAluno();
	
	MontaTabDisciplina();
	
	MontaTabMatricula();
	
	MontaTabBoletim();
	
	MontaTabRelatorio();
	
	MontaTabButton();
	
	Tela = new JFrame("Controle Academico");
		
	tabs = new JTabbedPane();
    
    tabs.add("Dados do Aluno",pAluno);
    Tela.add(tabs);
	
	tabs.add("Dados da Disciplina",pDisciplina);
    Tela.add(tabs);
	
	tabs.add("Dados da Matricula",pMatricula);
    Tela.add(tabs);
	
	tabs.add("Boletim",pAproveitamento);
    Tela.add(tabs);
	
	tabs.add("Relatorio",pRelatorio);
    Tela.add(tabs);
	
	tabs.add("oi",pButton);
	Tela.add(tabs);
		
    m = new ManipulaBotoes();
    bSalva.addActionListener(m);
		
    JFrame.setDefaultLookAndFeelDecorated(true);
    Tela.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
	
	Tela.setSize(600,300);
    Tela.show();
  }

private class ManipulaBotoes implements ActionListener {
 public void actionPerformed( ActionEvent e )
 {
    if (e.getSource() == bSalva)
	{
	    String nome,ra,endereco,cidade,sexo,cod_disc,desc_disc,obrigatoria;
		String nivel,cod_aluno,disc_matr,materia,frequencia;
		
	    nome = tNome.getText();
		ra = tRA.getText();
		endereco = tEndereco.getText();
		cidade = tCidade.getText();
		if (rbFeminino.isSelected())
		  sexo = rbFeminino.getText();
		else
		  sexo = rbMasculino.getText();
		
		cod_disc = tCodDisc.getText();
		desc_disc = tDescDisc.getText();
		
		if (rbSim.isSelected())
		  obrigatoria = rbSim.getText();
		else
		  obrigatoria = rbNao.getText();
		
		Aluno A = new Aluno(nome);
		lista.add(p);
	}
 }
}
private void Adiciona (Container c, Component elemento, int linha, int coluna, int comprimento, int altura, int crescimentox, int crescimentoy) {
      GridBagConstraints gbc = new GridBagConstraints();
      gbc.fill = GridBagConstraints.BOTH;
      gbc.gridx = coluna;
      gbc.gridy = linha;
      gbc.gridwidth = comprimento;
      gbc.gridheight = altura;
      gbc.weightx = crescimentox;
      gbc.weighty = crescimentoy;
      gbc.insets = new Insets (5, 5, 5, 5); 
      GridBagLayout gbl = (GridBagLayout) c.getLayout();
      gbl.setConstraints( elemento, gbc );
      c.add(elemento);
  }

  public static void main(String args[]){
    Dificil1 obj = new Dificil1();
    obj.Tela();
  }
}
B

Então,

Seguinte, tua classe Aluno não tem o construtor que vc tá usando, simples, ou vc cria o construtor ou vc constroi o Aluno usando o construtor padrão.
A variável lista não EXISTE, ou vc cria ela, do tipo que vc tá precisando, ou vc exclua a linha.

A

Desculpa a demora pra responder…
Mas, como uso o construtor padrão ou como crio o construtor. Pensei que meu construtor fosse o arquivo Aluno.java…

B

ACPF1986:
Desculpa a demora pra responder…
Mas, como uso o construtor padrão ou como crio o construtor. Pensei que meu construtor fosse o arquivo Aluno.java…

Seguinte, quando vc cria uma classe, que vc está chamando de arquivo, e não cria construtores, o compilador sempre disponibiliza um construtor padrão, que é o nome da classe sem parametros:

new Aluno();
public Aluno(){



}
public Aluno(String nome){

this.nome = nome;

}

[/code]
A

Vlw pela ajuda…

Criado 4 de agosto de 2008
Ultima resposta 4 de ago. de 2008
Respostas 9
Participantes 3