• 面经-有赞Java开发


    题目

    • 接口和抽象什么区别(这个真的猝不及防没回答好)
    • 重写和重载什么区别(重写子类覆盖父类,重载多个同名方法参数不同)
    • jvm有哪些理解的东西(讲了jvm1.7与1.8内存模型,java栈的结构,jvm异常,jvm gc回收算法,虚拟机full gc major gc minor gc,判断对象是否已死,可作为gc root的四个东西),面试官提问,判断对象已死当中,计数方法和gc root哪个是jvm使用的,回答的gc root好一点,面试官问,计数方法会好一点吧,只要为0了就回收了,你root还得去判断是否为根。
    • 并发方面有哪些理解(讲了,volatile的概念,cas和synchronzied的实现),面试官直接问死锁是什么情况产生(回答多个线程在竞争资源产生的循环问题),面试官紧接着问如果是一个资源会产生死锁吗?(回答如果是两个线程一直在谦让锁就会出现死锁),面试官问线程总有个先来后到,怎么会谦让一个资源呢。(卒),接着问有没有碰到过死锁(就讲模拟过死锁,用jstack排查过死锁的问题)
    • 对mysql数据库有哪些理解(讲了myisam和innodb的区别,innodb隔离级别区别域实现,innodb行锁的实现),问了一句myisam和innodb表锁行锁(myisam表锁,innodb行锁),行锁锁的是索引还是一条记录(回的是锁记录)
    • java集合类有哪些理解(讲了list set map当中arraylist vector,linkedlist,hashset,treeset,hashmap,hashtable,concurrenthashmap的实现,具体讲了concurrenthashmap的实现),面试官没问。
    • mq有哪些理解(讲了rabbitmq的模型,rabbitmq的特性,以及幂等问题),面试官问幂等如何解决(回答吧token存在redis里头,然后检测是否存在token),面试官问,难道不会有并发存token的情况吗(回答redis是单线程的,会有顺序,set同一个值成功会返回操作的行数)。
    • 分布式锁有哪些理解(回答了redis的分布式锁)面试官问。除了redis还有其他的吗(说有数据库层的乐观锁,和zk的锁,但是没怎么用,只知道zk是通过增加临时节点)
    • 你还有什么想问的吗。
  • 相关阅读:
    Linux配置环境变量
    入坑CV DL一些基础技能学习
    (Linux)初探cmake .和make命令
    Django rest framework 之分页
    Django rest framework 之版本
    通用权限框架
    堡垒机
    kingadmin
    CRM 客户关系管理系统
    Torando 入门
  • 原文地址:https://www.cnblogs.com/xietianhua/p/11345973.html
Copyright © 2020-2023  润新知