The Java Programming Language
Programming
Programming is the process of writing a computer program
, a set of precise instructions that tell a computer what it should do. A computer's processor can only understand basic instructions, called machine code
. For humans, it is very impractical to write in such basic instructions. To solve this problem, programming languages
were invented, which are easy for humans to work with. The instructions we write in a programming language are called the source code
, which is then translated (compiled
) into machine code for the computer to execute.
This course
The goal of this course is to teach you the basics of programming, which will be required in various courses throughout your studies. Moreover, the course forms a first stepping stone to learn more advanced programming concepts, either in the follow-up course or by self-study.
To learn programming, it is good to start with a single language. In this course, we will focus on the Java
programming language. However, most of the concepts we learn work similarly in almost all programming languages. So, once you have completed the course it will be easy to pick up other languages as well.
Characteristics of Java
Java belongs to the class of object-oriented languages, in which objects provide a useful way to organize and think about code. We will delve deeper into these objects in week 5 of this course. Other popular object-oriented languages include C++, C#, and Python. These languages, including Java, consistently rank in the top 10 of most popular programming languages. Knowing Java will give you a strong foundation for learning other popular programming languages.
One key factor in Java's popularity is that it is platform-independent, meaning that a Java program can be run on any computer without modification. This is made possible by the Java Compiler
and Java Virtual Machine
(JVM). After the source code has been written, the Java Compiler translates it into bytecode
. When a computer wants to run the program, the JVM translates the bytecode into machine code that the computer's processor can understand.