- LinguagensJava
- Paradigmas de ProgramaçãoOrientação a ObjetosOrientação a Objetos: Abstração
- Paradigmas de ProgramaçãoOrientação a ObjetosOrientação a Objetos: Herança
- Paradigmas de ProgramaçãoOrientação a ObjetosOrientação a Objetos: Interfaces
Considere a seguinte classe, incompleta, que está sendo escrita em Java (ainda não foi definido se esta classe será instanciável ou não).
public class TPClass extends TP implements P
{
abstract public float processar (int pr);
public final int conectar (String odbc)
{
return 0; // código sendo implementado
}
}
Para esta classe são feitas as seguintes afirmativas:
I - “P” é uma interface e define os métodos que “TPClass” deve implementar ou declarar como abstratos. “P” pode estender uma classe, mas não pode estender uma interface;
II - se a classe “TP” for abstrata, ela não poderá ser instanciada e “TPClass” deverá implementar todos os métodos de “TP” declarados como abstratos, caso “TPClass” esteja sendo construída para ser uma classe instanciável.
III - o identificador “final” utilizado na definição do método “conectar” indica que as subclasses de “TPClass” não podem anular o método;
IV - como o método “processar” de “TPClass” é abstrato, “TPClass” também deveria ser definida como abstrata. Umas das condições para que “TPClass” seja uma classe instanciável é que seus métodos não sejam abstratos.
Estão corretas as afirmativas: