java面试2

牛客投的
0.自我介绍
1.常用数据结构,区别及使用场景     --答了数组链表栈队列树,简述了一下各个结构的特性
2.数组和链表在内存中数据的分布情况     --逻辑地址上数组连续,栈不连续
3.HashMap源码看过吗       --看过一点点
4.底层数据结构和put操作
5.JVM内存区域
6.各个区域存放什么东西
7.创建一个对象,内存怎么分配的
8.堆中内存怎么划分,gc怎么回收

10.Ioc 原理
11.Bean存放在哪里        --spring将它存放在,啊 在堆里面。胡诌一番(真记不清,后来反应过来应该是问的BeanFactory)
12.AOP原理  
13.动态代理实现方式
14.BeanFactory和FactoryBean的区别
15.事务的隔离级别
16.脏读场景,幻读场景  
17.分布式锁用过吗          -- 用过redis作分布式锁 (分布式还没系统学,开启乱答吧)
18.redis为什么可以作为分布式锁    -- 乱答一通(面试官直接告诉我是  redis单线程运行的原因)
19.哪些场景用过redis              -- 缓存
20.redis 数据结构 
21.redis过期策略         
22.怎么理解序列化
23.知道哪些序列化协议         -- 只知道json (问我rpc中的序列化协议,不知道)
24.怎么分析慢sql             -- 不会
25.写sql 学生姓名科目成绩表,求平均分90分以上的 
26.linux用过吗        --会一点
27.vim 怎么保存退出        -- :wq
28.查看文件                -- cat

 

  • 计算机网络:七层网络TCP与UDP区别tcp可以看见https加密前的明文吗
  • Java:
  • 介绍集合
  • HashMap数据结构
  • key可以为空吗
  • ConcurrentMap底层数据结构和源码看过吗
  • 看过别的jdk源码吗
  • Spring SpringMVC SpringBoot区别
  • Servlet重要方法
  • IOC与AOP
  • 动态代理
  • JDK动态代理需要的类
  • Mysql:
  • InnoDB与MyISAM区别
  • 底层存储有什么区别
  • InnoDB索引存储结构
  • B+有几层
  • 隔离级别
  • MVCC
  • Redis业务使用场景
  • 数据结构
  • 业务题:秒杀
  • 设计模式
  • 算法:(没让手撕)
  • 查找倒数第k个元素
  • 介绍一下排序算法
  • 什么时候用二分

什么情况使用MySQL,什么情况使用Redis
Redis有什么持久化策略
MySQL有哪2种引擎,说一下它们的区别
MySQL两个线程的update语句同时处理一条数据,会不会有阻塞
滥用事务,或者一个事务里有特别多sql的弊端
两条update语句处理一张表的不同的主键范围的记录,一个<10,一个>15,会不会遇到阻塞?底层是为什么的?
如果2个范围不是主键或索引?还会阻塞吗?
除了表锁,行锁这些,还有别的形式的锁吗?分类
从设计数据库,编写sql,加锁等方面来对数据库方面的工作做一个总结
谈一下对线程和进程的理解
多线程比单线程的优势,劣势
Java创建线程有几种方式
线程池有哪些优势
说一下对面对对象3大特性理解
Java有什么常用的集合类?
有哪些集合类是线程安全的,哪些是不安全的?
数组和链表有什么区别?
堆和栈的区别?
Set集合有什么特点?如何实现key无重复的?
有序的Set是什么?记录插入顺序的集合是什么?
Linux操作系统中哪个命令可以查看端口被哪个应用占用

记得去年约了京东物流的面试,后悔没做什么准备,没背朋友给我的新整合的Java八股文就硬上了,全过程大概一个多钟,覆盖面很广,结果直接凉了。
微服务调用openfeign底层怎么调用的原理
分布式事务,缓存和数据库的一致性保持。mybatis的缓存,rabbitMQkafakrocketMQ区别
慢查询索引失效,b+树分库分表高并发除了加锁还有什么解决方案,kafak持久化内存满了除了迁移还能怎么办?这些那时

