什么是Java语言(学习一门语言首选了解这们语言)

什么是Java语言(学习一门语言首选了解这们语言)学习一门语言首先要对他有一定的了解。否则就会失去最基本的东西。一、什么是Java通俗将就是计算机语言的最新版本,计算机经历了C语言、C++语言、以及C+±-语言。这里的C+±-语言就是Java语言。Java语言是C语言的第三个计算机语言革命,C++语言是对C语言不足处的改进,的一门语言。而Java语言是面对C++语言的不做又一步的改进。为最大的革进新颖,决定不叫C+±-而后一些过程,最终叫Java。Java与C语言以及C++语言相比的优势其又跨平台性、可移植性。二、sunjdk众所周知,java

大家好,又见面了,我是你们的朋友全栈君。

学习一门语言首先要对它有一定的了解。否则就会失去最基本的东西。

一、什么是Java
通俗将就是计算机语言的最新版本,计算机经历了C语言、C++语言、以及C+±-语言。这里的C++ – -语言就是Java语言。Java语言是C语言的第三个计算机语言革命,C++语言是对C语言不足处的改进,的一门语言。而Java语言是面对C++语言的不做又一步的改进。为最大的革进新颖,决定不叫C+±-而后一些过程,最终叫Java。
Java与C语言以及C++语言相比的优势其又跨平台性、可移植性。

二、sun jdk

众所周知,java运行在jvm虚拟机上,其中虚拟机又分很多种。到目前为止java代表的并不是jvm。

jvm可以理解成一个不透明的沙盒,提供了一些接口允许输入输出,当然也提供了一些基本的监控。java被当成了编写程序运行在jvm上的一门编程语言。

sun jdk主要分为bin、lib、 jre 、jre/lib 、 jre/bin 几大块:

bin是Java工具,可以调起java的一些可运行包,比如java的编译,最主要的是编译器(javac.exe)。

lib是java基础类库。

jre是运行JAVA程序所必须的环境的集合,包含JVM标准实现及Java核心类库,也就是说运行一个java程序只需要包含jre部分即可,但是jre只能运行,不能编译。

jre/lib是JVM标准实现及Java核心类库。

jre/bin相当于jvm,提供了编译后的二进制文件的运行环境。

可以看出 jdk是最全的包含了所有的java所需包括jre,而jre只有运行环境,其中jre包含jvm。

三、回到核心

回到本质上,jvm接受的是二进制文件,而不是指定java语言编写的二进制文件,所以使用其他语言比如python、c、c++、go等语言,只要能将其编译成jvm可理解的二进制文件,就能在jvm上运行,当然这个过程非常艰难,要知道难在哪,需要搞清楚java编译器编译出来的二进制文件的格式是怎么样的,这个问题我将在后续的java编译、指令重排中介绍。

当下对java程序员的技能水平考验的更多是jvm的了解和掌握程度,而非java语言特性。绝大多数jvm都是由c++或者c(c与c++历来不分家)编写,当然也有用java实现虚拟机的版本。要搞懂jvm不必去搞c,但是搞过c的人都知道写起c来跟写起java来,完全不是一回事,java给我们的是全套封闭式的环境,同时也是束缚程序员的一大壁垒。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/156640.html原文链接:https://javaforall.net

(0)
上一篇 2022年7月7日 下午9:16
下一篇 2022年7月7日 下午9:16


相关推荐

  • 谷歌离线地图Api附获取教程[通俗易懂]

    谷歌离线地图Api附获取教程[通俗易懂]GoogleMapAPIV3来自:https://www.cnblogs.com/liongis/archive/2011/04/28/2032316.htmlGoogleMapsAPI_OfflineDebugPack来自:https://www.cnblogs.com/Tangf/archive/2009/02/20/1394511.html两个Api下载链接:https://pan.baidu.com/s/1SfRccuFHo1qsQyKK_LJBiA提取码:t64t从谷歌官方网站获取最

    2026年2月4日
    14
  • innodb事务隔离级别原理_innodb设置事务隔离级别

    innodb事务隔离级别原理_innodb设置事务隔离级别事务隔离级别SQL标准定义了4类隔离级别,包括了一些具体规则,用来限定事务内外的哪些改变是可见的,哪些是不可见的。低级别的隔离级一般支持更高的并发处理,并拥有更低的系统开销。ReadUncommitted(读取未提交内容)      在该隔离级别,所有事务都可以看到其他未提交事务的执行结果。本隔离级别很少用于实际应用,因为它的性能也不比其他级别好多少。读取未提交的数据,也被称之为脏读

    2022年10月10日
    5
  • 中关村科金完成OpenClaw企业级部署运行

    中关村科金完成OpenClaw企业级部署运行

    2026年3月13日
    1
  • C++中decltype与左值和右值「建议收藏」

    1decltype关键字decltype是C++11中引入的新的类型说明符。编译器根据分析表达式或者函数返回值来分析其类型。decltype的详细用法,请参考《C++中decltype的使用方法》2decltype与左值和右值decltype后面跟的表达式是左值或者右值时,编译器分析的类型会有所不同。如果表达式(非单个变量)的求值结果是左值,则编译器会得到一个引用类型;如果表达式(非单个变量)的求值结果是右值,则编译器会得到一个与表达式相同的类型。intarr[2]={10,2.

    2022年4月8日
    89
  • 前缀和算法

    前缀和算法文章目录前言一 关于前缀和二 一维数组求前缀和 1 求段区间前缀和 2 例题 AcWing795 前缀和 AC 代码三 二维数组求前缀和 1 求 S i j 2 求 x1 y1 x2 y2 子矩阵的和 3 例题 AcWing796 子矩阵的和 AC 代码四 时间复杂度分析前言关于时间复杂度 目前博主不太会计算 先鸽了 日后一定补上 什么是前缀和 例如一个数组 a 1 a 2 a 3 a n 前缀和 S i 表示的是该数组的前 i 项的和 例如 S 3 a 1 a 2 a 3 S i

    2026年3月19日
    1
  • java 缓存工具类初始化_Java缓存框架

    java 缓存工具类初始化_Java缓存框架Java缓存工具类Cache工具类定义

    2022年10月4日
    6

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号