In an extract published in the British press on Sunday from "For the Record", due to be released in the coming week, Cameron writes that when deciding whether to back Leave or Remain in the campaign, Johnson, then the Mayor of London, was concerned what the "best outcome" would be for him, the BBC reported.
"Whichever senior Tory politician took the lead on the Brexit side - so loaded with images of patriotism, independence and romance - would become the darling of the party.
"He didn't want to risk allowing someone else with a high profile - Michael Gove in particular - to win that crown.
"The conclusion I am left with is that he risked an outcome he didn't believe in because it would help his political career," he wrote.
Cameron also reveals that during the Leave campaign, Johnson had privately raised the possibility of holding another referendum after fresh negotiations with the EU.
He also attacked Gove, who was Secretary of State for Justice and Lord High Chancellor in his government, as being, along with Johnson, "ambassadors for the expert-trashing, truth-twisting age of populism".
Cameron also accused Gove of being disloyal to both himself and Johnson.
"One quality shone through: disloyalty. Disloyalty to me - and, later, disloyalty to Boris," he wrote about Gove.
After Cameron stepped down following the referendum results, Gove, who was co-convener of the "Vote Leave" campaign, was seen as influential supporter of Johnson to take over the Conservative Party leadership, and thus become Prime Minister.
However, in an unexpected move just hours before the deadline to enter the contest, he withdrew support to Johnson, saying he could not provide the necessary leadership, and jumped into the fray himself. Johnson did not run himself, and Gove came third and was eliminated from the second round.
He was only taken into the Theresa May cabinet after the 2017 general election and again faced with Johnson in the 2019 leadership contest after her resignation but lost again.
( With inputs from IANS )