Class abstract

Bom dia,

Não consigo perceber para que servem as class abstract já que não podem ser instanciadas, é que dentro da classe podem ter metodos abstract.
Alguem me podia dar umas dicas?!

Uma classe abstrata mostra um comportamento padrão. É quando vc quer que em uma projeto, seus programadores respeitem uma determinada estrutura de trabalho, sobrescrevendo por exemplo somente um metodo, e mantendo algumas implementação abstraidas dos outros desenvolvedores.

Pode parecer inutilidade. Eu também achava isso, mas é muito importante em um projeto para proporcionar baixo acoplamento.

os metodos marcados como abstract, devem ser implementados na classe filha, a menos que ela seja uma classe abstrata tbm.

Somente a ultima classe concreta tem a obrigação de implementar os metodos abstratos.

[]'s

Aconselho a dar uma estudada em Design Pattern e ai você vai entender melhor a importância de classes abstratas, interfaces, desacoplamento, etc…

acrecentando um pouco mais ao que os colegas falaram…

pode-se dizer que classes abstratam existem para evitar retrabalho, um exemplo que existe na API do java se encontra na Java Colletion Framework

existe uma interface que todos conhecem e todos usam que se chama java.util.List, interfaces são contratos, é o modo de operar que uma classe aceita quando a implementa, existem varios tipos de List em java, ArrayList, Vector, LinkedList entre outras…

A interface List, é um contrato, e nela so o que as classes que a implementam deve possuir, os 3 tipos de list que eu citei acima, implementam a interface List, para evitar retrabalho, e reecrever trechos de códigos que são similares para as 3 classes, se criou um classe intermediaria, com métodos comuns a esses 3 tipos de list esta classe se chama AbstractList

sendo assim, AbstractList serve principalmente como uma base, com métodos comuns para implementar uma List.

A classe abstata quase sempre tem essa função, no lugar de vc reecrever o mesmo método em varios Objetos, vc concentra o trabalho comum em uma classe abstrata