A questão baseia-se nas Figuras 1(a), 1(b), 1(c), 1(d), 1(e) e 1(f). Sobre a Figura 1(a), considere os seguintes aspectos: (1) ela mostra uma classe, segundo a notação da UML; (2) ela foi implementada na linguagem de programação Java (Figura 1(c)); (3) a operação "getA" (seta nº 3) retorna, ao chamador, o conteúdo da variável "a" (seta nº 1); (4) cabe à operação "aumenta" (seta nº 4) receber um valor, como parâmetro de entrada, e somá-lo ao conteúdo da variável "a" (seta nº 1). Por exemplo, caso tenha sido atribuído, à variável "a", o conteúdo "3.17" (Figura 1(d)), ao ser chamado o método "aumenta", com o parâmetro "7.7", esse método fará com que a variável "a" passe a ter o conteúdo "10.87"; e (5) cabe à operação "exibe" (seta nº 5) apresentar uma mensagem e o conteúdo da variável "a" (Figura 1(f)). As Figuras 1(b) e 1(c) mostram, intencionalmente, dois programas elaborados na linguagem de programação Java, nos quais se inseriu, em alguns locais, retângulos, de modo a ocultar o código fonte existente nesses locais. Na Figura 1(c), implementaram-se as operações da Figura 1(a), apontadas pelas setas nº 2, 3, 4 e 5, respectivamente, nos locais apontados pelas setas nº 12, 13, 14 e 15. A Figura 19(d) mostra uma caixa de diálogo, cujo valor de entrada será utilizado na inicialização de um novo objeto. A Figura 1(e) mostra uma caixa de diálogo, cujo valor de entrada será utilizado pelo método "aumenta", implementado no local apontado pela seta nº 13 (Figura 1(c)). A Figura 1(f) mostra uma caixa de diálogo que apresenta uma mensagem e o conteúdo da variável "a", da classe "Item", apontado pela seta nº 1 (Figura 1(a)).



Implementaram-se, na Figura 1(c), nos locais apontados pelas setas nº 12, 13, 14 e 15, respectivamente, as operações, da Figura 1(a), apontadas pelas setas nº 2, 3, 4 e 5. Nesse caso, pode-se afirmar que:
I. A operação "Item", apontada pela seta nº 2 (Figura 1(a)), pode ser implementada, no local apontado pela seta nº 12 (Figura 1(c)), da seguinte forma:
|
public Item (float ax) {
this.a=ax;
}
|
II. A operação "getA", apontada pela seta nº 3 (Figura 1(a)), pode ser implementada, no local apontado pela seta nº 13 (Figura 1(c)), da seguinte forma:
|
public float getA( ) {
return a;
}
|
III. A operação "aumenta", apontada pela seta nº 4 (Figura 1(a)), pode ser implementada, no local apontado pela seta nº 14 (Figura 1(c))), da seguinte forma:
|
public void aumenta(float ax) {
this.a += ax;
}
|
Quais estão corretas?