若有错误,请评论指出。
一、jdk与jre的区别:
jdk是开发工具集,提供java开发工具,例如:javac等;jre是虚拟机,提供java运行环境;jdk包含jre。Java程序经过javac编译后成字符行文件,计算机看不懂,需要jvm(java虚拟机)解释成计算机能看懂的机器语言。
二、如何利用jdk编译和运行java程序:
1.javac Helloworld.java
2.java Helloword
三、环境变量classpath的作用:
加载类的地址。当我们在A类里使用B类,但是B类不是在同目录下,这时候就需要classpath里加入B类的地址,使得A类能访问B类。
四、如何为Java程序动态的指定类搜索路径:
1.javac -cp c:\Person Helloworld.java
2.java -cp c:\Person Helloworld
(也可以用 -classpath -cp是其缩写)
五、Java与C++程序在编译和运行上有什么区别:
Java很多地方都借鉴了C++,但是又本质区别:
Java:.java文件是编译成.class文件,而.class文件计算机不能识别,它由JVM识别,而且JVM也只能识别.class文件;
C++:c++里的文件是编译成目标文件,而目标文件能被计算机识别;
六、什么是jvm及其工作原理:
JVM是一种用于计算设备的规范,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。
Java最大特点就是与平台无关,jvm是实现这个的关键。一般高级语言在不同平台上运行需要编译成不同的目标代码。而引入jvm后,java语言在不同平台上运行就不用重新编译。Java语言只要编译成jvm的目标代码,就可以在不同平台上运行。
七、Java程序为什么无须delete语句进行内存回收:
Java虚拟机里有垃圾回收机制,它本质是一个线程,当内存不足的时候它就会把不经常使用的内存释放。
十一、变量及其作用范围:
局部变量:在{}里声明,作用域在{}里;
成员变量:在类里方法外声明,当此类被实例化,变量跟着被赋值,当对象被销毁,此变量也跟着销毁;
静态变量:在类里方法外声明,修饰符:static,此变量在程序开始时候就被赋值,程序销毁时销毁,并且无论创建多少此类的对象,仅有一个此变量储存空间。
十二、Java的变量分哪两种大的数据类型:
基本数据类型:其变量在计算机内存里储存的是基本数据(值);
引用数据类型:其变量在计算机内存里储存的是引用数据(有点类似指针);
十三、Java包含哪些基本数据类型及其包装类
八种数据类型:
整型:byte 1个字节;short 2个字节;int 4个字节;long 8个字节;
浮点:float 4个字节;double 8个字节;
字符:char 2个字节;
布尔:boolean 1个字节;
下篇:java 面试题(二):http://blog.csdn.net/x_i_a_o_hei/article/details/52350618