Herança e Composição/Exercício 01: Porta AND Binária

From Wiki**3

< Herança e Composição
Revision as of 19:50, 27 September 2009 by Root (talk | contribs)

Problema

Realize uma classe Java que represente uma porta lógica AND com duas entradas. Esta classe deve chamar-se AndGate2 e ter, entre outras que sejam (justificadamente) julgadas necessárias, a seguinte funcionalidade:

  • Se, na construção, não se especificarem os valores lógicos das entradas, devem ser considerados falsos;
  • Se, na construção, se especifica apenas um valor lógico, assume-se que é o mesmo para as duas entradas;
  • Se, na construção, se especificam dois valores lógicos, então cada entrada deve ser definida em conformidade;
  • Depois de criado o objecto, deve ser possível estabelecer o valor de cada entrada, tanto individualmente, como em conjunto;
  • Deve ser possível obter o valor da operação lógica (método getOutput).
  • Deve ser possível comparar duas portas (são iguais se os valores das entradas forem iguais);
  • Deve ser possível apresentar (toString) uma descrição da porta, sob o formato A: valor B: valor (onde valor é o valor de cada entrada).

Após ter definido a classe, codifique uma aplicação e a função main respectiva, por forma a demonstrar o correcto funcionamento desta classe. Escolha diferentes combinações de entradas por forma a ter valores distintos na saída dos dois objectos.

Solução