Because you disabled Oracle from doing it the way it normaly does it with your DISABLE TABLE LOCK command. But in reality you will never use that command, would you? So would you have a locking isues if you don't have an index on that foreign key? No, of course not, if you would allow Oracle to do the things as it was deseigned for.
SQL> alter table products disable table lock;
SQL> delete supplier where supplier_id = 1 ;
delete supplier where supplier_id = 1
ERROR at line 1:
ORA-00069: cannot acquire lock -- table locks disabled for PRODUCTS
Why should I get an error here?