Olá, pessoal,
Estou precisando entender o seguinte, eu nunca sei se devo criar determinados objetos no construtor da classe ou fora do construtor. Estou fazendo isso assim sem uma razão lógica, faço mas não entendo porque faço. Não é legal aprender uma coisa sem saber o motivo.
Se eu tenho que criar dois objetos Font e um objeto Color, para usar em JLabel e em JTextField, não sei se devo criar os objetos fora do Construtor, assim:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class MeuPrograma extends JFrame
{
JTextField T1;
JLabel L1, L2;
Font arial14 =new Font("Arial", Font.BOLD, 14);
Font arial20 =new Font("Arial", Font.PLAIN, 20);
Color brown = new Color(128,000,000);
public MeuPrograma() // construtor
{
setTitle("Título do programa");
setVisible(true);
setSize(250,160);
setLocation(60,60);
getContentPane().setBackground(Color.gray);
getContentPane().setLayout(null);
L1 = new JLabel("Nota do aluno");
L1.setLocation(20,100);
L1.setSize(70,20);
L1.setFont(arial14);
L1.setForeground(brown);
T1 = new JTextField(12);
T1.setLocation(100,110);
T1.setSize(60,30);
T1.setFont(arial20);
// o código não termina aqui
Ou qual seria a razão que eu teria para colocar dentro do construtor? Quando é que eu devo usar uma coisa ou outra?, assim:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class MeuPrograma2 extends JFrame
{
JTextField T1;
JLabel L1, L2;
public MeuPrograma2() // construtor
{
setTitle("Título do programa");
setVisible(true);
setSize(250,160);
setLocation(60,60);
getContentPane().setBackground(Color.gray);
getContentPane().setLayout(null);
Font arial14 =new Font("Arial", Font.BOLD, 14);
Font arial20 =new Font("Arial", Font.PLAIN, 20);
Color brown = new Color(128,000,000);
L1 = new JLabel("Nota do aluno");
L1.setLocation(20,100);
L1.setSize(70,20);
L1.setFont(arial14);
L1.setForeground(brown);
T1 = new JTextField(12);
T1.setLocation(100,110);
T1.setSize(60,30);
T1.setFont(arial20);
// o código não termina aqui
Amigos, é claro que esses dois códigos estão incompletos, não liguem para isso, eu só preciso entender quando é que eu faço uma coisa ou quando é que devo fazer a outra? Se vocês puderem me dar essa dica, valeu!
Abraço a todos,
Marco