«Родитель» и «ребенок» здесь не подходят. Ребенок - это не тот тип родителей (я, конечно, надеюсь, что мои дети не дольше, по крайней мере, еще десять лет, но это другой вопрос).
Рассмотрим один и тот же код с разными именами:
class abstract Animal{
protected String name;
public Animal(String name){
this.name=name;
}
}
class Elephant extends Animal{
public Elephant(String name,int count){
super(name);
}
}
Теперь, как вы можете иметь слона, который не является животным?