Java 面试题:百度前200页都在此地了

数据结构

多线程

编程题

动态代理

  • 讲述动态代理的二种达成格局,分别说出相应的利弊

概念

  • GC是何许?为啥要有GC
  • 怎么样时候会导致垃圾回收
  • GC是什么样运营的
  • 新老以及永久区是怎么
  • GC 有两种艺术?怎么布置
  • 怎么样时候二个目的会被GC? 怎么着判定一个对象是否存活
  • System.gc() Runtime.gc()会做什么业务? 能保障 GC 执行呢
  • 废品回收器能够及时回收内部存款和储蓄器吗?有怎么样方式积极打招呼虚拟机进行垃圾回收?
  • Minor GC 、Major GC、Young GC 与 Full GC分别在怎么样时候发生
  • 废品回收算法的完结原理
  • 假诺目的的引用被置为null,垃圾收集器是还是不是会即刻放飞对象占用的内部存款和储蓄器?
  • 污源回收的拔尖做法是怎么着

设计格局

  • 如何是设计格局(Design Patterns)?你用过哪一种设计情势?用在如何场地
  • 您明白怎样商业级设计情势?
  • 什么样设计情势能够追加系统的可扩展性
  • 单例方式
  1. 除去单例格局,你在生产条件中还用过什么设计格局?
  2. 写 Singleton 单例情势
  3. 单例格局的双检锁是如何
  4. 怎么创设线程安全的 Singleton
  5. 什么是类的单例情势
  6. 写出三种单例方式达成
  • 适配器形式
  1. 适配器形式是什么样?什么日期利用
  2. 适配器方式和代理格局在此之前有何两样
  3. 适配器格局和装饰器情势有何样分别
  • 什么样时候利用享元格局
  • 怎么时候利用组合情势
  • 怎么着时候利用访问者格局
  • 怎么着是模板方法情势
  • 请给出1个符合开闭原则的设计情势的例证

卖东西

一家商场有红苹果和青苹果出售。(红苹果5元/个,青苹果4元/个)。

  • 一成不变叁个购进。红苹果跟青苹果各进200个。
  • 仿照二个贩卖。红苹果跟青苹果各买出13个。每卖出三个苹果须要开展总计。

唤醒:3个苹果是四个独立的实体。

类加载器(ClassLoader)

  • Java 类加载器都有如何
  • JVM怎么着加载字节码文件

switch

  • switch 语句中的表明式能够是什么样品种数据
  • switch 是不是能成效在byte 上,是或不是能功用在long
    上,是还是不是能功效在String上
  • while 循环和 do 循环有如何分歧

构造器

  • 组织器链是哪些
  • 创设对象时构造器的调用顺序

HashSet

  • HashSet和TreeSet有怎样分别
  • HashSet 内部是何等做事的
  • WeakHashMap 是怎么工作的?

Set

  • Set 里的因素是无法再一次的,那么用如何艺术来区别重复与否呢?是用 ==
    照旧 equals()? 它们有什么差距?
  • TreeMap:TreeMap
    是行使什么样树达成的?TreeMap、HashMap、LindedHashMap的分别。TreeMap和TreeSet在排序时如何比较成分?Collections工具类中的sort()方法怎么着相比较成分?
  • TreeSet:贰个早已创设好的 TreeSet,怎么形成倒排序。
  • EnumSet 是什么

计量加班费

突击10钟头以下加班费是时薪的1.5倍。加班10钟头或以上,按4元/时算。提醒:(一个月工作26天,一天符合规律干活8钟头)

  • 测算一千月薪,加班9小时的加班费
  • 总结2500月薪,加班11钟头的加班费
  • 算算一千月薪,加班15钟头的加班费

正则

  • 请编写一段匹配IP地址的正则表明式
  • 写出贰个正则表明式来判断一个字符串是还是不是是3个数字

GC收集器有啥样

  • 废品回收器的基本原理是怎么?
  • 串行(serial)收集器和吞吐量(throughput)收集器的界别是何许
  • Serial 与 Parallel GC之间的区别之处
  • CMS 收集器 与 G1 收集器的特性与差异
  • CMS垃圾回收器的行事经过
  • JVM 中三次完整的 GC 流程是什么的? 对象如何升级到老时代
  • 吞吐量优先和响应优先的垃圾堆收集器选用

Current

  • ConcurrentHashMap 和 Hashtable的区别
  • ArrayBlockingQueue, CountDownLatch的用法
  • ConcurrentHashMap的并发度是怎么

CyclicBarrier 和 CountDownLatch有怎么着两样?各自的中间原理和用法是何许

Semaphore的用法

Thread

  • 开发银行一个线程是调用 run() 照旧 start() 方法?start() 和 run()
    方法有何分裂
  • 调用start()方法时会执行run()方法,为何不可能直接调用run()方法
  • sleep() 方法和对象的 wait() 方法都足以让线程暂停实施,它们有如何分化
  • yield方法有何样功效?sleep() 方法和 yield() 方法有如何分别
  • Java 中什么结束三个线程
  • stop() 和 suspend() 方法为啥不推荐使用
  • 怎样在多少个线程间共享数据
  • 如何强制运维一个线程
  • 哪些让正在运作的线程暂停一段时间
  • 怎么着是线程组,为啥在Java中不引进应用
  • 您是怎样调用 wait(方法的)?使用 if 块照旧循环?为啥

