编译器 JVM JDK JRE JSE是什么 关系?都有什么用,都怎么样工作的

面向对象和面向过程有 什么 区别?对象又指什么?
Java里的类是否可以看作C语言的头文件?方法看作函数?

编译器 JVM JDK JRE JSE是什么 关系?都有什么用,都怎么样工作的?

能否说简单清楚些,不要网上转来的
谢谢
再补充一 点 “不推荐使用Netbeans, 现在公司里都用Eclipse”都是把程序做出来这个还有区别么?不同的开发工具开发出来的程序还有不同么???

我安装了NetBeans IDE是否还需要另外安装JVM JDK JRE JSE?
安装JDK似乎需要修改环境变量。这是为什么?
在JDK里面是不是包含了JVM JRE JSE?
类库和库又有什么 区别么
JVM JDK JRE JSE的概念我知道的,我 想知道他们间有什么联系,工作的这个过程是怎样的
今天才学问题比较多~
最新回答
一花一树开

2024-10-11 08:25:19

java是面向对象编程,一切皆对象。这个观念要以后慢慢才能了解,无论怎么样讲都是初学者理解不了的。所以还需要多多练习。
C语言是面向过程编程的。所以没有“类”的概念,而java的类却更符合人类的思维方式,C语言更符合机器的思维方式。

还有就是,千万不要把C语言的一些概念和java混淆,这是两种不同类型的语言,java是纯的面向对像的编程语言,而C是面向过程的。以后的学习中你会发现java比C更有优势。再重申一下,最好不要把C的概念和java做对比。你把java当作一门新的语言来学。 唯一可以借鉴C的就是语法和编程的一些基本概念如数据类型,设计模式之类的。

jvm 是java虚拟机,将java的class字节码文件翻译成二进制可执行程序。
jdk 是java的开发包 java sdk, java的开发工具,包含SUN公司提供的java API,将java源码编译为class字节码文件,通常jdk中就包含了jre。
jre 是java运行时,用于执行java程序。
jse 是java标准开发,jse 就是java开发的一种,标准开发,例如开发桌面程序。

其余的还有 javaEE, javaMe 前者是java的企业应用,后者是java的嵌入式开发,例如java手机程序。

如果netbeans能运行,说明你安装的netbeans已经包含了JDK,而jdk里已经包含了jre和jvm,故以后就可以省心了,至于环境变量的事情,你可以去搜索一下,很简单的配置,有个好消息告诉你,如果你是按照安装向导操作的,向导会自动将环境变量写进去。

java基础类库就是API,而你说的“库”我不太明白是什么意思。

jdk是开发工具包,里面包含 javaSE, JRE, JVM
jdk 把.java文件编译成为.class字节码文件
然后JRE调用JVM将字节码文件翻译成可供机器执行的程序。就这样了啊。

最后说一句: 不推荐使用Netbeans, 现在公司里都用Eclipse,这才是趋势。

************************************8
继续补充
angelicdemon 所说的没错,IDE环境会在配置文件里自己写上jdk和jre的路径以便找到他们。
但是经过安装向导安装jdk后确实会自动将java所需要的环境变量写进系统环境变量中。再有,如果使用IDE的话 环境变量没啥用处,只有用命令行模式编译java源码才会有用处。

另外: Eclipse绝对是现在公司的首选,因为公司里的项目用ECLIPSE构建的,源码上传到版本控制系统后,同步后,你用Netbeans打不开,还得重新构建,麻烦吗? 再说了NB和EC还是有相当大区别的。
还有就是,这句话最重要,如果你真的是java初学者,绝对不要用IDE,用记事本+命令行 这样才能真正掌握java的机理。 哈哈 累死我了,就写到这吧
angelicdemon 看来也和这贴干上了。
一会儿这贴成论文贴了
***********************************

以上回答可能有错误,要参考其他人的答案。
矮胖病!

2024-10-11 13:12:18

面向对象就是一切东西都是对象,所有程序都编写成对象的形式,是抽象成对象这种形式
面向过程的程序就是程序从头执行到尾
对象就是拥有方法和属性两种东西的一个东西,比如人就是一个对象,有吃饭走路等等的动作,也就是方法,有年龄等等的属性,所有东西都是对象。
C语言的头文件可以看作Java里的类,所有东西都是以类的形式出现,除了一些基本类型比如int整型
方法就是函数,函数就是方法。
编译器就是将java文件编译为class文件的东西
JVM虚拟机,java运行的一个东西,具体就是运行编译好的class文件
JDK,开发java需要用的东西,主要是指一些类库,也包括一些开发环境,反正大致就是这个概念
JRE,JAVA程序运行需要的类库,和运行环境,大致是这么理解吧
JSE 不知道,是不是 J2SE呀?
J2SE就是只JDK中的类库,也是指JRE中的类库,应该是一样的,不然怎么运行呢。

一般直接下一个JDK安装程序
我安装的JDK程序自带了JRE,但是实际上可以不装,因为JDK是开发环境,JRE是运行环境,也就是说你有JDK,你就可以开发,而且也当然可以运行
如果别人要运行你的程序,就要装JRE,具体怎么实现不清楚,反正就是这个意思,然后JVM不用去管,应该只是一个概念性的东西吧,具体不太清楚粗,反正学久了就会知道的
我用的是eclipse,所以再安装一下eclipse就行了
安装了eclipse就不用去配置环境变量了,如果直接用JDK做开发,也就是说用记事本编程序才配置环境变量
还有你说的之间的关系,我说了,J2SE就是指JDK和JRE中的类库
类库与库有什么区别?库就是库的概念,类库就是装有很多类的库,J2SE就是装有很多定义好了的类的库

跟楼上的理解不同
不是自动配置环境变量,而是程序会自己去找需要的文件,根本没有设置环境变量,也不用设置环境变量。
环境变量是做什么的?是运行某些指令比如javac,然后计算机就根据环境变量设置的地址去找,这就是环境变量
而用了开发工具,它不是根据环境变量去找的,而是直接所有都配置好了的,所以根本不需要什么环境变量 。
素婉纤尘

2024-10-11 09:12:58

回答楼上的,现在eclipse是大部分公司再用。但是netbean是趋势,我也是用eclipse,但是最近看了些文章都是说netbean把eclipse踩在脚下。