精华内容
下载资源
问答
  • JVM1.JVM如何加载一个类的过程,双亲委派模型中有哪些方法java面试题及答案2020 java最新面试题及答案2020类加载过程:加载、验证(验证阶段作用是保证Class文件的字节流包含的信息符合JVM规范,不会给JVM造成危害)、...

    JVM

    1.JVM如何加载一个类的过程,双亲委派模型中有哪些方法java面试题及答案2020 java最新面试题及答案2020

    类加载过程:加载、验证(验证阶段作用是保证Class文件的字节流包含的信息符合JVM规范,不会给JVM造成危害)、准备(准备阶段为变量分配内存并设置类变量的初始化)、解析(解析过程是将常量池内的符号引用替换成直接引用)、初始化。

    双亲委派模型中方法:双亲委派是指如果一个类收到了类加载的请求,不会自己先尝试加载,先找父类加载器去完成java面试题及答案2020 java最新面试题及答案2020。当顶层启动类加载器表示无法加载这个类的时候,子类才会尝试自己去加载。当回到最开的发起者加载器还无法加载时,并不会向下找,而是抛出ClassNotFound异常。

    方法:启动(Bootstrap)类加载器,标准扩展(Extension)类加载器,应用程序类加载器(Application ),上下文(Custom)类加载器。意义是防止内存中出现多份同样的字节码 。

    2.GC算法(什么样的对象算是可回收对象,可达性分析),CMS收集器java面试题及答案2020 java最新面试题及答案2020

    jvm是如何判断一个对象已经变成了可回收的“垃圾”,一般是两个方法:引用记数法和根搜索算法。引用记数法没办法解决循环引用的问题,所以用根搜索。从一系列的”GC Roots“对象开始向下搜索,搜索走过的路径称为引用链。当一个对象到”GC Roots“之间没有引用链时,被称为引用不可达。引用不可到的对象被认为是可回收的对象。

    几种垃圾收集器:1,Serial New/Serial Old(串行),2,Parrallel New (并行),3,Parrallel Scavenge,4,Parrallel Old,5,CMS(CMS收集器是一个以获得最短回收停顿时间为目标的收集器,它是一种并发收集器,采用的是Mark-sweep算法。),6,G1(是一款并行与并发收集器,并且可建立可预测的停顿时间模型,整体上是基于标记清理,局部采用复制)

    3.JVM分为哪些区,每一个区干吗的?

    1)方法区(method):被所有的线程共享。方法区包含所有的类信息和静态变量。

    2)堆(heap):被所有的线程共享,存放对象实例以及数组,Java堆是GC的主要区域。

    3)栈(stack):每个线程包含一个栈区,栈中保存一些局部变量等。

    4)程序计数器:是当前线程执行的字节码的行指示器。

    4.JVM新生代,老年代,持久代,都存储哪些东西?

    持久代主要存放的是Java类的类信息,与垃圾收集要收集的Java对象关系不大。所有新生成的对象首先都是放在年轻代的,年老代中存放的都是一些生命周期较长的对象。

    5.内存溢出和内存泄漏:

    内存溢出:程序申请内存时,没有足够的内存,out of memory;内存泄漏值垃圾对象无法回收,可以使用memory analyzer工具查看泄漏。

    6.进程与线程:

    进程值运行中的程序(独立性,动态性,并发性),线程指进程中的顺序执行流。区别是:1.进程间不共享内存 2.创建进程进行资源分配的代价要大得多,所以多线程在高并发环境中效率高。

    7.序列化与反序列化:

    序列化指将java对象转化为字节序列,反序列化相反。主要是为了java线程间通讯,实现对象传递。只有实现了Serializable或Externalizable接口类对象才可被序列化。

    8.64 位 JVM 中,int 的长度是多数?

    Java 中,int 类型变量的长度是一个固定值,与平台无关,都是 32 位。意思就是说,在 32 位 和 64 位 的Java 虚拟机中,int 类型的长度是相同的。

    9.Java 中 WeakReference 与 SoftReference的区别?

    Java中一共有四种类型的引用。StrongReference、 SoftReference、 WeakReference 以及 PhantomReference。

    StrongReference 是 Java 的默认引用实现, 它会尽可能长时间的存活于 JVM 内,当没有任何对象指向它时将会被GC回收

    WeakReference,顾名思义, 是一个弱引用, 当所引用的对象在

    JVM 内不再有强引用时, 将被GC回收

    虽然 WeakReference 与 SoftReference 都有利于提高 GC 和 内存的效率,但是 WeakReference ,一旦失去最后一个强引用,就会被 GC 回收,而 SoftReference 会尽可能长的保留引用直到 JVM 内存不足时才会被回收(虚拟机保证), 这一特性使得

    SoftReference 非常适合缓存应用

    10.解释 Java 堆空间及 GC?

    当通过 Java 命令启动

    Java 进程的时候,会为它分配内存。内存的一部分用于创建堆空间,当程序中创建对象的时候,就从对空间中分配内存。GC 是 JVM 内部的一个进程,回收无效对象的内存用于将来的分配。

    11.Java 中堆和栈有什么区别?

    JVM 中堆和栈属于不同的内存区域,使用目的也不同。栈常用于保存方法帧和局部变量,而对java面试题及答案2020 java最新面试题及答案2020象总是在堆上分配。栈通常都比堆小,也不会在多个线程之间共享,而堆被整个 JVM 的所有线程共享。

    展开全文
  • Java面试题及答案2020最新版! 前言 Java面试题及答案2020年最新版!(文末附参考答案) 本套Java面试题总共分为以下这十三个模块: Java基础知识面试题 Java异常面试题 JVM面试题 Spring面试题 Spring MVC面试题 ...

    Java面试题及答案2020最新版!

    前言
    Java面试题及答案2020年最新版!(文末附参考答案)
    本套Java面试题总共分为以下这十三个模块:
    Java基础知识面试题

    Java异常面试题

    JVM面试题

    Spring面试题

    Spring MVC面试题

    Spring Boot面试题

    Spring Cloud面试题

    MyBatis面试题

    Redis面试题

    Dubbo面试题

    Tomcat面试题

    ZooKeeper面试题

    Netty面试题

    一、Java基础知识面试题
    1、Java概述

    何为编程?

    什么是Java?

    jdk1.5之后的三大版本?

    JVM、JRE和JDK的关系?

    什么是跨平台性?原理是什么?

    Java语言有哪些特点?

    什么是字节码?采用字节码的最大好处是什么?

    什么是Java程序的主类?应用程序和小程序的主类有何不同?

    Java应用程序与小程序之间有那些差别?

    Java和C++的区别?

    Oracle JDK 和 OpenJDK 的对比?

    2、基础语法

    ①. 数据类型

    Java有哪些数据类型

    switch 是否能作用在 byte 上,是否能作用在 long 上,是否能作用在 String 上

    用最有效率的方法计算 2 乘以 8

    Math.round(11.5) 等于多少?Math.round(-11.5)等于多少

    float f=3.4;是否正确

    short s1 = 1; s1 = s1 + 1;有错吗?short s1 = 1; s1 += 1;有错吗

    ②. 编码

    Java语言采用何种编码方案?有何特点?

    ③. 注释

    什么Java注释

    ④. 访问修饰符

    访问修饰符 public,private,protected,以及不写(默认)时的区别

    ⑤. 运算符

    &和&&的区别

    ⑥. 关键字

    Java 有没有 goto

    final 有什么用?

    final finally finalize区别

    this关键字的用法

    super关键字的用法

    this与super的区别

    static存在的主要意义

    static的独特之处

    static应用场景

    static注意事项

    ⑦. 流程控制语句

    break ,continue ,return 的区别及作用

    在 Java 中,如何跳出当前的多重嵌套循环

    3、面向对象

    ①. 面向对象概述

    面向对象和面向过程的区别

    ②. 面向对象三大特性

    面向对象的特征有哪些方面

    什么是多态机制?Java语言是如何实现多态的?

    面向对象五大基本原则是什么(可选)

    ③. 类与接口

    抽象类和接口的对比

    普通类和抽象类有哪些区别?

    抽象类能使用 final 修饰吗?

    创建一个对象用什么关键字?对象实例与对象引用有何不同?

    ④. 变量与方法

    成员变量与局部变量的区别有哪些

    在Java中定义一个不做事且没有参数的构造方法的作用

    在调用子类构造方法之前会先调用父类没有参数的构造方法,其目的是?

    一个类的构造方法的作用是什么?若一个类没有声明构造方法,改程序能正确执行吗?为什么?

    构造方法有哪些特性?

    静态变量和实例变量区别

    静态变量与普通变量区别

    静态方法和实例方法有何不同?

    在一个静态方法内调用一个非静态成员为什么是非法的?

    什么是方法的返回值?返回值的作用是什么?

    ⑤. 内部类

    什么是内部类?

    内部类的分类有哪些

    内部类的优点

    内部类有哪些应用场景

    局部内部类和匿名内部类访问局部变量的时候,为什么变量必须要加上final?

    内部类相关,看程序说出运行结果

    ⑥. 重写与重载

    构造器(constructor)是否可被重写(override)

    重载(Overload)和重写(Override)的区别。重载的方法能否根据返回类型进行区分?

    ⑦. 对象相等判断

    == 和 equals 的区别是什么

    hashCode 与 equals (重要)

    对象的相等与指向他们的引用相等,两者有什么不同?

    ⑧. 值传递

    当一个对象被当作参数传递到一个方法后,此方法可改变这个对象的属性,并可返回变化后的结果,那么这里到底是值传递还是引用传递

    为什么 Java 中只有值传递

    值传递和引用传递有什么区别

    ⑨. Java包

    JDK 中常用的包有哪些

    import java和javax有什么区别

    4、IO流

    java 中 IO 流分为几种?

    BIO,NIO,AIO 有什么区别?

    Files的常用方法都有哪些?

    5、反射

    什么是反射机制?

    反射机制优缺点

    反射机制的应用场景有哪些?

    Java获取反射的三种方法

    6、网络编程

    7、常用API

    ①. String相关

    字符型常量和字符串常量的区别

    什么是字符串常量池?

    String 是最基本的数据类型吗

    String有哪些特性

    String为什么是不可变的吗?

    String真的是不可变的吗?

    是否可以继承 String 类

    String str="i"与 String str=new String(“i”)一样吗?

    String s = new String(“xyz”);创建了几个字符串对象

    如何将字符串反转?

    数组有没有 length()方法?String 有没有 length()方法

    String 类的常用方法都有那些?

    在使用 HashMap 的时候,用 String 做 key 有什么好处?

    String和StringBuffer、StringBuilder的区别是什么?String为什么是不可变的

    ②. Date相关

    ③. 包装类相关

    自动装箱与拆箱

    int 和 Integer 有什么区别

    Integer a= 127 与 Integer b = 127相等吗

    8、常用工具类库

    9、单元测试

    10、日志

    二、Java异常面试题
    1、Error 和 Exception 区别是什么?

    2、运行时异常和一般异常(受检异常)区别是什么?

    3、JVM 是如何处理异常的?

    4、throw 和 throws 的区别是什么?

    5、final、finally、finalize 有什么区别?

    6、NoClassDefFoundError 和 ClassNotFoundException 区别?

    7、try-catch-finally 中哪个部分可以省略?

    8、try-catch-finally 中,如果 catch 中 return 了,finally 还会执行吗?

    9、类 ExampleA 继承 Exception,类 ExampleB 继承ExampleA?

    10、常见的 RuntimeException 有哪些?

    11、Java常见异常有哪些?

    三、JVM面试题
    1、Java内存区域

    说一下 JVM 的主要组成部分及其作用?

    说一下 JVM 运行时数据区?

    深拷贝和浅拷贝?

    说一下堆栈的区别?

    队列和栈是什么?有什么区别?

    2、HotSpot虚拟机对象探秘

    对象的创建

    为对象分配内存

    处理并发安全问题

    对象的访问定位

    3、内存溢出异常

    Java会存在内存泄漏吗?请简单描述

    4、垃圾收集器

    简述Java垃圾回收机制

    GC是什么?为什么要GC

    垃圾回收的优点和原理。并考虑2种回收机制

    垃圾回收器的基本原理是什么?垃圾回收器可以马上回收内存吗?有什么办法主动通知虚拟机进行垃圾回收?

    Java 中都有哪些引用类型?

    怎么判断对象是否可以被回收?

    在Java中,对象什么时候可以被垃圾回收

    JVM中的永久代中会发生垃圾回收吗

    说一下 JVM 有哪些垃圾回收算法?

    说一下 JVM 有哪些垃圾回收器?

    详细介绍一下 CMS 垃圾回收器?

    新生代垃圾回收器和老年代垃圾回收器都有哪些?有什么区别?

    简述分代垃圾回收器是怎么工作的?

    5、内存分配策略

    ①. 简述java内存分配与回收策率以及Minor GC和Major GC

    对象优先在 Eden 区分配

    大对象直接进入老年代

    长期存活对象将进入老年代

    6、虚拟机类加载机制

    简述java类加载机制?

    描述一下JVM加载Class文件的原理机制

    什么是类加载器,类加载器有哪些?

    说一下类装载的执行过程?

    什么是双亲委派模型?

    7、JVM调优

    说一下 JVM 调优的工具?

    常用的 JVM 调优的参数都有哪些?

    四、参考答案
    下载地址

    展开全文
  • java面试题及答案2020 持续更新… 二面-2019/8/31-牛客网 1、项目相关问了一点 2、问:看过什么源码?答:HashMap 问:解释一下ConcurrentHashmap怎么保证线程安全 3、CAS是怎么保证可见性的? 4、JVM内存模型和GC...

    java面试题及答案2020 持续更新…

    二面

    1、项目相关问了一点

    2、问:看过什么源码?答:HashMap 问:解释一下ConcurrentHashmap怎么保证线程安全

    3、CAS是怎么保证可见性的?

    4、JVM内存模型和GC知道吗?
    java面试题及答案2020
    5、线程通信相关,说了wait\notify\singal…就没继续问了

    6、balabala没听懂问题,解释了一下,说线程安全的特性,怎么理解的

    7、数据库的引擎InnoDB,可重复读和提交读的区别?

    8、重复度的隔离级别和理论的(balabala,又没有听说过)的差别。。

    9、集合类的排序,源码看过吗?(没有)

    10、问怎么学习的,看书,看哪些书?

    11、 说结束 突然又问上过设计模式吗?我说没上过,但是最近找工作有看过,没问问题,就开始硕士没上过?问是硬件转软件?软件工程是你们独立的院还是专业?

    java面试题及答案2020持续更新汇总…

    展开全文
  • java面试题及答案2020 持续更新中..

    万次阅读 多人点赞 2020-05-12 13:38:29
    java面试题及答案2020 阿里面试 2020java面试题及答案之阿里一面 1、自我介绍 2、TCP如何保证可靠传输 3、数据中心网络下TCP的缺陷不足 4、Http2.0和http的区别,2.0多了什么 5、进程线程区别 6、jvm相关,内存模型...

    java最新面试题及答案2020

    先墙烈推荐两篇面试博客:

    一、背下就能进阿里的百家名企面试题汇总

    二、java常见面试题汇总

    java面试题及答案2020 百度第一篇

    先收藏后点赞,以后更新及时看

    文末后续更新答案,持续关注哦

    一面

    • 手写ArrayList
    • 手写进制转换算法,求出一个数的二进制数 1 的个数
    • JAVA 基础,equals 和==
    • 多线程方式、threadlocal,各种锁,synchronized 和 lock
    • 设计模式、spring 类加载方式、实例保存在哪、aop ioc、反射机制6、类加载器,双亲委派模型,热部署
    • jvm 内存模型,内存结构、堆的分代算法、堆的分区、gc 算法、gc 过程
    • tcp ip,七层模型,rest 接口规范,get 和 post 区别,长度,安全9、tcp ip 的 arp 协议,两个同一网络的主机如何获得对方的 mac 地址10、负载均衡、高并发、高可用的架构
    • mysql 的引擎区别
    • redis 缓存,redis 的集群部署,热备份,主从备份,主从数据库,hash 映射找到知道指定节点
    • 了解云计算么,了解云容器 docker 么,容器和虚拟机的区别
    • 百度 java 程序员

    二面

    • 自我介绍,项目中负责哪些,做了哪些

    • 项目中的数据库备份,主从数据库、集群

    • 数据库的索引原理,b+树原理,trie 树引申,二叉查找树的原理

    • 海量数据中查找一个单词,分布式计算 map reduce,或者用 hsah 映射筛选部分结果5、java 的抽象类和接口区别、java 的 hashmap,java 的内存模型,分区,分代垃圾回收算法。实例、常量放在哪里

    • int 4 个字节,double 8 个字节

    • 多线程中的wait 和sleep 区别,notify 的作用

    • 设计模式了解哪些,写一个观察者模式。实现两个接口,一个是主题一个是观察者,并写出对应方法

    • 写一个生产者消费者队列的方法,分别写两个类代表生产者和消费者,并且用队列模拟其生产消费

    • tcp ip 的四次挥手,子网掩码的作用

    • 了解 linux 么,说一下 linux 的内核锁?

    • 有没有用过 sed,使用 shell 脚本写一个将文本中的字符替换掉的脚本,大概说了一下用 grep||替换

    java面试题及答案2020 百度第二篇

    一面

    • 自我介绍
    • Java 中的多态
    • 为什么要同时重写 hashcode 和 equals 4、Hashmap 的原理
    • Hashmap 如何变线程安全,每种方式的优缺点
    • 垃圾回收机制
    • Jvm 的参数你知道的说一下
    • 设计模式了解的说一下啊
    • 手撕一个单例模式
    • 算法题目
    • 手撕算法:反转单链表
    • 手撕算法:实现类似微博子结构的数据结构,输入一系列父子关系,输出一个类似微博评论的父子结构图
    • 手写 java 多线程
    • 手写 java 的soeket 编程,服务端和客户端
    • 手撕算法:爬楼梯,写出状态转移方程
    • 智力题:时针分针什么时候重合

    二面

    • 自我介绍

    • 项目介绍

    • 服务器如何负载均衡,有哪些算法,哪个比较好,一致性哈希原理,怎么避免 DDOS 攻击请求打到少数机器

    • TCP 连接中的三次握手和四次挥手,四次挥手的最后一个ack 的作用是什么,为什么要
      time wait,为什么是 2msl

    • 数据库的备份和恢复怎么实现的,主从复制怎么做的,什么时候会出现数据不一致,如何解决

    • Linux 查看 cpu 占用率高的进程

    • 手撕算法:给定一个数字三角形,找到从顶部到底部的最小路径和。每一步可以移动到下面一行的相邻数字上

    • 然后继续在这个问题上扩展

    • 求出最短那条的路径

    • 递归求出所有的路径

    • 设计模式讲一下熟悉的

    • 会不会滥用设计模式

    • 多线程条件变量为什么要在while 体里

    java面试题及答案2020 百度第三篇

    一面 2019/7/22 来自于牛客网

    • 自我介绍
    • 问我数据结构算法好不好
    • 找到单链表的三等分点,如果单链表是有环的呢
    • 讲一下项目的架构
    • 说一下你熟悉的设计模
    • 有没有配置过服务器

    二面

    • Spring:有没有用过 Spring,Spring IOC、AOP 机制与实现,Spring MVC

    • 多线程:怎么实现线程安全,各个实现方法有什么区别,volatile 关键字的使用,可重入锁的理解,Synchronized 是不是可重入锁

    • 集合:HashMap 底层实现,怎么实现HashMap 线程安全

    • JVM 内存管理,GC 算法,HotSpot 里面的垃圾回收器、类加载

    • 进程和线程的区别

    • HTTP 有没有状态

    • Java IO,NIO,Java 中有没有实现异步 IO

    • 前端会不会,Ajax 是什么,Ajax 实现原理

    • 让我设计一个线程池

    • 讲几个设计模式,哪些地方用到了,为什么要用

    • Mysql 优化、索引的实现我从数据库设计优化和查询优化两方面讲的。索引 B+树实现, InnoDB 和 MyISAM 主键索引的实现区别,一个聚集一个非聚集

    • 事务的隔离级别

    • 四种隔离级别,可能会出现哪些异常,mysql 中默认级别

    • 有没有用过 Hibernate、mybatis、git

    • 从 10 万个数中找最小的 10 个,时间复杂度分析

    • 从一个有正有负数组中找连续子数组的最大和,时间复杂度分析

    • 满二叉树第 i 层有多少个节点,n 层的满二叉树共有多少个节点

    java面试题及答案2020 百度第四篇

    一面

    • 自我介绍

    • 确定了下我学过的东西:Java,linux,mysql 网络,数据结构和算法

    • 说一下实习公司的测试流程

    • 先问一下java 相关的,说下 java 的作用域

    • 重载和重写的区别?

    • 知道 error 和 exception 吗?异常处理机制

    • char 类型能否存储一个中文字符?

    • 接口可以继承接口吗?抽象类可以实现接口吗?

    • 知道序列化吗?反序列化?

    • 序列化如何实现?

    • Java 垃圾回收是怎么个情况?

    • 如何让jvm 开始垃圾收集?

    • 调用了finalize()System、gc()会立刻开始垃圾回收吗? 14、final,finall,finalize 三者的区别?

    • 问下网络相关的,说下三次握手和四次挥手的详细过程?

    • http 的状态码,像 1、1、1、0,1、0,1、0 都是什么意思?1、0?

    • 算法,写下冒泡排序或者快速排序?

    • 冒泡排序俩个循环,可以优化吗?时间复杂度是多少?空间复杂度呢?

    • 写下二分查找

    • mysql,student_score 表,有字段:s_id,course,score、写 sql,查出平均成绩大于1、的学生 id

    • linux,查看 cpu 使用率的命令?

    • 查看磁盘使用情况的命令?

    • 按照文件名查找一个文件的命令?

    • 查到某文件并删除如何进行?

    • 已知一个进程号,杀掉这个进程的命令?

    • 如何友好地停掉一个进程? 27、vim、vi 用的多吗?

    • 日志文件是滚动的,要查找日志文件的末 1、行如何查?

    • 项目,讲下你简历上写的项目的架构,从数据库->dao->service->controller 30、项目中有没有管理一些配置文件?比如、pom

    • 如何使用配置文件呢?(让配置文件生效 xmlPathContextApplication(“application、xml”))

    二面 2020/2/28 来自于牛客网

    • 无自我介绍,直接介绍实习工作
    • 如何保证测试的质量?
    • 除了用时间成本,有没有什么有效确保测试质量的措施?
    • 遇到难以解决的问题,怎么应对
    • 在工作中有没有和别人的合作?实习期间有没有遇到矛盾?
    • 觉得工作中什么事情很难抗?
    • 你怎么看待开发和测试的关系?
    • 对未来职业有什么预期吗?
    • java 里面会有内存泄漏吗?什么情况下会有?
    • String Stringbuffer StringBuilder 对比11、stringbuffer 和stringbuilder 适用场景? 12、多态理解?
    • 算法:求一个字符串内的最大不重复子串
    • 算法:无序数组,找出其中和为 target 的元素
    • 逻辑:1、1、求 1
    • 你的外卖系统,如何来规划测试?

    java面试题及答案2020 百度第五篇

    一面 2019/1/26 来自于牛客网

    • 项目负责模块的流程,具体怎么做

    • git 和 maven 的常用命令(有关于分支、文件对比等相关操作;打包等命令)

    • sql 语句——内联查询,如何在一条 sql 语句执行前输出一个随机数

    • 使用redis 的好处

    • 如何找到一个链表的中间节点?

    • 如何判断一个三角形的类型?

    • 如果要对对购物车模块进行测试,阐述一下自己的想法

    • 面向对象有三大特征:封装性、继承性、多态性

    • java 中有哪些常见的数据类型?

    • 常用哪些工具类?

    • hashmap 的底层实现,以及它的优缺点?

    • linux 命令:查询指定文件的行数
      二面 2019/2/6 来自于牛客网

    • 自我介绍。有提到服务的模块化改造

    • 对于MVC,SOA,微服务的理解

    • 看到我项目里面用了redis,为什么要用 redis?是否理解 redis 的线程模型?

    • 然后他紧接着问我,你确定redis 比 Mysql 快?

    • redis 的项目中的实际应用场景?

    • 我们项目中的那些业务必须要用 redis,既然说 redis 可以给 mysql 减压,那你们系统的用户量和并发量是多少?

    • 有没有遇到过 Mysql 顶不住宕机的情况?如果现在系统的流量增加 1、00 被,该从那些层面考虑优化系统性能?

    • 在使用redis 的时候你应该注意那些问题

    • 看你简历上写你深入理解 OOP,说一下你对 OOP 的理解

    • 你说你有良好的编程习惯,具体体现在哪里

    • 怎么用的设计模式去重构的流程模块。讲一下思路

    • 最近看过那些书?学JAVA 多久了?什么时候能来实习,能来多久?

    • 看你熟悉 mysql,简单说一下 MVCC

    • 说一下你在线上使用mysql 遇到的具体问题

    • 说一下Mysql 线上调优的经验

    • 说一下 mysql 中共有那些锁,并分别介绍一下

    java面试题及答案2020 百度第六篇

    一面 2019/12/18 来自于牛客网

    • 实习、项目,问得比较深

    • Java 基本数据类型,int 和 Integer 区别

    • ArrayList 和 LinkedList 区别

    • Stack 和 Heap 区别,空间存放上?内存分配上?

    • 代码题:1-7 可以组成的不同且无重复的三位数

    • Redis 存取数据

    二面 2018/12/21 来自于牛客网

    • 实习和项目经历(较详细),遇到了什么问题,怎么解决的
    • 用了什么数据库,读写数据量大不大,用了什么引擎?MyISAM 引擎用过没有?有什么区别?MyISAM 具体用的用途是什么
    • 数据库相关隔离级别介绍下,你现在用的是什么隔离级别
    • 两个事务A、B,A 是未提交,A 读了一个数据,B 对数据进行写,A 再次读读的是什么数据?
    • 我专业不是计算机专业的,问了下和计算机专业的关系,都学了写什么相关的理论
    • 排序相关算法,时间复杂度都是怎么样的
    • 对于单链表来说,比较好的排序是什么?
    • 队列和栈。两个栈怎么实现队列?
    • 一群数字如何去重
    • 给栈加个辅助功能,实现得到栈此时的最小元素
    • Java 并发,内存管理,并发?什么场景遇到过?怎么解决?
    • OOM 什么时候遇到过?OOM 时程序有什么表现?进程消掉了还是线程死掉了?

    java面试题及答案2020 百度第七篇

    一面

    • 在线程 A 对 HashMap 进行迭代查询的时候,线程 B 对 HashMap 进行增删改会发生什么
    • ConcurrentHashMap,的数据结构与 HashMap,有什么区别与联系3、Java 内存模型中哪一个区域不会发生 OOM 异常
    • 类加载流程
    • 为什么要有双亲委派,类加载器有哪些
    • MVCC 是什么,简述 MySQL 的隔离机制
    • MySQL 的锁机制
    • Java API 中NIO 和 BIO 的区别
    • 消息中间件的好处,如何选型
    • Redis 的 IO 模型;常用的数据结构;zset 的内部实现,为什么用跳表不用红黑树,跳表的空间复杂度
    • 11、AOP 的抽象属性之间的关系与联系

    二面 2019/8/20 来自于牛客网

    • 介绍项目,秒杀平台如果想支持更大的并发量应该如何优化?如果把项目部署成多个服务,架构方面应该怎么做
    • 数据库的ACID,MySQL 底层是如何保证原子性的
    • 设计一个实时监测 MySQL 的工具,可以监测每条 SQL 语句运行时间、事务的运行和数据库的连接信息等
    • MySQL 的 binlog、redo log 和 undo log 5、HTTP 和 HTTPS 的区别
    • Redis 的主从架构、哨兵机制
    • Redis 的持久化,RDB 和 AOF 的对比
    • MQ 如何保证消息传输的可靠性
    • 问了学校的研究方向、本科学习情况及获奖情况

    java面试题及答案2020 百度第八篇

    一面

    • 数据库的事务,四个性质说一下,分别有什么用,怎么实现的
    • 讲到了redo 和 undo 日志,问我分别有什么用,说redo 日志说错了
    • 数据库的隔离性如何保证,使用悲观锁和乐观锁有何区别。MVCC 的设计目的是什么, 怎么使用版本号判断数据的可见性
    • 问了一道算法,1 到N 的所有数字,按照字典序打印,怎么做,怎么优化,按照数字特征顺序打印,问这个东西和什么结构比较像。提示是树,然后说了个多叉树,问我怎么实现, 最后其实使用dfs 遍历树的每个分支
    • 多线程并发的同步实现,有两个方法,每个方法里有a 部分代码和b 部分代码,我要让两个线程分别执行两个方法,并且让他们运行完a 部分代码再一起向下执行,如何实现
    • 我说了用 cyclicbarrier 实现,互相等待await
    • 然后他问我怎么用信号量实现,并且提示可以再用一个线程
    • 问了项目
    • 如何把优化递归的代码
      二面 2020/3/30 来自于牛客网
    • 自我介绍,项目
    • 服务器如何负载均衡,有哪些算法,哪个比较好,一致性哈希原理,怎么避免 DDOS 攻击请求打到少数机器
    • TCP 连接中的三次握手和四次挥手,四次挥手的最后一个ack 的作用是什么,为什么要

    time wait,为什么是 2msl

    • 数据库的备份和恢复怎么实现的,主从复制怎么做的,什么时候会出现数据不一致,如何解决
    • 开源的技术看过用过么,分布式存储的了解么
    • 想做什么方向的开发
    • Linux 查看 cpu 占用率高的进程
    • 查看占用某端口的进程和某进程监听的端口
    • 如何查询日志文件中的所有 ip,正则表达式

    java面试题及答案2020 百度第九篇

    一面 2020/2/27 来自于牛客网

    • 问极光推送 JPush 怎么做的,有什么优缺点,要怎么改
    • apk 如何瘦身,如何写脚本去掉多余的资源,内存如何优化,性能如何提升
    • protobuffer,和 json 什么区别,分别适用于什么场景,自己设计一套通讯协议,如果尽量压缩每个key
    • UI View 渲染流程
    • activit 几种启动模式
    • view 的attach deatch 是谁触发
    • 手写一个快排算法
    • tcp 三次握手,sack 是什么
    • redis 如何存储用户信息,问我热数据是以什么格式存的,问我用过几种类型数据,什么场景用的
    • 服务器如何实现秒传文件

    二面

    • 问我过度绘制怎么解决,问我如何发现内存泄漏

    • 然后就说项目很牛,开始问我基础的4、问我final 有哪些用法

    • static 哪些用法

    • volatile 什么用法

    • java 一共就 2 种,值类型和非值类型的理解

    • 锁有几种

    • synchronized 如果加到一个方法,另一个线程想访问类中的其他方法行不行,如果两个方法都加sync 关键字,又是怎样的访问权限

    • public 和默认的什么关键字都不加有什么区别

    • 问我对进线 golang 的协程的理解

    • android service 和广播的理解

    • 如果我们的应用关闭了,或者根本没打开过,还怎么收到推送

    java面试题及答案2020 百度第十篇

    一面

    • 自我介绍
    • Java 中的八大类型及其包装类型
    • 说一下 Map 的各种实现类,它们有什么区别
    • HashMap 底层实现
    • Spring 中的 Bean 生命周期,Spring 初始化过程
    • 数据库中的组合索引,数据库优化有了解过吗
    • 快排,时间空间复杂度
    • Servlet 是单线程还是多线程的,线程安全吗
    • 有什么要问我的
      java面试题及答案2020

    二面

    • 实习经历,实习时的项目功职责
    • 项目介绍,redis 和 mysql 是如何保证数据同步性的3、rabbitmq 是如何保证可靠的,kafka 适用于什么场景
    • springboot 的优介绍一下springboot
    • orm 有了解过 Springdata 吗,如何把 mybatis 里的xml 迁移到springboot 6、redis 的作实用场景
    • 说一下微服务,docker 的优点,docker 中的端口映射问题
    • 静态内部类和非静态内部类,内部类为什么可以访问到它外部类的数据和方法? 9、lambda 表达式在 jvm 里是如何体现的
    • hash 冲突了解哪些?说一下 hashmap 里的 hash 冲突,红黑树的定义,put 一个元素到红黑树里红黑树的转变过程
      java面试题及答案2020
    • 正向反向*,nginx 有了解过吗
    • android 里的 handler 了解吗
    • zookeepespringcloud 知道吗,你的项目有没有使用多台机器
    • 还有什么想问我的
      java面试题及答案2020 后续持续更新中。。敬请关注,点赞+收藏,java面试题及答案2020持续更新
    展开全文
  • 前言Java面试题及答案2020年最新版!(文末附参考答案)本套Java面试题总共分为以下这十三个模块:Java基础知识面试题Java异常面试题JVM面试题Spring面试题Spring MVC面试题Spring Boot面试题Spring Cloud面试题...
  • 1.JVM了解吗java面试题及答案2020 2.java类加载机制 3.Interface Abstract区别 4.数据库的四大属性 5.Mysql数据库联合索引 6.为什么MySQL数据库索引选择使用B+树? 7.有一块 两块 五块3种硬币 总共凑成100元 问最小...
  • java面试题及答案2020 一面 阿里 0、算法,二进制求和 1、int表示的范围 2、抽象和接口的区别 3、Object的方法 4、integer和int缓冲区的问题-127–128 5、jvm分区新生代,老年代 6、快速排序讲讲 7、平常怎么学习,...
  • 它用于存储已被虚拟机加载的类信息,常量,静态变量,即时编译器编译后的代码等数据,方法区在JDK1.7版本以前被称为永久代,从JDK1.8永久代被移除。 虚拟机栈。虚拟机栈中执行每个方法的时候,都会创建一个栈帧...
  • java面试题及答案2020 持续更新 java面试阿里一面 文章末尾有2020java面试题答案和面试题整理 1、自我介绍、项目 2、服务注册中心如何感知某个微服务挂掉和复活 3、SpringCloud采用哪种序列化方式 4、spring bean的...
  • 2020最新Java常见面试题及答案

    万次阅读 多人点赞 2019-10-26 15:53:35
    Java最新常见面试题 + 答案汇总 1、面试题模块汇总 面试题包括以下十九个模块:Java 基础、容器、多线程、反射、对象拷贝、Java Web 模块、异常、网络、设计模式、Spring/Spring MVC、Spring Boot/Spring Cloud、...
  • java面试题及答案2020 阿里面试 一面 文末持续更新面试题及答案 1、项目介绍,因为项目中用到了SpringCloud,说了说springcloud的组件,以及服务之间怎么通信的。 2、JVM,内存布局,垃圾回收,OOM怎么排查 3、...
  • java面试题及答案2020 一面(实习)-2020/3/16 文末持续更新面试题及答案 1、问项目(与Java工程没啥关系,略) 2、Java基础: HashMap底层结构;怎么实现线程安全(ConcurrentHashMap);HashSet的底层怎么实现的 ...
  • java面试题及答案2020 二面-2020/3/18 1、自我介绍项目比赛 2、java集合框架全部介绍。。从list set queue到map 3、hashmap底层扩容线程安全问题 4、如果-一个对象要作为hashmap的key需要做什么 5、Threadlocal类...
  • 文末持续更新面试题及答案 1.Sq:交换性别值;交换职务值(学生,老师,教授) 2.算法:压缩算法:AAABBBCCC压缩(考虑AAAABBBCCCAAA的情况) 3.Java:Class.forName和ClassLoader的区别 JVM内存模型 100个线程对I...
  • java面试题及答案2020 一面 阿里 1、tcp为什么是可靠的 2、哪些情况可以用udp 3、跑程序时候发现服务器系统内存占用100%怎么办 4、HashMap、ConcurrentHashMap。几乎把里面的所有函数都讲了一遍 5、volatile 6、jvm...
  • java最新面试题及答案2020 (四十四)

    千次阅读 2020-05-26 15:00:10
    java面试题及答案2020 二面-2020/3/18 1、自我介绍项目比赛 2、java集合框架全部介绍。。从list set queue到map 3、hashmap底层扩容线程安全问题 4、如果-一个对象要作为hashmap的key需要做什么 5、Threadlocal类...
  • java面试题及答案2020 一面-2020/3/15 文末持续更新面试题及答案 基础 1、hashmap时间复杂度 2、arraylist & linkedlist 3、进程和线程的区别 4、创建线程的方式 5、数据库索引 6、jvm内存分配 项目 1、项目...
  • 前言个人珍藏的80道Java多线程/并发经典面试题,因为篇幅太长,现在先给出1-10的答案解析哈,后面一起完善~1. synchronized的实现原理以及锁优化?synchronized的实现原理synchronized作用于「方法」或者「代码块」...
  • 面试题包括以下十九个模块:Java 基础、容器、多线程、反射、对象拷贝、Java Web 模块、异常、网络、设计模式、Spring/Spring MVC、Spring Boot/Spring Cloud、Hibernate、Mybatis、RabbitMQ、Kafka、Zookeeper、...
  • JVM 允许一个应用并发执行多个线程。 Hotspot JVM 中的 Java 线程与原生操作系统线程有直接的映射关系。当线程本地存储、缓 冲区分配、同步对象、栈、程序计数器等准备好以后,就会创建一个操作系统原生线程。 Java ...
  • 我也一样,我在网上找了很多面试题来看,最近又赶上跳槽的高峰期,好多粉丝,都问我要有没有最新面试题,索性,我就把我看过的和我面试中的真题,及答案都整理好,整理了《第2版:互联网大厂面试题》并分类92份 PDF...
  • 1、 JVM结构原理、GC工作机制详解 转载于:https://blog.csdn.net/tonytfjing/article/details/44278233 一、JVM结构 根据《java虚拟机规范》规定,JVM的基本结构一般如下图所示: 从左图可知,JVM主要包括四个部分...
  • 2020JAVA面试题及答案

    2020-11-13 00:13:30
    前言1.JAVA基础2.JVM 知识3.开源框架知识4.操作系统5.多线程6.数据库知识7.最后附一遍持续整理的博客 前言 前言: 少年易老学难成,一寸光阴不可轻。未觉池塘春草梦,阶前梧叶已秋声 。—朱熹《劝学诗》 ...
  • 今天给大家分享下我整理的Java架构面试专题及答案,其中大部分都是大企业面试常问的面试题,可以对照这查漏补缺,当然了,这里所列的肯定不可能覆盖全部方式,不过也希望能对即将找工作的朋友起到一些帮助!...
  • 今天,给大家整理汇总了:2020年互联网大厂一线最新面试真题以及2000道常见Java岗位面试题资料(附完整答案)。 主要有:阿里巴巴、腾讯、乐信、中国平安、丰巢科技、oppo等大厂真题,以及JVM、SPringBoot、...
  • 大厂面试主要经常问到技术点: (文末领取答案) 并发编程、多线程、JVM、优化、Spring、消息框架、分布式、缓存等以及你使用...面试题如下:并发编程28题Synchronized 用过吗,其原理是什么?你刚才提到获取对象...
  • 面试专题及答案pdf文档【见下图】即可免费领取 2020年最新阿里巴巴JAVA高级面试专题 今年因为疫情原因,很多人在家里宅了很长一段时间,也有充足的时间复习筹备,为面试做足准备。我这里这筹备了一份各大互联网...
  • 在这里,我为大家准备了一份2020年最新最全的《Java面试题及答案V2.0》,这套电子书涵盖了诸多后端技术栈的面试题和答案,相信可以帮助大家在最短的时间内复习Java后端的大多数面试题,从而拿到自己心仪的offer ...
  • 在这里,我为大家准备了一份2020年最新最全的《Java面试题及答案V2.0》,这套电子书涵盖了诸多后端技术栈的面试题和答案,相信可以帮助大家在最短的时间内复习Java后端的大多数面试题,从而拿到自己心仪的offer,...
  • 1、在java中守护线程和本地线程区别? java中的线程分为两种:守护线程(Daemon)和用户线程(User)。...唯一的区别是判断虚拟机(JVM)何时离开,Daemon是为其他线程提供服务,如果全部的User Thread已经撤离.

空空如也

空空如也

1 2 3 4
收藏数 70
精华内容 28
关键字:

jvm面试题及答案2020