Acesso (outra questão)

10 respostas
Grinvon

Essa daqui não é de minha autoria. Essa questão está no livro Aprenda em 21 dias Java 2 . Mas é uma questão interessante e fácil. Veja:

package com.prefect.bureau;

public class Information {

       public int duration = 12;
       protected float rate = 3.15f;
       float average = 0.5f;

}

e:

package com.prefect.bureau;
import com.prefect.bureau.*;

public class MoreInformation extends Information {

 public int quantity = 8;

}

e:

package com.prefect.bureau.us;
import com.prefect.bureau.*;

public class EvenMoreInformation extends MoreInformation {

       public int quantity =9;

       EvenMoreInformation() {
       super();
       int i1 = duration;
       float i2 = rate;
       float i3 = average;

       System.out.println(
       "Quantidade: " + quantity +
       "
Duracao: " + i1 +
       "
Rate: " + i2 +
       "
Average: " + i3);

       }

       public static void main(String[] args) {
       new EvenMoreInformation();
       }
}

Q: Quais variáveis de instância são vizíveis na classe EvenMoreInformation? :wink:

10 Respostas

danieldestro

Todas menos “average”, que é default.

Ironlynx

Deixa o grammar nazi do guj ler isso…
Nenhuma.Pois “average” só é vista no package.Dará erro de compilação.
Se não tivesse average,todas seriam acessíveis. :wink:

Grinvon

Você errou Iron, destro acertou.

danieldestro

Eu sou o melhorrrr… kd meu premio?

Ironlynx

Eu falei a mesma coisa que o Destro só que de forma diferente!
Mas a verdade é q nenhuma será acessada devido ao erro(não passará na compilação!Ou Passa? :shock:)

Acho q isso eh a mesma coisa q o Daniel falou não? :wink:

danieldestro

Você disse NENHUMA. :oops:
A questão na verdade era sobre visibilidade e não sobre compilção. :twisted:
Ponto pra mim. Ganhei! :stuck_out_tongue:

Ironlynx

danieldestro,tá certo…vc venceu me expressei MUITO mal…considerei apenas a execução(funcionalidade,o que invalida todas as demais)não o acesso.É bom eu lembrar disso na hora da prova.E eu ainda escrevi um tutorial sobre acessibilidade em Java pro guj tsk,tsk… :roll:

danieldestro

Ninguém é perfeito!
Hehehehehehe… brincadeirinha

Grinvon

Não compila por que o programa tentar acessar uma variável padrão, sendo a classe que o chama está em outro pacote. E como sabemos o acesso a variável padrão, somente em mesmo pacote :lol: , pórém o importante é a vizibilidade. 8) Ponto para os dois.

danieldestro

Se você tivesse feito:

a) não compila
b) average não é visivel
c) bla bla bla
d) a b c e d f g

ai seria diferente a pergunta… não acha?

Criado 18 de março de 2004
Ultima resposta 21 de mar. de 2004
Respostas 10
Participantes 3