It is an extremely bad idea to try to rent a car in Indonesia and drive yourself, as the drivers here are very aggressive and seem to have suicidal tendencies sometimes. Hiring a car with driver will save you a lot of hassle and grief, and is only slightly more expensive than getting the car itself. Toll roads on the island are usually in good condition, though signs are often missing and drivers are extremely reckless.
Travel within major cities like Jakarta is best done by walking or public transportation. One of the more reliable taxi services is called Blue Bird. You can call for a cab at (021) 794 1234. These cabs can even be rented for the whole day if you plan to visit several sites and do not want to worry about transportation. Be careful if you call taxis off the street, however, as many drivers are unscrupulous. It is best not to take a taxi alone if possible.
Buses and trains that go across Java can be quite crowded and slow, but will get you where you want to go as long as you are not on a tight schedule. Buses are frequent and the railway is fairly reliable. The executive class on the trains is the best, and it may be worth the extra money when the trains are crowded.