Survey
* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project
Java Introduction 劉登榮 Deng-Rung Liu 87/7/15 Outline History Why Java? Java Concept Java in Real World Language Overview Java Performance!? Conclusion History (1/2) Consumer electronics technology Hardware & Software Difference Programming language bottleneck New Language Solution History (2/2) Proposed by Sun Microsystem For Consumer Electronics Not Only For Consumer Electronics New Language ? (Updating) Why Java ? (1/3) Language trend (High-Level) Object-Oriented world Security requirement (Machine & To Yourself) Internet hot! (Interactive Document) Why Java ? (2/3) Applications in the OS(Seldom Using Applications) Real World?! Different Platform?! (How to cross different platform) Write-Once-Run-Anywhere ! (Quickly Development) Integrated with new technology Why Java ? (3/3) Distributed computing trend (RMI) Backward compatibility (Only Related to Java Virtual Machine) Fit wireless communication (low bandwidth required) Some news! Java Concept (1/6) Java Virtual Machine (JVM) Java Source Code JVM (Intel) Intel/ Windows PC Java Compiler JVM (Sun) SPARC/ Solaris Workstation Byte Code Other Architectures Supporting JVM Java Concept (2/6) Java Runtime Environment (JRE) Class loader & bytecode verifier Interpreter Garbage Collector awt io net ... Java class libraries JIT ... Threads and Synchronization JVM Java Concept (3/6) 100% Object-Oriented Programming Language C-Like grammar Different Packages & Interfaces Java Concept (4/6) Relation between JVM & Application Interpreter & JIT (Just-In-Time Compiler) JDK (Java Development Kit) & JVM Java Version Java Concept (5/6) Development Environment JDK Visual J++ Symantec Café No pointer in Java (Object Reference) No memory management mechanism (Garbage Collector) Java Concept (6/6) Java Native Interface (JNI) Array of pointers to JNI functions Pointer Per-thread JNI data structure C Language Function Pointer Native method Pointer Native method Pointer Native method ... Java in Real World IC Card Machine Consumer Electronics Very small Hand Computer (Java Chip) Will be HOT in Consumer Electronics Language Overview Sample Code Java Defect?! (1/2) Hardware interface Interpreter language performance Java bug!? Lack OS support Java Defect?! (2/2) OS attention Not popular language for programmer Sun Microsystem Conclusion A New Programming Language Cross-Platform Implementation Java Chip Java OS Other OS Support Project Experience Sharing