Mar9th 海尔java面试
Mar9th 海尔java面试
- java基本数据类型
- 抽象类和接口的区别
- HashMap扩容机制
- 什么时候触发扩容?
- jdk7的扩容机制
- jdk8的扩容机制
- ArrayList,LinkedList
- Innodb表锁,行锁
- Mysql隔离级别
- B+树,索引类型
- IOC AOP
java基本数据类型
int short long double float boolean char byte
public class Learn1 {static double d;static long l;static float f;static int i;static short s;static char c;static byte b;static boolean bool;public static void main(String[] args) {//8字节System.out.println(Double.SIZE / 8);//8字节System.out.println(Long.SIZE / 8);//4字节System.out.println(Float.SIZE / 8);//4字节System.out.println(Integer.SIZE / 8);//2字节System.out.println(Short.SIZE / 8);//2字节System.out.println(Character.SIZE / 8);//1字节System.out.println(Byte.SIZE / 8);//1比特System.out.println(Boolean.FALSE);//0.0System.out.println(d);//0LSystem.out.println(l);//0.0fSystem.out.println(f);//0System.out.println(i);//0System.out.println(s);//""System.out.println(c);//0System.out.println(b);//falseSystem.out.println(bool);}
}
抽象类和接口的区别
抽象类可以有构造方法,接口中不能有构造方法。
抽象类中可以有普通成员变量,接口中没有普通成员变量
抽象类中可以包含非抽象的普通方法,接口中的所有方法必须都是抽象的,不能有非抽象的普通方法。
抽象类中的抽象方法的访问类型可以是public,protected和默认类型,但接口中的抽象方法只能是public类型的,并且默认即为public abstract类型。
抽象类中可以包含静态方法,接口中不能包含静态方法
抽象类和接口中都可以包含静态成员变量,抽象类中的静态成员变量的访问类型可以任意,但接口中定义的变量只能是public static final类型,并且默认即为public static final类型。
一个类可以实现多个接口,但只能继承一个抽象类。
HashMap扩容机制
- capacity 即(数组大小)容量,默认16。
- loadFactor 加载因子,默认是0.75
- threshold 阈值。阈值=容量*加载因子。默认12。当元素数量超过阈值时便会触发扩容。
什么时候触发扩容?
一般情况下,当元素数量超过阈值时便会触发扩容。每次扩容的容量都是之前容量的2倍。
HashMap的容量是有上限的,必须小于1<<30,即1073741824。如果容量超出了这个数,则不再增长,且阈值会被设置为Integer.MAX_VALUE,即永远不会超出阈值了。
jdk7的扩容机制
JDK7的扩容机制相对简单,有以下特性:
- 空参数的构造函数:以默认容量、默认负载因子、默认阈值初始化数组。内部数组是空数组。
- 有参构造函数:根据参数确定容量、负载因子、阈值等。
- 第一次put时会初始化数组,其容量变为不小于指定容量的2的幂数。然后根据负载因子确定阈值。
- 如果不是第一次扩容,则 新容量=旧容量*2, 新阈值=新容量*加载因子 。
jdk8的扩容机制
JDK8的扩容做了许多调整。
HashMap的容量变化通常存在以下几种情况:
- 空参数的构造函数:实例化的HashMap默认内部数组是null,即没有实例化。第一次调用put方法时,则会开始第一次初始化扩容,长度为16。
- 有参构造函数:用于指定容量。会根据指定的正整数找到不小于指定容量的2的幂数,将这个数设置赋值给阈值(threshold)。第一次调用put方法时,会将阈值赋值给容量,然后让 阈值=负载因子*容量 。(因此并不是我们手动指定了容量就一定不会触发扩容,超过阈值后一样会扩容!!)
- 如果不是第一次扩容,则容量变为原来的2倍,阈值也变为原来的2倍。(容量和阈值都变为原来的2倍时,负载因子还是不变)
此外还有几个细节需要注意:
首次put时,先会触发扩容(算是初始化),然后存入数据,然后判断是否需要扩容;
不是首次put,则不再初始化,直接存入数据,然后判断是否需要扩容;
ArrayList,LinkedList
频繁删除用linkedlist
Innodb表锁,行锁
Mysql隔离级别
未提交读(Read uncommitted)
已提交度(Read committed)
可重复读(Repeatable read)
可序列化(Serializable)
B+树,索引类型
IOC AOP
Mar9th 海尔java面试相关推荐
- java面试常见问题之Hibernate总结
1 Hibernate的检索方式 Ø 导航对象图检索(根据已经加载的对象,导航到其他对象.) Ø OID检索(按照对象的OID来检索对象.) Ø HQL检索(使用面向对象的HQL查询语言.) ...
- 2021年Java面试题目最新总结【90%面试会踩的坑】
学会java技术之后大家面临的最多的问题就是面试这关,求职面试java岗位是否能够成功是直接影响我们的工作机会的,所以对于Java程序员面试你准备好了吗?今天小编汇总了一下关于Java程序员面试,90 ...
- Github 一夜爆火:这份金九银十 Java 面试手册我给跪了
这几天给筒子们整理了一份<Java面试手册>,106页,目前大约6万字左右,初衷也很简单,就是希望在面试的时候能够帮助到大家,减轻大家的负担和节省时间. 废话不多说,本手册目前为第一版,后 ...
- Java面试参考指南(二)
2019独角兽企业重金招聘Python工程师标准>>> 访问修饰符 对于基本的OOPS(面向对象)概念,请看Java面试参考指南的第一部分.访问修饰符规定了一个类如何访问另一个类及它 ...
- 卧槽,又一个Java面试神器!!!
临近秋招,又到了"金九银十"面试求职高峰期,在金三银四时也参与过不少面试,2020都说工作不好找,也是对开发人员的要求变高.前段时间自己有整理了一些Java后端开发面试常问的高频考 ...
- 200 道 Java 面试题解!某阿里 P7 只答上来 70%!
最近,经常有读者朋友们在后台给我留言,问我有没有什么面试资料可以分享的,因为之前一直比较忙,所以没有时间整理. 最近终于抽出一些时间,整理了一下,一发不可收拾了,一口气整理出好几本电子书出来.其中有一 ...
- 美团架构师开源5万字的《Java面试手册》PDF免费下载!
美团一位架构师利用空余时间在github整理了一份<Java面试手册>,现整理成PDF,初衷也很简单,就是希望在面试的时候能够帮助到大家,减轻大家的负担和节省时间. 前两天,朋友圈分享了这 ...
- 5万字的《Java面试手册》V1.0版本,高清PDF免费获取
利用空余时间整理了一份<Java面试手册>,初衷也很简单,就是希望在面试的时候能够帮助到大家,减轻大家的负担和节省时间. 前两天,朋友圈分享了这份这份面试手册的初稿,再几位同学的提议下,对 ...
- JAVA面试解析(有赞二面)
作者:孤独烟 来自:打杂的ZRJ 本文的题目出自博客 http://www.54tianzhisheng.cn/2018/07/12/youzan/ 但是作者没有给出答案,博主斗胆来制作答案版. 也是 ...
- Java 面试,这样拿 Offer!
(含答案) 所有面试资料及技术好文精选文档都整理到网盘了. Java面试官手册需要加微信免费领取 长按扫码或搜索微信号:gupao666666,免费领取
最新文章
- 电脑修改ip地址方法cmd_Mac系统如何创建用户群组?苹果电脑修改用户名方法
- 倒排索引统计与 Python 字典
- sql中ifnull不生效_数据科学家常见的5个SQL面试问题
- Python 图像处理 - 用PIL库提取图片中的颜色并展示为色谱实例演示,RGB颜色排序方法
- 得到INSERT和UPDATE中使用的值
- hbase 协处理器 部署_hbase中安装和删除observer协处理器
- eclipse 运行MapReduce程序错误异常汇总(解决Map not fount)
- 《Unity2018入门与实战》笔记(9 / 9):个人总结
- 闲置服务器 虚拟服务器,闲置主机搭建服务器
- ASP.NET的分页方法(一)
- ffmpeg打开音频设备
- 纯CSS实现的蓝色竖向导航代码
- 《老路用得上的商学课》61-65学习笔记
- ucserver admin.php,Discuz!X3.2 升级后【ucenter、uc_server密码正确无法登录后台的解决方法】...
- 设置selected选中的多种方法(总结)
- 红米k30s 至尊纪念版本看闪存型号 硬盘型号
- 在浏览器输入URL,按下回车之后的流程
- python编程考试_Python编程练习(一)
- Python破解WIFI密码完整源代码,实测可成功破解
- html 的函数写法,react中函数的不同写法的区别是什么?
热门文章
- 博弈论分析题_博弈论习题及参考答案
- 飞机大战php 源码,飞机大战资源素材及完整代码
- RS485通信原理图及程序实例详解
- 2021年中国无线通信模组企业排名
- 基于java+SpringBoot+HTML+Mysql社区管理系统(小区管理系统)
- Vue将汉字转为拼音,取出首字母
- MATLAB2017安装VLFeat
- 震旦adc225打印机连接计算机,震旦ADC225打印机驱动
- 人工智能学习思维导图
- 个人网页制作 大学生个人网页设计 个人网站模板 简单静态HTML个人网页作品 HTML+CSS+JavaScript