java面试题总结

来源:互联网 发布:dds系统数据升级工具 编辑:程序博客网 时间:2024/05/21 14:03

1、JDK和jre的区别?

 

   JDK--- 是一种工具,提供了各种编译运行工具,从jdk的安装路径可以看出,jdk包含jre

  JRE---是java虚拟机,它为java运行提供了环境

 JRE和JDK安装到路径中的jre是不同的,这里的jre是开发java项目的

 

环境变量设置

CLASSPATH: JAVA虚拟机的内加载路径

 

2、如何利用JDK来开发编译java程序??

 

JDK是一个基础的开发包

如何编译java文件

javac HelloWorld.java

运行java文件

java HelloWorld

 

3、CLASSPATH对于java开发的作用是什么??

 

配置java类加载的地方,一般在【环境变量】里面进行设置,这样在cmd中执行编译、运行java程序就可以找到类正确的路径了

主要是为java提供一个类搜索路径

 

4、用动态命令来设置classpath?

 c:\> javac -cp c:\java HelloWorld.java

 c:\> java -classpath c:\java HelloWorld

 

5、什么是jvm及其运行原理(运行机制)?

 

jvm-- java虚拟机,是用软件模拟出硬件的效果,它只是认识.class文件---即字节码文件

 

大家都知道java语言是跨操作系统平台,这是为什么呢,它还是java虚拟机的功劳,对于不同的操作平台java虚拟机都会把java语言生成计算机读懂的机器指令。在任何操作系统

中java虚拟机的功能都是一样的。java语言写的源程序通过java编译器,编译成与平台无关的‘字节码程序’(.class文件),然后在OS之上的JAVA解释器重解释执行,而JVM是java

的核心和基础,在java编译器和os平台之间的虚拟处理器。

 

6、java虚拟机为什么不用delete去掉堆栈中不要的变量?

 

因为java的垃圾回收机制,自动去掉不被引用的变量,释放内存

 

7、如何把一个java文件归档(打包成jar)?

 

cmd命令框

c:\>jar  ---查看帮助文档

打包:将HelloWorldl.class打包成hello.jar

c:\>jar cvf hello.jar HelloWord.class

 

 

8、变量

static 修饰的变量  ---  充当着全局变量的范围

局部变量   ---   函数里面定义的变量   or  参数