JAVA面试题0 JAVA语言的基本知识
JAVA语言的特点是什么?
>面向对象:两个基本概念:类和对象;三大基本特性:封装、继承、多态;
>健壮性:java吸收了C/C++的优点,但是去掉了它们影响健壮性的部分,例如指针和内存申请和释放,提供了一个相对安全的访问机制
>跨平台性:因为java使用了jvm的机制,在不同的平台只要有其对于的jvm就可以运行java代码。所以可以做到"Write once,Run any where"
一个java文件中是否可以包含多个类(不是内部类)?有什么限制?
答案:以包含多个类,但是只有一个类可以和文件名相同;
GC是什么?为什么要有GC
GC是垃圾收集的意思(Gabage Collection),内存处理是编程人员容易出现问题的地方,忘记或者错误的内存回收会导致程序或系统的不稳定甚至崩溃,Java提供的GC功能可以自动监测对象是否超过作用域从而达到自动回收内存的目的,Java语言没有提供释放已分配内存的显示操作方法。
垃圾收集器的基本原理是什么?垃圾回收器会立即回收内存吗?有什么办法可以告诉GC立即回收垃圾?
对于GC来说,当程序员创建对象时,GC就开始监控这个对象的地址、大小以及使用情况。通常,GC采用有向图的方式记录和管理堆(heap)中的所有对象。通过这种方式确定哪些对象是"可达的",哪些对象是"不可达的"。
当GC确定一些对象为"不可达"时,GC就有责任回收这些内存空间。可以。程序员可以手动执行System.gc(),通知GC运行,但是Java语言规范并不保证GC一定会执行。
SomeThing类的文件名可以叫OtherThing.java吗?
这个好像很明显。
答案: 正确。从来没有人说过Java的class名字必须和其文件名相同。但public class的名字必须和文件名相同。
配置变量环境中path的作用是什么?
目的是为了在控制台的任何文件路径下,都可以调用jdk指定目录下的所有指令。
JDK、JRE、JVM的关系是什么?
JDK包含JRE,JRE包含JVM
程序中若只有一个public修饰的类,且此类含main方法。那么类名与源文件名可否不一致?
不可以,public修饰的类必须和源文件一致,和包不包含main方法没关系
Java的注释方式有哪几种,格式为何?
三种类型:
1、单选注释:符号是://
2、块注释: 符号是: /* */ 可以跨多行
3、javadoc注释: 符号是: /** */ 可以跨多行,
生成javadoc时,这样的注释会被生成标准的javaapi注释