面向对象 2-6 传统的计算机语言,数据与过程分离,如C,Pascal,.… (过程式程序设计语言) Prolog,and (declarative language) LISP (函数式程序设计语言) Java将数据与定义其上的过程进行封装 传统程序设计语言: Java: procedure1 procedure2 procedureN data- 000 procedures Data files Programming in Java JAVA
2-6 Programming in Java •传统的计算机语言, 数据与过程分离,如C, Pascal, … (过程式程序设计语言) Prolog, and (declarative language) LISP (函数式程序设计语言) 面向对象 Data files procedure1 procedure2 procedureN 传统程序设计语言: data procedures Java: •Java将数据与定义其上的过程进行封装
OO in Java 2-7 Java与其他面向对象程序设计语言: >与C++相比: •语法 访问控制(public,private,.protected) >与Smalltalk相比: 都是动态绑定 ·所有东西都是对象 >与Ada相比: ·强类型 •没有多继承 Java的新特点: >没有指针 >字节码校验 Programming in Java JAVA
2-7 Programming in Java OO in Java •Java 与其他面向对象程序设计语言 : ➢与 C++相比: •语法 •访问控制 (public, private, protected) ➢与 Smalltalk相比: •都是动态绑定 •所有东西都是对象 ➢与 Ada相比: •强类型 •没有多继承 •Java 的新特点: ➢没有指针 ➢字节码校验
造用子网辂 2-8 ·通过使用Java的核心类库jvm.net使网络编程更 简单 Programming in Java JAVA
2-8 Programming in Java • 通过使用Java的核心类库java.net 使网络编程更 简单 适用于网络
解释性 2-9 编译器将Java源代码翻译成字节码bytecode;.当一个Java程 序运行时解释器处理字节码 Write Once,Run Anywhere Java is an interpretive language Compile-time Environment Run-time Environment (Java Platform) Java Source (-java) Class Loader Java Bytecode Class Verificr Libraries Java Compiler Java Just in Interpreter Time Compiler Java Virtual Java Machine Bytecode Runtime System (class) Operating System 7 Hardware Java Applet or Application Code Programming in Java JAVA
2-9 Programming in Java •编译器将Java 源代码翻译成字节码bytecode;当一个Java程 序运行时 解释器处理字节码 解释性
a2水 高性能 2-10 ·Bytecode→Machine Code ·Java Compiler .JIT(Just-in-Time)Compiler ·Hotspot性能优化编辑器 Programming in Java JAVA
2-10 Programming in Java • Bytecode Machine Code 高性能 • Java Compiler • JIT(Just-in-Time) Compiler • Hotspot 性能优化编辑器