Mocking is a general term for objects that simulate other objects. These can be hand coded classes to simulate other objects, or they can use isolation frameworks to automate the creation of an object to simulate other objects.
I personally prefer to call objects like these "doubles," rather than mock objects. "Mock" implies a specific type of double. I generally follow the definitions from xUnit patterns. Mock is a double that facilitates in validating the correctness of results within a test via its behavior being called by the SUT, by acting in the same way as what it is doubling for. There are other types of "test doubles" that we can make use of when we're attempting to verify our code through tests. A stub acts in the same way as another object to provide inputs to a third object, so that inputs can be verified. A dummy is an object that "fills in the blanks" for something else that otherwise couldn't operate without "something," A fake object takes the place of something...