so i have 2 more questions, sorry:P
No need to apologize -- I've been programming off and on for the past 12 years or so, and there are still times I drive everyone else crazy with my nagging pleas for assistance.
1: - How do I know whether I've learnt a Language? Is it like speech, I know most words but I'll also learn more as well as some words will change over time (does that make sense?)
Yes, a programming language is, in many senses, similar to spoken language. You will start off by learning a few words, then you will learn other words, then how those words work together in different situations... until, eventually, you go from "pidgin coder" to "fluent coder."
One major difference is that there are a lot of shared words common to most or all programming languages (such as 'if', 'switch', and 'while').
As to whether words change -- while words themselves typically do not change, there are times when new words are added, and times where old words are no longer used (this is called "deprecation" in programmer-speak). But, as far as words changing
meaning, that is a rather rare occurrence.
2: - Whats a GraphicAPI and how does it affect your code?
An API (the abbreviation for "Application Programming Interface") is a set of functions and such that allow a programmer to take advantage of a system someone else has implemented. For example, the Windows API is an interface that allows programmers to construct applications specifically geared to Windows, giving coders access to functions like drawing a window, navigating folder structures, interacting with peripheral devices, and so on.
So, a graphics API is similar, but is targeted to graphics programming. There are many, many graphics APIs. The two most common (and the two which most other graphics APIs rely upon) are DirectX, and OpenGL. Both APIs give you a set of functions that allow you to take advantage of hardware acceleration. They are used in simple, 2D games; large-scale, real-time 3D simulations -- and of course, everything in-between.
Java has its own basic graphics API (which was called Java 2D, though it's been a while since I've worked with Java). That will be *much* easier to use than a "naked" DirectX or OpenGL API. There are also a few 3D APIs for Java, most of which use OpenGL (though unless things have changed, Java3D gives you a choice between DirectX or OpenGL).
In any case, don't worry too
much about graphics APIs yet. You'll want to get a good handle on how other things work first (such as functions). Many of us spend our first several weeks programming mostly console applications, and move up to graphical goodies once we have a basic grip on the "simple" stuff.