As an IDE? In that case, might I suggest using Eclipse or IntelliJ? Might be a bit easier to use an actual Java IDE for development. I never tried notepad++ for Java, but I guess using Eclipse or IntelliJ might make it a lot easier (with code completion, formatting, etc.)
As for the physics: There are two ways to approach this. You could take as a rule that your ball will only move under a 45 degree angle, in which case you could use fixed direction (i.e. when the ball is moving north-east, and it hits an object on the eastern side of the ball, the direction will change to north-west etc.). However when you want the angle to differ, it will become a little bit more complicated. When the ball hits an object, you need to check the angle on which it hits the object.
Here’s some of my awesome paint skills:
I think the hardest part of it all is determining the position of the oncoming collision with another object.
I think I can’t explain it much better than this (pretty bad at explaining). I’ll try to help you as much as possible, just ask away when you have a question 
Good luck!