In fairness, the USS John McCain is named after the two admirals McCain, not their lesser descendant.
John McCain becomes third namesake for the USS John S. McCain