0
  • 最佳答案
    1. 从流程的角度来说,可能不是很严谨。
    2. 这是一个方法getNetWorkxxx,当这个方法被调用,整个方法的变量和方法进入调用栈。
    3. 你想保存的变量是在方法内部,也就是局部变量,异步完成之后,就算你可以保存,也没有了,整个异步结束后,整个方法出栈,里面所有的变量回收。
    4. 也就是变量的生命到了尽头了,其他地方想用,其实你是想在其他地方用它,也用不了。
    5. 前面几楼说的,用成员变量保存,为啥呢,因为成员变量是属于类,整个类没有被 = null或者所属的类没有 = null,成员变量还活着,你异步保存到成员是可以的。
    6. 其实异步之后的数据,通常都是主动给(通知)有需要的地方使用,不是简单存起来,这就是前面几楼说的接口回调。
    1139423796017500160  评论     打赏       断点-含光君
    • 你把这个变量设成 成员变量 呗。

      1491672181057380354  评论     打赏       我太帅很烦恼
      • 建议你做成接口回调给应用层

        1255088796991492096  评论     打赏       冒着泡泡的汽水儿
        • 这个不是android问题,是这个是java语法问题。


          如果你只是单纯地想接个返回值 ,你可以使用成员变量,而不是局部变量。


          如果你非要使用局部变量,可以把当前的对象传给内部类的实现里,继承一个,在构造方法里传入,然后用软连接的方式保存引用。使用时要判断是否已经被回收。


          去看看领券联盟项目吧,看看那个项目是怎么请求数据的就知道了。

          1153952789488054272  评论     打赏       拉大锯
          相关问题
          康师傅的小跟班 · JAVA
          2019-09-10 05:09 1295 2
          2020-03-08 05:30 846 2
          吕氏春秋 · java / 多线程并发
          2020-03-19 03:46 859 4
          不易 · java
          2020-06-06 19:41 461 2
          夙夜星辰叹 · javaweb
          2020-06-24 03:07 457 2
          2020-07-21 06:26 937 2
          CodeWwang · JAVA
          2020-07-22 06:11 440 2