您的位置:首页 > 编程语言 > Java开发

RxJava与面向对象Java的对比和基础数据构造

2017-06-29 23:04 344 查看
面向对象编程的Java,类(或者类实例)是基本单位。所有的数据和方法都包含在类中,通过类(或者类实例)使用。

面向对象编程数据的主要来源有两个:

** 一个是类的属性,

** 另一个是方法的参数。

类的属性是内部的,包含状态的。

参数是外部的,可以影响类内部属性的状态,简单的说就是影响属性值的变化。

类中的属性是随着类实例的创建而产生并存在的。不依赖于外部的参数,尽管属性可能没有值。

操作数据都是类中的方法。

=====================================

RxJava 中的数据由 Observable 提供。

在 RxJava 运行过程中,所有的 Java 提供的数据类型必须转换成 Observable ,或者说必须使用 Observable 封装起来。

RxJava 是数据驱动的,最原始的驱动数据可以称之为 源数据(source data或者 source obserable)。

RxJava的数据也可以分为两类:

一类是Source Observable,也就是驱动业务启动的最原始的数据。

另一类是逻辑处理过程中,作为参数或者返回值在业务逻辑中流转的、通过操作映射出来的新 Observable;

RxJava 中的 Observable 只提供数据,或者说源数据。

数据的使用者被作为参数传到 Observable 内部 ,在 Observable 内部通过某种机制将 数据 提供给数据使用者使用。在数据使用者使用这些数据的时候,组织并驱动业务逻辑和业务流程的实现。

数据的使用者称为 Observer 。

Observer 在使用数据的时候,可以对源数据(Source Observable)进行处理,处理的结果(如果需要)则必须生成新的 Observable 对象(也就是说 Observable 的数据是不可变的,就像 Java String 类型一样),新的 Observable 作为参数在业务逻辑中流转,产生更多的 Observable 参与计算。

总结一下:

1、首先要先有 Observable ,这个 Observable 称为 Source Observale;

2、把处理业务逻辑的 Observer 以参数的形式赋给第一步创建的Observable;

因此,生成 Observable 是学习 RxJava的第一堂必修课。

运行RxJava的两个步骤:

1、创建 Observable

Observable 提供很多创建 Observable 的静态方法。

例如:

Observable.from()提供从Java的数据结构创建Observable的一些方法。

List<String> list = Arrays.asList(
"blue", "red", "green", "yellow", "orange","cyan", "purple");
Observable<String> listObservable =  Observable.from(list);


2、调用 Observable实例的subscribe()方法。

Observable提供了多个 subscribe()方法的重载,包括

- subscribe()

- subscribe(Action1 next)

- subscribe(Observer observer)

- subscribe(Subscriber subscriber)

例如:

listObservable.subscribe(color -> System.out.println(color));


输出结果:

blue
red
green
yellow
orange
cyan
purple


为了更好的说明和演示 RxJava 的代码,下篇文章讲述搭建最简单的 RxJava 的运行环境。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  RxJava
相关文章推荐