Java 核心内容相关面试题【1】
1、什么是 transient 变量?
transient 变量是指不会被序列化的变量。
2、什么是同步(synchronization)?
在多线程环境中,同步是指控制多个线程访问共享资源的方式。没有同步的话,可能出现一个线程正在读取或使用共享资源,同时另一个线程却在修改它的情况,这会造成严重的错误。
3、在 JDK 1.2 中,stop(), suspend() 和 resume() 这三个方法有什么变化?
它们都被标注为 "deprecated",也就是应该避免使用。
4、null 是一个关键字吗?
不是。
5、线程停止运行后是什么状态?
线程停止运行后,就变成 DEAD 状态。
6、什么是集合 API(Collection API)?
集合 API 是指一组用于帮助处理对象集合的类和接口。
7、List 接口是做什么的?
List 接口是用来处理有序且允许重复的对象集合的接口。
8、Vector 类是做什么的?(译注:现在没人用这个类了)
Vector 是一个可增长的对象数组。
9、抽象类可以实例化么?
抽象类不能直接实例化,而只能通过创建其子类对象,来间接实例化。
10. Java 程序中用到的第一个关键字是什么?
package。
11. 什么时候应该将类定义为 final?
不希望有子类的时候;
不希望功能被扩展的时候。
12. 能否将抽象方法声明为静态的?
不允许,这样做会导致编译错误:illegal combination of modifiers abstract and static
13. 能否将接口声明为抽象的?
可以。声明接口的时候加不加上 abstract 没有区别。
14. 能否声明一个内容为空的接口?
可以。
15. 能否将接口声明为 final?
不允许,这样做会导致编译错误。因为接口必须要有子类。
16. 如何处理 ClassCastException?
在强制类型转换之前用 instanceof 判断是否可以转换。
17. "xyz"是基本型别(Primitive)类型的值吗?
不是,"xyz"是一个字符串,不是基本型别类型的值。
18. 一个对象什么时候可以被回收(garbage collection)?
当程序不可访问(unreachable)该对象的时候,该对象可以被回收。
19. 所有线程都要实现的一个方法是什么?
run() 方法,不论该线程是继承自 Thread 类或是实现了 Runnable 接口。
20. 当异常没有被捕获时,会发生什么?
当前线程所在的线程组会执行一个叫 uncaughtException() 的方法,最后程序会异常退出。
21. 构造方法中如何使用 this() 和 super()?
前者用来调用当前类的其他构造方法;后者用来调用父类的构造方法。
22. 什么情况下垃圾收集器会执行对象的 finalize() 方法?
当垃圾收集器检测到该对象不可访问(unreachable)时,会执行该对象的 finalize() 方法。
23. 方法重载(overloading)有什么要求?
方法的名称必须一样;方法的参数声明必须不一样。
24. 编译器什么情况下会提供缺省构造方法(default constructor)?
当一个类没有其他构造方法的时候,编译器会为其提供缺省的构造方法。
25. 非静态内部类可以使用哪些修饰符(modifier)?
非静态内部类可以使用 final 或 abstract 修饰符。
Java 核心内容相关面试题【1】的更多相关文章
- Java 核心内容相关面试题【3】
目录 面向对象编程(OOP) 常见的Java问题 Java线程 Java集合类 垃圾收集器 异常处理 Java小应用程序(Applet) Swing JDBC 远程方法调用(RMI) Servlet ...
- Java 核心内容相关面试题【2】
第一,谈谈final, finally, finalize的区别. final?修饰符(关键字)如果一个类被声明为final,意味着它不能再派生出新的子类,不能作为父类被继承.因此一个类不能既被声明为 ...
- Java 核心内容相关面试题【4】
spingmvc 和 structs的区别 我们用struts2时采用的传统的配置文件的方式,并没有使用传说中的0配置. spring3 mvc可以认为已经100%零配置了(除了配置spring mv ...
- Java中JVM相关面试题-整理
1.JVM内存模型 •程序计数器:当前线程字所执行节码的行号指示器,用于记录正在执行的虚拟机字节指令地址,线程私有. •Java虚拟机栈:存放基本数据类型,对象的引用,方法出口等,线程私有. •本地方 ...
- 31道Java核心面试题,一次性打包送给你
先看再点赞,给自己一点思考的时间,微信搜索[沉默王二]关注这个靠才华苟且的程序员.本文 GitHub github.com/itwanger 已收录,里面还有一线大厂整理的面试题,以及我的系列文章. ...
- 万字长文,62道Java核心面试题,一次性打包送给积极向上的你
先看再点赞,给自己一点思考的时间,微信搜索[沉默王二]关注这个靠才华苟且的程序员.本文 GitHub github.com/itwanger 已收录,里面还有一线大厂整理的面试题,以及我的系列文章. ...
- Java多线程相关面试题及答案-整理
1.什么是线程? 线程是操作系统能够进行运算调度的最小单位,它被包含在进程之中,是进程中的实际运作单位.程序员可以通过它进行多处理器编程,你可以使用多线程对 运算密集型任务提速.比如,如果一个线程完成 ...
- Java初中级程序员面试题宝典
Java基础部分 &与&&区别? &和&&都是逻辑运算符,都是判断两边同时真则为真,否则为假:但是&&当第一个条件不成之后,后面的条件都 ...
- 【搞定 Java 并发面试】面试最常问的 Java 并发进阶常见面试题总结!
本文为 SnailClimb 的原创,目前已经收录自我开源的 JavaGuide 中(61.5 k Star![Java学习+面试指南] 一份涵盖大部分Java程序员所需要掌握的核心知识.觉得内容不错 ...
随机推荐
- C# 7 局部函数剖析
局部函数是C# 7中的一个新功能,允许在一个函数中定义另一个函数. 何时使用局部函数? 局部函数的主要功能与匿名方法非常相似:在某些情况下,创建一个命名函数在读者的认知负担方面代价太大.有时,函数本身 ...
- 全方位解读及介绍windows网络安全及常见攻击方式
本来我就是来逛逛论坛的,可是看到前面有位一样是干网络安全的同行,留下来过的痕迹,发了一篇相对不错的文章,我寻思咱既然来这一趟,也不能显得就比别人差啊.所以我也就写了这一片不算成熟小文章,望各位共勉之哈 ...
- Java历程-初学篇 Day03扫描仪与类型转换
一,扫描仪 步骤1,使用扫描仪方法 步骤2,导个包 步骤三,使用 注意事项:严格区分大小写 二,类型转换 1,自动类型转换 当将一个数值范围小的类型赋给一个数值范围大的数值型变量,java在编译过程中 ...
- webpack2使用ch7-loader解析css 自动添加浏览器前缀
1 目录结构 安装的依赖 "autoprefixer": "^6.7.7", "css-loader": "^0.28.0&qu ...
- springboot高并发redis细粒度加锁(key粒度加锁)
本文探讨在web开发中如何解决并发访问带来的数据同步问题. 1.需求: 通过REST接口请求并发访问redis,例如:将key=fusor:${order_id} 中的值+1: 2.场景: 设想,多线 ...
- cocos2dx - 控件扩展之pageview循环显示
接上一节内容:cocos2dx - shader实现任意动画的残影效果 本节主要讲一下扩展PageView控件功能 在实际游戏应用中,经常会碰到用原来的控件难以实现的功能.这时候就需要根据需求,通过选 ...
- btsync 分享资源
Btsync是一款跨平台软件,可以在不同的设备之间共享文件. Btsync类似于BT下载,用户对用户(多用户)之间的传送. 文档的分享者可以将资源放到文件夹下,生成共享Key,分享给接受者,接受者只需 ...
- Tomcat针对网站打开速度慢进行局部优化方案
首先打开tomcat下的conf文件夹里面的server.xml找到Tomcat端口号一栏 <Connector port="8081" protocol="HTT ...
- 高性能 Java 缓存库 — Caffeine
http://www.baeldung.com/java-caching-caffeine 作者:baeldung 译者:oopsguy.com 1.介绍 在本文中,我们来看看 Caffeine - ...
- PHP上传大文件配置
使用PHP上传比较大的文件时,发现程序没反应,那是因为PHP的默认设置限制了上传文件的大小,所以要修改配置文件php.ini中的一些选项:(以下只是我个人的配置,大家可根据自己的实际需要配置) fil ...