1、JAVA语言简介

一、背景

作者:詹姆斯·高斯林(James Gosling)。

时间:1995年5月23日。

归属:Oracle公司(最初由Sun公司推出,2009年4月20日Oracle收购了Sun公司)。

概述:Java语言在设计之初参考了C++,是一门在C++基础之上发展而来的语言。提倡“一次编写,处处运行(Write Once, Run Anywhere)”。具有简单性、面向对象、分布式、健壮性、安全性、平台独立与可移植性、多线程、动态性等特点。

二、应用领域

Java SE:Java Standard Edition,是Java技术的核心和基础,是Java ME和EE是基础。单独使用Java SE可以用来开发桌面软件。

Java ME:又称为J2ME(Java Platform,Micro Edition),是为机顶盒、移动电话(诺基亚)和PDA之类嵌入式消费电子设备提供的Java语言平台,包括虚拟机和一系列标准化的Java API。

Java EE:Java Platform,Enterprise Edition,是sun公司推出的企业级应用程序版本。这个版本以前称为 J2EE。能够帮助我们开发和部署可移植、健壮、可伸缩且安全的服务器端 Java应用程序。Java EE 是在 Java SE 的基础上构建的,它提供Web 服务、组件模型、管理和通信 API,可以用来实现企业级的面向服务体系结构(service-oriented architecture,SOA)和 Web 3.0应用程序。奠定了Java的地位,大部分人学Java的目的都是为了开发服务端程序。

此外,Android系统的APP也可以由Java开发,大数据也首选Java语言开发。

三、运行机制

相关名词解释如下:

  • 字节码:源代码与机器码(二进制)之间过渡的中间状态(中间码),是一种与特定平台无关的低级代码,可以在不同的虚拟机上运行。
  • 源代码:由人按照Java语言开发规范编写的Java文件,后缀为.java。
  • 机器码:个数在计算机中的二进制表示形式被称为这个数的机器数。在计算机内部,所有信息都是以二进制的形式存储和处理的,这种二进制形式的数据就是机器码。

编程语言共有两种运行机制

  • 编译:在程序运行前,由编译器将源代码直接编译成机器码,计算机可以直接运行

        优点:运行快。

        缺点:开发者麻烦,不同架构的计算机的机器码是不同的,可能针对不同计算机修改代码。

  • 解释:在程序运行时,由解释器将源代码逐行翻译成机器码,并运行

        优点:开发者方便

        缺点:运行慢

Java采用的方式:

  • 先编译,在程序运行前将源代码编译成字节码;
  • 再解释,再程序运行时逐行将字节码解释为机器码并运行。

       

        Java融合了编译、解释的优点,由于源代码编译后的字节码也是二进制,与机器码接近。程序运行时解释字节码要比直接解释源代码更快。当然,要比直接运行机器码慢些。

四、扩展和补充

机器码与字节码都是二进制的,它们的区别时什么呢?

机器码:机器码是特定计算机体系结构下的二进制指令,它与具体的计算机体系结构和CPU类型直接相关,不同的计算机体系结构需要不同的机器码‌。

字节码:也是一种二进制代码,字节码需要通过解释器或即时编译器转换为机器码后才能执行。它比机器码更抽象,使用类似于汇编语言的指令集,可以通过反编译工具将其转换为可读的形式‌。

总的来说,机器码和字节码都是二进制代码,但它们在设计目的、抽象级别、可移植性以及执行方式上有所不同。机器码是为底层CPU执行而设计的,而字节码则是一种为了实现跨平台性而设计的中间表示形式‌

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值