Exemplos de Classes em Java: Difference between revisions

From Wiki**3

No edit summary
(Redirected page to ist:Exemplos de Classes em Java)
 
Line 1: Line 1:
{{TOCright}}
#REDIRECT [[ist:Exemplos de Classes em Java]]
 
== Exemplos de Classes Simples ==
 
=== Classe com atributo <code>static</code> ===
 
O atributo é partilhado por todas as instâncias da classe.
 
<java5>
class StaticInt {
  static int i = 1;
}
</java5>
 
Utilização hipotética:
 
<java5>
StaticInt.i++;
</java5>
 
Utilização possível, mas não recomendada:
 
<java5>
StaticInt si = new StaticInt();
si.i++;        // "i" é independente de "si"
</java5>
 
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):
 
<java5>
StaticInt si = new StaticInt();
StaticInt.i++;
</java5>
 
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:
 
<java5>
class StaticInt { static int i = 1; }  // exemplo anterior
class StaticMeth {
  static void incr() { return StaticInt.i++; }
}
</java5>
 
Invocação do método:
 
<java5>
StaticMeth.incr();    // o valor de "StaticInt.i" é agora "2"
</java5>
 
Utilização possível, mas não recomendada (ver explicação acima):
 
<java5>
StaticMeth sm = new StaticMeth();
sm.incr();        // "incr" é independente do contexto de "sm"
</java5>
 
== ''Hello World'' ==
 
O tradicional programa, em versão Java:
 
<java5>
public class Hello {
  public static void main(String[] args) {
    System.out.println("Hello world!");
  }
}
</java5>
 
[[category:PO]]
[[category:PO Exemplos]]
[[category:Java]]
[[category:Ensino]]

Latest revision as of 16:56, 7 November 2018