Chapter Topics Chapter 1 discusses the following main topics: – Introduction – Why Program? – Computer Systems: Hardware and Software – Programming Languages – What Is a Program Made Of? – The Programming Process – Object-Oriented Programming
Microsystems (now owned by Oracle). • There was a need for a programming language that would run on various devices. • Java (first named Oak) was developed for this purpose.
Programming Languages • An algorithm is a set of well defined steps to completing a task. • The steps in an algorithm are performed sequentially. • A computer needs the algorithm to be written in machine language. • Machine language is written using binary numbers. • The binary numbering system (base 2) only has two digits (0 and 1).
Programming Languages • The binary numbers are encoded as a machine language. • Each CPU has its own machine language. – Motorola 68000 series processors – Intel x86 series processors – ARM processors, etc. • Example of a machine language instruction: 1011010000000101
Programming Languages • High level programming languages followed that were not processor dependent. • Some common programming languages: Java C Visual Basic
•public •static •class •void • Key words are lower case (Java is a case sensitive language). • Key words cannot be used as a programmer- defined identifier.
Programming Languages • Semi-colons are used to end Java statements; however, not all lines of a Java program end a statement. • Part of learning Java is to learn where to properly use the punctuation.
variable declaration 0x000 has been made. The Java Virtual 0x001 int length = 72; Machine (JVM) 0x002 actually decides 0x003 72 where the value 0x004 The variable length will be placed 0x005 is a symbolic name in memory. 0x006 for the memory location 0x003. 0x007
The Compiler and the Java Virtual Machine • A programmer writes Java programming statements for a program. • These statements are known as source code. • A text editor is used to edit and save a Java source code file. • Source code files have a .java file extension. • A compiler is a program that translates source code into an executable form.
The Compiler and the Java Virtual Machine • A compiler is run using a source code file as input. • Syntax errors that may be in the program will be discovered during compilation. • Syntax errors are mistakes that the programmer has made that violate the rules of the programming language. • The compiler creates another file that holds the translated instructions.
The Compiler and the Java Virtual Machine • Most compilers translate source code into executable files containing machine code. • The Java compiler translates a Java source file into a file that contains byte code instructions. • Byte code instructions are the machine language of the Java Virtual Machine (JVM) and cannot be executed directly by the CPU.
The Compiler and the Java Virtual Machine • Byte code files end with the .class file extension. • The JVM is a program that emulates a micro- processor. • The JVM executes instructions as they are read. • The JVM is often called an interpreter. • Java is often referred to as an interpreted language.
Portability • Portable means that a program may be written on one type of computer and then run on a wide variety of computers, with little or no modification. • Java byte code runs on the JVM and not on any particular CPU; therefore, compiled Java programs are highly portable. • JVMs exist on many platforms: •Windows •Unix •Mac •BSD •Linux •Etc.
Java Versions • The software you use to write Java programs is called the Java Development Kit, or JDK. • There are different editions of the JDK: – Java SE - Java Standard Edition. – Java EE - Java Enterprise Edition. – Java ME - Java Micro Edition. • Available for download at http://java.oracle.com