一面

  • 两个Integer == 什么情况下成立 缓存的是什么 还有哪些类似Integer这样的
  • String == String为什么是不可变的 常量池除了字符串还有什么String被final类型修饰,并且数据内部由一个被final修饰的char数组保存,且并未提供修改数组的方法
  • JDK 10 11 有什么新特性
  • 讲讲Spring,有什么好处 动态代理怎么实现的 动态代理和代理模式有什么区别(字节码) 为什么Java可以实现热加载C++不行
  • Spring boot在spring基础上做了什么,说说Spring boot自动装配
  • Spring data用过吗,怎么去配置数据库连接(为什么这样能配置), 默认的连接池是啥,为什么要用德鲁伊 ,不用配置文件怎么创建DB链接 怎么能够利用到
  • spring提供了声明式事物,说说编程式事物
  • Redis是单线程还是多线程,多线程的体现,为什么块 多路复用是什么

二面

  • 个人介绍、之前实习情况、为什么不转正、薪资、工作地点预期、为什么想在杭州/上海
  • 数据结构数组和链表区别,增删改查时间复杂度
  • HashMap的增删改查时间复杂度,查询时的平均复杂度(这里没答出来,后续想到是O(1) 因为jdk8出现哈希冲突并不高,具体看数据)
  • 共享屏幕写斐波那契,第一次写递归让求一万,用了缓存,然后让用另一种方式写,用了循环

1. 我项目中有一个点赞的功能,问题:并发情况下,如何保证更新的值不会出错
    当时太紧张了,其实可以使用mysql的锁来实现
2. 问:基本数据类型,占的字节
3. 问:String,为何要使用final修饰,作用,存储方式,为何要在jdk9换成byte数组
4. 问:看过集合源码没有
    答:看过
    问:ConcurrentHashMap的优点,与其他集合的不同
5. 问:知道哪些线程安全list
    答:CopyOnWriteArrayList,Collections
    问:并发情况下,修改list会怎么样(ConcurrentModifitionException),为何要抛出异常
    答:答对一半,为了数据一致性,当时脑袋一团乱
6. 问:创建线程池的方式,使用newSingleThreadExecutor创建线程的作用(没答对)
7. 问:创建的数据结构有哪些,图如何判断是否出现环
8. 问:LinkedList的时间复杂度,如何将一条单链表的查询时间复杂度变成O(logn)
9. 问:MySQL中的日志有哪些
10. 问:spring中的ioc,举一个例子
 

本来不打算去的,想到是第一次线下面,就去了

hr简单介绍一下做什么,说了下薪资(比较低),说了下上下班时间(早九晚六点五),然后就叫了个技术。

技术来了看了看简历,问会不会elementUI,我说了解一些,主要是java,他就问我知道数据库吗?

我说知道,就问我什么时候用join,我举了个例子,还有一个redis的数据类型,就问我有什么要反问的吗?

我一脸懵,这就结束了,我问他是不是要找全栈的,说前后端都要会一些。然后就转领导面。

领导来了先让自我介绍,然后问了大数据懂不懂,我说不懂,他说可以以后边操作边学,然后又问了一些概念,比如中台(不了解),就说实习要踏踏实实,不要吊儿郎当的,迟到早退,或者不来。。。。然后就又把hr叫来了。

hr来就说面试通过了,等什么时候能去联系他一下再发offer,然后就让我走了

嗯。。。怎么说呢?和我想的有点不太一样,本来只是打算长个面试经验,然后。。。。

  • 技术一面(3.27):

因为我简历上写了实习期间用数据库比较多,于是面试官就问了我一堆数据库的问题(这里提醒下一定要对自己的简历足够熟悉)。

1.首先是很基础的问题:包括select、like、group by、join…等等这些关键词怎么用,还给了一些具体的场景,要求写出具体的sql语句。

2.左连接和右连接

3.查询语句优化

4.数据库索引:谈谈对索引的理解,为什么用索引,什么情况下使用索引,索引的底层数据结构是什么,为什么用b+树,为什么不用红黑树,b+树和b树的区别

5.数据库的隔离级别,分别解决了什么问题(脏读幻读之类的)

6.innodb和myisam的区别

7.数据库事务的四个特性,其中原子性是什么意思

然后是java的一些问题

1.你了解的有哪些集合?

2.Arraylist和LinkedList的区别

3.HashMap的底层结构,put方法的具体操作过程

4.了解CurrentHashmap吗

5.谈谈Hashcode,==和equals的区别

6.怎么创建多线程,三种创建方式的区别

7.线程池了解吗,说说线程池的具体工作过程

8.java中有哪些锁,简单说说它们之间的区别

9.jvm的内存模型

10.jvm的垃圾回收算法

11.双亲委派模型

后面还零星问了些,具体的就记不太清楚了

