经验分享——工具类
2016-01-25 12:08
155 查看
最近工程抓取到了几个崩溃信息,查看了下抓取到的bug,都是工具类出现异常,以前写完工具类都要测试好多遍,不觉着工具类会出现什么问题,就没太在意,但是最近发现有好多奇葩设备,奇葩的自定义系统不按常规出牌,就是会有各种各样的问题。
工具类就是为其他方法提供方便使用的工具,那么最最重要的就是要保证工具自身好用,起码不能影响调用者。
下面总结几点Android下工具类需要具备的几点基本要求
工具类
final修饰工具类不再需要继承,也没有必要让别人继承,那么final修饰一下,提升下逼格。
构造方法私有化
工具类一般不允许new对象,直接使用工具类名,点,方法名就可以了
方法public static修饰
工具类私有化以后,想要调用工具方法,必须使用public static修饰
没有返回值的方法均 try catch
如果工具类出现问题,在cathc里做处理
有返回值的的方法均 try catch finally
如果工具类出现问题,在catch里做处理,在finally里返回一个默认值
在满足以上几点基本要求的基础上,再去实现工具内容
当然,逻辑严谨是最重要的,不要依赖于try catch
eg
package …….utils; import ……; /** * Created by kongqw on 2015/12/3. */ public final class TextUtil { private TextUtil() { } /** * 处理空字符串 * * @param input * @return */ public static String replaceSpace(String input) { String str = null; try { str = input.replaceAll("\t", "").replaceAll(" ", "").replaceAll("\r", "").replaceAll("\n", "").replaceAll("\b", ""); } catch (Exception e) { e.printStackTrace(); } finally { return str; } } …… }
相关文章推荐
- MyEclipse开发WebService教程
- 检查了好久才发现原来js中elseif是要分开的
- 括号匹配
- Find the Minimum length Unsorted Subarray, sorting which makes the complete array sorted
- UVA11624----Fire!
- 读引脚、读锁存器与读-改-写指令
- 数字电路设计--用3个开关控制一个电灯
- 51 单片机 C 语言编程:4×4键盘、164 驱动显示、并发音
- 80x86 汇编语言编程:输入数字串,排序、并求最大和最小
- 80x86 汇编语言:键入0~255之间的数,显示对应的二进制和十六进制数
- 一个大圆,内切四个小圆,求阴影面积
- 51 单片机汇编语言:0~100 计数器
- 51 汇编语言编程:外部中断实验
- Python内部机制-PyObject对象
- 80x86 汇编语言编程:判定数据序列的奇偶个数
- 51 汇编语言编程:走道灯控制程序
- 小测试点积累
- 14个响应式前端开发框架
- 文章标题
- 使用ViewFlipper实现页面自动切换