Kennedy Meeks and Joel Berry II added 16 apiece for the Tar Heels (3-0). They shot 52.5 percent, outscored Wofford 50-18 in the paint and outrebounded the pesky Terriers 42-24 but couldn't pull away until late.
Jaylen Allen scored 15 points for the Terriers (0-2). They hit nine 3-pointers and twice fell behind by double figures before rallying to make it a one-possession game.
They threatened to do it again when Allen's 3 made it 58-50 with 9 minutes left.
Johnson followed with a stickback before Nate Britt had consecutive steal-and-scores, the second of which gave the Tar Heels their largest lead to that point -- 64-50 -- with 8 minutes remaining.
Wofford never got closer than 11 after that while North Carolina pulled away, finally stretching the lead to 20 on Berry's jumper with about 90 seconds remaining.
Justin Gordon had 12 points and Spencer Collins added 11 points for Wofford, which returned three starters from a team coming off a 28-7 finish and a fourth NCAA Tournament berth in six years.
Isaiah Hicks finished with 12 points for the Tar Heels, who have won all three of their games by at least 20 points.
For much of this one, the Terriers never let the Tar Heels pull too far ahead, finding an answer every time North Carolina thought it had created some breathing room.
The Tar Heels led 42-31 on Johnson's putback with 17 1/2 minutes to play before Wofford made things tense, hitting two 3s and converting a three-point play before Allen's bucket with 13 1/2 minutes left made it 50-47.
Wofford: This was Wofford's first game against a top-ranked team and its first against the Tar Heels since 1926. The Terriers have never beaten a Top 25 opponent.
North Carolina: The Tar Heels have shot at least 50 percent in each of their three wins, but they were just 1 of 9 from 3-point range in this one. Their 78 points was a season low while their 58 points allowed was a season best.
North Carolina is at Northern Iowa on Saturday.