As funções matemáticas que vimos na Secção 3.5.4 estão todas “arrumadas” numa classe de nome Math
. É por isso que, quando as invocamos, temos que preceder o seu nome de Math
e um ponto. Relembre o seu uso:
xxxxxxxxxx
int i = 3;
double raiz = Math.sqrt(17.0 * i);
System.out.println(Math.sin(raiz));
long k = 3 * Math.round(Math.exp(i));
A classe Math
pertence à biblioteca base do Java, e por isso está disponível para todos os programadores que instalem o JDK.
A ideia que levou à criação desta classe – juntar várias funções úteis da mesma natureza numa mesma classe que todos os programadores podem usar – pode ser aproveitada por nós. À medida que vamos desenvolvendo procedimentos e funções que pensamos serem úteis para vários programas, vamos “arrumando-os” numa classe especial que pode depois ser utilizada por outros programas, feitos por nós ou pelo nosso grupo de trabalho.
Por exemplo, se acharmos que os métodos imprimeTresLinhas()
e notaFinal(...)
podem ser úteis noutros contextos, então podemos criar uma classe chamada, por exemplo, MinhasUtilidades
– e nela definir estes métodos.
Desta maneira, nos programas em que quisermos usar alguma destas funções só teremos que fazer a sua invocação indicando o nome da classe onde estão definidos.
No programa NotasFinaisLegivel
, por exemplo,
retiramos as definições desses métodos, porque já estarão definidas na classe MinhasUtilidades
e
precedemos as suas invocações de MinhasUtilidades.
como em:
xxxxxxxxxx
MinhasUtilidades.imprimeTresLinhas();
int nota = MinhasUtilidades.notaFinal(16.2, 12.3, 14.4, 15.1);
Quando quisermos fazer alguma melhoria a algum desses métodos, basta alterarmos a sua definição na classe MinhasUtilidades
. Não temos que mexer nas classes que o usam.
ATENÇÃO: Para que os métodos definidos na classe MinhasUtilidades
possam ser usados a partir de qualquer outra classe, a palavra public
deve ser adicionada imediatamente antes da palavra static
(tal como temos no método main
). Mais adiante aprenderemos mais sobre este assunto.
Anterior: 4.5. Documentação
Seguinte: 5. O tipo de dados `boolean` e comandos condicionais