Java语言的前世今生
2017-06-08 00:23
225 查看
1.JAVA的前世今生--大胡子叔叔
*JAVA是SUN(Stanford University Network,斯坦福大学网络公司)1995年推出的一门高级编程语言。95年,SUN发布JDK 1.0,98年,JDK1.2,后续JDK1.3, 1.4,1.5(更名为Java5.0)最新为JDK 8。是一种面向Internet的编程语言。随着Java技术在web方面的不断成熟,已经成为Web应用程序的首选开发语言.
* java之父Jgosling团队在开发”Green”项目时,发现C缺少垃圾回收系统,还有可移植的安全性、分布程序设计、和多线程功能。最后,他们想要一种易于移植到各种设备上的平台。Java确实是从C语言和C++语言继承了许多成份,甚至可以将Java看成是类C语言发展和衍生的产物。比如Java语言的变量声明,操作符形式,参数传递,流程控制等方面和C语言、C++语言完全相同。但同时,Java是一个纯粹的面向对象的程序设计语言,它继承了
C++语言面向对象技术的核心。Java舍弃了C语言中容易引起错误的指针(以引用取代)、运算符重载(operator overloading)、多重继承(以接口取代)等特性,增加了垃圾回收器功能用于回收不再被引用的对象所占据的内存空间。JDK1.5又引入了泛型编程(Generic Programming)、类型安全的枚举、不定长参数和自动装/拆箱.
2.JAVA语言的特性及特点
一:JAVA语言特性
1. Java语言是易学的。Java语言的语法与C语言和C++语言很接近,使得大多数程序员很容易学习和使用Java。
2. Java语言是强制面向对象的。Java语言提供类、接口和继承等原语,为了简单起见,只支持类之间的单继承,但支持接口之间的多继承,并支持类与接口之间的实现机制(关键字为implements)。
3. Java语言是分布式的。Java语言支持Internet应用的开发,在基本的Java应用编程接口中有一个网络应用编程接口(java net),它提供了用于网络应用编程的类库,包括URL、URLConnection、Socket、ServerSocket等。Java的RMI(远程方法激活)机制也是开发分布式应用的重要手段。
4.Java语言是健壮的。Java的强类型机制、异常处理、垃圾的自动收集等是Java程序健壮性的重要保证。对指针的丢弃是Java的明智选择。
5. Java语言是安全的。Java通常被用在网络环境中,为此,Java提供了一个安全机制以防恶意代码的攻击。如:安全防范机制(类ClassLoader),如分配不同的名字空间以防替代本地的同名类、字节代码检查。Java语言是体系结构中立的。Java程序(后缀为java的文件)在Java平台上被编译为体系结构中立的字节码格式(后缀为class的文件),然后可以在实现这个Java平台的任何系统中运行。
6.Java语言是解释型的。如前所述,Java程序在Java平台上被编译为字节码格式,然后可以在实现这个Java平台的任何系统的解释器中运行。
7.Java是性能略高的。与那些解释型的高级脚本语言相比,Java的性能还是较优的。Java语言是原生支持多线程的。在Java语言中,线程是一种特殊的对象,它必须由Thread类或其子(孙)类来创建。
8.Java语言是原生支持多线程的。在Java语言中,线程是一种特殊的对象,它必须由Thread类或其子(孙)类来创建。Java虚拟机(Java Virtal Machine)
垃圾收集机制(Garbage Collection)
二:JAVA语言特点(开发角度,面试题)
1。 面向对象性:①两个概念:类 、 对象 ②三个特征:封装性、继承性、多态性、(抽象性)
2。 健壮性:①去除了c/c++中的指针 ②实现自动的垃圾回收机制。--->java程序仍然可能出现内存的泄漏 和溢出
3。 跨平台性: write once ,run anywhere 一次编译,到处运行。--->JVM
三:JAVA的两个核心机制
1. Java虚拟机(Java Virtal Machine)
JVM是一个虚拟的计算机,具有指令集并使用不同的存储区域。负责执行指令,管理数据、内存、寄存器。对于不同的平台有不同的虚拟机。Java虚拟机机制屏蔽了底层运行平台的差别,实现了“一次编译,到处运行
2.垃圾收集机制(Garbage Collection)
不再使用的内存空间应回收—— 垃圾回收。 在C/C++等语言中,由程序员负责回收无用内存。Java 语言消除了程序员回收无用内存空间的责任:它提供一种系统级线程跟踪存储空间的分配情况。并在JVM空闲时并释放那些可被释放的存储空间。垃圾回收在Java程序运行过程中自动进行,程序员无法精确控制和干预。
三:JAVA常识补充
:
*JAVA是SUN(Stanford University Network,斯坦福大学网络公司)1995年推出的一门高级编程语言。95年,SUN发布JDK 1.0,98年,JDK1.2,后续JDK1.3, 1.4,1.5(更名为Java5.0)最新为JDK 8。是一种面向Internet的编程语言。随着Java技术在web方面的不断成熟,已经成为Web应用程序的首选开发语言.
* java之父Jgosling团队在开发”Green”项目时,发现C缺少垃圾回收系统,还有可移植的安全性、分布程序设计、和多线程功能。最后,他们想要一种易于移植到各种设备上的平台。Java确实是从C语言和C++语言继承了许多成份,甚至可以将Java看成是类C语言发展和衍生的产物。比如Java语言的变量声明,操作符形式,参数传递,流程控制等方面和C语言、C++语言完全相同。但同时,Java是一个纯粹的面向对象的程序设计语言,它继承了
C++语言面向对象技术的核心。Java舍弃了C语言中容易引起错误的指针(以引用取代)、运算符重载(operator overloading)、多重继承(以接口取代)等特性,增加了垃圾回收器功能用于回收不再被引用的对象所占据的内存空间。JDK1.5又引入了泛型编程(Generic Programming)、类型安全的枚举、不定长参数和自动装/拆箱.
2.JAVA语言的特性及特点
一:JAVA语言特性
1. Java语言是易学的。Java语言的语法与C语言和C++语言很接近,使得大多数程序员很容易学习和使用Java。
2. Java语言是强制面向对象的。Java语言提供类、接口和继承等原语,为了简单起见,只支持类之间的单继承,但支持接口之间的多继承,并支持类与接口之间的实现机制(关键字为implements)。
3. Java语言是分布式的。Java语言支持Internet应用的开发,在基本的Java应用编程接口中有一个网络应用编程接口(java net),它提供了用于网络应用编程的类库,包括URL、URLConnection、Socket、ServerSocket等。Java的RMI(远程方法激活)机制也是开发分布式应用的重要手段。
4.Java语言是健壮的。Java的强类型机制、异常处理、垃圾的自动收集等是Java程序健壮性的重要保证。对指针的丢弃是Java的明智选择。
5. Java语言是安全的。Java通常被用在网络环境中,为此,Java提供了一个安全机制以防恶意代码的攻击。如:安全防范机制(类ClassLoader),如分配不同的名字空间以防替代本地的同名类、字节代码检查。Java语言是体系结构中立的。Java程序(后缀为java的文件)在Java平台上被编译为体系结构中立的字节码格式(后缀为class的文件),然后可以在实现这个Java平台的任何系统中运行。
6.Java语言是解释型的。如前所述,Java程序在Java平台上被编译为字节码格式,然后可以在实现这个Java平台的任何系统的解释器中运行。
7.Java是性能略高的。与那些解释型的高级脚本语言相比,Java的性能还是较优的。Java语言是原生支持多线程的。在Java语言中,线程是一种特殊的对象,它必须由Thread类或其子(孙)类来创建。
8.Java语言是原生支持多线程的。在Java语言中,线程是一种特殊的对象,它必须由Thread类或其子(孙)类来创建。Java虚拟机(Java Virtal Machine)
垃圾收集机制(Garbage Collection)
二:JAVA语言特点(开发角度,面试题)
1。 面向对象性:①两个概念:类 、 对象 ②三个特征:封装性、继承性、多态性、(抽象性)
2。 健壮性:①去除了c/c++中的指针 ②实现自动的垃圾回收机制。--->java程序仍然可能出现内存的泄漏 和溢出
3。 跨平台性: write once ,run anywhere 一次编译,到处运行。--->JVM
三:JAVA的两个核心机制
1. Java虚拟机(Java Virtal Machine)
JVM是一个虚拟的计算机,具有指令集并使用不同的存储区域。负责执行指令,管理数据、内存、寄存器。对于不同的平台有不同的虚拟机。Java虚拟机机制屏蔽了底层运行平台的差别,实现了“一次编译,到处运行
2.垃圾收集机制(Garbage Collection)
不再使用的内存空间应回收—— 垃圾回收。 在C/C++等语言中,由程序员负责回收无用内存。Java 语言消除了程序员回收无用内存空间的责任:它提供一种系统级线程跟踪存储空间的分配情况。并在JVM空闲时并释放那些可被释放的存储空间。垃圾回收在Java程序运行过程中自动进行,程序员无法精确控制和干预。
三:JAVA常识补充
:
相关文章推荐
- JVM系列第1讲:Java 语言的前世今生
- 04 Java语言基础2-逻辑、位与、三元、if、switch
- java语言中关于抽象类和接口的区别(面试经常问到,因此总结一下)
- Java语言基础19-字符串
- Google Java Oracle 三角恋的前世今生
- 【Java基础知识】Java语言的运行过程
- Java语言之动态规划实现01背包
- 第三章JAVA语言基础
- F3: Sun的新Java脚本语言
- java语言基础(10)——类型强制转换时的数据溢出计算
- javaSE_8系列博客——Java语言的特性(三)--类和对象(2)--类(宏观概述)
- JAVA语言 实现 SI/PSI表中的PAT解析
- java语言实现权重随机算法完整实例
- Java程序员应该掌握的三种语言
- 【Java语言】嵌套For循环性能优化案例
- 【Java教程】第一讲 Java语言概述(1)
- Java程序员应该掌握的三种语言
- 用自己的语言介绍下Java平台的3个版本
- Oracle8i中使用Java语言来开发存储过程
- 浅谈在Java语言中究竟是传值还是传引用