2 szw sh szw_sh 于 2016.03.31 13:36 提问

Android中工具类的设计

两种方案:
1、工具类的方法设置为静态方法
2、工具类设置成单例模式,获取实例调用
哪一种方案相对好一点呢?求大神指点

7个回答

u012215068
u012215068   2016.04.01 15:36
已采纳

单例模式,实例是application是同级的,只要在application销毁的情况下才会销毁,再者如果你的单例如果持有一些context的引用的话,会导致该context
无法释放,有内存泄露的风险。反之静态方法会比单例好很多!提醒你,人家回答你,要先说谢谢,不要什么都不说就直接追问,最基本的尊重还是要有的

szw_sh
szw_sh 好的,谢谢呀,以后我会注意的
2 年多之前 回复
CSDNXIAON
CSDNXIAON   2016.03.31 13:42

Android shell工具类
Android工具类——LoadingUtils
----------------------同志你好,我是CSDN问答机器人小N,奉组织之命为你提供参考答案,编程尚未成功,同志仍需努力!

NullNameError
NullNameError   2016.03.31 13:52

如果你只想要调用下方法,不涉及类的成员变量,那干嘛要用单例?

szw_sh
szw_sh 在项目中使用的比较频繁,如果不使用单例的话,频繁的创建对象会造成不必要的内存开销
2 年多之前 回复
sl_18500
sl_18500   2016.03.31 15:43

1、工具类的方法设置为静态方法

sl_18500
sl_18500 你要创建实例干嘛,浪费栈内存么
2 年多之前 回复
szw_sh
szw_sh 静态方法比起设置成单例的优势在哪呢(除了可以快速的访问)?
2 年多之前 回复
sl_18500
sl_18500   2016.03.31 15:43

1、工具类的方法设置为静态方法

shakdy
shakdy   2016.03.31 15:51

第一个方法(静态方法)更好

szw_sh
szw_sh 比起单例,那是否占用的内存空间有点多呢?
2 年多之前 回复
szw_sh
szw_sh   2016.04.01 17:29

设置为静态方法更好:如果设置成单例模式,它的生命周期也是整个app的生命周期,而且一直占用着堆内存;也就是说设置成单例模式和设置成静态方法生命周期相同,单例一直占用堆内存,静态一直占用静态存储区,在内存消耗上差不多,但静态方法的话,访问速度更快且使用更加便利

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
Android Studio 插件开发详解二:工具类
转载请标明出处:http://blog.csdn.net/zhaoyanjun6/article/details/75647437 本文出自【赵彦军的博客】 在插件开发过程中,我们按照开发一个正式的项目来操作,需要整理一些常用工具类。Http 请求封装在插件的项目中,我们看到依赖库如下图所示: 在依赖包中,我们可以看到插件中是用了 httpClient 作为 http 底层连接库,做过 An
Android工具类--时间工具类
获取时间日期的工具类
项目中通用的Dialog工具类
由于工作项目的需要,需要使用Dialog但是每个界面的dialog的布局样式又各有不同.所以才使我决定自己写个通用的Dialog工具类.只需通过自定义的布局样式就可实现不同的Dialog.完全的使用链式调用,可以设置布局中的文本内容和点击事件.还可以自己选择去匹配PopupWindow的效果.那闲话不多说了 直接上代码 希望该工具类对你的工作有所帮助,一起学习一起交流技术.先上效果图如下: <!--
Android开发之关于屏幕的最全工具类
简介Android开发大家应该或多或少的会使用关于屏幕的方法,最近在当前项目中需要大量运用这些方法,便整理了一个全能的工具类。 拥有的方法 获取横竖屏 获取屏幕dpi 获取虚拟按键的高度(在我的项目中曾经有虚拟按键遮挡了在设计底部的确认按钮) 获取标题栏高度 状态栏的高度(实现悬浮按钮时,不能让悬浮按钮悬浮在状态栏、标题栏、虚拟按键上) 获取屏幕的高度 获取屏幕的宽度 dp转px sp转px px
java java面向对象-工具类的设计
20180321 java java面向对象-工具类的设计工具类定义:存放了某一类事物的工具方法的类。工具类存放的包:工具包(util或utils或tool或tools或helper或helpers)存放工具类工具类的起名:xxxUtil或xxxUtils或xxxTool或xxxTools或xxxHelper或xxx.helpers,如数组的工具类就是ArrayUtil。工具类如何设计:工具类在开...
Android沉浸式状态栏
Android中沉浸式状态栏工具类。。。。。。。。。。。。。。。。。。。。。。。。。。。
颜色工具类
Android中Color工具类
Android常见工具类封装
MD5加密 import android.annotation.SuppressLint; import java.security.MessageDigest; public class MD5 { @SuppressLint("DefaultLocale") public static String hex(byte[] array) { S
android develop utils
android中一些常用的工具类
Android常用工具类封装---SharedPreferencesUtil
SharedPreferences常用于保存一些简单的数据,如记录用户的操作的配置等,使用简单。 public class SharedPreferencesUtil { //存储的sharedpreferences文件名 private static final String FILE_NAME = "save_file_name"; /** * 保存数据到文件 * @p