数字

  • 认清101-200之内有多少个素数,并出口全部素数
  • 用最有作用的不二法门算出2倍增17也正是多少
  • 有 1 亿个数字,个中有 2 个是重新的,飞速找到它,时空要最优
  • 2 亿个随机生成的冬日,冬辰整数,找出中间大小的值
  • 10 亿个数字里内部找小小的 10 个
  • 1到1亿的自然数,求全数数的拆分后的数字之和,如286
    拆分成贰 、八 、6,如1到11拆分后的数字之和 => 1 + … + 9 + 1 + 0 + 1 +
    1
  • 2个数要是恰巧等于它的因子之和,那个数就称为 “完数
    “。例如6=1+2+3.编程 找出一千以内的富有完数
  • 3个数组中存有的成分都冒出了一遍,唯有1个因素出现了3遍找到那一个因素
  • 一球从100米中度自由落下,每一回落地后反跳回原中度的二分一;再落下,求它在
    第⑨次落地时,共通过多少米?第五次反弹多高?
  • 求100-1000内质数的和
  • 求1到100的和的平平均数量
  • 求s=a+a+aaa+aaaa+aa…a的值,在那之中a是3个数字。例如2+22+222+2222+22222(此时共有多少个数相加),多少个数相加有键盘控制。
    求出1到100的和
  • 算出1到40的质数,放进数组里
  1. 展现放组里的数
  2. 找出第[5]个数
  3. 删除第[9]个数,再展现删除后的第[9]个
  • 有 3n+1 个数字,当中 3n 在那之中是双重的,唯有 1个是不另行的,怎么找出来。
  • 有一组数1.1.2.3.5.8.13.21.34。写出程序随便输入一个数就能交到和前一组数字同规律的头七个数
  • 估测计算钦定数字的阶乘
  • 开发 Fizz Buzz
  • 给定三个包罗 N 个整数的数组,找出丢失的整数
  • 四个排好序的数组,找出两数之和为m的富有组成
  • 将叁个正整数分解质因数。例如:输入90,打字与印刷出90=2*3*3*5。
  • 打字与印刷出装有的 “水仙花数 “,所谓 “女史花数
    “是指一个几人数,其各位数字立方和拾叁分该数本人。例如:153是1个“水仙花数 “,因为153=1的三次方+5的二回方+3的三回方
  • 原地沟通五个变量的值
  • 找出4字节整数的中位数
  • 找到整数的平方根
  • 贯彻斐波那契

关键字

面向对象编制程序(OOP)

  • 表明下多态性(polymorphism),封装性(encapsulation),内聚(cohesion)以及耦合(coupling)
  • 多态的贯彻原理
  • 包装、继承和多态是什么样
  • 对象封装的标准是怎么?
  1. 取得四个类的类对象有怎样措施
  2. 重载(Overload)和重写(Override)的区分。重载的法门是或不是依照再次回到类型举行区分?
  3. 透露几条 Java 中方法重载的特级实践
  • 抽象类
  1. 抽象类和接口的分别
  2. 抽象类中是否能够有静态的main方法
  3. 抽象类是不是可达成(implements)接口
  4. 抽象类是不是可连续具体类(concrete class)
  • 匿名类(Anonymous Inner Class)

匿名内部类是还是不是足以持续其它类?是不是足以完结接口

  • 内部类
  1. 里面类分为二种
  2. 当中类可以引用它的包罗类(外部类)的分子吗
  3. 请说一下 Java 中为何要引入当中类?还有匿名内部类
  • 继承
  1. 后续(Inheritance)与聚集(Aggregation)的界别在哪儿
  2. 一连和烧结之间有哪些差别
  3. 缘何类只可以单继承,接口能够多一而再
  4. 存在八个类,B 继承 A,C 继承 B,能将 B 转换为 C 么?如 C = (C) B
  5. 假设类 a 继承类 b,达成接口c,而类 b 和接口 c
    中定义了同名变量,请问会出现什么难题
  • 接口
  1. 接口是什么
  2. 接口是不是可三番五次接口
  3. 何以要运用接口而不是一直运用具体类?接口有何长处

对象

哪些是 B+树,B-树,列出实际的接纳情形。

队列

  • 队列和栈是怎样,列出它们的分别
  • BlockingQueue是什么
  • 简述 ConcurrentLinkedQueue LinkedBlockingQueue 的用处和分化之处。

ArrayList、Vector、LinkedList的囤积质量和特性

String

StringBuffer

  • ByteBuffer 与 StringBuffer有啥样分别

