zoukankan      html  css  js  c++  java
  • 美的面经汇总

    基础

    • Java参数传递是值传递还是引用传递并举例说明。
    • 有哪些常见的Exception,怎么避免空指针异常
    • 拆箱跟装箱是什么
    • Java中最顶层的父类?
    • object里有什么方法
    • 类的概念?面向对象的特性?
    • java是值传递还是引用传递?在java函数中把对象传入到参数,在函数中可以修改对象的属性,为什么(记不得是问为什么还是问怎么做的)?
    • 抽象类和接口区别及应用场景。
    • BIO、NIO、AIO
    • i++和i=i+1的区别(我只说了赋值顺序不同,后面面试官提醒后面的形式能强转类型前面的那种不能)

    集合

    • HashMap和HashTable的区别
    • 什么是rehash?重新哈希(hashmap)
    • JAVA中有哪些集合,ArrayList和LinkedList的区别?
    • HashMap用过吗?底层怎么实现的(1.7和1.8)?线程安全吗?不安全用什么?
    • ConcurrentHashMap怎么实现线程安全(1.7和1.8),和HashTable的区别?

    sql

    • 我看你学过SQL,那你讲讲sql有哪些语句?那你说一下select怎么查询?那sql后跟的属性还有哪些?
    • 一个表有姓名、年龄、班级,成绩,查询班级中最高成绩、中间成绩、最低成绩,然后按照最高成绩倒序排列
    • 高并发访问数据库怎么负载均衡
    • 数据库索引
    • 对数据库三范式的理解,并举例实际的例子说明为什么不满足
    • MySQL中有一张表,id和name,name有很多重复行,怎么去除重复的数据?
    • 怎么防止SQL注入,举一个SQL注入的实例
    • 数据库怎么防止死锁
    • 客户端用sql查询得到结果,经历哪些过程,数据库引擎怎么处理
    • sql查询慢怎么排查,什么情况下会设置了索引但又不走索引
    • MySQL优化说一下你的理解
    • 存储引擎的隔离级别

    框架

    • springboot核心注解
    • spring框架特点
    • 数据库连接池
    • 讲一下SpringMVC的理解
    • springmvc流程
    • SpringMVC有几种注入方式
    • SpringMVC的生命周期?
    • SpringCloud用过吗?怎么搭建一个微服务系统?
    • JDBC跟数据库的交互过程
    • sping的IOC、AOP原理说一下,AOP基于JDK动态代理实现和CgLib的实现的区别,CgLib具体怎么用
    • sping事务的几种实现方式、xml和注解同时配置哪个生效
    • mybatis里面#和$的区别
    • bean的生命周期

    一些微服务问题的总结和作者的答案:

    作者:12301928hoiefa
    链接:https://www.nowcoder.com/discuss/382073
    来源:牛客网
    
    微服务:
    1)常用的组件
    我就说了注册中心(eureka,zookeeper,nacos),配置中心(springcloud config apollo nacos),服务网关(zuul gateway)
    2)服务通信方式
    http——fegin  rpc
    3)rpc调用原理
    就说了下客户端从注册中心获取到服务端的地址,然后通过动态代理把要调用的方法信息序列化发送到对应的服务端,服务端反序列化后执行对应的方法把结果返回给客户端,具体可以上网搜一下
    4)eureka服务注册一般需要多久
    有一个30秒的心跳机制,大概1分钟左右吧(没答到核心)其实这里要结合他的三级缓存和心跳机制来说,具体介绍—— https://blog.csdn.net/weixin_34345560/article/details/88723331
    

    JVM

    • 讲一下对JVM的理解
    • JVM的内存模型,各个内存的作用
    • gc算法
    • java虚拟机是怎么工作的
    • JVM跟JIT的区别
    • 类的加载流程
    • 类加载器【最后说到了双亲委派】
    • 垃圾收集器

    多线程与高并发

    • Java多线程 多线程同步
    • 进程和线程区别
    • Java有哪些锁?这些锁的区别
    • 讲一下Java的进程
    • 线程的生命周期
    • 创建线程有几种方式?
    • 线程安全问题,如果是分布式的情况呢,分布式锁原理
    • 实现callable和runnable的区别,get方法是否阻塞?
    • 多线程时,想让多个任务在某一时刻同时执行怎么实现?(答:cyclicBarrier,以及其实现原理)
    • 线程的同步如何实现?synchronized关键字底层实现原理,和ReentrantLock的区别
    • Volatile关键字作用以及原理、CAS算法说一下
    • 线程池的底层工作原理、饱和策略
    • 乐观锁【CAS】
    • 保证线程安全方式?

    redis

    • Redis怎么解决并发
    • Redis使用的一些问题
    • redis持久化

    一些redis问题的总结和作者的答案:

    作者:12301928hoiefa
    链接:https://www.nowcoder.com/discuss/382073
    来源:牛客网
    
    redis:
    1)redis是单线程吗?
    只是处理客户请求模块是单线程,其他模块也有使用多线程,比如redis6.0以后用多线程来处理网络数据的读写和协议解析
    2)redis快的原理是什么?
    io多路复用,监听多个文件描述符,通过系统函数比如epoll select等监听相关的文件描述符,当发生事件后回调文件描述符绑定的事件处理器(当然还有基于内存操作那些,当时没答上来)
    3)要你设计,你会设计为多线程吗?
    看情况,cpu多核时可以设计为多线程,单核时因为线程切换有代价,所以不会设计为多线程。
    4)缓存雪崩
    建立本地缓存+限流,键过期时间设置分散一些
    5)热点数据过多redis撑不住怎么办
    当时回答的不是很好,只是说建立集群,其实如果数据不重要的话,可以配置数据淘汰策略。
    

    计算机网络

    • 关闭浏览器之后重新输入url后,还会保存登录信息吗
    • cookie和session的区别

    项目或场景题

    • 登录时输入用户名和密码的时候怎么进行加密
    • 介绍项目开发流程,讲了2分半钟左右
    • 做java项目前做了哪些准备
    • 介绍项目,说了下遇到的难点
    • 哪些项目对你的成长比较大,具体哪方面
    • 如果客户买的东西加入购物车 但是 点按钮没响应 客户把这个问题反应给你 你首先怎么做 然后怎么做

    有的没的

    • 学习Java多久了?
    • 你对Java有什么看法,你觉得Java语言比其他语言的优点在哪?
    • 实习时候团队合作问题。团队合作出现分歧应该怎么处理?
    • 有合作解决过哪些问题
    • 介绍一下你的实习或者项目
    • 项目中你是怎么进行统筹规划的
    • 问平时如何学习java新技术的?
    • 现在博客充斥着转载的文章,你是如何分辨并且化为己用的?请结合项目回答。
    • 学了哪些计算机基础课
    • 平时如何学习的,看了什么书
  • 相关阅读:
    Python selenium —— 一定要会用selenium的等待,三种等待方式解读
    python3 selenium 切换窗口的几种方法
    转:对UI自动化测试的一些感悟
    Docker
    【转】selenium之 定位以及切换frame
    selenium——键盘操作
    selenium——鼠标事件
    python 读取Excel表格方法
    springboot maven 更新jar包速度慢的问题
    Python3 读写utf-8文本文件
  • 原文地址:https://www.cnblogs.com/kylinxxx/p/14410135.html
Copyright © 2011-2022 走看看