每天搬一点砖,总有一天成为大牛! 看问题的时候请不要立马去翻答案,多想想. 看完答案可以问问为什么,尝试拓展!一起加油吧! 每个答案后面都有一个小彩蛋(一个以上的拓展问题),钻研让你先人一步. java 基础篇(初中级)    1.java跨平台的原因  https://www.cnblogs.com/leifei/p/11745467.html 2.javaInt占几个字节 3.什么是装箱和拆箱 4.==和.equals的区别 5.String,StringBuffer与StringBuild…
最近,在看一些java高级面试题,我发现我在认真研究一个面试题的时候,我自己的收获是很大的,我们在看看面试题的时候,不仅仅要看这个问题本身,还要看这个问题的衍生问题,一个问题有些时候可能是一个问题群(如果只关注问题本身,可以跳过补充部分). 这个是我一个多星期的奋战结果,把它记录下来,如有不当,希望大家不吝赐教. java 线程池的实现原理,threadpoolexecutor关键参数解释 原理见下图 (或者:https://blog.csdn.net/u013332124/article/de…
文章收录在 GitHub JavaKeeper ,N线互联网开发必备技能兵器谱 作为一位小菜 "一面面试官",面试过程中,我肯定会问 Java 集合的内容,同时作为求职者,也肯定会被问到集合,所以整理下 Java 集合面试题 说说常见的集合有哪些吧? HashMap说一下,其中的Key需要重写hashCode()和equals()吗? HashMap中key和value可以为null吗?允许几个为null呀? HashMap线程安全吗?ConcurrentHashMap和hashTab…
最近事情太多,没太时间写公众号.今天抽空再整理整理面试中的那点事吧,帮助那些正在找工作或想跳槽找工作的兄弟姐妹们. 前面我己写过多篇推文,相信关注此公众号的伙伴们已经了解掌握了不少.从目前流行的开发技术.常见的面试问题以及问题的答案都已经写的特别清楚了,今天我在之前的基础上,再基于面个人的经验继续精选一些面试题给大家阅读参考. 1,Java的反射 Java 反射机制是在运行状态中,对于任意一个类,都能够获得这个类的所有属性和方法,对于任意一个对象都能够调用它的任意一个属性和方法.这种在运行时动态…
Java概念题 拆箱装箱的原理 自动装箱时编译器调用valueOf将原始类型值转换成对象,同时自动拆箱时,编译器通过调用类似intValue(),doubleValue()这类的方法将对象转换成原始类型值. 只有double和float的自动装箱代码没有使用缓存,每次都是new 新的对象,其它的6种基本类型都使用了缓存策略.      使用缓存策略是因为,缓存的这些对象都是经常使用到的(如字符.-128至127之间的数字),防止每次自动装箱都创建一次对象的实例.      而double.flo…
又是金三银四的时候,我希望这份面试题能够祝你一臂之力! 自我和项目相关 1.自我介绍 2.你觉得自己的优点是?你觉得自己有啥缺点? 3.你有哪些 offer? 4.你为什么要离开上家公司?你上家公司在xxx,我们公司在xxx,离这么远为什么要选择我们这里? 5.上家公司的同事和领导是怎么评价你的? 6.介绍下你的上家公司是做哪块的吧 7.在上家公司你做了哪些项目? 8.你在项目中是什么角色? 9.这个项目的数据量和并发量多大? 10.这个项目用的什么技术? 11.项目过程中有遇到什么很印象深刻的…
简述23种设计 抽象工厂模式(Abstract Factory):提供一个创建一系列相关或相互依赖对象的接口.而无需指定它们详细的类. 适配器模式(Adapter):将一个类的接口转换成客户希望的另外一个接口.适配器模式使得原本因为接口不兼容而不能一起工作的类能够一起工作. 桥梁模式(Bridge):将抽象部分与他的实现部分分离.使他们都能够独立的变化. 建造模式(Builder):将一个复杂对象的构建与他的标表示分离,使相同的构建过程能够创建不同的表示. 责任链模式(Chain of Resp…
这是我收集的10道高级Java面试问题列表.这些问题主要来自 Java 核心部分 ,不涉及 Java EE 相关问题.你可能知道这些棘手的 Java 问题的答案,或者觉得这些不足以挑战你的 Java 知识,但这些问题都是容易在各种 Java 面试中被问到的,而且包括我的朋友和同事在内的许多程序员都觉得很难回答. 1. 为什么等待和通知是在 Object 类而不是 Thread 中声明的? 一个棘手的 Java 问题,如果 Java编程语言不是你设计的,你怎么能回答这个问题呢.Java编程的常识和…
最近面试了一些公司,针对面试中遇到的问题在此记录,提升自己,造福大家 一.java源码相关 ArrayList创建和add等各种api使用原理 HashMap 的创建,put原理,和HashTable的区别,resize的原理 HashMap和HashTable在1.7版本之后的区别,针对创建时和put时处理的方式不同(红黑树,CAS.ABA处理) 各种IO交互(AIO/ NIO/ BIO) 二. JVM相关 (bookname:深入理解java虚拟机) jvm分区 java文件加载到gc全流程…
List和Set比较,各自的子类比较 对比一:Arraylist与LinkedList的比较 1.ArrayList是实现了基于动态数组的数据结构,因为地址连续,一旦数据存储好了,查询操作效率会比较高(在内存里是连着放的). 2.因为地址连续, ArrayList要移动数据,所以插入和删除操作效率比较低. 3.LinkedList基于链表的数据结构,地址是任意的,所以在开辟内存空间的时候不需要等一个连续的地址,对于新增和删除操作add和remove,LinedList比较占优势. 4.因为Lin…