摘要:
什么是Java的反射? 在运行状态中,对于任意一个类,都能够知道这个类的属性和方法; 反射的作用? 如果给定一个类名,就可以通过反射机制来获取类的所有信息,也可以动态的创建对象和编译; 反射的原理? Java语言在编译之后会生成一个class文件,反射就是通过字节码文件找到其类中的方法和属性等;反射 阅读全文
摘要:
以下情况会触发类的初始化: 以下情况不会触发类的初始化: 阅读全文
摘要:
“==”: ==是运算符,用来比较两个值、两个对象的内存地址是否相等; “equals()”: equals是Object类的方法,默认情况下比较两个对象是否是同一个对象,内部实现是通过“==”来实现的。 如果想比较两个对象的其他内容,则可以通过重写equals方法, 例如:String类就重写了e 阅读全文
摘要:
reactor是什么? 具体可参考:https://my.oschina.net/u/1859679/blog/1844109 阅读全文
摘要:
红黑树原理: 阅读全文
摘要:
Hashmap和Hashtable 都不是有序的。 TreeMap和LinkedHashmap都是有序的。(TreeMap默认是key升序,LinkedHashmap默认是数据插入顺序) TreeMap是基于比较器Comparator来实现有序的。 LinkedHashmap是基于链表来实现数据插入 阅读全文
摘要:
继承:他是is-a的关系,指一个类继承另外一个类的功能 例如:public class A extends B { } 聚合:他是has-a 例如:public class A{ List<B> b} A可以有b 组合:他是contans-a(强聚合) public class A { B b} A 阅读全文
摘要:
先看下类图: 相同点: 都实现了List接口和Collection; 不同点: 1、ArrayList是基于数组实现的;LinkedList是基于链表实现的; 2、ArrayList随机查询速度快;LinkedList插入和删除速度快; 原理解析: ArrayList是基于数组实现的,他的特性就是可 阅读全文
摘要:
JSR-133使用happens-before的概念来指定两个操作之间的执行顺序。由于这两个操作可以在一个线程内,也可以在不同线程之间。因此,JMM可以通过happens-before关系向程序员提供跨线程的内存可见性保证(如果A线程的写操作a与B线程的读操作b之间存在happens-before关 阅读全文