摘要:
转自:Java 最常见的 200+ 面试题汇总 这份面试清单是我从 2015 年做 TeamLeader 之后开始收集的,一方面是给公司招聘用,另一方面是想用它来挖掘我在 Java 技术栈中的技术盲点,然后修复和完善它,以此来提高自己的技术水平。虽然我从 2009 年就开始参加编程工作了,但依旧觉得 阅读全文
摘要:
18.java 容器都有哪些? 19.Collection 和 Collections 有什么区别? 20.List、Set、Map 之间的区别是什么? 21.HashMap 和 Hashtable 有什么区别? 22.如何决定使用 HashMap 还是 TreeMap? 23.说一下 HashMa 阅读全文
摘要:
一、前言 先来看两个问题 1、Java中如num++这样的自增操作不是原子性的操作,【Kevin原创】关于Java自增操作的原子性。 2、AtomicInteger使用CAS技术保证其操作的原子性(Compare-and-Swap,即比较并替换)。面试必问的CAS,你懂了吗? java 中的锁 -- 阅读全文
摘要:
35.并行和并发有什么区别? 36.线程和进程的区别? 37.守护线程是什么? 38.创建线程有哪几种方式? 39.说一下 runnable 和 callable 有什么区别? 40.线程有哪些状态? 41.sleep() 和 wait() 有什么区别? 42.notify()和 notifyAll 阅读全文
摘要:
一、使用线程池和不使用线程池的差别 看一下使用线程池和不使用线程池时间上的差别。以下代码使用线程池 执行结果: 接着是不使用线程池的 执行结果: 可以看到,使用线程池花费的时间是94ms,不使用线程池花费的时间是2480ms,差别显而易见。 二、线程池的作用 频繁创建线程和销毁线程需要时间,而线程池 阅读全文
摘要:
第二章 理解IOC::控制反转。反转:由主动获取依赖对象转为通过IOC容器获取。控制:获取依赖对象的控制权由自己转向IOC容器 IoC是一种可以帮助我们解耦各业务对象间依赖关系的对象绑定方式! 被注入对象怎么通知IOC注入被依赖的对象?三种注入方式 IoC容器的职责主要有两个:业务对象的构建管理和业 阅读全文
摘要:
RPC(Remote Procedure Call):远程过程调用 说起RPC,就不能不提到分布式,这个促使RPC诞生的领域。 RPC要解决的两个问题: 1.解决分布式系统中,服务之间的调用问题。 2.远程调用时,要能够像本地调用一样方便,让调用者感知不到远程调用的逻辑。 要实现一个RPC不算难,难 阅读全文
摘要:
Dubbo是什么 Dubbo是Alibaba开源的分布式服务框架,它最大的特点是按照分层的方式来架构,使用这种方式可以使各个层之间解耦合(或者最大限度地松耦合)。从服务模型的角度来看,Dubbo采用的是一种非常简单的模型,要么是提供方提供服务,要么是消费方消费服务,所以基于这一点可以抽象出服务提供方 阅读全文
摘要:
同一个类文件里可以有两个public类 × https://blog.csdn.net/u010188178/article/details/83073085 初始化了一个没有run方法的线程类,不会出错 √ https://www.jobui.com/mianshiti/it/java/8008/ 阅读全文
摘要:
事务包含一个或多个业务操作,这些操作要么都执行,要么都不执行。事务常被用来确保数据的一致性。 阅读全文