It depends on you for which device you are developing an application. If you are developing just for BlackBerry devices - you should go for RIM API for application development, which is availabe on the BlackBerry site. But then, this application will not work on any other devices like Nokia, Samsung etc.
If you want your application to be cross-platform i.e. device independent, i.e. it should work on all the devices, then you should go for Sun Java ME API. Only thing is that, those device should support Java. To check whether it supports or not, see the device's specifications.It should have supports MIDP and CLDC.
There is no need to purchase a device just for testing. There are emulators available for each of the mobile from each of the vendors, on their respective sites.
Following links may be useful for you. Java Home: Before Starting Mobile Application Development... Java Home: Integrating BlackBerry Emulator with the NetBeans IDE