There are different types of locks, which are given as follows:
System locks - controlled by oracle and held for a period of time.
User locks - Created and managed using dbms_lock package.
Different types of user locks are given as follows
UL Lock - Defined with dbms_lock package.
TX Lock - Acquired once for every transaction. It is a row transaction lock.
TM Lock - Acquired once for each object, which is being changed. It is a DML lock.