I am very Java biased and used it for more than 15 years now.
I would say that you need to predict how complex your program is going to be and decide on that. Simple things that tend not to evolve and do not need complexity of JVM would probably be far better done as simple Python scripts.
If you can foresee more complexity (web server/XML processing/lots of object oriented code/threading/interoperability with other systems/etc) then you'll probably be far better using Java.
Or, if you just love coding in Java as I do - then there's no competition there.
Oh, BTW, changing existing Python script and running it again is very simple operation and you can easily do it just by ssh-ing to RPi and using vi (or any other editor). If you want to do more complex stuff in Java you would be far better off doing it in Eclipse (or similar) on a PC (or laptop) and then send result back to RPi to execute (copying .class files, creating .jar and send it there or do it in many other ways). All this adds complexity - but when set properly gives you far more powerful system.
And - GC problems can be sorted out...