HashMap

  • HashMap的工作原理是哪些
  • 其间的数据结构是怎么着
  • HashMap 的 table的容积怎么着规定?loadFactor 是何等?
    该体积怎么着变化?那种变更会带来怎样难点?
  • HashMap 完成的数据结构是哪些?怎么样兑现
  • HashMap 和 HashTable、ConcurrentHashMap 的区别
  • HashMap的遍历方式及功效
  • HashMap、LinkedMap、TreeMap的区别
  • 怎么样控制接纳HashMap依然TreeMap
  • 一旦HashMap的轻重超过了负荷因子(load factor)定义的容积,如何做
  • HashMap 是线程安全的啊?并发下使用的 Map
    是怎么,它们中间原理分别是怎样,比如存款和储蓄形式、 hashcode、扩容、
    私下认可容积等

方法

  • 构造器(constructor)是或不是可被重写(override)
  • 艺术能够而且正是 static 又是 synchronized 的啊
  • abstract 的 method是或不是可同时是 static,是或不是可同时是
    native,是还是不是可同时是synchronized
  • Java帮忙哪一种参数字传送递类型
  • 三个目的被视作参数字传送递到一个办法,是值传递依然引用传递
  • 当三个指标被看成参数传递到多少个方法后,此方法可改变那么些目的的质量,并可回到变化后的结果,那么那里毕竟是值传递依然引用传递
  • 我们是不是重载main()方法
  • 万一main方法被声称为private会如何

类型转换

  • 怎样将 bytes 转换为 long 类型
  • 怎么将 byte 转换为 String
  • 哪些将数值型字符转换为数字
  • 大家能将 int 强制转换为 byte 类型的变量吗?借使该值大于 byte
    类型的限定,将会现出什么境况
  • 能在不开始展览强制转换的事态下将2个 double 值赋值给 long 类型的变量吗
  • 类型向下转移是怎么着

Collections

  • 介绍Java中的Collection FrameWork。集合类框架的为主接口有怎么着
  • Collections类是怎么着?Collection 和
    Collections的分别?Collection、Map的落到实处
  • 集合类框架的一级实践有何
  • 干什么 Collection 不从 Cloneable 和 Serializable 接口继承
  • 表露几点 Java 中动用 Collections 的最佳实践?
  • Collections 中 遗留类 (HashTable、Vector) 和 现有类的差别

线程同步

  • 请说出你所知的线程同步的措施
  • synchronized 的规律是怎么着
  • synchronized 和 ReentrantLock 有啥不一样
  • 如何情况下能够选取 volatile 替换 synchronized
  • 有T1,T2,T3多个线程,怎么保障它们按梯次执行?怎样有限支撑T2在T1执行完后履行,T3在T2执行完后执行
  • 同台块内的线程抛出十一分会生出什么样
  • 当叁个线程进入3个对象的 synchronized 方法A
    之后,其余线程是还是不是可进入此目的的 synchronized 方法B
  • 应用 synchronized 修饰静态方法和非静态方法有如何界别
  • 如何从给定集合那里创设八个 synchronized 的集纳

生命周期

  • 有怎样区别的线程生命周期
  • 线程状态,BLOCKED 和 WAITING 有何样界别
  • 画二个线程的生命周期状态图

ThreadLocal 用途是怎么样,原理是怎样,用的时候要专注如何

ThreadPool

  • 线程池是如何?为何要使用它
  • 如何制造3个Java线程池
  • ThreadPool用法与优势
  • 提交职务时,线程池队列已满时会发会生什么
  • newCache 和 newFixed
    有如何分别?简述原理。构造函数的逐一参数的意思是怎么着,比如 coreSize,
    maxsize 等
  • 线程池的落到实处政策
  • 线程池的关闭措施有两种,各自的分别是哪些
  • 线程池中submit() 和 execute()方法有何样分别?

finalize

  • 什么是finalize()方法
  1. finalize()方法何时被调用
  2. 析构函数(finalization)的目标是什么
  3. final 和 finalize 的区别
  4. final
  • final关键字有怎么着用法
  1. final 与 static 关键字能够用于哪个地方?它们的功用是怎么
  2. final, finally, finalize的区别
  3. final、finalize 和 finally 的分歧之处?
  • 是或不是在运作时向 static final 类型的赋值
  1. 运用final关键字修饰三个变量时,是援引不可能变,依旧引用的对象不能够变
  2. 叁个类被声称为final类型,表示了哪些看头
  3. throws, throw, try, catch, finally分别表示怎么样意义

Java 有二种修饰符?分别用来修饰什么

volatile

  • volatile 修饰符的有过哪些实践
  • volatile 变量是何等?volatile 变量和 atomic 变量有怎么着两样
  • volatile 类型变量提供什么保证?能使得贰个非原子操作变成原子操作吗
  • 能创建 volatile 数组吗?

transient变量有怎么样特点

super哪天使用

public static void 写成 static public void会怎样

证澳优(Ausnutria Hyproca)(Beingmate)下public static void main(String
args[])那段表明里每一个重要字的功能

请说出作用域public, private, protected, 以及不写时的差距

sizeof 是Java 的首要性字呢

static

  • static class 与 non static class的区别
  • static
    关键字是什么意思?Java中是或不是足以覆盖(override)三个private也许是static的主意
  • 静态类型有哪些特点
  • main() 方法为啥必须是静态的?能否宣称 main() 方法为非静态
  • 是或不是能够从一个静态(static)方法内部产生对非静态(non-static)方法的调用
  • 静态变量在什么样时候加载?编写翻译期依然运转期?静态代码块加载的火候呢
  • 分子方法是不是能够访问静态变量?为啥静态方法不能够访问成员变量

