Duvida iniciante com NetBeans

Pessoal, uso mais o JCreator do q o NetBeans, mas to kerendo aos poucos migrar para o Net, mas tive uma dúvida.

código do JCreator


 import java.awt.*;
 import javax.swing.*;
 
 
public class Cap08Ex01 extends JComponent {
    
    public static void main(String[] args) {
    	
    	JFrame f = new JFrame("Alo Mundo");
    	f.setSize(300,200);
    	f.getContentPane().add(new Cap08Ex01());
    	f.setVisible(true);   
    }
    
    public void paintComponent(Graphics g){
    	g.drawString("Alo Mundo!",100,85);
    }
}          

código do Netbeans


package cap08ex01;

import java.awt.*;
import javax.swing.*;

public class Main extends JComponent{    
   
    public Main() {    
    }    
    
    public static void main(String[] args) {
       JFrame f = new JFrame("Alo Mundo");
    	f.setSize(300,200);
    	f.getContentPane().add(new Main());
    	f.setVisible(true);   
    }
    
    public void paintComponent(Graphics g){
    	g.drawString("Alo Mundo!",100,85);
    }    
}

Tive problemas para rodar essa até entender bem o que ele fazia. Minha duvida é a seguinte quando crio uma nova aplicação no Net com qualquer nome porque a classe principal nao fica com esse nome? no caso acima meu projeto tinha nome “Cap08Ex01” e a classe principal ficou como Main, não seria pra ele criar a classe principal com o nome da aplicação(projeto) igual no JCreator?

Vlw…

Thiago.

Vc deve ter deixado o NB marcado pra criar a classe pricipal…

Desmarca essa opção e deixa o nome da classe igual o nome do .java que vai funcionar legal!!!

Ja fiz deu erro, ele nem chega a compilar diz q essa classe é pública e deveria ser criada num arquivo Cap08E01.java

OBS: fazendo esse procedimento de tirar o “Criar classe principal”…ele obviamente nao cria classe e criei essa na mão(Cap08E01.java)…na hora de compilar da esse erro.

Para se renomear
classes (e os respectivos arquivos), utilize o menu popup no NB, clicando sobre o nome do arquivo na árvore do projeto.

Clicando com o botão direito sobre o projeto, você pode ir em propriedade e definir qual a classe principal do seu projeto.

fw

Cara… cria a classe com o nome igual do arquivo que vai rodar… acabei de testar seu cod.

[code]import java.awt.;
import javax.swing.
;

public class Cap08Ex01 extends JComponent {

public static void main(String[] args) {
    
    JFrame f = new JFrame("Alo Mundo");
    f.setSize(300,200);
    f.getContentPane().add(new Cap08Ex01());
    f.setVisible(true);
}

public void paintComponent(Graphics g){
    g.drawString("Alo Mundo!",100,85);
}

}[/code]

Funfou tranquilo…

tb deu pra resolver deixando essa MAIN de lado e criando um outra classe…e compilando por ela…

Era isso q eu estava dizendo… :slight_smile:

Abraço