About being Smart ...
well my IQ is apparently 137, about average really but I odn't think that has helped me in learning
Java.
A Programming language is like a spoken language it takes lots of time and practise for anyone to learn, and there's always new things (otherwise it'd just get boring!) Of course like Spoken languages, some people just seem to pick it up quicker than others, but I believe that the most important thing isn't how easy you find it to learn, but how interested you are in learning it.
Personally it has been very slow-going for me, but I'm still interested and so I know i'll keep on learning. I keep writing programs and reading about stuff i don't know and eventually I suppose I'll be considered a guru to someone who started out like i did ... with no programming experience at all.
My next challenge is to get certified ... not so much to prove I know enough to be certified but just to gain my first IT qualification, not having one has been a great big barrier when it comes to approaching other employers.
I was very lucky that I was employed by a company that was willing to train me from scratch, some people aren't that lucky and most companies aren't that nice.
All I'll say is for as long as it keeps you interested, keep writing, keep reading, keep learning. You're starting off at 14, that's a tremendous advatage you have, I didn't start until I was 22.
Anyway Good Luck and enjoy Java!