Map

  • Map, Set, List, Queue, Stack
  • Map 接口提供了什么样不一样的聚合视图
  • 干什么 Map 接口不一连 Collection 接口

内部存款和储蓄器管理

  • JVM内部存款和储蓄器分哪多少个区,每种区的效果是怎么样
  • 三个对象从创建到销毁都以怎么在那么些部分里存活和更换的
  • 解释内部存款和储蓄器中的栈(stack)、堆(heap)和方法区(method area)的用法
  • JVM中哪些参数是用来支配线程的栈堆栈小
  • 简述内部存款和储蓄器分配与回收策略
  • 简述重排序,内部存款和储蓄器屏障,happen-before,主内部存款和储蓄器,工作内部存款和储蓄器
  • Java中留存内部存款和储蓄器泄漏难点啊?请举例表明
  • 简述 Java 中国总计机软件与技术服务总公司引述(SoftReferenc)、弱引用(WeakReference)和虚引用
  • 内部存储器映射缓存区是怎么

jstack,jstat,jmap,jconsole怎么用

32 位 JVM 和 64 位 JVM 的最大堆内部存款和储蓄器分别是多数?32 位和 64 位的 JVM,int
类型变量的长度是大多数?

什么样通过 Java 程序来判断 JVM 是 32 位 照旧 64 位

JVM本人会维护缓存吗?是否在堆中开展对象分配,操作系统的堆可能JVM自身管理堆

什么样动静下会时有发生栈内部存储器溢出

二老委派模型是如何

字符串

  • 写1个方法,入三个文书名和1个字符串,计算那么些字符串在这一个文件中冒出的次数。
  • 写3个先后找出富有字符串的组合,并检查它们是还是不是是回文串
  • 写贰个字符串反转函数,输入abcde转换到edcba代码
  • 小游戏,倒转句子中的单词
  • 将GB2312编码的字符串转换为ISO-8859-1编码的字符串
  • 请写一段代码来总括给定文本内字符“A”的个数。分别用迭代和递归三种方法
  • 编写制定3个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串。
    可是要确认保证汉字不被截半个,如“作者ABC”4,应该截为“作者AB”,输入“笔者ABC汉DEF”,6,应该出口为“笔者ABC”而不是“作者ABC+汉的半个”
  • 给定 2 个饱含单词列表(每行贰个)的文书,编制程体系出交集
  • 打字与印刷出贰个字符串的兼具排列
  • 将三个键盘输入的数字转化成粤语输出(例如:输入1234567,输出:一百二拾300005000五百六拾七)
  • 在Web应用开发进度中日常遇到输出某种编码的字符,如从 GBK 到
    ISO8859-1等,怎么着输出一个某种编码的字符串

IO

  • File
  1. File类型中定义了怎么着形式来创立一级目录

File类型中定义了如何点子来判断三个文本是还是不是留存

  1. 为了抓实读写品质,能够应用什么流
  2. Java中有几体系型的流
  3. JDK 为每种类型的流提供了一部分抽象类以供继承,分别是哪些类
  4. 对文本文件操成效什么I/O流
  5. 对各样基本数据类型和String类型的读写,采Nash么流
  6. 能钦赐字符编码的 I/O 流类型是怎样
  • 序列化
  1. 如何是体系化?如何贯彻 Java 体系化及注意事项
  2. Serializable 与 Externalizable 的区别
  • Socket
  1. socket 选项 TCP NO DELAY 是指什么
  2. Socket 工作在 TCP/IP 协议栈是哪一层
  3. TCP、UDP 不同及 Java 完成格局
  • 说几点 IO 的一级实践
  • 一向缓冲区与非直接缓冲器有什么样界别?
  • 怎么读写 ByteBuffer?ByteBuffer 中的字节序是什么
  • 当用System.in.read(buffer)从键盘输入一行n个字符后,存款和储蓄在缓冲区buffer中的字节数是有点
  • 怎么着运用扫描器类(Scanner Class)令牌化

Hash算法

  • Hashcode 的作用
  • 简述一致性 Hash 算法
  • 有没有或者 八个不等于的对象有同样的 hashcode?当多少个对象 hashcode
    相同怎么做?怎么样获取值对象
  • 为什么在重写 equals 方法的时候须求重写 hashCode 方法?equals与
    hashCode 的异同点在哪个地方
  • a.hashCode() 有如何用?与 a.equals(b) 有如何关联
  • hashCode() 和 equals() 方法的显要展示在什么样地点
  • Object:Object有何公用方法?Object类hashcode,equals 设计条件?
    sun为啥这么设计?Object类的概述
  • 怎么着在父类中为子类自动完成有着的 hashcode 和 equals
    达成?这么做有何优劣。
  • 能够在 hashcode() 中使用随机数字呢?

泛型

  • 泛型的留存是用来缓解哪些难题
  • 泛型的常用特点
  • List能不可能转为List

网络

  • 用Java Socket编制程序,读服务器多少个字符,再写入当地呈现

