Ajudem um novato por favor! Só falta a classe executável, eu acho!hehe!

Olá a todos. Como eu já vi muitos dizendo que é novo no mundo java e no forum, não quero repetir o que já foi várias vezes ditos (hehe!).
Sem mais delogas, estou aqui para pedir uma grande ajuda, o que irei postar de código será um pouco grande, mas me ajudem por favor porque eu não estou dando conta, não estou entendendo como fazer isso.
Bem o que deve ser feito é o seguinte: O programa deverá conter uma classe executável que deverá criar 3 álbuns distintos, com seus Setlist e Músicas (cada Setlist deverá ter, no mínimo, três músicas), e imprimi-los na tela do computador.
Bom, eu já dei conta de fazer as classes: Album, Setlist e Musica, mas não estou dando conta de fazer o main do enunciado acima, me ajudem por favor, e se puderem comentar os meus erros ficaria muito mais grato ainda:

import javax.swing.JOptionPane;
//Classe que cria o Album de um Artista;
public class Album {
	private String nomeDoArtista;
	private String nomeDoAlbum;
	private double preco = 1;
	private Setlist setlist;
	private int anoDeLancamento = 0;

	public Album(String nomeArtista, String nomeAlbum, double preco, Setlist setlist, int anoLancamento) {
		setNomeDoArtista (nomeArtista);
		setNomeDoAlbum (nomeAlbum);
		setPreco (preco);
		setSetlist (setlist);
		setAnoDeLancamento (anoLancamento);
	}
	
	public String getNomeDoArtista (){
		return nomeDoArtista;
	}
	
	public String getNomeDoAlbum (){
		return nomeDoAlbum;
	}
	
	public double getPreco (){
		return preco;
	}
	
	public Setlist getSetlist (){
		return setlist;
	}
	
	public int getAnoDeLancamento (){
		return anoDeLancamento;
	}
	
	public void setNomeDoArtista (String nome){
		nomeDoArtista = nome;
	}
	
	public void setNomeDoAlbum (String nome){
		nomeDoAlbum = nome; 
	}
	
	public void setPreco (double preco){
		if (preco &lt 1 || preco &gt 1000)
			JOptionPane.showMessageDialog (null, "Preço inválido, o porgrama suporta preços entre $ 1,00 à $ 1000,00!\nERRO 4");
		else
			this.preco = preco;
	}
	
	public void setSetlist(Setlist setlist){
		this.setlist = setlist;
	}
	
	public void setAnoDeLancamento (int ano){
		if (ano &lt 1900 || ano &gt 2007)
			JOptionPane.showMessageDialog (null,"Ano inválido!\nERRO 5");
		else
			anoDeLancamento = ano;
	}
	
	public void printMe (){
		JOptionPane.showMessageDialog (null,"Nome do Album: "+nomeDoAlbum);
		JOptionPane.showMessageDialog (null,"Nome do Artista: "+nomeDoArtista);
		JOptionPane.showMessageDialog (null,"Preço: "+preco);
		JOptionPane.showMessageDialog (null,"Ano de Lançamento:"+anoDeLancamento);
		setlist.printMe();
	}

}
/*Desenvolvido por: Neylor Leandro de Sousa*/
import javax.swing.JOptionPane;
//Esta classe vai pegar todas as músicas criadas com todos suas características e 
//fazer um Setlist mesmo, fui claro? 
public class Setlist {
	private int numeroDeMusicas;
	private Musica[] musicas = new Musica [numeroDeMusicas];//Galera, quando eu digitei numeroDeMusicas
															//eu to determinando o tamanho do array ou 
															//jogando um inteiro no construtor?			
	private int duracao;
	private int anoLancamento;
	
	public Setlist (int numeroDeMusicas, Musica[] musicas, int duracao, int anoLancamentoDoAlbum){
		this.setNumeroDeMusicas (numeroDeMusicas);
		this.setMusicas (musicas);
		this.setDuracao (duracao);
		this.setAnoLancamento (anoLancamentoDoAlbum);
	}
	
	public int getAnoLancamento (){
		return anoLancamento;
	}
	
	public int getNumeroDeMusicas (){
		return numeroDeMusicas;
	}
	
	public Musica[] getMusicas (){
		return musicas; 
	}
	
	public int getDuracao (){
		return duracao;
	}
	
	public void setNumeroDeMusicas (int numero){
		numeroDeMusicas = numero;
	}
	
