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