比较

  • 在可比对象时,”==” 运算符和 equals 运算有什么分化
  • 万一要重写一个目的的equals方法,还要考虑怎么着
  • 两个对象值相同(x.equals(y) == true),但却可有不一致的hash
    code,那句话对不对

线程

  • 8设计四个线程,在那之中多个线程每便对j增添1,此外三个线程对j每一趟缩小1。写出程序。
  • 用Java写八个二十十二线程程序,如写三个线程,1个加1,一个对1个变量减一,输出
  • wait-notify 写一段代码来化解劳动者-消费者难题

拷贝(clone)

  • 怎样促成目的克隆
  • 深拷贝和浅拷贝差别
  • 深拷贝和浅拷贝如何贯彻激活机制
  • 写clone()方法时,平时都有一行代码,是哪些

JVM

finally

  • finally关键词在充足处理中怎样行使
  1. 若是推行finally代码块在此之前方法再次回到了结果,只怕JVM退出了,finally块中的代码还会实行吗
  2. try里有return,finally还推行么?那么紧跟在那些try后的finally
    {}里的code会不会被执行,曾几何时被实施,在return前照旧后
  3. 在怎样境况下,finally语句不会履行

throw 和 throws 有怎么着分别?

OOM你遇上过什么样境况?你是怎么解决的?

SOF你遇见过怎么着情状?

既是大家能够用RuntimeException来处理错误,那么您认为为何Java中还留存检查型很是

当自个儿创造充足类的时候理应注意什么

导致空指针极度的原故

尤其处理 handle or declare 原则应该什么晓得

怎么采纳 JUnit 来测试二个措施的那些

catch块里别不写代码有怎么着难点

您曾经自定义完结过11分吗?怎么写的

什么是 异常链

在try块中能够抛出至极吗

绽开难题

  • 用一句话回顾 Web 编制程序的特点
  • 谷歌(Google)是什么在一秒内把搜索结果返回给用户
  • 哪一类重视注入格局你提议选取,构造器注入,还是 Setter方法注入
  • 树(二叉或其余)形成不少屡见不鲜数据结构的底子。请描述一些如此的数据结构以及哪天能够使用它们
  • 某一项职能怎么样计划
  • 线上系统突然变得十分缓慢,你怎么着寻找难题
  • 何以的花色不适合用框架
  • 新浪天涯论坛是如何落到实处把博客园推给订阅者
  • 简单的讲介绍下从浏览器输入 U安德拉L 早先到收获到请求界面之后 Java Web
    应用中发生了什么
  • 请您谈谈SSH整合
  • 高并发下,怎么着成功安全的改动同一行数据
  • 12306网站的定票系统怎么样达成,怎样保管不会票不被超卖
  • 网站品质优化如何优化的
  • 聊了下一度踏足统一筹划的服务器架设
  • 请想想1个方案,实现分布式环境下的 countDownLatch
  • 请考虑三个方案,设计3个得以控制缓存总体大小的机关适应的地头缓存
  • 在您的职业生涯中,算得上最辛勤的技能挑衅是什么
  • 怎样写一篇规划文书档案,目录是什么样
  • 大写的O是怎样?举多少个例证
  • 编制程序中友好都怎么考虑部分安排标准的,比如开闭原则,以及在工作中的采取
  • 解释一下网络选用的形式及其特色
  • 安排三个在线文书档案系统,文书档案能够被编辑,怎么样防患两人同时对同样份文书档案实行编写制定更新
  • 揭露数据连接池的做事机制是什么样
  • 怎么获取三个文书中单词现身的参天频率
  • 叙述一下你最常用的编制程序风格
  • 借使有机会再度设计你们的成品,你会如何是好
  • 怎么着搭建1个高可用系统
  • 怎样运行时不需输入用户名与密码
  • 如何在基于Java的Web项目中落实公文上传和下载
  • 什么样落成一个秒杀系统,保险只有3人用户能买到某件商品。
  • 什么落到实处负载均衡,有哪些算法能够实现
  • 何以筹划1个购物车?想想Tmall的购物车哪些兑现的
  • 怎么着统一筹划一套高产出支付方案,架构如何安插
  • 怎样规划建立和维系 100w 的长连接
  • 哪些制止浏览器缓存。
  • 如何制止缓存雪崩
  • 假设AB几个体系互相重视,怎么样铲除依
  • 设若有人恶意创设违法连接,怎么消除
  • 假诺有几十亿的白名单,每日白天需求高并发查询,上午亟需更新二次,咋样筹划那些效果
  • 万一系统要选取超大整数(超越long长度范围),请您设计一个数据结构来储存那种超大型数字以及规划一种算法来贯彻超大整数加法运算)
  • 如果要设计二个图形系统,请你陈设中心的图样元件(Point,Line,Rectangle,Triangle)的大约达成
  • 若是让你完成一个产出安全的链表,你会怎么做
  • 应用服务器与WEB
    服务器的区分?应用服务器怎么监督品质,各个形式的差别?你选用过的应用服务器优化技术有怎么样
  • 大型网站在架设上应有考虑怎么难题
  • 有没有处理过线上问题?现身内部存储器走漏,CPU利用率标高,应用无响应时怎么处理的
  • 日前看怎么样书,印象最深入的是怎么
  • 叙述下常用的 重构 技巧
  • 你使用什么版本管理工科具?分支(Branch)与标签(Tag)之间的分别在何地
  • 你有询问过存在什么反方式(Anti-Patterns)吗
  • 你用过的网站前端优化的技能有何样
  • 哪些分析Thread dump
  • 您怎么晓得AOP中的连接点(Joinpoint)、切点(Pointcut)、增强(Advice)、引导介绍(Introduction)、织入(Weaving)、切面(Aspect)这个概念
  • 你是什么处理内部存款和储蓄器败露或然栈溢出难点的
  • 你们线上利用的 JVM 参数有怎样
  • 怎么进步系统的QPS和吞吐量

