There's not much between them.
Just the ones with truly flexable spouts' can empty themselves, if the nozzle is below the oil level in the can. Makes a real mess!
2nd hand ones, may need a number of pumps to prime, before the oil actually comes out, often with a bit of a squirt. Which will miss the target! Leaking cans is not unknown, beware of a totally empty one, that is very clean, it's either new or the leak is being hidden.
A grease gun has a spring loaded nipple on the end of the spout. Its designed to be pushed onto a GREASE lubrication nipple and semi solid grease is pumped into the joint / bearing.
Grease guns can be small push operated, or large lever operated.
An oil can is ONLY for oil, and will when pumped, allow oil to run out over the part.