I would not be surprised if many people who don't have knowledge of naval vessels would use "battleship" as a generic term for "surface naval vessel". A possible driver of this could be the "Battleship" game.
I would also not be surprised if there were many people who'd never heard the terms "destroyer" or "cruiser".