subscribe(new Observer <t>())vs subscribe(new Subscriber <t>()

时间:2015-08-11 09:50:11

标签: rx-java rx-android

get_user()subscribe(new Observer<T>())之间的区别是什么? 我应该在哪种情况下使用哪一个?

1 个答案:

答案 0 :(得分:3)

要回答您的问题,您应该深入研究两个函数的代码subscribe(new Observer()) subscribe(new Subscriber())

简而言之,带有Observer的版本首先检查传递的参数是否是Subscriber的子类型,如果是,则调用第二个版本,否则它只是将传递的观察者包装在订阅服务器中并调用第二个版本。

鉴于第一种方法基本上用作包装器,除非你有任何理由使用Observer over Subscriber,否则你应该使用后者。