随笔分类 -  面试精选

摘要:判断对象是否存活的算法包括: 引用计数算法 可达性分析算法 之前也做过这样一篇文章, 详情看这里 -> JVM垃圾回收之垃圾标记算法 阅读全文
posted @ 2020-09-15 09:54 KILLNPE 阅读(288) 评论(0) 推荐(0) 编辑
摘要:MySQL查询字段区不区分大小写? MySQL innodb的事务与日志的实现方式? MySQL查询字段区不区分大小写? 答案是不区分 如何解决需要区分英文大小写的场景 例如登录用户为admin,此时填写ADMIN也能登录,如果用户名需要区分大小写,你的做法是什么? 解决方案一 MySQL默认的字符 阅读全文
posted @ 2020-09-15 09:47 KILLNPE 阅读(222) 评论(0) 推荐(0) 编辑
摘要:单例模式介绍: 单例模式(Singleton),是一种常用的软件设计模式。在应用这个模式时,单例对象的类必须保证只有一个实例存在。许多时候整个系统只需要拥有一个全局对象,这样有利于我们协调系统整体的行为。 比如在某个服务器程序中,该服务器的配置信息存放在一个文件中,这些配置数据由一个单例对象统一读取 阅读全文
posted @ 2020-09-15 09:22 KILLNPE 阅读(154) 评论(0) 推荐(0) 编辑
摘要:同步, 异步, 阻塞 和 非阻塞 不能简单的从字面理解, 之前看过一个很形象的例子来说明同步异步阻塞非阻塞。 场景: 小明使用 chrome 下载一个软件。 1. 同步阻塞 小明使用 没有提醒功能的chrome 下载一个软件。小明 一直坐在电脑面前什么事也不做, 等待软件下载完成。 阻塞:小明(调用 阅读全文
posted @ 2020-09-15 09:13 KILLNPE 阅读(166) 评论(0) 推荐(0) 编辑
摘要:目录 一、消息队列的特性二、为什么需要消息队列?三、使用消息队列有什么好处?四、为什么需要分布式?五、分布式环境下需要解决哪些问题?六、如何实现?七、常见消息队列对比和选型 一、消息队列的特性 业务无关,一个具有普适性质的消息队列组件不需要考虑上层的业务模型,只做好消息的分发就可以了,上层业务的不同 阅读全文
posted @ 2020-09-14 16:38 KILLNPE 阅读(188) 评论(0) 推荐(0) 编辑
摘要:下面分别对Comparable 和 Comparator做具体介绍并总结。 Comparable Comparable可以认为是一个内比较器,实现了Comparable接口的类有一个特点,就是这些类是可以和自己比较的,至于具体和另一个实现了Comparable接口的类如何比较,则依赖compareT 阅读全文
posted @ 2020-09-14 14:52 KILLNPE 阅读(245) 评论(0) 推荐(0) 编辑
摘要:Java序列化与反序列化是什么? Java序列化是指把Java对象转换为字节序列的过程,而Java反序列化是指把字节序列恢复为Java对象的过程: 序列化:对象序列化的最主要的用处就是在传递和保存对象的时候,保证对象的完整性和可传递性。序列化是把对象转换成有序字节流,以便在网络上传输或者保存在本地文 阅读全文
posted @ 2020-09-14 10:42 KILLNPE 阅读(152) 评论(0) 推荐(0) 编辑
摘要:ArrayList 和 LinkedList 是 Java 集合框架中用来存储对象引用列表的两个类。ArrayList 和 LinkedList 都实现 List 接口。先对List做一个简单的了解: 列表(list)是元素的有序集合,也称为序列。它提供了基于元素位置的操作,有助于快速访问、添加和删 阅读全文
posted @ 2020-09-14 10:08 KILLNPE 阅读(156) 评论(0) 推荐(0) 编辑
摘要:HashMap冲突解决方法比较考验一个开发者解决问题的能力。 下文给出HashMap冲突的解决方法以及原理分析,无论是在面试问答或者实际使用中,应该都会有所帮助 在Java编程语言中,最基本的结构就是两种,一种是数组,一种是模拟指针(引用),所有的数据结构都可以用这两个基本结构构造,HashMap也 阅读全文
posted @ 2020-09-14 09:08 KILLNPE 阅读(660) 评论(0) 推荐(0) 编辑
摘要:创建线程有几种不同的方式?你喜欢哪一种?为什么? 有四种方式可以用来创建线程: 继承Thread类 实现Runnable接口 实现Callable接口 使用Executor框架来创建线程池 实现Runnable接口这种方式更受欢迎,因为这不需要继承Thread类。在应用设计中已经继承了别的对象的情况 阅读全文
posted @ 2020-09-14 08:47 KILLNPE 阅读(117) 评论(0) 推荐(0) 编辑
摘要:两者的定义 进程是具有一定独立功能的程序关于某个数据集合上的一次运行活动,进程是系统进行资源分配和调度的一个独立单位。 线程是进程的一个实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位.线程自己基本上不拥有系统资源,只拥有一点在运行中必不可少的资源(如程序计数器,一组寄存器和 阅读全文
posted @ 2020-09-10 16:57 KILLNPE 阅读(145) 评论(0) 推荐(0) 编辑
摘要:在日常开发中,我们使用 Redis 存储 key 时通常会设置一个过期时间,但是 Redis 是怎么删除过期的 key,而且 Redis 是单线程的,删除 key 会不会造成阻塞。要搞清楚这些,就要了解 Redis 的过期策略和内存淘汰机制。 Redis采用的是定期删除 + 懒惰删除策略。 定期删除 阅读全文
posted @ 2020-09-10 15:22 KILLNPE 阅读(244) 评论(0) 推荐(0) 编辑
摘要:上一篇关于介绍Object类下的几种方法时面试题时,提到equals()和hashCode()方法可能引出关于“hashCode() 和 equals() 之间的关系?”的面试题,本篇来解析一下这道基础面试题。 先祭一张图,可以思考一下为什么? 介绍 equals() 的作用是用来判断两个对象是否相 阅读全文
posted @ 2020-09-10 15:00 KILLNPE 阅读(153) 评论(0) 推荐(0) 编辑
摘要:Object有几种方法呢? Java语言是一种单继承结构语言,Java中所有的类都有一个共同的祖先。这个祖先就是Object类。 如果一个类没有用extends明确指出继承于某个类,那么它默认继承Object类。 Object的方法我们在平时基本都会用到,但如果没有准备被忽然这么一问,还是有点懵圈的 阅读全文
posted @ 2020-09-10 14:19 KILLNPE 阅读(113) 评论(0) 推荐(0) 编辑
摘要:示例中的SingleUtil类是个空类, 只是为了模拟创建单例的存在而已.... 懒汉式 package demo.java.jiangkd.singleton.example; /** * 懒汉式<br> * 懒汉模式中单例是在需要的时候才去创建的,如果单例已经创建,再次调用获取接口将不会重新创建 阅读全文
posted @ 2020-09-10 14:09 KILLNPE 阅读(155) 评论(0) 推荐(0) 编辑
摘要:问:如何决定使用 HashMap 还是 TreeMap 或者区别? 介绍 TreeMap<K,V>的Key值是要求实现java.lang.Comparable,所以迭代的时候TreeMap默认是按照Key值升序排序的;TreeMap的实现是基于红黑树结构。适用于按自然顺序或自定义顺序遍历键(key) 阅读全文
posted @ 2020-09-10 11:12 KILLNPE 阅读(134) 评论(0) 推荐(0) 编辑
摘要:简单说一下: 1、实例化一个Bean--也就是我们常说的new; 2、按照Spring上下文对实例化的Bean进行配置--也就是IOC注入; 3、如果这个Bean已经实现了BeanNameAware接口,会调用它实现的setBeanName(String)方法,此处传递的就是Spring配置文件中B 阅读全文
posted @ 2020-09-10 09:13 KILLNPE 阅读(118) 评论(0) 推荐(0) 编辑
摘要:简单介绍 Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架。Spring使你能够编写更干净、更可管理、并且更易于测试的代码。 Spring MVC是Spring的一个模块,一个web框架。通过Dispatcher Servlet, ModelAndView 和 View R 阅读全文
posted @ 2020-09-10 08:57 KILLNPE 阅读(121) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示