数组

  • 何以衡量是采纳冬季的数组依旧稳步的数组
  • 怎么判断数组是 null 照旧为空
  • 怎么打字与印刷数组? 怎样打字与印刷数组中的重复成分
  • Array 和 ArrayList有哪些界别?哪一天应该运用Array而不是ArrayList
  • 数组和链表数据结构描述,各自的年月复杂度
  • 数组有没有length()这么些点子? String有没有length()这么些主意

工具类

  • 日历
  1. Calendar Class的用途
  2. 哪些在Java中获得日历类的实例
  3. 诠释一些日历类中的主要方法
  4. 格雷戈orianCalendar 类是怎样
  5. SimpleTimeZone 类是哪些
  6. Locale类是怎么样
  7. 哪些格式化日期对象
  8. 怎么着添加小时(hour)到1个日子对象(Date Objects)
  9. 什么将字符串 YYYYMMDD 转换为日期
  • Math

Math.round()什么作用?Math.round(11.5)
等于多少?Math.round(-11.5)等于多少?

  • XML
  1. XML文书档案定义有三种样式?它们之间有啥本质不同?解析XML文书档案有哪两种格局?DOM
    和 SAX 解析器有啥样不一致?
  2. Java解析XML的方式
  3. 用 jdom 解析 xml 文件时怎么着消除普通话难题?怎么着分析
  4. 你在品种中用到了 XML 技术的哪些方面?怎么样兑现

算法

  • 53人围坐一圈,当数到三照旧三的翻番出圈,问剩下的人是何人,原来的职责是稍微
  • 落到实处三个电梯模拟器用
  • 写贰个冒泡排序
  • 写2个扣除查找
  • 随意产生十多个不能够重新的字符并排序
  • 写3个函数,传入 2 个不变的平头数组,重回一个平稳的平头数组
  • 写一段代码在遍历 ArrayList 时移除一个成分
  • 古典难点:有一对兔子,从诞生后第一个月起各样月都生一对兔子,小兔子长到第5个月后各样月又生一对兔子,假使兔子都不死,问种种月的兔子总数为多少
  • Josephine环游戏

日子提取

有那般一个时刻字符串:二零零六-8-8 20:08:08 ,
请编写能够同盟它的正则表达式,并编辑Java代码将日期前边的时分秒提取出来,即:20:08:08

反射

  • 反射机制提供了怎么样效益?
  • 反射是怎样贯彻的
  • 何地用到反射机制
  • 反射中 Class.forName 和 ClassLoader 区别
  • 反射创制类实例的三种方法是何许
  • 如何通过反射调用对象的办法
  • 怎么样通过反射获取和安装对象私有字段的值
  • 反射机制的优缺点

数据库

  • 写一段 JDBC 连Oracle的次第,并落到实处数据查询

GC策略

  • 举个实在的场合,选择三个GC策略
  • JVM的世代代中会爆发垃圾回收啊

异常

操作符

  • &操作符和&&操作符有哪些分化?
  • a = a + b 与 a += b 的区别?
  • 逻辑操作符 (&,|,^)与标准操作符(&&,||)的差异
  • 3*0.1 == 0.3 将会回到什么?true 依旧 false?
  • float f=3.4; 是还是不是科学?
  • short s1 = 1; s1 = s1 + 1;有何样错?

哪些对一组对象实行排序

征集格局

  • 标记清除、标记整理、复制算法的原理与特点?分别用在什么样地点
  • 借使让您优化收集形式,有何样思路

GC

线程调度

  • Java中用到的线程调度算法是怎么
  • 什么是二十八线程中的上下文切换
  • 您对线程优先级的领悟是什么
  • 怎么样是线程调度器 (Thread Scheduler) 和岁月分片 (Time Slicing)

参数

  • 说说您知道的三种重大的jvm 参数
  • -XX:+UseCompressedOops 有如何效益

基本功项目(Primitives)

  • 基本功项目(Primitives)与封装类型(Wrappers)的分别在哪儿
  • 简述九种主干数据类型的大小,以及她们的封装类
  • int 和 Integer 哪个会占用更加多的内部存款和储蓄器? int 和 Integer
    有怎么着不相同?parseInt()函数在怎样时候使用到
  • float和double的暗中同意值是稍微
  • 哪些去小数四舍五入保留小数点后两位
  • char 型变量中能否存贮多少个华语汉字,为啥

