Hola, la respuesta es correcta con las siguientes cosas a mejorar:
- Los nombres de métodos es preferible que comiencen con una letra minúscula. Por ejemplo public float duracionCancion en vez de public float DuracionCancion. No es obligatorio pero así es como lo hace la mayor parte de los programadores.
- Los nombres de parámetros (así como de atributos de clases) igual, mejor int numeroCancion que int NumeroCancion
Comenzar con mayúscula se reserva para nombres de clases, así resulta fácil distinguir qué es una clase de otra cosa.
Aquí hay una cosa mal planteada:
4)PROCEDIMIENTO - public void AñadirCancionDisco (int NumeroCancion, String TituloCancion, float DuracionCancion)
El objeto (instancia de la clase) sabrá cuántas canciones tiene, porque es información "interna" al objeto. Si el objeto lo sabe y la canción se va a poner en último lugar (como dice el enunciado), no debemos pasarle como parámetro int NumeroCancion porque el objeto ya sabe el número de canción que será. Es decir, sólo hemos de pasar como parámetros aquellas cosas que el objeto no es capaz de determinar.
Saludos.