然后就是手撕代码,二叉树的层序遍历。

二叉树的题我不是很熟,但前中后序遍历和层序遍历我还是做过的。

但具体的题目和我之前做的又有些小小的出入,然后我又有点紧张,导致我在一些细节上卡了较长时间,最后在面试官的提醒下还是做出来了,不过也比较曲折了(因为有一些用例没通过,所以还调试了一段时间),估计这里给面试官扣了一些印象分。

  • 技术二面(3.27):

还没休息多久马上就开始技术二面了,问的内容和前面都大差不差,也是问了我数据库和java,还问了下项目和实习经历,我的二面和一面比起来问得就没那么多,也可能是因为每次面试官想延伸问一些深层次的东西我答不上来。感觉一面侧重广度,二面侧重深度。

最后也是给了道算法题,不过这个很简单。

我一开始还往复杂了想,在想要不要用dp,后面发现根本没必要,直接一层循环就能做出来,不过也是要注意一些边界条件的问题。

  • 主管面(3.28):

也是问一些基本情况,还问了下项目相关的问题,以及能不能接受转C++,能不能接受加班等等。

然后就是等offer了,因为技术面表现不是很好,然后原先的部门需求又缩紧了,hr就给我换了个部门,最后也是有惊无险的顺利拿到了offer

菜鸟给我Offer吧
1.OSI七层网络模型以及各层的作用
2.TCP和UDP的区别
3.TCP保证可靠传输的机制
4.TCP三次握手机制
5.进程线程之间的区别
6.进程之间的通信方式有哪些
7.AQS的底层原理
8.线程的几个问题:原子性、可见性、有序性都是怎么实现的
9.volatile单例模式,聊到了指令重排
10.synchronized和lock的区别
11.解决ABA问题,引入原子引用
12.脑筋急转弯:五个人过河的经典问题,没答出来感觉GG

  • 算法题:二叉树的后序遍历,要求迭代法实现
  • 算法题:找数组中第 K 大的数

mysql有哪些存储引擎,默认用哪种?
mysql怎么实现分页查询的,具体怎么实现?
MyBatis配置文件需要配置哪些
lucene是什么,用来干啥的
Lucene底层怎么实现的
SM搭建过程,自己可以搭建吗
Redis是什么,用来干什么的?

寻找数组中第K大的数(快排思想)

一面面试官技术大佬,虽然有很多地方个人觉得答得不怎么样,但还是放了我一马。

  • 自我介绍
  • 介绍工作项目,项目的业务?
    数据中台
  • 你工作中的职责,工作成果
  • 项目中用到的中间件技术?
    kafka、redis、jpa、mysql、swagger、nacos、feign等
  • jpa的自动建表知道吗?
    知道,但是项目中不用jpa来建表
  • 项目某个功能具体实现逻辑?
  • 说一下你最擅长的中间件技术
    kafka和redis吧
  • 你Redis用在哪些场景?
    缓存、分布式锁
  • 怎么设置分布式锁的?redission用过没有?
    加锁设置key,取消锁删除key,不太了解
  • 你们有几个环境?出了问题怎么排查的?
    开发、测试、sit。登录相应环境服务器通过docker logs查看日志定位错误
  • 前后端怎么联调的?
    swagger文档调接口,没有。
  • 自动构建工具用的什么?
    jenkins。
  • 你们项目一个服务几个节点?为什么只有一个?有没有想过单节点存在的问题?
    开发环境一个,开发环境压力不大,请求多了压力大。线上几个不了解。
  • 微服务的熔断与降级知道吗?
  • Springboot中的注解知道哪些?
  • 你们项目中的包结构是怎样的?
  • 面向对象和面向过程
  • java三大特性是什么?每个特性指的是什么?
  • 设计模式用过哪些?项目中怎么用的?
  • 设计原则知道吗?
  • Restful知道吗?
  • 手撕算法题:数字字符串转化成IP地址
    看我机考满分,特殊照顾了一下,给了我一个稍微难点的题目
    花了十多分钟,大概写出来了
    还有bug没改完就被叫停了,让一向追求完美的我有点郁闷
  • 当前薪资
    没敢吹牛批,说了实话
  • 反问
  • 对我有啥建议吗
    没有
  • 一共有几面
    一面、二面、主管面
  • 二面和一面区别在哪
    二面是交叉面,别的部门来面,一般比一面简单些
    直接通知通过,等待二面交叉面。

