脚本宝典收集整理的这篇文章主要介绍了【301天】我爱刷题系列060(2017.12.03),脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
叨叨两句
- 这两天得好好睡一下
牛客网——java专项练习039
1
类的析构函数是一个对象被( )时自动调用的。
正确答案: B 你的答案: A (错误)
- 建立
- 撤消
- 赋值
- 引用
析构函数(destructor) 与 构造函数 相反,当对象结束其 生命周期时(例如对象所在的函数已调用完毕),系统自动执行析构函数。析构函数往往用来做“清理善后” 的工作(例如在建立对象时用new开辟了一片内存空间,应在退出前在析构函数中用delete释放)。
java中有析构函数,但我们一般用不到它,因为java有自动内存回收机制,无需程序员来释放,也就不要担心内存泄露,只不过java中析构函数所采用的方式不是C++中的那样前加~号,在java中 对象析构时会调用void finalize()方法,因此你如果确实需要析构的话就可以为你写的类添加一个void finalize(){}方法,来完成你所需要的工作
2
class X{ Y y=new Y(); public X(){ System.out.PRint("X"); } } class Y{ public Y(){ System.out.print("Y"); } } public class Z extends X{ Y y=new Y(); public Z(){ System.out.print("Z"); } public static void main(String[] @R_406_2604@s) { new Z(); } }
正确答案: C
- ZYXX
- ZYXY
- YXYZ
- XYZZ
初始化过程: 1. 初始化父类中的静态成员变量和静态代码块 ; 2. 初始化子类中的静态成员变量和静态代码块 ; 3.初始化父类的普通成员变量和代码块,再执行父类的构造方法; 4.初始化子类的普通成员变量和代码块,再执行子类的构造方法; 静态代码块和静态变量属于同级别的,按声明顺序加载 (1)初始化父类的普通成员变量和代码块,执行 Y y=new Y(); 输出Y (2)再执行父类的构造方法;输出X (3) 初始化子类的普通成员变量和代码块,执行 Y y=new Y(); 输出Y (4)再执行子类的构造方法;输出Z 所以输出YXYZ
3
下列哪个选项是Java调试器?如果编译器返回程序代码的错误,可以用它对程序进行调试。
正确答案: C 你的答案: 空 (错误)
javac.exe是编译.java文件 java.exe是执行编译好的.class文件 javadoc.exe是生成Java说明文档 jdb.exe是Java调试器 javaprof.exe是剖析工具
以上是脚本宝典为你收集整理的【301天】我爱刷题系列060(2017.12.03)全部内容,希望文章能够帮你解决【301天】我爱刷题系列060(2017.12.03)所遇到的问题。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。