According to all the information I can find regarding Terminator 2: Judgment Day, John Connor was 10 years old at the time the movie takes place:
John makes his first true appearance in Terminator 2: Judgment Day which takes place in 1995, played by Edward Furlong. He was a 10-year-old juvenile delinquent living with foster parents...
This makes sense, because he was conceived in 1984, and Terminator 2 takes place in 1995; thus, he would have to be 10 or 11 years old.
But in Terminator 3: Rise of the Machines, we hear this exchange between Kate Brewster and John:
KATE: You're John Connor. I'm Kate Brewster. We went to West Hills Junior High together.
KATE: What happened to you, John? Middle of eighth grade, you just disappeared. And there was that thing about your foster parents?
In the U.S., eighth grade students are almost always between 12 and 14 years old - I was a bit younger than most of my classmates, because I was born in November, but even I was 13 when I graduated from eighth grade. I have never heard of a 10 year old being in eighth grade, ever. Most 10 year olds are in fourth or fifth grade.
John isn't a normal boy, either - he spent much of his childhood wandering around with his mother, blowing things up and learning how to use machine guns and stuff. I can't imagine he went to school very often, if at all, for most of that time. If anything, he should probably have been left back several years in school. He certainly shouldn't have been sent into eighth grade two years early.
Is this an inconsistency, or is there some way to explain it?