二面(交叉面)

二面面试官很直接,上来自我面试都没做直接开问。

  • 问项目。
    二面面试官对数据中台不了解,讲项目很吃力。
  • 了解JVM吗,JVM内存分区了解吗,哪些区域会发生OOM?
    方法区、堆、虚拟机栈、本地方法栈、PC寄存器;堆、虚拟机栈、本地方法栈、方法区
  • String a = "123";String b = "123",a==b吗?
    相等,因为执行String a = "123"后,会把123放到字符串常量池,再执行String b = "123"时,会直接引用常量池中的"123",得到的是同一个对象。
  • 类加载器知道吗,有哪几种类加载器?
    启动类加载器、扩展类加载器、系统类加载器
  • 双亲委派知道吗,流程,为什么要双亲委派?
    先委托父加载器尝试加载,父加载器无法加载子加载器再加载,保证程序安全。
  • 父类静态代码块、父类构造方法、子类静态代码块、子类构造方法的执行顺序
    父类静态代码块、子类静态代码块、父类构造方法、子类构造方法
  • 剩半个多小时,给了一道算法题:
    给一个数组{1,1,1, 1, 1, 1, 1, 1, 1, 2}
    分别代表着{2,4,8,16,32,64,128,256,512,1024}的个数,
    设计一个算法,计算至少相加多少次能得到2048这个数字。
    面试官给了些思路,并提示我不要直接开做,好好想想,确定好方法。
    我说我确定了,不用想了!
    五分钟干完,面试官看我做的很快质问我之前做过这道题?
    原本一个小时的面试,提前半小时结束。

1Java8新特性

2  stream返回大于60分学生 返回学生姓名字符串

3 多线程创建方式

4线程池流程 参数

5获取线程返回结果方法

6springmvc springboot区别

7spring常用注解 

8 spring事务传播级别

算法 数组原地去重返回长度

一面:

项目背景(目的,实现功能,达到成果)

kafka如何保证一致性和可用性

业务代码修改mysql数据库后发送kafka消息然后事务回滚,但消息已经发了咋办

redis数据结构,跳表查找过程,跳表节点包含什么内容

事务隔离级别,脏读,mvcc

索引分类,其他分类方式

b+树好处和查找过程

手撕代码:单例模式,反转链表,二叉树的最近公共父节点

二面:

对蔚来的了解

做的功能是优化还是新增

如何设计数据库表,如何将三大范式应用设计数据表时

redis用途

kafka用途,如何保证消息不丢失

java中的锁,synchronized和reentrantlock原理以及如何选择

对象头长度(我不知道,就说了下对象头包含的内容),对齐填充,为什么需要对齐填充,为什么jvm是整数字节

项目里面有没有用多线程和设计模式

哪里人,想来上海发展吗

手撕代码:股票最大回撤率

1.kafka重复消费,为啥会用kafka,rabbitmq这类中间件
2.docker相关:如何进行镜像的打包的,底层是否理解
3.redis:集群哨兵模式了解吗,zsort了解吗,过期时间怎么设置,redis为何效率那么高,redis和数据库一致性,redis的特点。

2.写了个单例模式的代码。

3.violatile的语义,什么场景下会使用到

4.指令重排序的意义?

5.AOP的实现原理及使用场景有哪些?

6.Java类的初始化顺序及原因?

7.synchronized锁class对象和普通对象的区别?(我觉得没啥区别)

8.如何设计一个统计API访问次数的功能?

9.如何设计一个限流模块?

3.缓存雪崩 缓存穿透 缓存击穿都是什么意思,怎么处理

4.缓存常见的更新策略?

2.lock和synchronized的底层实现

3.AQS的实现原理

4.线上用的什么垃圾收集器?G1收集器和CMS收集器的区别?

5.线程池的几个参数?

6.线上出现过什么故障?(讲了个线程池无界队列导致OOM的情况)

7.分布式事务怎么处理?(分布式锁 or 消息队列)

8.分布式锁过期怎么解决?(不过期or续期)

9.Redis的基础数据结构?

10.Redis怎么进行分布式部署?

11.Redis集群模式下查询到非key所在节点的话会怎么处理?

12.RPC协议和HTTP协议的区别?

13.服务发现怎么做的?

14.如果注册中心挂了的话,是否还能做服务发现功能呢?

1.聊了聊项目

2.MySQL的B+树索引结构什么样的,还有其他类型的索引吗

