自我介绍不多说!

1 多线程有什么用?

发挥多核CPU的优势

防止阻塞

便于建模

2 怎么检测一个线程是否持有对象监视器

Thread类提供了一个holdsLock(Object obj)方法,

当且仅当对象obj的监视器被某条线程持有的时候才会返回true,

注意这是一个static方法,这意味着“某条线程”指的是当前线程。

 3 synchronized和ReentrantLock的区别

ReentrantLock可以对获取锁的等待时间进行设置,这样就避免了死锁

ReentrantLock可以获取各种锁的信息

ReentrantLock可以灵活地实现多路通知

4 volatile关键字的作用 (保证线程对内存的可见性,但是不能保证原子性)

5 什么是乐观锁和悲观锁 (乐观锁: 就像他的名字一样,对事情总保持一颗乐观的心,

他认为竞争不总是发生的,因此不需要总持有锁,

用比较替换尝试去修改内存中的值。悲观锁:对安全问题持悲观的状态认为竞争总是会发生的,

对资源进行操作时,总是部分青红皂白直接上锁 )

6 用java编写一个会导致死锁的程序

7 什么是自旋锁

自旋锁,是指尝试获取锁的线程不会阻塞,

而是循环的方式不断尝试,这样的好处是减少线程的上下文切换带来的开锁,

提高性能,缺点是循环会消耗CPU。

8 什么是java内存模型

Java 内存模型(JMM)规定了所有的变量都存储在主内存中,每条线程还有自己的工作内存。

线程的工作内存中保存了该线程中用到的变量的主内存副本拷贝,线程对变量的所有操作都必须在工作内存中进行,

而不能直接读写主内存。 不同的线程之间也无法直接访问对方工作内存中的变量,

线程间变量的传递均需要自己的工作内存和主存之间进行数据同步进行。

而 JMM 就作用于工作内存和主存之间数据同步过程。它规定了如何做数据同步以及什么时候做数据同步。

9 单例模式的几种实现方式

懒汉模式

饿汉模式

静态内部类

双重锁机制

枚举

祝早日get心仪offer

大量面试经验以及学习资料书籍请关注微信公众号:AVAJ

回复"offer"进行获取

365篇大厂java面经 你想要的我这里都有

(1)  
发挥多核CPU的优势

(2)  
防止阻塞

(3)  
便于建模

阿里巴巴_java后端面经的更多相关文章

  1. 大小厂必问Java后端面试题(含答案)

    你好,我是yes. 这个系列的文章不会是背诵版,不是那种贴上标准答案,到时候照着答就行的面试题汇总. 我会用大白话尽量用解释性.理解性的语言来回答,但是肯定没有比平时通过一篇文章来讲解清晰,不过我尽量 ...

  2. python后端面试题

    1. 果壳 电话面试: 说一下TCP的三次握手,四次挥手,为什么会这样? http安全的性的了解,说一下对cookie和session的了解: 对mysql的了解,说一下你常用的数据类型,char和v ...

  3. 面试java_后端面经_5

    情话部分: 小姐姐:为什么有很多人在感情中付出很多,却得不到想要的结果? 你答:我听过一个这样的故事:讲的是蚯蚓一家人,有一天,蚯蚓爸爸特别无聊,就把自己切成了俩段愉快的打羽毛球去了,蚯蚓妈妈见状,把 ...

  4. 面试java后端面经_4

    作者:早该变坏链接:https://www.nowcoder.com/discuss/157627来源:牛客网 情话部分: 当有自己心仪的小姐姐,又没确定关系,有时候分享彼此爱情观的时候,你就可以开始 ...

  5. 面试java后端面经_2

    1 自我介绍(介绍一下帅气的自己哦) 2 对象深浅复制(浅复制:对象内引用的对象不会复制,深复制会把引用对象复制.如何进行深浅复制,这块不懂的童鞋可以百度一下) 3 wait方法和sleep方法的区别 ...

  6. 面试java后端面经_1

    1 自我介绍(建议提前准备:没准备的可以这样说:来自某学校 姓名 专业 学的啥 为啥学 自己陆陆续续开发的项目 毕业将近 找工作 在哪看到贵公司的招聘 准备了啥 大概这样) 例子:您好!我是来自XXX ...

  7. 小米Python后端面试题

    电话面 时长:30m 说一下对浏览器缓存的理解: 说一下MySQL优化: 说一下redis: 说一下从输入url到返回都发生了什么: 域名怎么解析的: 一面 1h 编程实现翻转单链表: MySQL中v ...

  8. java后端面试题汇总

    转载链接:https://www.nowcoder.com/discuss/90776?type=0&order=0&pos=23&page=0 基础篇 数据结构与算法 线性表 ...

  9. 面试java后端面经_3

    小姐姐说:你一点都不懂表达,一点都不懂爱情,一点也不爱我! 你答:你知道吗,我听说过一个这样的故事,讲的就是有一个小女孩和一个男孩在一起,小男孩呢很不幸是位聋哑人,虽然如此,但是他们的日子过得特别的美 ...

