Ola galera!
Estou com um problema aqui e nao sei resolver! É um exercicio da facul.
No exercicio tenho duas class. Uma q se chama Professor e outra q se chama Cadastrar.
Segue as class:
import javax.swing.JOptionPane;
import java.util.Vector;
public class Professor
{
private String nome;
private int matricula;
private double cargaHoraria;
public void setNome(String n) {
nome = n;
}
public String getNome() {
return nome;
}
public void setMatricula(int m) {
matricula = m;
}
public int getMatricula() {
return matricula;
}
public void setCargaHoraria(double c) {
cargaHoraria = c;
}
public double getCargaHoraria() {
return cargaHoraria;
}
public double getCargaHorariaMensal() {
return (cargaHoraria * 4.5);
}
public Professor (String n, int m, double c)
{
nome = n;
matricula = m;
cargaHoraria = c;
}
}
// importando API
import javax.swing.JOptionPane;
import java.util.Vector;
public class Cadastrar {
Vector prof1 = new Vector(5);
String dados = new String();
String result = new String();
Integer busca = new Integer(2);
Professor cad = new Professor(" ",0,0);
int count = 0;
int opcao = 0;
public static void main (String args [])
{
menu();
}
public void menu()
{
while (opcao != 4) {
String op = JOptionPane.showInputDialog (
"Informe a sua opção informando um dos números abaixo:\n\n" +
"1 - Inserir novo professor.\n" +
"2 - Buscar por matricula.\n" +
"3 - Listar professores.\n" +
"4 - Sair.\n\n");
opcao = Integer.parseInt(op);
switch (opcao) {
// case 1:
// Cadastrar(cad);
// break;
case 2:
String mat = JOptionPane.showInputDialog("Informe a sua matricula");
int matricula = Integer.parseInt (mat);
buscarPorMatricula(matricula);
break;
case 3:
listar();
break;
case 4: System.exit(0);
break;
default: JOptionPane.showMessageDialog(null, "Comando inválido");
}
}
}
public Cadastrar ()
{
menu();
if (count < 5) {
String prof = JOptionPane.showInputDialog("Informe o nome do professor");
String mat = JOptionPane.showInputDialog("Informe a sua matricula");
String carga = JOptionPane.showInputDialog("Informe a carga horaria");
int m = Integer.parseInt (mat);
double c = Double.parseDouble (carga);
cad.setNome(prof);
cad.setMatricula(m);
cad.setCargaHoraria(c);
String nome = cad.getNome();
int matricula = cad.getMatricula();
double cargaHoraria = cad.getCargaHoraria();
dados = "Nome: " + nome + " | " + " Matricula: " + matricula +
" | " + " Carga Horária: " + cargaHoraria + "\n";
JOptionPane.showMessageDialog(null, "Professor cadastrado com sucesso!",
"Confirmação",JOptionPane.INFORMATION_MESSAGE);
prof1.insertElementAt(dados, count);
count += 1;
}
else
JOptionPane.showMessageDialog (null, "Você adicionou " + count + " dados. Capacidade esgotada.",
"Erro", JOptionPane.ERROR_MESSAGE);
}
public void listar()
{
if (prof1.isEmpty()) {
JOptionPane.showMessageDialog(null, "Nenhum professor cadastrado!",
"ERRO",JOptionPane.ERROR_MESSAGE);
}
else
result = "";
for (int j = 0; j < prof1.size(); j++) {
result = result + prof1.elementAt(j);
}
JOptionPane.showMessageDialog(null, result);
}
public void buscarPorMatricula (int m)
{
for (int k = 0; k < prof1.size(); k++){
// busca = prof1.indexOf(m);
JOptionPane.showMessageDialog(null, "Elemento: " + busca);
}
}
}
Acontece que quando chama o contrustror ou o metodo main apartir da funcao main, ele da erro : "cannor resolve symbol method Cadastrar(Professor).
Se alguem puder me ajudar…agradeço…
Vinicius
