You're giving a string for a DATE type column.
In cases like this, Oracle implicitly converts the string to a date according to NLS_DATE_FORMAT
- see this sqlfiddle example
The right way to do that is either as Valex suggested or like this:
INSERT ALL
into instructor values (
835, 'SPARKS', 4000 , 200, 978,date '1984-12-16')
into instructor values (
978, 'STEEL', 5000 , 250, 222, date '1980-01-16')
SELECT * from DUAL;