http://www.html.it/pag/18354/le-classi-astratte2/

Qui leggo:

Se una classe estende una classe astratta, deve ridefinire tutti i metodi dichiarati come astratti con proprie implementazioni, assumendo così una struttura comune.
e anche

Come possiamo notare, i metodi astratti non hanno un corpo: sarà compito delle classi eredi fornire un’implementazione per questi ultimi.
ecco perchè ho fatto quella affermazione prima, avere un vincolo sull'utilizzo dei metodi astratti nelle sottoclassi mi può essere utile, così come il definire 'contenuto' come astratta, ma se nella classe astratta non fornisco una implementazione non posso usare il polimorfismo. Perdipiù non me ne farei nulla, utilizzerei sempre i metodo delle sottoclassi che devo, anche con la classe astratta, re-implementare su ognuna anche per le parti comuni.

Piuttosto pensavo, e se definissi il costruttore in 'contenuto' per i soli attributi comuni, e poi nei costruttori delle sottoclassi lo richiamassi con la parola chiave 'parent'? Potrei cosi definire una sola volta l'attribuzione di valori agli attributi comuni e richiamarla nelle sottoclassi.