I don't know anything about it but I want to learn it so I can build any electronic devices I want with the knowledge. Can I learn it online for free? What programming language must I choose?
From laptops to datacenters, game consoles to scientific supercomputers, cell phones to the Internet, Java is everywhere!
- 1.1 billion desktops run Java
- 930 million Java Runtime Environment downloads each year
- 3 billion mobile phones run Java
- 31 times more Java phones ship every year than Apple and Android combined
- 100% of all Blu-ray players run Java
- 1.4 billion Java Cards are manufactured each year
- Java powers set-top boxes, printers, games, car navigation systems, ATMs, lottery terminals, medical devices, parking payment stations, and more." - from http://www.java.com/en/about/
Java is completely free and can be downloaded and installed on your computer as a bundled Development Kit with Net Beans from http://www.oracle.com/technetwork/java/javase/downloads/index.html.
There are an abundance of free resources for learning Java. Simply Google something like "Free Java Programming Tutorial for the Complete Beginner" and you'll find many awesome resources to help you learn.
Because Java, like most other programming languages, assumes a certain amount of mathematical cognizance, I'd recommend you first spend some time studying mathematics for programming. It can be pretty tedious and time consuming to learn any programming language. You will run across many technical concepts like OOP (Object Oriented Programming), Loops (a sequence of instructions that continually repeat until a certain condition is reached), and algorithms (step-by-step procedures for calculations). Installation of your Java software can also be problematic, as it must be configured in a certain way to work properly on your computer. Many people never get past these nuances, but if you study and persist despite the complications and confusing terminology, you'll find a rewarding hobby and an even more rewarding career (most Java programmers make $50 + an hour). Best of luck to you!