230 likes | 248 Views
Learn the fundamentals of Java programming, including the difference between machine language and high-level language, compilers and interpreters, and how to create and run a Java program.
E N D
Introduction to Java Tonga Institute of Higher Education
Programming Basics • Program – A set of instructions that a computer uses to do something. • Programming / Develop – The act of creating or changing a program • Programmer / Developer – A person who makes a program • Run / Execute – The act of using a program • Every program was created by someone • Computers use special languages • Programmers use special languages to create or change a program
High Level Language C++ Java VB .NET Machine Language Hardware Machine Language • Machine language – A language understood by computers • When programs are run, machine language is used • Machine languages are almost impossible for humans to understand • Every operating system (OS) has its own machine language • Windows • Linux • Macintosh
High Level Language C++ Java VB .NET Machine Language Hardware High Level Languages • High Level Language - A programming language that is understandable by people • This enables a programmer to write programs • High level languages must be translated into machine language before running on a computer
Compilers and Interpreters • There are two main ways to change programs written in a high level language to machine language: • Use a compiler • Use an interpreter • Source Code – Code written in a programming language by a developer.
Compilers • Compiler – A program that transforms code from one format to another High Level Language Machine Language Source code Windows compiler Windows code Windows Linux compiler Linux code Linux Macintosh compiler Macintosh code Macintosh
Compilers vs. Interpreters • Advantages • Programs run faster • Disadvantages • Platform dependent - Programs only work on a specific operating system. • Windows • Linux • Macintosh • Compiling a large program may take a long time
Interpreters • Interpreter – A program that translates and executes code • Usually, interpreters translate and execute source code. Machine Language Code for Windows, Linux and Macintosh High Level Language Interpreter Source Code Windows, Linux and Macintosh
Interpreters vs. Compilers • Advantages • Platform Independent. • Don’t need to compile anything. • Disadvantages • The interpreter program must be installed on the computer that the program will run on • Slower execution • You should only use services available on all platforms. • Example: Windows has a cool sound library, but you can’t use it because it won’t run on Macintosh
Review • Give a short description of: • Machine Language • High Level Language • Give a short explanation of how an compiler is different from an interpreter
Introduction to Java • Java is a programming language created by Sun Microsystems. • Java.sun.com • Many programmers use Java • Java is an object oriented language.
Java Setup • Steps to install Java • Required • Install the Java Software Development Kit (SDK) • Find it at http://java.sun.com. • Java 2 Standard Edition • Not Required but good • Install Java Documentation • Install Integrated Development Environment (IDE) • IDE – A program that helps you to write code
Demonstration Sun Website Java Documentation Java IDE
How Does Java Work? • Java uses a compiler and interpreter! • You can compile the program once and run it on each platform with an interpreter Java Interpreter Source code Windows Windows Java Compiler Linux Macintosh Byte Code Linux Macintosh
How to Create a Java Program • Create a source file. • Use the Java compiler to create byte code. • Run the byte code using the Java interpreter.
Create a Source File • Write Java source code and save it in a file • Use a text editor or Integrated Development Environment (IDE). • Filename extension: .java
Demonstration Create a source file
Byte Code Source Code Java Compiler Javac.exe void main () … ??this$0?!... Use the Java Compiler to Create Byte Code • Source code is compiled by a Java compiler to byte code. • Byte Code • A file that can run on any computer that has a Java Interpreter • Filename extension: .class • Compiler program: javac.exe .class .java
Use the Java Compiler to Create Byte Code • Important Details • Javac.exe <filename>.java • Ex: Javac HelloWorld.java • A .class file is made for every class in the file. • Common Errors • Unable to find the Compiler - Something is wrong with your Java setup. Windows can’t find the Java compiler. • Is your access to Javac.exe and Java.exe setup properly? • Invalid Flag – One of the inputs are wrong. • Did you include the .java extension? • Are you using the right file?
Demonstration Compiling Source Code
Run the Byte Code Using the Java Interpreter • Java Virtual Machine (JVM) – A program which interprets Java programs that have been compiled into byte-code and usually stored in a ".class" file. • Interpreter performs actions • Creates windows • Prints • Etc. • Interpreter program: java.exe Byte Code Java Interpreter Java.exe ??this$0?!... .class
Run the Byte Code Using the Java Interpreter • Important Details • Java.exe <class name> • Ex: Java HelloWorld • The class name must have the correct case! • Common Errors • NoClassDefFoundError – The class can’t be found. • Is your class in the correct directory? • Are you using the correct case?
Demonstration Running Byte Code