Java 堆(Heap) 栈(Stack)

栈(stack)与堆(heap)都是Java用来在Ram中存放数据的地方。与C++不同的是,Java自动管理栈和堆,程序员不能直接地设置栈或堆。
两者的区别比较:

  • : 存取速度比堆要快,仅次于直接位于CPU中的寄存器。但缺点是存在栈中的数据大小与生存期必须是确定的,缺乏灵活性。另外,栈数据还是可以共享的。
  • : 可以动态地分配内存大小,生存期也不必事先告诉编译器,Java的垃圾收集器会自动收走这些不再使用的数据。但缺点是由于要在运行时动态分配内存,存取速度较慢。

RxJava框架介绍

RxJava 到底是什么?使用 RxJava 到底有什么好处呢?其实 RxJavaReactiveX 使用 Java 语言实现的版本。
什么是 ReactiveX 呢?简单的说,ReactiveX 就是 观察者模式+迭代器模式+函数式编程三种模式的结合体。