Hide in the darkness (where there are no enemy planes/subs nearby) then try rush the biggest enemy ship you can and do as much damage as possible. Alternatively, wait for them to be distracted by another BB
You'll probably get sunk in the process, but if you don't use the darkness to your advantage you'll be sunk long before you reach the enemy. Atleast if you time it right, you can get yourself a fair amount of personal attack on an easy to hit enemy BB and earn yourself a decent bit of exp.
The problem with GBs as a CA and below is all the waiting. If you have premium, try and get yourself some attack and sink, then leave once the 5 minute timer is up and join another. I'm not totally sure that's the most efficient way of earning exp, but atleast you dont end up waiting around 10-15 minutes every battle, and it always seemed pretty fast to me.