This preview shows pages 1–3. Sign up to view the full content.
This preview has intentionally blurred sections. Sign up to view the full version.View Full Document
Unformatted text preview: 1 The University Of Michigan Andrew M. Morgan EECS285 Lecture 01 Java The Overview Van der Linden Ch.1-2 EECS EECS EECS EECS EECS EECS EECS EECS 285 285 285 285 285 285 285 285 2 Andrew M. Morgan Java One Slide History Javas Beginning Dec. 1990: James Gosling began working on a new language at Sun Microsystems Initially called Oak 1996: Java 1.0 released 1998: Java 1.2 (aka Java 2) released In comparison C++ was developed between 1983 and 1985 C was developed around 1972 Fortran was developed around 1955 2 EECS EECS EECS EECS EECS EECS EECS EECS 285 285 285 285 285 285 285 285 3 Andrew M. Morgan Java What and Why Compiled Java is platform independent Write source code, compile it once, run on any platform Java is completely object-oriented C++ is a superset of C, and is often used as C+ Java is programmer friendly Automatic garbage collection, no pointers, etc. Java has a lot of pre-built functionality Huge API contains functionality for everything from container data structures to image manipulation to Java is great for developing user interfaces UI development, data entry, event handling, etc., is relatively straight forward EECS EECS EECS EECS EECS EECS EECS EECS 285 285 285 285 285 285 285 285 4 Andrew M. Morgan Why Java: Platform Independence C++ vs Java build and execution C++ Source Code Java Source Code Platform-A-Specific C++ Compiler Platform-A-Specific Object Code Platform-A-Specific Java Compiler Platform-Independent Byte Codes Platform-A-Specific C++ Linker Platform-A-Specific Executable Platform-X-Specific Java Virtual Machine (Interpreter) Platform-B-Specific Java Compiler Platform-Y-Specific Java Virtual Machine (Interpreter) Platform-B-Specific C++ Compiler Platform-B-Specific Object Code Platform-B-Specific C++ Linker Platform-B-Specific Executable Platform-specific compilers generate byte codes that can be interpreted by any platforms Java Virtual Machine (JVM) 3...
View Full Document
This note was uploaded on 01/19/2012 for the course EECS 285 taught by Professor Idk during the Fall '08 term at University of Michigan.
- Fall '08