关于static的问题
来源:3-9 初次体验MVP模式开发

慕妹2978617
2017-11-16
想请教老师一下,在项目中您多次在方法和常量中使用static,我拿出了使用比较多的两处,关于static属于java基础知识,使用和特点我基本自己了解,但是在实际开发中我还是有很多的不明白。例如在Appliction中这些方法中使用static还是能比较接受的,因为考虑到在应用使用中可能多次使用,这么static修饰的内容可以放在内存中,但是关于申请权限,我们在进入App的入口中就调用,只是用一次并且全都是用private修饰,我们使用static即不是为了给其他类方便调用,也不需要他一直存在内存中,并且只给本类使用,那么:
为什么还要用static修饰?
并且haveXXXPerms()用staticrequestPerm()方法却没有使用这是为啥等不用可不可以,这样会增加内存的负担吗,好处在哪里?
希望老师能帮我简单解释下。
写回答
1回答
-
Qiujuer
2018-03-13
首先在Appliction中你的理解是正确的,没有什么问题,目的是为了全局使用方便。而你的疑惑在于权限的相关方法为啥使用static是吧?
关于这个其实没有你想的那么复杂,你仔细看权限的方法的内部判断,虽然使用来说只在Launch界面使用,但是其实方法内部并没有做有关太多内存的操作,基本上都是逻辑判断的操作;所以不存在你说的内存被占用的情况。
就算是权限页面打开了,你可以发现权限页面的Fragment并没有被static修饰保存下来,所以也不存在内存回收的问题的哈。
不知道我这边解释的是否清楚;你可以在课程群里问我哈。
非常抱歉才回复,抱歉。
00
相似问题