No está bien
Cita: un constructor que reciba el nº maximo de objetos dentro del array y que inicialice dicho array
Ni el constructor recibe el número de objetos ni inicializas el array.
Y tu método añadir tampoco es correcto, te pide que le pases un objeto y lo añadas al final de la lista, tú le pasas un array creas un array nuevo con una posición más y copias el contenido, nada que ver con lo que te piden.
Cita: un método añadir que recibe como parámetro un objeto y lo añade al final de la lista
Este punto está mal redactado, es ambiguo. Podría significar que cada elemento que le pases lo ponga en en la última posición libre o directamente en la última posición. Lo normal es que se refiera a la última posición libre, ¿pero entonces qué debe hacer si todas las posiciones tienen elemento?