Exemplos de Classes em Java: Difference between revisions

From Wiki**3

No edit summary
 
(Redirected page to ist:Exemplos de Classes em Java)
 
(11 intermediate revisions by the same user not shown)
Line 1: Line 1:
== Exemplos de Classes ==
#REDIRECT [[ist:Exemplos de Classes em Java]]
 
=== Classe com atributo <code>static</code> ===
 
O atributo é partilhado por todas as instâncias da classe.
 
class StaticInt {
  '''static''' int i = 1;
}
 
Utilização hipotética:
 
StaticInt.i++;
 
Utilização possível, mas não recomendada:
 
StaticInt si = new StaticInt();
'''si'''.i++;        // '''i''' é independente de '''si'''
 
O mesmo fragmento, com o mesmo significado, mas melhor estilo (a referência a <code>i</code> faz-se através da classe e não de um objecto particular):
 
StaticInt si = new StaticInt();
StaticInt.i++;
 
Ou seja, o facto de existirem objectos de uma classe não significa que sejam a forma preferencial para invocar métodos.
 
=== Classe com método <code>static</code> ===
 
O método pode ser invocado sem que seja necessária a existência de instâncias da classe. Isto quer dizer que o método se comporta, na realidade, como uma função (não necessita do contexto de nenhum objecto em particular).
 
Definição das classes:
 
class StaticInt { '''static''' int i = 1; }  // exemplo anterior
class StaticMeth {
  '''static''' void incr() { return StaticInt.i++; }
}
 
Invocação do método:
 
StaticMeth.incr();    // o valor de '''StaticInt.i''' é agora '''2'''
 
Utilização possível, mas não recomendada (ver explicação acima):
 
StaticMeth sm = new StaticMeth();
sm.incr();        // '''incr''' é independente do contexto de '''sm'''

Latest revision as of 16:56, 7 November 2018