Erm, google maps uses cell phone towers, wifi (IPlocation)
and GPS...
You can precache the maps you need to see where you are using some third party jailbreak apps, so you don't need to use your data connection at all, but it's a bit of a procedure.
I'm not sure how big the normal Google Maps cache is before cracking, but what I do normally when I know I'm going to use it is view the route I'm going to take on wifi before I leave, and it seems to cache enough for most journeys without having to download much or anything over the 3g.
Bookmarks