随机推荐

  1. KVM :vnc 远程控制kvm创建虚拟机

    一.vnc远程控制服务器 前期准备: 1.编辑/etc/hosts vi /etc/hosts 10.1.16.32 kvm 2.关闭防火墙 service iptables stop 3.关闭sel ...

  2. 【dfs基础讲解及例题】

    定义 DFS(Depth-First-Search)深度优先搜索算法,是搜索算法的一种. 接下来因为懒得去找大段大段深奥的材料 所以就是一些个人的理解. 所谓深搜,是相对于广搜(只是第一篇)来说的.深 ...

  3. 20190719 NOIP模拟测试6 (考后反思)

    总分 130 排名第6 虽然与前几次进步了一些,但总会感觉到不安 因为我只是A掉了第一题,而第一题又是道水题,很显然的DP,我相信大佬们没A掉只是因为一些小问题(也许有大佬不屑于这种题吧,lockey ...

  4. .NET CORE 微信小程序消息验证的坑

    进入微信小程序,点击开发->选择消息推送->扫码授权,填写必要参数 进入接口开发: /// <summary> /// 验证小程序 /// </summary> / ...

  5. HTML入门编写

    今天给大家带来的是HTML初步讲解(即第一趴). 问题区: 1.什么是HTML? 先来个百度解说压阵. html,全称Hypertext Markup Language,也就是"超文本链接标 ...

  6. koa2服务端使用jwt进行鉴权及路由权限分发

    大体思路 后端书写REST api时,有一些api是非常敏感的,比如获取用户个人信息,查看所有用户列表,修改密码等.如果不对这些api进行保护,那么别人就可以很容易地获取并调用这些 api 进行操作. ...

  7. Excel催化剂开源第36波-图片Exif信息提取,速度超快,信息超全

    Excel催化剂在文件处理方面,功能做到极致,但其实很大功劳都是引用一些开源社区的轮子库,不敢独占好处,此篇给大家分享下抓取图片的Exif信息的好用的轮子. 此篇对应的Excel催化剂功能实现:第83 ...

  8. Vue的基本使用(四)

    1.refs属性的使用 <!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset= ...

  9. pymysql指南

    1 引言 mysql应该说是如今使用最为普遍的数据库了,没有之一,而Python作为最为流行的语言之一,自然少不了与mysql打交道,pymysql就是使用最多的工具库了. 2 创建库.表 我们先从创 ...

  10. Git的一些简单而且常用的操作

    转载自我自己的博客 介绍 很多初学者可能并不太清楚Git 与GitHub 这两个概念的联系和区别,在这里我大致介绍一下这两个名词. Git 是一个免费.开源的分布式版本控制系统(VCS).版本控制系统 ...