章节练习题及面试题
Java语言的特点是什么?
面向对象性:两个基本概念:类、对象;三大特点:封装、继承、多态。
健壮性:去掉了其影响程序健壮性的部分(指针、内存的申请与释放等),提供了一个相对安全的内存管理和访问机制。
跨平台性:通过Java语言编写的应用程序在不同的系统平台上都可以运行。“Write once,Run Anywhere”
问题:System.out.println()和System.out.print()的区别?
println();打印完后,会换行
print();打印完后,不会换行
一个“.java”源文件中是否可以包含多个类(不是内部类)?有什么限制?
答:可以。但最多只有一个类名声明为public, 与文件名相同。
Something类的文件名叫OtherThing.java
class Something {
public static void main(String[] something_to_do) {
System.out.println("Do something...");
}
}
// 正确。但public class的名字必须和文件名相同
为什么要设置path(或者说,设置path的目的是什么)?
目的是为了在控制台的任何文件路径下,都可以调用jdk指定目录下的所有指令。
JDK,JRE和JVM的关系是什么?
JDK包含JRE,JRE包含JVM
源文件名是否必须与类名相同?如果不是,那么什么情况下,必须相同?
否,以public修饰的类源文件名必须与类名相同。
程序中若有一个public修饰的类,且此类含main方法。那么类名与源文件名可否不一致?
必须一致
Java的注释方式有哪几种,格式为何?
三种:
单行 //、多行 //、文档注释/*/
自己使用java文档注释的方式编写程序,并用javadoc命令解析
超纲题目:GC是什么?为什么有有GC
GC是垃圾收集的意思(Gabage Collection),内存处理是编程人员容易出现问题的地方,忘记或者错误的内存回收会导致程序或者系统的不稳定甚至崩溃,Java提供的GC功能可以自动监测对象是否超过作用域从而达到自动回收内存的目的,Java语言没有提供释放己分配内存的显示操作方法。
超纲题目:垃圾回收器的基本原理是什么?垃圾回收器可以马上回收内存吗?有什么方法主动通知虚拟机进行垃圾回收
对于GC来说,当程序员创建对象是,GC就开始监控这个对象的地址,大小及使用情况。通常,GC采用有向图的方式记录和管理堆(heap)中的所有对象。通过这种方式确定哪些对象是“可达的”,反之