3.慢查询怎么进行SQL优化

4.Spring是怎么解决循环依赖的

5.Spring的AOP是怎么实现的,项目里面是怎么用的

6.一道算法题,对一条链表里面每k个节点进行翻转。

7.聊了聊美团风控的架构,然后我之前的工作具体是什么样的

76、创建线程池的几个核心构造参数

77、线程池中的线程是怎么创建的?是一开始就随着线程池的启动创建好的吗?

78、volatile 关键字的作用

79、既然 volatile 能够保证线程间的变量可见性,是不是就意味着基于 volatile 变量的运算就是并发安全的?

80、ThreadLocal 是什么?有哪些使用场景?

81、请谈谈 ThreadLocal 是怎么解决并发安全的?

82、很多人都说要慎用 ThreadLocal,谈谈你的理解,使用 ThreadLocal 需要注意些什么?

83、为什么代码会重排序?

84、什么是自旋

85、多线程中 synchronized 锁升级的原理是什么?

86、synchronized 和 ReentrantLock 区别是什么?

87、Java Concurrency API 中的 Lock 接口(Lock interface)是什么?对比同步它有什么优势?

88、jsp 和 servlet 有什么区别?

89、jsp 有哪些内置对象?作用分别是什么?

90、forward 和 redirect 的区别?

91、说一下 jsp 的 4 种作用域?

92、session 和 cookie 有什么区别?

93、如果客户端禁止 cookie 能实现 session 还能用吗?

94、什么是上下文切换?

95、cookie、session、token

96、说一下 session 的工作原理?

97、http 响应码 301 和 302 代表的是什么?有什么区别?

98、简述 tcp 和 udp的区别?

99、tcp 为什么要三次握手,两次不行吗?为什么?

100、OSI 的七层模型都有哪些?

101、get 和 post 请求有哪些区别?

102、什么是 XSS 攻击,如何避免?

103、什么是 CSRF 攻击,如何避免?

104、如何实现跨域?说一下 JSONP 实现原理?

105、websocket应用的是哪个协议

106、说一下 tcp 粘包是怎么产生的?

107、请列举出在 JDK 中几个常用的设计模式?

108、什么是设计模式?你是否在你的代码里面使用过任何设计模式?

109、Java 中什么叫单例设计模式?请用 Java 写出线程安全的单例模式

110、在 Java 中,什么叫观察者设计模式(observer design pattern)?

111、使用工厂模式最主要的好处是什么?在哪里使用?

112、请解释自动装配模式的区别?

113、举一个用 Java 实现的装饰模式(decorator design pattern)?它是作用于对象层次还是类层次?

114、什么是 Spring 框架?Spring 框架有哪些主要模块?

115、使用 Spring 框架能带来哪些好处?

116、Spring IOC、AOP举例说明

117、什么是控制反转(IOC)?什么是依赖注入?

118、BeanFactory 和 ApplicationContext 有什么区别?

119、什么是 JavaConfig?

120、什么是 ORM 框架?

121、Spring 有几种配置方式?

122、请解释 Spring Bean 的生命周期?

123、Spring Bean 的作用域之间有什么区别?Spring容器中的bean可以分为5个范围:

124、如何在 Spring Boot 中禁用 Actuator 端点安全性?

125、什么是 Spring inner beans?

126、Spring 框架中的单例 Beans 是线程安全的么?

127、请解释 Spring Bean 的自动装配?

128、如何开启基于注解的自动装配?

129、什么是 Spring Batch?

130、spring mvc 和 struts 的区别是什么?

131、请举例解释@Required 注解?

132、Spring常用注解

133、项目中是如何实现权限验证的,权限验证需要几张表

134、谈谈controller,接口调用的路径问题

135、如何防止表单重复提交

136、Spring中都应用了哪些设计模式

137、请举例说明如何在 Spring 中注入一个 Java Collection?

138、mybatis 中 #{}和 ${}的区别是什么?

139、mybatis 是否支持延迟加载?延迟加载的原理是什么?

140、说一下 mybatis 的一级缓存和二级缓存?

141、mybatis 有哪些执行器(Executor)?

142、mybatis 和 hibernate 的区别有哪些?

143、myBatis查询多个id、myBatis常用属性

144、mybatis一级缓存、二级缓存

145、mybatis如何防止sql注入

146、hibernate 中如何在控制台查看打印的 sql 语句?

147、hibernate 有几种查询方式?

