Java的五个基础面试题
编辑: 面试啦 发布时间: 2023-10-13 19:45:17
1. 将一个float 或 double 类型转换为整型时,会四舍五入吗?
2. 如果已经定义了构造方法 (无论是否有参数),编译器还会创建缺省的构造方法吗?
3. this关键字可以在方法外边用吗?
4. java中的垃圾回收器只能释放有new 分配的内存, 对吗?
5. 用final修饰的变量,如果该变量在定义时没有被初始化,还是否可以对它进行赋值?
答案:
1.答案:不会,将一个float 或 double 类型转换为整型时,总是将小数部分砍掉
2.答案:如果在类中没有构造方法,编译器会自动创建一个缺省的构造方法(无参构造方法),如果已经定义了构造方法 (无论是否有参数) 编译器就不会在创建默认的构造方法。
3.答案:this 关键字只能在方法内部使用,表示“调用方法的那个对象的”引用,即表示对当前对象的引用。
4.答案:java中的垃圾回收器只能释放有new 分配的内存,假设你的对象获得了一块非new分配的“特殊”内存区域,垃圾回收器不知道如何释放该对象的这块“特殊”的内存,为了应对这种情况,java中允许你在类中定义一个名为finalize()的方法。它的工作原理“应该”是这样的:一旦垃圾回收器准备好释放对象占用的存储空间,将首先调用其finalize()方法,并且在下一次垃圾回收动作发生时,才会真正回收对象占有内存。
5.答案:可以,用final修饰的变量,如果该变量在定义时没有被初始化,那么就只能在构造方法中赋值,而且一旦赋值后就不能再被改变,final 修饰的变量没有默认值。
2. 如果已经定义了构造方法 (无论是否有参数),编译器还会创建缺省的构造方法吗?
3. this关键字可以在方法外边用吗?
4. java中的垃圾回收器只能释放有new 分配的内存, 对吗?
5. 用final修饰的变量,如果该变量在定义时没有被初始化,还是否可以对它进行赋值?
答案:
1.答案:不会,将一个float 或 double 类型转换为整型时,总是将小数部分砍掉
2.答案:如果在类中没有构造方法,编译器会自动创建一个缺省的构造方法(无参构造方法),如果已经定义了构造方法 (无论是否有参数) 编译器就不会在创建默认的构造方法。
3.答案:this 关键字只能在方法内部使用,表示“调用方法的那个对象的”引用,即表示对当前对象的引用。
4.答案:java中的垃圾回收器只能释放有new 分配的内存,假设你的对象获得了一块非new分配的“特殊”内存区域,垃圾回收器不知道如何释放该对象的这块“特殊”的内存,为了应对这种情况,java中允许你在类中定义一个名为finalize()的方法。它的工作原理“应该”是这样的:一旦垃圾回收器准备好释放对象占用的存储空间,将首先调用其finalize()方法,并且在下一次垃圾回收动作发生时,才会真正回收对象占有内存。
5.答案:可以,用final修饰的变量,如果该变量在定义时没有被初始化,那么就只能在构造方法中赋值,而且一旦赋值后就不能再被改变,final 修饰的变量没有默认值。
上一篇:介绍Java的内部类 下一篇:Java的基础面试题附答案
面试题库导航
- C++面试题
- JAVA面试题
- Oracle面试题
- MySQL面试题
- Linux面试题
- 网络工程师面试题
- 网管面试题
- 软件工程师面试题
- PHP面试题
- .net面试题
- 软件测试面试题
- EJB面试题
- Spring面试题
- Javascript面试题
- Python面试题
- QTP面试题
- Servlet面试题
- J2EE面试题
- Database面试题
- ASP面试题
- Unix面试题
- Loadrunner面试题
- 通信面试题
- 嵌入式面试题
- Ruby面试题
- Delphi面试题
- Mobile开发面试题
- SOA面试题
- JAVA面试题面试题
- 研发工程师面试题
- 软件架构师面试题
- 系统工程师面试题
- Android面试题
- JAVA程序员
- C#面试题