JDBC

  • 因而 JDBC 连接数据库有哪两种格局
  • 阐释 JDBC 操作数据库的主导步骤
  • JDBC 中如何实行事务处理
  • 什么是 JdbcTemplate
  • 什么是 DAO 模块
  • 利用 JDBC
    操作数据库时,怎么着升级读取数据的质量?如何升级立异数据的性质
  • 列出 5 个应该根据的 JDBC 最佳实践

不可变对象

  • 怎样是不行变象(immutable object)
  • 为何 Java 中的 String 是不可变的(Immutable)
  • 哪些营造不可变的类协会?关键点在什么地方
  • 能创制贰个含有可变对象的不可变对象呢

LinkedHashMap

  • LinkedHashMap 和 PriorityQueue 的区分是什么

知识面

  • 诠释什么是 MESI 协议(缓存一致性)
  • 谈谈 reactor 模型
  • Java 9 带来了什么样的新效用
  • Java 与 C++ 相比,C++ 或 Java 中的相当处理体制的简便原理和平运动用
  • 简简单单讲讲 汤姆cat 结构,以及其类加载器流程
  • 虚拟内部存款和储蓄器是如何
  • 阐述下 SOLID 原则
  • 请简要讲一下您对 测试驱动开发 (TDD)的认识
  • CDN完毕原理
  • Maven 和 ANT 有如何差异
  • UML中有何常用的图
  • Linux
  1. Linux 下 IO 模型有两种,各自的含义是如何。
  2. Linux 系统下你关切过什么样基本参数,说说您了然的
  3. Linux 下用一行命令查看文件的结尾五行
  4. 毕生用到怎么 Linux 命令
  5. 用一行命令输出正在运作的 Java 进程
  6. 使用什么命令来明确是不是有 汤姆cat 实例运营在机器上
  • 什么是 N+1 难题
  • 什么是 paxos 算法
  • 如何是 restful,讲讲你了解的 restful
  • 什么是 zab 协议
  • 什么样是小圈子模型(domain model)?贫血模型(anaemic domain model)
    和充血模型(rich domain model)有怎样界别
  • 什么是小圈子驱动开发(Domain Driven Development)
  • 介绍一下摸底的 Java 领域的 Web Service 框架
  • Web Server、Web Container 与 Application Server 的区分是何许
  • 微服务(MicroServices)与巨石型应用(Monolithic
    Applications)之间的区分在何地
  • 叙述 Cookie 和 Session 的功力,分歧和各自的选拔范围,Session工作规律
  • 你常用的到处集成(Continuous Integration)、静态代码分析(Static
    Code Analysis)工具有怎么着
  • 简述下数据库正则化(Normalizations)
  • KISS,D揽胜极光Y,YAGNI 等标准化是怎么意思
  • 分布式事务的规律,优缺点,怎么着运用分布式事务?
  • 布式集群下何以成功唯一连串号
  • 网络
  1. HTTPS 的加密方法是怎么样,讲讲整个加密解密流程
  2. HTTPS和HTTP的区别
  3. HTTP连接池实现原理
  4. HTTP集群方案
  5. Nginx、lighttpd、Apache三大主流 Web服务器的分别
  6. java学习群669823128
  • 是或不是看过框架的部分代码
  • 持久层设计要考虑的难点有哪些?你用过的持久层框架有何样
  • 数值进步是什么
  • 您能解释一下里氏替换原则吗
  • 你是如何测试三个使用的?知道哪些测试框架
  • 传输层常见编程协议有哪些?并说出个别的特点

日期

  • 算算五个日子之间的差异
  • java学习群669823128

基本概念

  • java学习群669823128

  • 操作系统中 heap 和 stack 的界别
  • 何以是基于注解的断面完毕
  • 什么样是 对象/关系 映射集成模块
  • 怎么是 Java 的反光机制
  • 什么是 ACID
  • BS与CS的联系与差异
  • Cookie 和 Session的区别
  • fail-fast 与 fail-safe 机制有啥样分别
  • get 和 post请求的界别
  • Interface 与 abstract 类的分裂
  • IOC的优点是哪些
  • IO 和 NIO的区别,NIO优点
  • Java 8 / Java 7 为我们提供了怎么着新功能
  • 什么样是竞态条件? 举个例子说明。
  • JRE、JDK、JVM 及 JIT 之间有哪些两样
  • MVC的一一部分都有那些技术来兑现?咋样兑现?
  • RPC 通信和 RMI 区别
  • 什么是 Web Service(Web服务)
  • JSWDL开发包的介绍。JAXP、JAXM的诠释。SOAP、UDDI,WSDL解释。
  • WEB容器首要有何职能? 并请列出部分宽广的WEB容器名字。
  • 多个”.java”源文件中是还是不是能够分包八个类(不是中间类)?有哪些范围
  • 简短说说您打探的类加载器。是或不是贯彻过类加载器
  • 解释一下什么叫AOP(面向切面编制程序)
  • 请简述 Servlet 的生命周期及其相关的艺术
  • 请简述一下 Ajax 的原理及落实步骤
  • 简短描述Struts的第1功效
  • 什么是 N 层架构
  • 怎么是CORBA?用途是怎么样
  • 什么是Java虚拟机?为什么Java被称作是“平台无关的编制程序语言”
  • 什么样是正则表明式?用途是怎么着?哪个包使用正则表明式来达成格局匹配
  • 怎么是懒加载(Lazy Loading)
  • 什么是尾递归,为何要求尾递归
  • 哪些是决定反转(Inversion of Control)与依靠注入(Dependency
    Injection)

