Problema na criação de CLASSE

Boa noite pessoal!

PERGUNTA: Crie uma classe Curso com os atributos: código, nome, créditos para
conclusão, quantidade de alunos, coordenador , coord. Antigo
Construtor: padrão (vazio) e outro com os atributos: nome, créditos e
coordenador
Métodos: get?s e set?s, lista as informações do curso; altere o nome do
coordenador.

O que eu fiz gostaria que vocês apreciassem e me dissessem se está faltando alguma coisa pois na classe ALUNO está dando um erro na linha 47 (cannot find symbol), e na classe curso está dando um erro na linha 23 (illegal start of expression).
Agradeço a todos os que ajudarem e os que tbm não puderem me ajudar.

CRIEI A CLASSE CURSO:

[code]package curso;

public class Curso {

String nome; // nome do Curso
int creditosParaConclusao; // créditos para conclusão
static final int MAX_ALUNOS = 300;// tamanho máximo do array
private Aluno alunos[]; // alunos matriculados
int quantidade_de_alunos; // quantidade de alunos no array
Curso(String nome, int creditos) {
    this.nome = nome;
    this.creditosParaConclusao = creditos;
    this.alunos = new Aluno[MAX_ALUNOS];
    this.quantidade_de_alunos = 0;
}

void listaConcluintes() { // lista os concluintes

public String toString() { // informações sobre o curso
return "Curso: " + nome + " | "
+ "Créditos: " + creditosParaConclusao + " | "
+ "Quantidade_de_alunos: " + quantidade_de_alunos + “|”;
}
}

AGORA CRIEI A CLASSE ALUNO:

package curso;

public class Aluno {

private int id;
private String nome;
private int creditos;
private int quantidade_de_alunos;
private Curso curso;

public void Aluno() {
}

public String getNome() {
    return nome;
}

public void setNome(String nome) {
    this.nome = nome;
}

public Curso getCurso() {
    return curso;
}

public void setCurso(Curso curso) {
    this.curso = curso;
}

public int getId() {
    return id;
}

public void setId(int id) {
    this.id = id;
}

public int getQuantidade() {
    return quantidade_de_alunos;
}

public void setQuantidade_de_alunos(int quantidade) {
    this.quantidade_de_alunos = quantidade_alunos;
}

}

Boa noite,

Coloque seu código dento da tag code para que fique mais fácil a compreensão e possamos te ajudar mais rapidamente.

Abraço :smiley:

[quote=prog.tiago]Boa noite,

Coloque seu código dento da tag code para que fique mais fácil a compreensão e possamos te ajudar mais rapidamente.

Abraço :smiley: [/quote]

Boa noite Tiago

Se você reparar bem eu coloquei, mas não deu certo.
Se puder me ajudar fico agradecido!

[code]public class Aluno {

private int id;
private String nome;
private int creditos;
private int quantidade_de_alunos;
private Curso curso;

public void setQuantidade_de_alunos(int quantidade) {
this.quantidade_de_alunos = quantidade_alunos;
}

Perceba que você está recebendo um argumento declarado com quantidade, e está setando a variável da quantidade_de_alunos com o valor de quantidade_alunos.

O correto seria

public void setQuantidade_de_alunos(int quantidade) { this.quantidade_de_alunos = quantidade; }

void listaConcluintes() {

Você começou e não terminou esse método. Ao menos feche a chaves para que o problema seja resolvido.

void listaConcluintes() {}

Abraço

Abraços

[quote]Se você reparar bem eu coloquei, mas não deu certo.
Se puder me ajudar fico agradecido![/quote]

Sim, você iniciou a tag code mas faltou lá em baixo quando vc termina a classe colocar a tag fechando o code: [/code]

Abraço

[quote=prog.tiago][quote]Se você reparar bem eu coloquei, mas não deu certo.
Se puder me ajudar fico agradecido![/quote]

Sim, você iniciou a tag code mas faltou lá em baixo quando vc termina a classe colocar a tag fechando o code: [/code]

Abraço

[/quote]

Oi Tiago me ajudau bastante mesmo, porém quando executo para testar dá ERRO.
Olha o código da classe CURSO: Desculpe-me pelo abuso mas estou engatinhando em Java!!!

[code]package curso;

/**
*

  • @author Moisés Borges
    */
    public class Curso {
    public static void main(String[] args) {

}
String nome; // nome do Curso
int creditosParaConclusao; // créditos para conclusão
static final int MAX_ALUNOS = 300;// tamanho máximo do array
private Aluno alunos[]; // alunos matriculados
int quantidade_de_alunos; // quantidade de alunos no array
Curso(String nome, int creditos) {
this.nome = nome;
this.creditosParaConclusao = creditos;
this.alunos = new Aluno[MAX_ALUNOS];
this.quantidade_de_alunos = 0;
}

void listaConcluintes() { }// lista os concluintes

public String toString() { // informações sobre o curso
return "Curso: " + nome + " | "
+ "Créditos: " + creditosParaConclusao + " | "
+ "Quantidade_de_alunos: " + quantidade_de_alunos + “|”;
}

}
[/code]

Poste o erro que está dando…

[quote=prog.tiago]Poste o erro que está dando…
[/quote]

Bem Tiago não chega a ser bem um erro. Apenas aparece CONSTRUÍDO COM SUCESSO (tempo total: 0 segundos)

A minha pergunta é: O que devo fazer para que apareça algo na tela, estou usando o NetBeans

“A PERGUNTA DO EXERCÍCIO É A SEGUINTE”:

Crie uma classe Curso com os atributos: código, nome, créditos para
conclusão, quantidade de alunos, coordenador , coord. Antigo
Construtor: padrão (vazio) e outro com os atributos: nome, créditos e
coordenador
Métodos: get?s e set?s, lista as informações do curso; altere o nome do
coordenador

Com certeza está faltando algo que eu no meu pouquíssimo conhecimento não sei o que possa ser.

Ok,

Primeiramente suas classes estão funcionando pefeitamente bem.

Você está tentando executar a classe Curso? Na verdade você deve executar uma classe que contenha um método main para que de fato seu código seja executado.

Por exemplo:

public classe Principal{ public static void main(String[]args){ Aluno a=new Aluno(); a.setNome("Tiago"); System.out.println("O nome do aluno é: " + a.getNome()); } }

A classe que contém o método main é a classe que o java procurará na hora de iniciar o programa.

Veja que para exibir algo no console eu utilizei o método println em System.out.println("…");

[quote=prog.tiago]Ok,

Primeiramente suas classes estão funcionando pefeitamente bem.

Você está tentando executar a classe Curso? Na verdade você deve executar uma classe que contenha um método main para que de fato seu código seja executado.

Por exemplo:

public classe Principal{ public static void main(String[]args){ Aluno a=new Aluno(); a.setNome("Tiago"); System.out.println("O nome do aluno é: " + a.getNome()); } }

A classe que contém o método main é a classe que o java procurará na hora de iniciar o programa.

Veja que para exibir algo no console eu utilizei o método println em System.out.println("…");

[/quote]

Então nesse caso eu teria que criar uma nova classe ou apenas implementaria esse código dentro da classe aluno?
E em seguida, como chamaria os outros métodos tipo: Número de alunos, créditos, coordenador…

[quote]Então nesse caso eu teria que criar uma nova classe ou apenas implementaria esse código dentro da classe aluno?
E em seguida, como chamaria os outros métodos tipo: Número de alunos, créditos, coordenador…[/quote]

Se você colocar dentro da classe Aluno até vai funcionar, mas é recomendável que você coloque numa classe exclusiva.

Agora para você recuperar um valor como número de alunos, créditos ou outro, basta você utilizar o método get correspondente.

Na classe Curso você não está usando o padrão JavaBeans como na classe Aluno, o que dificulta o seu trabalho. Mas nesse caso, você ainda pode acessar o atributo diretamente, pois vc não os tornou privados.

String nome; // nome do Curso int creditosParaConclusao; // créditos para conclusão static final int MAX_ALUNOS = 300;// tamanho máximo do array private Aluno alunos[]; // alunos matriculados int quantidade_de_alunos; // quantidade de alunos no array

public classe Principal{
   public static void main(String[]args){
      Curso c =new Curso();
       c.quantidade_de_alunos=10;
       System.out.println("A quantidade de alunos matriculados é: " + quantidade_de_alunos);
   }
}

[quote=prog.tiago][quote]Então nesse caso eu teria que criar uma nova classe ou apenas implementaria esse código dentro da classe aluno?
E em seguida, como chamaria os outros métodos tipo: Número de alunos, créditos, coordenador…[/quote]

Se você colocar dentro da classe Aluno até vai funcionar, mas é recomendável que você coloque numa classe exclusiva.

Agora para você recuperar um valor como número de alunos, créditos ou outro, basta você utilizar o método get correspondente.

Na classe Curso você não está usando o padrão JavaBeans como na classe Aluno, o que dificulta o seu trabalho. Mas nesse caso, você ainda pode acessar o atributo diretamente, pois vc não os tornou privados.

String nome; // nome do Curso int creditosParaConclusao; // créditos para conclusão static final int MAX_ALUNOS = 300;// tamanho máximo do array private Aluno alunos[]; // alunos matriculados int quantidade_de_alunos; // quantidade de alunos no array

public classe Principal{
   public static void main(String[]args){
      Curso c =new Curso();
       c.quantidade_de_alunos=10;
       System.out.println("A quantidade de alunos matriculados é: " + quantidade_de_alunos);
   }
}

[/quote]

Bem eu criei uma classe dentro do pacote chamada Principal, copiei o seu código e colei , pra deixar como exclusiva, mas de cara já foi sendo marcados os ERROS.
Amigo Tiago isso é difícil pra caramba ainda mais que não tenho experiência como programador.
Estou com a cabeça fervendo, desde de ontem tentando fazer e nada de conseguir.

O código que eu te dei deve ter apresentado erro pq na sua classe Curso não existe um construtor padrão (sem atributos) como o seu exercício pede

Não se desespere. Aprender java de início pode parecer difícil se vc não tem um bom material.

Caso não seja urgente, leia esses materiais, certamente vão te ajudar e muito. Continuar fervendo a cabeça sem um bom material de aprendizado apenas vai fazer com que vc se decepcione com a linguagem, o que vai te poupar de uma experiência viciante.

Leia, estude, pratique e poste suas dúvidas.

Força e sucesso.


http://www.t2ti.com/curso/video/java/basico/java_starter.php

[quote=prog.tiago]O código que eu te dei deve ter apresentado erro pq na sua classe Curso não existe um construtor padrão (sem atributos) como o seu exercício pede

Não se desespere. Aprender java de início pode parecer difícil se vc não tem um bom material.

Caso não seja urgente, leia esses materiais, certamente vão te ajudar e muito. Continuar fervendo a cabeça sem um bom material de aprendizado apenas vai fazer com que vc se decepcione com a linguagem, o que vai te poupar de uma experiência viciante.

Leia, estude, pratique e poste suas dúvidas.

Força e sucesso.


http://www.t2ti.com/curso/video/java/basico/java_starter.php[/quote]

Eu até baixei essas duas apostilas, mas pra mim o que está pegando é na hora de colocar os códigos no lugar correto.
Esse Exercício terei que apresentar em sala na terça -Feira e estou ferrado, pois nem consegui fazer com que aparecesse no console.
De qualquer forma eu agradeço a você pela sua boa vontade em querer me ajudar!!!
Fico muito grato mesmo

Não é hábito do GUJ, mas para que você não desamine e utilize esse post para se guiar veja seu exercício resolvido e comentado:

Classe Curso

[code]

public class Curso {

//atributos
private int codigo;
private String nome;
private int creditosParaConclusao;
private String coordenador;
private String coordenadorAntigo;


//construtor vazio
public Curso(){
	
}

//construtor com os atributos nome, créditosParaConclusao e coordenador
public Curso(String nome, int creditosParaConclusao, String coordenador){
	this.nome=nome;
	this.creditosParaConclusao=creditosParaConclusao;
	this.coordenador=coordenador;
}


//Getters e Setters
public int getCodigo() {
	return codigo;
}

public void setCodigo(int codigo) {
	this.codigo = codigo;
}

public String getNome() {
	return nome;
}

public void setNome(String nome) {
	this.nome = nome;
}

public int getCreditosParaConclusao() {
	return creditosParaConclusao;
}

public void setCreditosParaConclusao(int creditosParaConclusao) {
	this.creditosParaConclusao = creditosParaConclusao;
}

public String getCoordenador() {
	return coordenador;
}

public void setCoordenador(String coordenador) {
	this.coordenador = coordenador;
}



//Método para listar as propriedades do curso
public void listaInformacoes(){
	System.out.println("código: " + codigo);
	System.out.println("nome: " + nome);
	System.out.println("créditos para conclusão: " + creditosParaConclusao);
	System.out.println("coordenador: " + coordenador);
	System.out.println("coordenador antigo: " + coordenadorAntigo);
	
}

//Método para alterar o nome do coordenador
public void alteraCoordenador(String novoCoordenador){
	this.coordenadorAntigo=coordenador;
	this.coordenador=novoCoordenador;
}

}[/code]

Classe com o método Main



public class Principal {
	
	public static void main(String[] args) {
		//Criando um curso por construtor vazio
		Curso c=new Curso();
		
		//Setando as propriedades do curso
		c.setCodigo(1);
		c.setNome("Matemática");
		c.setCoordenador("Luiz Alberto");
		c.setCreditosParaConclusao(10);
		
		//Exibindo os dados do curso no console
		c.listaInformacoes();
		
		//Alterando o nome do coordenador
		c.alteraCoordenador("Francisco Gomes");
		
		//Exibindo os dados do curso novamente
		c.listaInformacoes();
	}
	
	

}

Sucesso!

[quote=prog.tiago]Não é hábito do GUJ, mas para que você não desamine e utilize esse post para se guiar veja seu exercício resolvido e comentado:

Classe Curso

[code]

public class Curso {

//atributos
private int codigo;
private String nome;
private int creditosParaConclusao;
private String coordenador;
private String coordenadorAntigo;


//construtor vazio
public Curso(){
	
}

//construtor com os atributos nome, créditosParaConclusao e coordenador
public Curso(String nome, int creditosParaConclusao, String coordenador){
	this.nome=nome;
	this.creditosParaConclusao=creditosParaConclusao;
	this.coordenador=coordenador;
}


//Getters e Setters
public int getCodigo() {
	return codigo;
}

public void setCodigo(int codigo) {
	this.codigo = codigo;
}

public String getNome() {
	return nome;
}

public void setNome(String nome) {
	this.nome = nome;
}

public int getCreditosParaConclusao() {
	return creditosParaConclusao;
}

public void setCreditosParaConclusao(int creditosParaConclusao) {
	this.creditosParaConclusao = creditosParaConclusao;
}

public String getCoordenador() {
	return coordenador;
}

public void setCoordenador(String coordenador) {
	this.coordenador = coordenador;
}



//Método para listar as propriedades do curso
public void listaInformacoes(){
	System.out.println("código: " + codigo);
	System.out.println("nome: " + nome);
	System.out.println("créditos para conclusão: " + creditosParaConclusao);
	System.out.println("coordenador: " + coordenador);
	System.out.println("coordenador antigo: " + coordenadorAntigo);
	
}

//Método para alterar o nome do coordenador
public void alteraCoordenador(String novoCoordenador){
	this.coordenadorAntigo=coordenador;
	this.coordenador=novoCoordenador;
}

}[/code]

Classe com o método Main



public class Principal {
	
	public static void main(String[] args) {
		//Criando um curso por construtor vazio
		Curso c=new Curso();
		
		//Setando as propriedades do curso
		c.setCodigo(1);
		c.setNome("Matemática");
		c.setCoordenador("Luiz Alberto");
		c.setCreditosParaConclusao(10);
		
		//Exibindo os dados do curso no console
		c.listaInformacoes();
		
		//Alterando o nome do coordenador
		c.alteraCoordenador("Francisco Gomes");
		
		//Exibindo os dados do curso novamente
		c.listaInformacoes();
	}
	
	

}

Sucesso!

[/quote]

Amigo Tiago sei que o Forum não é pra resolver o dever de casa de ninguém, e sim para tirar as dúvidas solicitadas mas como falei estou desde ontem tentando resolver isso sem conseguir e agora você quebrou o meu galho, eu confesso que estava desistindo de estudar Java e querer me aprofundar mais e mais mas esse tipo de incentivo que você acabou de mudar mudou o meu pensamento, sei que tenho mesmo que quebrar a cabeça, procurar ajuda nos fóruns etc…mas essa ajuda sua foi uma injeção de ânimo, quero muito agradecer a sua boa vontade em perder o seu tempo comigo e sei que só agradecimento não paga o seu favor.

Muito obrigado mesmo parceiro.
Uma boa noite pra ti.

Não só num fórum, mas principalmente na vida a melhor forma de agradecer uma boa atitude é com outra boa atitude.

Estude e ajude os demais membros quando puder. Sempre ajude o próximo, principalmente quando não queira.

Bons estudos querido.

Fique com Deus e sucesso a todos nós! :smiley:

[quote=prog.tiago]Não só num fórum, mas principalmente na vida a melhor forma de agradecer uma boa atitude é com outra boa atitude.

Estude e ajude os demais membros quando puder. Sempre ajude o próximo, principalmente quando não queira.

Bons estudos querido.

Fique com Deus e sucesso a todos nós! :smiley: [/quote]

Só mais uma dúvida Tiago:
Basta que eu tenha apenas essas duas classes, ou preciso ter também a classe aluno, pois como vc descreveu tem uma class curso e outra classe como método main.Essa segunda classe com o método main eu sei que será executado tudo que estiver dentro dela, mas eu tenho que criar essa classe de nome Principal ou apenas colar em uma já existente, pois aqui eu tenho uma classe: Aluno, Curso e uma Principal.
Grato

Ajudar sempre é o meu lema, pena que tem muitos que se valem do conhecimento e guarda somente pra si!

Para resolução do enunciado do seu problema eu não vi a necessidade da criação da classe Aluno.

Por padronização, eu prefiro colocar o método main dentro de uma classe separada, no entanto se vc colocar o método main dentro da classe Curso e executar a classe Curso, também funcionará.

Não recomendo, mas pode ser.

[quote=prog.tiago]Para resolução do enunciado do seu problema eu não vi a necessidade da criação da classe Aluno.

Por padronização, eu prefiro colocar o método main dentro de uma classe separada, no entanto se vc colocar o método main dentro da classe Curso e executar a classe Curso, também funcionará.

Não recomendo, mas pode ser.

[/quote]

Então nesse caso vou excluir a classe aluno que havia criado anteriormente e deixar apenas a classe curso e a classe principal e depois testar.
Já já te falo seu deu certo ok?