School is back in session! With summer break now over, kids are back to hitting the books. But in Hollywood, some students aren't really kids at all. Wonderwall.com is taking a look at the actors who were far older than the school-aged characters they played on screen, starting with Olivia Newton-John. In a January 2017 interview, Olivia Newton-John said she was nervous to play Sandy in "Grease." Why? "I worried that at 29, I was too old to play a high school girl," she told The Telegraph. Clearly, the film worked, and so did her character. Keep reading to find out which other TV and movie "teens" were actually well beyond their years.
RELATED: Celeb couples with big age gaps
Andrew Garfield
In "The Amazing Spider-Man," Peter Parker was a high school kid by day and Spider-Man by night. Andrew Garfield took on the role and sold it with his boyish good looks. Still, he was 28 when he played Spidey in 2012 and 30 when he starred in the sequel two years later.
Bianca Lawson
Bianca Lawson starred as high school student Maya St. Germain on "Pretty Little Liars." In real life though, Bianca's school days were long behind her. In fact, she was 31 when the show premiered. She also played high school-aged students on "Dawson's Creek," "Buffy the Vampire Slayer," "American Horror Story," and, of course, "Saved by the Bell: The New Class." In other words, she was a high school student for more than 20 years.
Stacey Dash
Thanks to her political sensibilities, Stacey Dash isn't as universally loved as her "Clueless" character, Dionne Davenport, was in 1995. Dionne was funny, feisty and oh-so-fashionable. Dionne was 16 years old (who can forget when she was learning to drive?!). Stacey, though, was actually 28 at the time. She also later joined the "Clueless" TV series and reprised the role. By the time she was done, she was 32.
Leonardo Dicaprio
This is a tricky one. In "Catch Me If You Can," Leonardo DiCaprio acted like he was a substitute teacher, a pilot, a doctor and a lawyer. Remember, though, that he was actually portraying scam artist Frank Abagnale Jr., who started a life of crime at 17 years of age. So Leo was supposed to be 17 in the film. But the future Oscar-winning actor was actually 28 years old.
Trevor Donovan
In 2008, The CW rebooted "90210" and tried to recreate the magic of the original, "Beverly Hills, 90210." We can all agree that it didn't quite live up to its predecessor. One of the main characters was Trevor Donovan, who joined in the second season. Trevor's character, Teddy Montgomery, was about 17 years old. Trevor, though, was 31 when he starred on "90210."
Alan Ruck
Alan Ruck personified teen angst as Cameron Frye in "Ferris Bueller's Day Off." He always seemed a little bit more mature than Ferris and a little more grounded. He should have been — he was 30 when he played Cameron. Do you think Principal Rooney knew he had a 30-year-old student walking the halls?
Jason Earles
In "Hannah Montana," Jason Earles played Miley Cyrus' annoying teenage brother. But he could almost have been playing her dad. Jason was 13 years older than Miley. He was 29 when the Disney series, which portrayed him as a 16 year old, started. He was 34 when it ended. In real life, he had a wife and a child while playing a teen.
Gabrielle Union
The cheers and chants of "Bring It On" never got old. But one of its main stars was old: Gabrielle Union was 28 when she played Isis, Kirsten Dunst's cheer rival. In other words, Gabrielle was a decade removed from high school when she played a high school student in the classic film.
Henry Winkler
The Fonz was wise beyond his years, and we know why. Henry Winkler, who played the iconic Arthur Fonzarelli on "Happy Days," was actually 29 when he started portraying the high school dropout. Obviously, the Fonz got older on the show, but so did Henry, playing the character well into his 30s.
Gabrielle Carteris
On "Beverly Hills, 90210," Andrea Zuckerman always seemed just a bit smarter than her West Beverly High School classmates… and for good reason. Gabrielle Carteris, the actress, who played Andrea, was 29. By the time Andrea graduated high school, Gabrielle was actually 32 years old.
Ian Ziering
Ian Ziering went to high school twice — once in real life and once on "Beverly Hills, 90210." Ian was 26 when he began playing Steve Sanders and he stayed on through the duration of the show. Granted, his "90210" character graduated after a few years, but Ian was 36 by the time the show actually ended.
Stockard Channing
In "Grease," Stockard Channing played Rizzo, the leader of the Pink Ladies, when she was 34 years old. She was actually on her third husband at the time in real life. No kidding!
Efren Ramirez
Vote for Pedro? Pedro should have been running for congress or city council, not school president! Efren Ramirez was 31 when he played high school student Pedro in "Napoleon Dynamite." Yeah, in real life, Pedro was more suited to teach the classes than sit in them.
Shirley Henderson
Moaning Myrtle is a teenage ghost in the "Harry Potter" series, so she will always remain a teenager. But the woman who portrayed the Hogwarts student, Shirley Henderson, is very much alive and very much older. She was 34 when she played a teenage ghost. In fact, she was the oldest actress to portray a child-aged character in the films.
Cory Monteith
The late Cory Monteith was 27 when he began playing Finn Hudson on "Glee." Interestingly enough, he was only four years younger than Matthew Morrison, who played a teacher. Cory was still on the show when he tragically passed away in 2013 at 31. At that time, his character was 19.
Charisma Carpenter
Cordelia was a high school cheerleader on "Buffy the Vampire Slayer," but she was anything but cheerful. Charisma Carpenter, the woman who played her, was also not remotely the same age as her character. When she starred as the somewhat vile Cordelia, she was 27.
Sean Patrick Thomas
When Julia Stiles starred as a high school student in "Save the Last Dance," she was pretty fresh out of high school in real life. Her co-star Sean Patrick Thomas, however, had graduated about 12 years before. Sean was 30 when he starred as Derek, the high school pal who helped Julia's character learn hip-hop dancing. Sean, by the way, played considerably younger characters in "Can't Hardly Wait" and "Cruel Intentions" too.
Taylor Kitsch
Taylor Kitsch went back in time to play a high school football star on "Friday Night Lights." In reality, he was 28 years old when he portrayed Tim Riggins. In the NFL, that's toward the end of many players' careers.
Channing Tatum
OK, OK, you've got us here, but just go with it: Channing Tatum was actually 32 when he starred in "21 Jump Street" as an undercover cop posing as a high school student. Still, he was believable as an 18 year old.
John Travolta
Much like his fellow "Grease" co-stars, John Travolta was not a teenager when he made the hit film in 1978. In fact, John was actually 24 years old when he played teenaged T-Bird Danny Zuko.
Troian Bellisario
Troian Bellisario was 25 years old when she was cast to play 18-year-old Spencer Hastings on ABC Family's "Pretty Little Liars" in 2010. The married soon-to-be mom continued to play the teen for seven years.
Jon Heder
Jon Heder was eight years removed from high school — and a married man — when he portrayed the 16-year-old title character in "Napoleon Dynamite." The actor's age isn't the only surprising thing about the 2004 cult classic: Jon initially only received $1,000 for his performance.
Ian Somerhalder
Ian Somerhalder was 31 when he landed the role of teenage Damon Salvatore on The CW's "The Vampire Diaries" in 2009. Technically, Damon was 145 years old (vampires are immortal) but was only 17 when he was made into a vamp. IRL, Ian was 37 by the time the show ended.
Jennifer Grey
Jennifer Grey might have played "Baby," but she certainly was not one! The actress was 27 when she won the role of Frances "Baby" Houseman in 1987's "Dirty Dancing" opposite gorgeous Patrick Swayze. Jennifer also played a considerably younger Jeanie Bueller in "Ferris Bueller's Day Off" one year earlier.
Keiko Agena
Keiko Agena was more than a decade older than her character, Lane Kim, on "Gilmore Girls." The Hawaii native was 27 when she began playing the 16-year-old high school student in 2000.
Benjamin McKenzie
When "The O.C." premiered in 2003, Benjamin McKenzie was far removed from his high school days. Nevertheless, the 25-year-old actor was cast to play teenager Ryan Atwood on the hit FOX series.
Rachel McAdams
Rachel McAdams was 25 when she played 16-year-old Queen Bee Regina George in 2004's "Mean Girls." In fact, Rachel is actually eight years older than co-star Lindsay Lohan, who played Regina's high school rival, and just seven years younger than Amy Poehler, who played Regina's "cool" mom in the movie. Talk about good genes!
Tammin Sursok
Tammin Sursok was almost 27 when she started playing Siena, Jackson Stewart's teenage girlfriend, on Disney's "Hannah Montana" and teenager Jenna Marshall on ABC Family's "Pretty Little Liars" (pictured).
Michael J. Fox
Michael J. Fox was 24 when "Back to the Future" hit theaters in 1985, but his character, Marty McFly, was 17 years old. He continued to play the teen throughout his late 20s, starring in 1989's "Back to the Future Part II" and 1990's "Back to the Future Part III." By the time Michael finished the film series, he was 29.
Emily Kinney
Emily Kinney might look like a teen, but she's actually much older. The "The Walking Dead" star was 25 years old when she started playing 16-year-old Beth Greene on the hit AMC show.