Dê uma olhada, tenho um blog e la tem uma parte só sobre essas dúvidas…
http://javaaberto.blogspot.com.br/2012/07/introducao-java-jr-o-que-um-java-junior.html
Classe é um molde de um objeto, ela não é um objeto, ou seja, descreve as ações e propriedades de um objeto.
Quando um classe tem o método Main quer dizer que ela pode se auto-executar não precisa de um outro objeto para executa-la.
*Isso se chama parâmetro…
O que muda na Classe Executável, em seu método main, quando um método da Classe de Dados é invocado sem passar informações entre os métodos, e quando é passada uma (01)
ou mais informações?
Uma classe ou qualquer método, pode receber parâmetros, isso quer dizer que só vai executar quando a classe receber algum parametro.
*Aqui quer dizer que a classe pode retornar algum valor
Entra no mesmo conceito de métodos tambem, caso o metodo ou a classe estiver como VOID quer dizer que a classe nao vai retornar nenhum valor.
Quando tem algum tipo primitivo, pode ser Integer, String, Boolean até objeto, quer dizer que vai retornar o valor especificado.
Ou seja,
//metodo vai retornar valor String
private String metodoMostrarNome(String sobreNome){ //recebe um parametro
String nome = "Guga " + sobreNome; //concatena os dois valores o nome
return nome; //retorna o valor que esta na variavel
}
//Apenas recebe parametro
private void MostraNome(String nome){
JOptionPane.showMessageDialog(null,nome);
}
/* modo de usar */
//o metodo MostrarNome retorna um valor em String quer dizer que ele é um texto.. como se fosse uma variavel
//mas recebe um parametro para funcionar -> entao vai funcionar se voce colocar um sobrenome
MostraNome(MetodoMostrarNome("MeuSobreNome")); //aqui vai acionar outro metodo que vai receber o valor de retorno do outro metodo