I like that both 0:00 and 24:00 exist. If you say "midnight, August 12", do you mean at the start or the end of the day? There might be a convention, but I don't know it so others probably don't either. With 0:00 and 24:00 and a date, you can disambiguate a time precisely.
The standard convention is that midnight is the start of the day. The instant 23:59:59 is followed by 00:00:00 of the next day.
The only instant that could exist would be 24:00:00. If you told me it was 24:00:05, I'd say poppycock - that's tomorrow, 00:00:05 instead.