如何写出一个优雅的代码第二集~技巧篇
程序员文章站
2024-03-20 17:23:16
...
技巧一:
在写工具类的时候,要加入一个私有的构造方法,这样做的目的是防止其他人通过new的方式来创建对象,保证了整个全局中对象的唯一性,也就是单例。
技巧二:
在一个方法内部,有时候需要创建局部变量,这时候我们尽量用基本数据类型,下面的例子就是,对一个数进行累加。如果是用包装类型Long定义变量,它的使用效率是使用基本数据类型long的10倍。
|
技巧三:
复合胜过继承
下面有一个需求,在往一个集合中添加数据的时候, 每次添加一个数据,就会在计数器中增加一个数,以此记录一共增加了多少次,那么第1种方式是通过继承的方式首先继承了HashSet类。然后重写了里面的add方法和addall方法。在进行数据添加的时候,设置一个成员变量,然后对这个成员变量每增加一次,添加一个数。但是其运行结果是不准的,因为这种通过继承的方式来实现技术,他有时候导致对这个继承类的结构进行改变,比如说。在调用addall的方法的时候,它的底层可能再次会调用add方法,这个时候技术是不准确的。
正确的方式应该是,使用复合的方式,也就是创建一个类,然后把这个集合按照以成员变量的方式设置进去,作为一个属性,然后再给这个集合添加数字的时候,创建一个成员变量addcount,在往集合添加数的时候对addcount进行累加,这时候得出的数据是准确的。这种方式并没有改变集合的内部逻辑。
下面是错误的案例:
|
下面是正确的案例:
|
上一篇: LeetCode 153. 寻找旋转排序数组中的最小值
下一篇: App Crash 详解
推荐阅读
-
如何写出一个优雅的代码第二集~技巧篇
-
程序员的自我修养——如何写出优雅健壮的代码?
-
新手篇:如何用ccs制作一个简单的布局(附代码)
-
几个你不知道的技巧助你写出更优雅的vue.js代码
-
php面试题:如何知道一个未知长度的字符串哪个字符出现的次数最多?(字符串可由字母,数字及其他字符组成)请写出代码。
-
如何写出可读性强实用性强又高质量的JavaScript 代码,需要掌握一些小技巧
-
几个你不知道的技巧助你写出更优雅的vue.js代码
-
代码重构篇之如何写出优雅的代码?
-
php面试题:如何知道一个未知长度的字符串哪个字符出现的次数最多?(字符串可由字母,数字及其他字符组成)请写出代码。_PHP教程
-
php面试题:如何知道一个未知长度的字符串哪个字符出现的次数最多?(字符串可由字母,数字及其他字符组成)请写出代码。