[问题] 面试题目检讨

楼主: wifeisblind (虾婆)   2019-03-06 10:42:37
题目截图如下
https://i.imgur.com/tYRd8rL.jpg
https://i.imgur.com/PMGlSZT.jpg
小弟资质驽钝
对于这题完全没有想法
请问有人愿意提点一下吗?
作者: kobe8112 (小B)   2019-03-06 11:01:00
完全说不出任何想法,问到答案又有什么意义?
作者: iForests (森林)   2019-03-06 12:25:00
因为这个 non-static 的 AsyncTask 会 leak 吗?https://stackoverflow.com/a/44309450/928315
作者: ssccg (23)   2019-03-06 17:55:00
还有lifecycle问题吧,例如ConfigurationChange的时候前一个task对应的activity已经destroy,又多生一个task来跑
作者: roger60261 (弗洛伊斯)   2019-03-06 18:45:00
同意楼上 应该是lifecycle问题 如果在asynctask跑完之前 activity destroy会有memory leak问题 至于如何避免方法很多 可以google
作者: baobomb (baobomb)   2019-03-06 19:45:00
小弟面的时候是觉得是memory leak 用Mvvm+RxJava2重写了一遍 结果还是被婉拒了
作者: lnmlee   2019-03-07 04:07:00
Timeout 没做 ,该用HttpsURLConnection , For无限循环的用法颇危险 (尤其在无限循环里宣告变量),Exception Handle也太简陋 总之我认为他应该是要考你指出多少缺点来评分的 另外以LINE这总大公司不太容易允许使用三方套件框架光使用HttpUrlConnection就不难看出 他不是要考你会用多流行的框架 而是考基本观念
作者: y3k (激流を制するは静水)   2019-03-07 07:44:00
这就是标准的看起来ok 可以跑 却可能有问题的code API沟通发生的状况没有在处理 return ""却没有判断原因 没有followRedirect 当遇到问题只能debug然后说"喔~ 我知道为什么了"XDDhttpsUrlConnection也用错
作者: cooper6334 (库波)   2019-03-07 16:22:00
我对这题的回答是1.要在onStart()启动Asynctask并在onStop()停掉 2.有需要可以在onProgressUpdate()更新UI 有收到下一关的通知
作者: Jichang (C.C.Lemon)   2019-04-09 08:05:00
close 也要try

Links booklink

Contact Us: admin [ a t ] ucptt.com