Pergunta

7 respostas
M
eu to estudando pelo livro do deitel e nao sei se passei e nao notei ou se vai ser abordado no capitulo 8 o que eu vou pedir....... por exemplo, nesse código da figura 6.13:
public class FibonacciTest extends JApplet
   implements ActionListener {

   JLabel numberLabel, resultLabel;
   JTextField numberField, resultField;

   // set up applet?s GUI
   public void init()
   {
      // obtain content pane and set its layout to FlowLayout
      Container container = getContentPane();
      container.setLayout( new FlowLayout() );

      // create numberLabel and attach it to content pane
      numberLabel = 
         new JLabel( "Enter an integer and press Enter" );
      container.add( numberLabel );

      // create numberField and attach it to content pane
      numberField = new JTextField( 10 );
      container.add( numberField );

      // register this applet as numberField?s ActionListener
      numberField.addActionListener( this );

      // create resultLabel and attach it to content pane
      resultLabel = new JLabel( "Fibonacci value is" );
      container.add( resultLabel );

      // create numberField, make it uneditable
      // and attach it to content pane
      resultField = new JTextField( 15 );
      resultField.setEditable( false );
      container.add( resultField );

   }  // end method init
por que tem que ser inicializado antes isso? :
JLabel numberLabel, resultLabel;
   JTextField numberField, resultField;

nao poderia ser feito dentro do metodo init() assim.. JTextField numberFiled = new JTextFiled; ?????
e por que isso é feito antes??

Obrigado!

7 Respostas

C

Kra fala qual edicao do livro q e??
Aqui nois tamo fazendo uns topicos so sobre codigos fontes dos livros… la em iniciantes!!
Eu abri um do Java como Programar 3ª edicao!!

Abraco e te +

S

tem q ser fora…pq se vc declarar dentro do metodo…vc nao vai ter acesso aos componentes, em outro metodo

flw

M

“slask”:
tem q ser fora…pq se vc declarar dentro do metodo…vc nao vai ter acesso aos componentes, em outro metodo

flw

mas entao porque nao declarar tudo de uma vez antes de comecar o init(){… ???

invez de declarar antes JTextField numberField, resultField; e depois resultField = new JTextField( 15 );

J

“maluquo1”:
“slask”:
tem q ser fora…pq se vc declarar dentro do metodo…vc nao vai ter acesso aos componentes, em outro metodo

flw

mas entao porque nao declarar tudo de uma vez antes de comecar o init(){… ???

invez de declarar antes JTextField numberField, resultField; e depois resultField = new JTextField( 15 );

Cara
tanto faz inicializar antes ou depois.
ele preferio usar antes
mas se ele quisesse inicializar logo na declaração nao teria problema não
mas eu acho que ele quis tratar todas as propriedades de cada componente na mesma hora pra organizar melhor o código e fica mais facil de entender oq cada objeto tem.
bom eu acho…
[]'s

J

opss
quer dizer
ele preferio usar DEPOIS
hehehe
malz ae
falow

N

Nao foi inicializado fora… foi declarado fora… se fosse declarado dentro do metodo init() esses objetos só poderiam ser usados dentro do init()… Não sei se o exercicio é só isso… mas voce poderia fazer um listener pra um botao que modifica os JTextFields, pra isso esses objetos precisam estar visíveis fora do método init()…
Nesse exemplo (se for só isso), até que não faz sentido, mas mais pra frente vc vai ver porque :wink:

D

Cara vc pode postar pra mim o código de como resolver o Fibonacci por favor!

Criado 27 de julho de 2004
Ultima resposta 27 de jun. de 2005
Respostas 7
Participantes 6