I did not checked all the code but you are not adding the passed lesson:
public void addLesson(Lesson l) {
if (number == size)
{
Lesson ListNew[] = new Lesson[size + 1];
for (int i = 0; i < size; i++) {
ListNew[i] = listLesson[i];
}
listLesson = ListNew;
size++;
}
listLesson[number] = l;
number++;
}