Kappa is correct. You can google examples of follow missiles or homing missiles as they are the exact same logic you want.
Formula I found from google to go towards a target:
int dy = targetY - y;
int dx = targetX - x;
double speed, sep;
sep = Math.sqrt(dx * dx + dy * dy);
speed = scale/sep;
There is a cheaper way than doing square roots but at this point, you shouldn't be worrying about optimization as small as that.
Thanks for all the replies guys, you may have noticed I am new to programming in general, although I'm picking it up fast, so please bear with me
Could you explain how the above formula works, I don't quite understand where some of the "x" and "y" 's come from.
Each object in play needs an on-screen position, hence the x/y. When doing these free-flying objects like you do now, an approach to just very basic physics is to assign a pair more of doubles of the veloctity of the object. Two, because one for velocity on the x-axis and one on the y-axis.
Then when you update position, you can do something like:
player.setX(player.getX() + player.getXV());
This is provided that your x/y is also doubles (just cast them to integers when drawing).
Acceleration is as easy as player.setXV(player.getXV() + GameMain.SPEED_FACTOR); and be sure to decrease it as well if you want that