java基础面试题系列
ks_zhe
Thread.sleep();
展开
-
HashMap的十个经典问题
整理了一些hashmap的一些经典问题,和大家分享一下…1、谈谈HashMap的一些特性* HashMap存储键值对实现快速存取,key值不可重复,但是允许为null【放在table[0]的位置】,如果key值重复则覆盖* HashMap线程不安全,非同步* 底层是hash表,不能保证有序2、HashMap的结构简介java8之前采用数组(table)【Node<K,V>[]】 + 链表(Node节点组成的链表)的结构java8之后采取数组 + 链表 + 红黑树的结构(单条链上数原创 2020-08-19 15:23:53 · 638 阅读 · 1 评论 -
java基础面试题系列(101-112)[完结撒花]
20200718 by 1z请说明sleep() 和 wait()有什么区别?1、sleep() 是Thread的成员方法而Wait()是Object的成员方法2、sleep()没有释放锁,因此在sleep结束后依旧是原线程执行,而wait()释放了锁,在notify(notifyAll)后其他线程可以使用同步控制块或者方法。3、wait,notify,notifyAll只能在同步控制块方法 or 同步控制块中使用,而sleep可以在任何地方使用。请你说明一下在监视器(Monitor)内部原创 2020-07-18 09:48:09 · 379 阅读 · 0 评论 -
java基础面试题系列(91-100)
20200717 by 1z91、举例说明同步和异步同步: 发送消息之后需要等待反馈,然后再开始下一次发送信息。异步: 发送一个请求,不等待返回,随时可以再次发送下一个请求。同步和异步的区别: 同步需要等待,异步不需要等待。例子;电话是一个同步的例子,需要等待接收者接通电话才可以进行下一步行为广播是一个异步的例子,不需要等待接收者的反馈信息,可以连续发送信息请介绍一下线程同步 和 线程调度的相关方法(1)wait():使一个线程处于等待(阻塞)状态,并且释放所持有的对象的锁;原创 2020-07-17 09:58:50 · 334 阅读 · 0 评论 -
java基础面试题系列(81-90)
请你说明ConcurrentHashMap有什么优势,1.7和1.8有什么区别参考链接: https://www.cnblogs.com/like-minded/p/6805301.html请你说明一下TreeMap的底层结构?TreeMap的底层的数据结构是红黑树,红黑树的特性如下1.根节点是黑色的。2.每个节点都只能是红色 or 黑色。3.每个叶节点(NIL节点,空节点)都是黑色的。4.如果一个节点是红色的,则它两个子节点都是黑色的,一条路径上不能出现两个连续红节点5.从任一节.原创 2020-07-15 10:13:12 · 327 阅读 · 0 评论 -
java基础面试题系列(71 - 80)
20200714 by 1z请你说明HashMap 和 HashTable的区别1.是否同步 *HasMap是同步的,HashTable是非同步的2.继承体系 *HashTable继承自Dictionary,HashMap继承自AbstractMap类,HashMap允许使用null值(key value都行)3.内部是否容纳null值 *HashTable不允许key or value为null,HashMap允许使用null值(key中只能有一个null值,value中可以有多原创 2020-07-14 10:02:13 · 335 阅读 · 0 评论 -
java基础面试题系列(61-70)
20200713 by 1z请解释一下为什么String不可变?1.String不可变的成因public final class String implements java.io.Serializable, Comparable<String>, CharSequence { @Stable private final byte[] value; //... }由于在String,类自身被final修饰,而且内部的字节数组 byte[] value 同样原创 2020-07-13 14:47:47 · 265 阅读 · 0 评论 -
java基础面试题系列(51 - 60)
20200711请解释一下extends 和 super泛型限定符?<? extends T>和<? super T>是Java泛型中的“通配符(Wildcards)”和“边界(Bounds)”的概念。 <? extends T>:是指 “上界通配符(Upper Bounds Wildcards)” 表示使用的类型是T的子类(以T为顶)<? super T>:是指 “下界通配符(Lower Bounds Wildcards)” 表示使用的类型是T原创 2020-07-11 16:06:21 · 445 阅读 · 0 评论 -
java基础面试题系列(41 - 50)
20200710 by 1z请你说说Static Nested Class 和 Inner Class的不同内部类 按可以分为两大种1. 静态内部类(Static Nested Class)2. 非静态内部类 普通内部类(方法之外) 局部内部类(方法中) 匿名内部类(接口的实现类) 3. 几种内部类的区别见37题题解普通内部类1. 在一个类里面作为类的一个字段直接定义即可2. 此时普通的内部类对象是依赖于外部类对象而存在3. !内部类对象可以访问外部类中所有访问权限的字段,原创 2020-07-10 15:28:40 · 272 阅读 · 0 评论 -
java基础面试题系列(31 - 40)
20200709 by 1z请说明java中的方法重写(Overriding)和方法重载(overloading)是什么意思?方法的重写* 方法的重写是针对于父子关系而言的,表示的是子对象去重写(覆盖)父对象的方法,重写的规律如下(两同两小一大原则)· * 1. 保证方法的参数表列一致,方法名一致 * 2. 保证子类的返回类型 <= 父类方法的返回类型 * 3. 保证子类的抛出异常类型 <= 父类方法的抛出异常类型 * 4. 保证子类方法的权限修饰符 >= 父类方原创 2020-07-09 16:04:28 · 321 阅读 · 0 评论 -
java基础面试题系列(21 -30)
20200708 by 1z请你解释Object如果不重写hashcode()的话,hashcode()是如何计算出来的Object的hashcode方法是本地方法,是使用c语言或者c++语言实现的,通常是根据“某种策略而形成的..”hashcode在java层面的底层方法 : public native int hashCode();对于HashCode的源码分析:1. java6、7默认是返回随机数2. java8默认是通过和当前线程有关的一个随机数+三个确定值, 运用Marsagli原创 2020-07-08 16:10:37 · 380 阅读 · 0 评论 -
java基础面试题系列(11 - 20)
20200707 by 1z请说明String是最基本的数据类型吗String不是基本的数据类型,同时介绍一下基本数据类型的一些信息类型存储字节数取值范围和备注信息byte1字节-128 - 127short2字节-32768 -32767int4字节-2的31次方 到 2的31次方-1long8字节-2 的 63次方 到 2的63次方 - 1float4字节float类型的数值有一个后缀F(如 1.23F)doubl原创 2020-07-07 15:35:48 · 624 阅读 · 0 评论 -
java基础题系列(1 - 10)
说在前面:马上就要到秋招了,也从网上获取了一些java的基础面试题(总共有100多道),为了保持状态,每天回顾10道左右,如果result有不对的地方,希望各位大佬可以指正,谢谢。20200706 by 1z请你说说java和php的区别1:java是半编译语言,php是脚本语言2:java使用封装继承,最小的单位是类,php作为脚本,最小单位就是语句,用两者输出hello world就知道了,所以java语法比较严格,而php很灵活3:java是自动内存分配回收,php是一次创建一次销原创 2020-07-06 16:21:43 · 1256 阅读 · 0 评论