基本概念

  • Error 和 Exception有怎么样界别
  1. UnsupportedOperationException是什么
  2. NullPointerException 和 ArrayIndexOutOfBoundException
    之间有何相同之处
  • 哪些是受检查的优异,什么是运作时尤其
  • 运作时10分与一般格外有什么异同
  • 简述1个您最常见到的runtime exception(运营时相当)

接口

  • Comparator 与 Comparable 接口是干吗的?列出它们的界别

基本概念

  • 怎么是线程
  • 八线程的独到之处
  • 二十多线程的三种实现情势
  1. 用 Runnable 还是 Thread
  • 哪些是线程安全
  1. Vector, SimpleDateFormat 是线程安全类吗
  2. 怎样 Java 原型不是线程安全的
  3. 怎么样集合类是线程安全的
  • 二十八线程中的忙循环是怎么样
  • 怎么样创造一个线程
  • 编纂二十多线程程序有二种达成形式
  • 怎么样是线程局地变量
  • 线程和经过有怎么着界别?进度间怎样报导,线程间如何广播发表
  • 怎么是二十多线程环境下的伪共享(false sharing)
  • 一道和异步有啥异同,在怎么样状态下分别使用他们?举例表达

List

  • List, Set, Map多个接口,存取成分时各有怎么着特色
  • List, Set, Map 是不是继续自 Collection 接口
  • 遍历多个 List 有怎么样分裂的法门
  • LinkedList
  1. LinkedList 是单向链表还是双向链表
  2. LinkedList 与 ArrayList 有怎么着分裂
  3. 叙述下 Java
    中集聚(Collections),接口(Interfaces),完结(Implementations)的概念。LinkedList
    与 ArrayList 的分别是什么?
  4. 插入数据时,ArrayList, LinkedList, Vector哪个人速度较快?
  • ArrayList
  1. ArrayList 和 HashMap 的暗许大小是多数
  2. ArrayList 和 LinkedList 的分别,哪一天用 ArrayList?
  3. ArrayList 和 Set 的区别?
  4. ArrayList, LinkedList, Vector的区别
  5. ArrayList是如何完结的,ArrayList 和 LinkedList 的差异
  6. ArrayList怎么着达成扩大体量
  7. Array 和 ArrayList 有啥区别?什么日期更符合用Array
  8. 说出ArraList,Vector, LinkedList的贮存质量和特征

  • Java Concurrency API 中 的 Lock 接口是哪些?相比同步它有怎么着优势
  • Ajax,Lock 与 Synchronized 的差异?Lock 接口比 synchronized 块的优势是怎么着
  • ReadWriteLock是什么?
  • 锁机制有怎么着用
  • 怎么着是乐观锁(Optimistic Locking)?如何落到实处乐观锁?怎样幸免ABA难题
  • 诠释以下名词:重排序,自旋锁,偏向锁,轻量级锁,可重入锁,公平锁,非公平锁,乐观锁,悲观锁
  • 怎么时候理应利用可重入锁
  • 简述锁的等级方法锁、对象锁、类锁
  • Java中活锁和死锁有如何分化?
  • 怎么着是死锁(Deadlock)?导致线程死锁的原故?怎么样保障 N 个线程能够访问
    N 个能源同时又不造成死锁
  • 死锁与活锁的分歧,死锁与饥饿的分别
  • 怎么检查和测试1个线程是或不是持有锁
  • 怎么兑现分布式锁
  • 有哪些无锁数据结构,他们落到实处的原理是什么
  • 读写锁能够用于什么应用场景

Executors类是如何? Executor和Executors的区分

怎样是Java线程转储(Thread Dump),如何赢得它

怎样在Java中获取线程堆栈

透露 3 条在 Java 中采纳线程的特级实践

在线程中你怎么处理不可捕捉非凡

骨子里项目中动用十二线程举例。你在十二线程环境中遇见的大面积的题材是如何?你是怎么解决它的

请说出与线程同步以及线程调度相关的点子

次第中有二个 socket,须求多少个线程来拍卖

一经有贰个第贰方接口,有好多个线程去调用获取数据,现在规定每分钟最多有
10 个线程同时调用它,如何做到

哪些在 Windows 和 Linux 上查找哪个线程使用的 CPU 时间最长

怎么保管 main() 方法所在的线程是 Java 程序最终竣事的线程

足够八个线程(只怕是例外机器),相互之间要求静观其变协调才能一气浑成某种工作,问怎么规划那种和谐方案

您供给贯彻1个便捷的缓存,它同意八个用户读,但只允许一个用户写,以此来维持它的完整性,你会如何去贯彻它

相关文章