oi, daniel, volte!
Seguinte o código digitado foi igual.
[code]package javaapplication25;
public class Pessoa {
private String nome;
private String sobrenome;
// construtor default
public Pessoa() {
super();
}
// construtor com nome e sobrenome
public Pessoa(String nome, String sobrenome) {
setNome(nome);
setSobrenome(sobrenome);
}
// retorna o nome da pessoa
public String getNome() {
return nome;
}
// define ou altera o nome da pessoa
public void setNome(String temp) {
this.nome = temp;
}
// retorna sobrenome
public String getSobrenome() {
return sobrenome;
}
// define ou altera o nome da pessoa
public void setSobrenome(String temp) {
this.sobrenome = temp;
}
//retorna nome completo
public String getNomeCompleto(){
return this.nome + " " + this.sobrenome;
}
}
[/code]
Porém aparece o seguinte erro:
Classe “javaapplication25” não tem um método main. Dai coloquei o main…rsrsrs…é o erro desapareceu porém, qdo rodei o principal não encontra o metodo Pessoa???
Olha voce esta fazendo uma grande confusao rsrs, mas nao tem problema sei que voce esta aprendendo
Vou tentar te ajudar :
Pense assim voce precisa de duas classes para fazer funcionar
Uma eh a classe Pessoa , eh essa ai que voce postou esta certinha ja !
e a outra eh uma OUTRA CLASSE qualquer que tenha o metodo main para voce poder criar a classe Pessoa entendeu?
Essa classe pessoa voce ja fez esta ai acima, agora o que voce deve fazer dentro do metodo main (que esta em outra classe)
eh isso :
Pessoa p = new Pessoa();
e depois que voce fez isso voce pode usar Pessoa ainda dentro do main(), claro por exemplo chamando :
p.getNome();
p.getSobrenome() ;
Tente ai caso nao consiga poste todo seu codigo ai (das duas classes) que eu te mostro como ficaria. Mas primeiro tente fazer rsrsr
obs : deixe as duas classes no mesmo pacote inicialmente para voce entender como funciona, asim fica mais facil no comeco.
olá Daniel, aprendendo para nunca mais esquecer…rsrs
vou deixar as duas classes em um único arquivo como vc falou…mais veja, já entendi que ficam separadas e que rodo somente a parte chamada “Teste”… veja todo o código junto é o erro que deu…
init:
deps-jar:
Compiling 1 source file to C:\Users\Tulipa\JavaApplication25\build\classes
C:\Users\Tulipa\JavaApplication25\src\javaapplication25\Main.java:12: class Pessoa is public, should be declared in a file named Pessoa.java
public class Pessoa {
C:\Users\Tulipa\JavaApplication25\src\javaapplication25\Main.java:55: class Teste is public, should be declared in a file named Teste.java
public class Teste {
2 errors
FALHA NA EXECUÇÃO (tempo total: 0 segundos)
/*
* Main.java
*
* Created on 18 de Agosto de 2009, 10:08
*
* To change this template, choose Tools | Template Manager
* and open the template in the editor.
*/
package javaapplication25;
public class Pessoa {
private String nome;
private String sobrenome;
// construtor default
public Pessoa() {
super();
}
// construtor com nome e sobrenome
public Pessoa(String nome, String sobrenome) {
setNome(nome);
setSobrenome(sobrenome);
}
// retorna o nome da pessoa
public String getNome() {
return nome;
}
// define ou altera o nome da pessoa
public void setNome(String temp) {
this.nome = temp;
}
// retorna sobrenome
public String getSobrenome() {
return sobrenome;
}
// define ou altera o nome da pessoa
public void setSobrenome(String temp) {
this.sobrenome = temp;
}
//retorna nome completo
public String getNomeCompleto(){
return this.nome + " " + this.sobrenome;
}
}
public class Teste {
public static void main(String[] args) {
Pessoa p = new Pessoa();
p.setNome("Carlos");
p.setSobrenome("Moura");
//imprime nome + sobrenome
System.out.println(p.getNomeCompleto());
}
}
Você deve aprender a interpretar os erros gerados pelo compilador, veja, ele diz que as classes Pessoa e Teste são públicas e devem ser declaradas num arquivo chamado “NomeDaClasse.java”, existem duas soluções, colocar cada classe em um arquivo, ou colocar somente a classe Teste como pública, pois ela contém o método main, ou seja, na linha 12, ao invés de "public class Pessoa { ", ficaria "class Pessoa { ", então embora você possa ter várias classes em um único arquivo, não pode ter várias classe públicas no mesmo.
É exatamente o que o colega acima disse, quando voce compilar seus arquivos analise os erros, mas olha só por esse erro
aí já ta facil de saber o que aconteceu. Voce provavelemente salvou suas classes com qualquer outro nome que não
seja Pessoa.java e Teste.java .
Por elas serem classes publicas a regra é que devem ser salvas com o mesmo nome que foram criadas.
Ex : public class Pessoa { } ===> deve salvar o arquivo como Pessoa.java
(obs : lembre-se que Pessoa.java nao é o mesmo que pessoa.java - Case Sensitive)
Oi Daniel, a 4ª linha e o construtor default que vc no caso explicou q não seria obrigatoria??? Enfim, percebo que ele reclama logo na primeira linha “public Pessoa {”, o colega diz que seria { demais… olhei e tá certinho…claro pra mim…e por isso não funciona…rsrsrs veja o código.
package javaapplication25;
public Pessoa {
private String nome;
private String sobrenome;
// construtor default
public Pessoa() {
super();
}
// construtor com nome e sobrenome
public Pessoa(String nome, String sobrenome) {
setNome(nome);
setSobrenome(sobrenome);
}
// retorna o nome da pessoa
public String getNome() {
return nome;
}
// define ou altera o nome da pessoa
public void setNome(String temp) {
this.nome = temp;
}
// retorna sobrenome
public String getSobrenome() {
return sobrenome;
}
// define ou altera o nome da pessoa
public void setSobrenome(String temp) {
this.sobrenome = temp;
}
//retorna nome completo
public String getNomeCompleto(){
return this.nome + " " + this.sobrenome;
}
}
public class Teste {
public static void main(String[] args) {
Pessoa p = new Pessoa();
p.setNome("Carlos");
p.setSobrenome("Moura");
//imprime nome + sobrenome
System.out.println(p.getNomeCompleto());
}
}
Esta faltando a palavra reservada class . [/quote]
Na verdade, ele deve colocar só: class Pessoa e não: Public Pessoa o erro está na linha 3 do seu código, era isso que o daniel estava tentando alertar.
Tulipa, por favor, quando for postar códigos, use a tag code.
Assim seu código fica colorido e formatado, como o postado pelos colegas.
Se você não sabe usar esse recurso, peço que leia o seguinte tópico, que vai te ensinar esse e outros recursos do fórum: http://www.guj.com.br/posts/list/50115.java
Muita gente nem sequer lê o tópico quando o código não está formatado.
Mesmo os que lêem, perdem o interesse rapidamente caso você não formate nunca.