Imagine uma classe NumeroUtil definida assim:
Public class NumeroUtil{
Public function soma (numeroA:Number, numeroB:Number):Number{
Return numeroA + numeroB;
}
}
Para chamar a função soma dessa classe seria necessário criar uma instância
da classe, da seguinte forma:
Var objNumeroUtil:NumeroUtil = new NumeroUtil();
Var soma:Number = objNumeroUtil.soma (1,2);
Uma função static (estática) pode ser chamada diretamente da classe, sem
você precisar instancia-la.
Modificando a classe NumeroUtil para uma função estática (static):
Public class NumeroUtil{
Public static function soma (numeroA:Number, numeroB:Number):Number{
Return numeroA + numeroB;
}
}
A chamada da função soma ficaria assim:
Var soma:Number = NumeroUtil.soma (1,2);
Veja que eu não precisei instanciar a classe número útil.
Da mesma maneira você poderia ter uma variável estática:
Public class NumeroUtil{
Public static var guardadoDeNumero:Number;
}
Você poderia usar:
NumeroUtil.guardadorDeNumero = 7;
Vale a pena ressaltar o uso de outro conceito de orientação a objetos (OO)
que muitas vezes caminha junto com o conceito de variável ou função estática
(static), o conceito de const (constante).
Por exemplo:
Public class NumeroUtil{
Public static const pi:Number = 3.141592653589;
}
O valor da variável estática pi é constante. Se você tentar fazer isso:
NumeroUtil.pi = 99; //gera erro
Claro que isso é uma questão mais conceitual, mas que acaba facilitando
muito a leitura e organização do código.
Recomendo muito que você procure se aprofundar um pouco nos conceitos da
orientação a objetos.
Grande Abraço
Bonafé
-----Mensagem original-----
De: [email protected] [mailto:[email protected]] Em nome de
Flávio Tomazio
Enviada em: terça-feira, 16 de março de 2010 20:27
Para: flexdev
Assunto: [flexdev] Dúvidas Básicas de Flex
Olá.
Quais são as diferenças entre:
public function e public static function
E o que são bubbles?
--
Você recebeu esta mensagem porque está inscrito na lista "flexdev"
Para enviar uma mensagem, envie um e-mail para [email protected]
Para sair da lista, envie um email em branco para
[email protected]
Mais opções estão disponíveis em http://groups.google.com/group/flexdev
Verificado por AVG - www.avgbrasil.com.br
Versão: 8.5.436 / Banco de dados de vírus: 271.1.1/2736 - Data de
Lançamento: 03/15/10 19:33:00
--
Você recebeu esta mensagem porque está inscrito na lista "flexdev"
Para enviar uma mensagem, envie um e-mail para [email protected]
Para sair da lista, envie um email em branco para
[email protected]
Mais opções estão disponíveis em http://groups.google.com/group/flexdev