Método abstrato

A definição de um método compreende especificação (a sua assinatura) e implementação (o seu corpo). Há situações em que é possível afirmar que uma classe deve ter um método com determinada especificação mas nada pode se afirmar sobre seu comportamento. Para esses casos, é possível definir que a classe tem esse método como abstrato.

A classe que tenha pelo menos um método abstrato não pode ser instanciada e também deve ser declarada como abstrata. A definição desse método deverá ser completada em uma classe derivada dessa que contém o método abstrato, usando o mecanismo de redefinição de métodos.