148、hibernate 实体类可以被定义为 final 吗?

149、在 hibernate 中使用 Integer 和 int 做映射有什么区别?

150、什么是 Spring Boot?Spring Boot 有哪些优点?

151、Spring Boot 中的监视器是什么?

152、什么是 YAML?

153、如何使用 Spring Boot 实现分页和排序?

154、如何使用 Spring Boot 实现异常处理?

155、单点登录

156、Spring Boot比Spring多哪些注解

157、打包和部署

158、Spring Boot如何访问不同的数据库

159、查询网站在线人数

160、easyExcel如何实现

161、什么是 Swagger?你用 Spring Boot 实现了它吗?

162、数据库的三范式是什么?

163、一张自增表里面总共有 7 条数据,删除了最后 2 条数据,重启 mysql 数据库,又插入了一条数据,此时 id 是几?

164、如何获取当前数据库版本?

165、说一下 ACID 是什么?

166、char 和 varchar 的区别是什么?

167、float 和 double 的区别是什么?

168、Oracle分页sql

169、数据库如何保证主键唯一性

170、如何设计数据库

171、性别是否适合做索引

172、如何查询重复的数据

173、数据库一般会采取什么样的优化方法?

174、索引怎么定义,分哪几种

175、mysql 的内连接、左连接、右连接有什么区别?

176、RabbitMQ的使用场景有哪些?

177、RabbitMQ有哪些重要的角色?有哪些重要的组件?

178、RabbitMQ中 vhost 的作用是什么?

179、说一下 jvm 的主要组成部分?及其作用?

180、说一下 jvm 运行时数据区?

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

182、说一下类加载的执行过程?

183、JVM的类加载机制是什么?

184、什么是双亲委派模型?

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

186、说一下 jvm 有哪些垃圾回收算法?

187、说一下 jvm 有哪些垃圾回收器?

188、JVM栈堆概念,何时销毁对象

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

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

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

192、Redis是什么?

193、Redis都有哪些使用场景?

194、Redis有哪些功能?

195、Redis支持的数据类型有哪些?

196、Redis取值存值问题

197、Redis为什么是单线程的?

198、Redis真的是单线程的吗?

199、Redis持久化有几种方式?

200、Redis和 memecache 有什么区别?

201、Redis支持的 java 客户端都有哪些?

202、jedis 和 redisson 有哪些区别?

203、什么是缓存穿透?怎么解决?

204、怎么保证缓存和数据库数据的一致性?

205、Redis,什么是缓存穿透?怎么解决?

206、Redis怎么实现分布式锁?

207、Redis分布式锁有什么缺陷?

208、Redis如何做内存优化?
原文链接:https://blog.csdn.net/guorui_java/article/details/119299329

一、JDK 和 JRE 有什么区别?

二、== 和 equals 的区别是什么?

三、final 在 java 中有什么作用?

四、java 中的 Math.round(-1.5) 等于多少?

五、String 属于基础的数据类型吗?

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

七、如何将字符串反转?

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

九、new String("a") + new String("b") 会创建几个对象?

十、如何将字符串反转?

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

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

十三、接口和抽象类有什么区别?

十四、java 中 IO 流分为几种?

十五、BIO、NIO、AIO 有什么区别?

十六、Files的常用方法都有哪些?

十七、什么是反射?

十八、什么是 java 序列化?什么情况下需要序列化?

十九、为什么要使用克隆?如何实现对象克隆?深拷贝和浅拷贝区别是什么?

​二十、throw 和 throws 的区别?

二十一、final、finally、finalize 有什么区别?

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

二十三、常见的异常类有哪些?

二十四、hashcode是什么?有什么作用?

二十五、java 中操作字符串都有哪些类?它们之间有什么区别?

二十六、java 中都有哪些引用类型?

二十七、在 Java 中,为什么不允许从静态方法中访问非静态变量?

二十八、说说Java Bean的命名规范

二十九、Java Bean 属性命名规范问题分析

三十、什么是 Java 的内存模型?

三十一、在 Java 中,什么时候用重载,什么时候用重写?

三十二、举例说明什么情况下会更倾向于使用抽象类而不是接口?

三十三、实例化对象有哪几种方式

三十四、byte类型127+1等于多少

原文链接:https://blog.csdn.net/guorui_java/article/details/117376136

更多:

https://www.cnblogs.com/aishangJava/p/10544229.html

你可能感兴趣的:(java,面试,jvm)