This week's book giveaway is in the Reactive Progamming forum. We're giving away four copies of Reactive Streams in Java: Concurrency with RxJava, Reactor, and Akka Streams and have Adam Davis on-line! See this thread for details.
Ofcourse it depends on what you're going to develop. If you're going to develop a Java EE application that needs a database, then you'll need enough memory, disk space and processor power to run your IDE, a database server and a Java EE app server on your machine (although you might also run the database and / or Java EE app server on another machine).
Make sure that you get enough memory. I'd recommend at least 4 GB RAM and a 64-bit OS for a serious development machine. Java IDEs need a lot of memory.
The machine I'm currently working on has a quad-core Intel Xeon processor and 12 GB RAM.
I normally work on my three year old desktop, which has 2GB of RAM and a Core 2 Duo and runs Windows Vista.
I also have a 10 year old laptop which I like to write Java programs on every now and then. It's pretty cool, the thing is clunky and heavy, it runs Windows ME, and I'm not sure, but I think it runs on a Pentium II. :P
To put things into more perspective, it has a 4GB hard drive.
It's great though, it doesn't have any other programs on it, except for my preferred text editor, and a hex editor. I have the JDK 1.5 installed, because sadly ME doesn't support 1.6, but that's okay. At least I have generics and everything.
Compilation is a bit slow, as well as starting up the JVM, but everything works just fine.