Java Core核心基础技术面试题集

匿名网友 匿名网友 发布于: 2015-08-30 00:00:00
阅读 178 收藏 0 点赞 0 评论 0

1. 什么是指针?Java支持指针吗?

– 指针是指操作某块内存地址的引用
-Java不支持使用指针,主要是为了避免指针滥用造成内存泄露及造成程序稳定性降低

2. Path 和 Classpath的区别是什么?

– Path和Classpath都是操作系统级的环境变量
– Path是告诉操作系统到哪里找到可执行文件的,Classpath是告诉操作系统到哪里找到.class文件的。

3. 需要在每一个Java Class里面都定义一个main方法吗?为什么?

– 不需要在每一个Class里面都定义一个main方法。
– 只有在所在Java类是一个Java应用的时候才需要定义main方法。

4. finally代码段的作用是什么?

Finally是总是保证被执行的,就算是有异常报出。

5. finally代码块在什么情况下不会被执行?

在以下情况下, Finally代码块不会被执行:

– 在执行Try和Catch代码的时候如果JVM退出,finally代码块不会被执行,通常是因为System.exit()被调用。
– 如果Try和catch代码执行的线程被阻断或杀掉,finally代码块也可能不会被执行,就算是应用还在运行。
– 如果finally代码块中报出异常且没有被处理,finally代码块中剩下的代码可能不会被执行。

6. Java应用中哪个包是默认被import的?

– java.lang package是被默认导入的,就算没有import声明。

7. 如果你不想你的Class被继承,你需要怎么做?

– 将你的Class声明为final。final的Class 不会被继承。但是抽象类不能被定义为final。

8. final, finally 和 finalize()的区别是什么?

final
– final是一个class、方法和变量的标示符。
– final类是不能被继承的,final方法是不能被重载的,final变量是不能被重新赋值的。

finally
– finally是一个处理异常捕获的功能代码。
– Finally是总是保证被执行的,就算是有异常报出。

finalize()
– finalize是一个Object类的方法。
– finalize方法在垃圾回收前被调用,是一个资源释放的最后机会。

9. 方法内部可以定义static变量吗?

static变量不能再方法内部定义,No, static variables can’t be declared inside a method otherwise the class will not compile.

10. 介绍一下Java里面的类型转换?

Java里面共有两种类型转换:
a.)数字类基本数据类型之间的转换
b.)对象引用之间的转换

评论列表
文章目录