请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

关于static的问题

https://img1.sycdn.imooc.com//szimg/5a0d4a720001e58412680518.jpg

https://img1.sycdn.imooc.com//szimg/5a0d4a720001933412980527.jpg

想请教老师一下,在项目中您多次在方法和常量中使用static,我拿出了使用比较多的两处,关于static属于java基础知识,使用和特点我基本自己了解,但是在实际开发中我还是有很多的不明白。例如在Appliction中这些方法中使用static还是能比较接受的,因为考虑到在应用使用中可能多次使用,这么static修饰的内容可以放在内存中,但是关于申请权限,我们在进入App的入口中就调用,只是用一次并且全都是用private修饰,我们使用static即不是为了给其他类方便调用,也不需要他一直存在内存中,并且只给本类使用,那么:

  1. 为什么还要用static修饰?

  2. 并且haveXXXPerms()用staticrequestPerm()方法却没有使用这是为啥等不用可不可以,这样会增加内存的负担吗,好处在哪里?

  3. 希望老师能帮我简单解释下。

正在回答 回答被采纳积分+3

1回答

Qiujuer 2018-03-13 10:27:15

首先在Appliction中你的理解是正确的,没有什么问题,目的是为了全局使用方便。而你的疑惑在于权限的相关方法为啥使用static是吧?

关于这个其实没有你想的那么复杂,你仔细看权限的方法的内部判断,虽然使用来说只在Launch界面使用,但是其实方法内部并没有做有关太多内存的操作,基本上都是逻辑判断的操作;所以不存在你说的内存被占用的情况。

就算是权限页面打开了,你可以发现权限页面的Fragment并没有被static修饰保存下来,所以也不存在内存回收的问题的哈。


不知道我这边解释的是否清楚;你可以在课程群里问我哈。


非常抱歉才回复,抱歉。



0 回复 有任何疑惑可以回复我~

相似问题

登录后可查看更多问答,登录/注册

问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信