It's difficult to find young talent mature enough to act onscreen, so it makes sense that most Hollywood depictions of high schoolers are pretty suspect at times. There's nothing new about high school roles played by older actors - it's a necessary evil, and sometimes the youngest looking actors pull it off.
Then there's the issue of aging. Obviously the best option is to cast multiple actos to play the same character at different ages, but in the world of high school drama, ideally an actor can both perform AND stay looking forever 16. That puts showrunners in a pickle.
Here's a list of old actors who played high schoolers - whether they were pulling it off or not. Fortunately, while some of these are of course questionable, none of them are nearly as creepy as an adult pretending to be a teen in real life.
Role: Rizzo in Grease
Character Age: 17
Real Age: 33
Yes, in perhaps the most extreme case, Stockard Channing played a character half her actual age. If you really take the time to look at her, you can see it, but given the era the film takes place in she actually gets away with it, portraying the world-weary and street-wise Rizzo. John Travolta is distracting enough to help, too.see more on Stockard Channing
Role: Fonzie in Happy Days
Character Age: 18ish
Real Age: 28
Henry Winkler was 28 when he was cast as Arthur Fonzarelli, meaning he was 35 when the show finally came to an end, and he was still playing the young rebel. Did he fool anyone? Not really. But he was the Fonz, a character oozing cool, so did anyone even care?
#15 on The Best Short Actors
#32 on The Best Emmy Hosts Eversee more on Henry Winkler
Role: Andrea Zuckerman in Beverly Hills, 90210
Character Age: 16
Real Age: 29
The cast of 90210 are perennial youths and the same is true for Gabrielle Carteris. Even though she was 13-years-older than her character, the audience was none-the-wiser. Though, she pulled off the character's age, her unfortunate wardrobe gave her a bit of a reputation as the "mom" of the 90210 teen crowd.
Also Rankedsee more on Gabrielle Carteris
Role: Peter Parker in the Spider-Man trilogy
Character Age: 17-18
Real Age: 27-32
It's never explicitly stated how old Peter Parker is, but in the first movie he is in high school, so he's likely 17 or 18. Tobey Maguire, as baby-faced as he is at 27, doesn't quite pull it off. Peter Parker, somehow, looks simultaneously 12 and 45. Tobey can do nerd just fine, but teenager... not so much.
#86 on The Greatest '90s Teen Starssee more on Tobey Maguire