	public void setMusicas (Musica[] musicas){
		for (int i = 0; i &lt numeroDeMusicas; i++){
			this.musicas[i].setNome (musicas[i].getNome());
			this.musicas[i].setLetra(musicas[i].getLetra());
			this.musicas[i].setDuracao(musicas[i].getDuracao());
		}	
		int duracao = 0; 
		for (int i = 0; i &lt numeroDeMusicas; i++){
			duracao += musicas[i].getDuracao();
		}
		CalculaDuracao (duracao);
	}
	
	public void setDuracao (int duracao){
		this.duracao = duracao;
	}
	
	public void setAnoLancamento (int ano){
		if (ano &lt 1900 || ano &gt 2007)
			JOptionPane.showMessageDialog (null,"Ano inválido!\nERRO 3");
		else
			anoLancamento = ano;
	}
	
	public void CalculaDuracao (int atualiza){
		setDuracao(atualiza);
	}
	
	public void printMe (){
		JOptionPane.showMessageDialog (null,"Número de Músicas: "+numeroDeMusicas);
		JOptionPane.showMessageDialog (null,"Duração do Album em segundos: "+duracao);
		for (int i = 0; i &lt numeroDeMusicas; i++) {
			JOptionPane.showMessageDialog (null,"Nome da Música:: "+musicas[i].getNome()+"\n\nLetra: "+musicas[i].getLetra());
		}
		JOptionPane.showMessageDialog (null,"Ano de Lançamento: "+anoLancamento);
		
	}
	

}
/*Desenvolvido por: Neylor Leandro de Sousa*/

E por último:

import javax.swing.JOptionPane;
//Esta classe cria apenas uma música.
public class Musica {
	private String nome;
	private String letra;
	private int duracao;
	
	public Musica(String nome, String letra, int duracao) {
		this.setNome (nome);
		this.setLetra (letra);
		this.setDuracao (duracao);
	}
	
	public String getNome (){
		return nome;
	}
	
	public String getLetra (){
		return letra;
	}
	
	public int getDuracao (){
		return duracao;
	}
	
	public void setNome (String nome){
		if (nome == " " || nome == null){
			JOptionPane.showMessageDialog(null, "Não é possível efetivar a operação\nERRO 1");
		}
		else
			this.nome = nome;
	}
	
	public void setLetra (String letra){
		this.letra = letra;
	}
	
	public void setDuracao (int duracao){
		if (duracao &lt 0 || duracao &gt 1800)
			JOptionPane.showMessageDialog(null,"Duração inexistente!\nERRO 2");
		else
			this.duracao = duracao;
			
	}
	
	public void printMe (){
		JOptionPane.showMessageDialog(null,"Nome da música: "+nome);
		JOptionPane.showMessageDialog(null,"Letra da música: "+letra);
		JOptionPane.showMessageDialog(null,"Duração da música em segundos: "+duracao);
	}

}
/*Desenvolvido por: Neylor Leandro de Sousa*/

Como é que eu faço a classe executável? Me ajudem por favor!

Muito grato por quem puder perder seu precioso tempo por tentar me ajudar, e a quem não pode muito obrigado também!

Té mais!

A “classe executável” é uma classe como as outras, só que tem de ter um método “public static void main(String[] args)” que chame as outras classes. Só isso.

Eu sei disso, eu não estou dando conta é de implementar esta classe. Eu to tendo muita dificuldade de juntar estas três classes para fazer a executável. Entendeu? Eu não estou dando conta de implementar!

Té mais e obrigado!

ñ tem executável!
:x

mas ae… vc q criou as classes e num sabe chamar elas no “main” ???

qual é a duvida ??

vc ja criou o main ??

Dica: quando você tem a palavra “criar”, é porque você tem de usar “new”.

criar álbum = new Album (…);

Para imprimir alguma coisa, você já tem pronta a rotina “printMe” nas suas classes.

Bem eu dei uma olhada por cima do seú código, na parte que vc pergunta se está perguntando sobre numeroDeMusicas vc está definindo o tamanho do Array

E a classe executável é só cria uma classe que possua o método Main e execute somente está classe

na class Main vc deve fazer algo como isso

[code]Musica[] musicas = {new Musica(“American Idiot”, “American Idiot …”, 2.58)}; //Tranforme o int para float ou double pois dificilmente uma música tem tempo exato certo??

SetList setList1 = new SetList(13, musicas, 55, 2005);

Album album = new Album(“Green Day”, “American Idiot”, 30.99, setList1, 2005);
[/code]

Bem acho q pode ser uma dica, eu tive que digitar 2 vezes o ano de lançamento, vc pode dar uma mexida nisso.

Obs: não compilei nem nada, mas acho q seria algo como isso a sua classe executavel, mas se estiver errado o pessoal me da uma corrigida né :?:

:slight_smile: melhor o comentário ai em cima.