为了方便大家交流Spark大数据,浪尖建了微信群,目前人数过多,只能通过浪尖或者在群里的朋友拉入群。纯技术交流,偶有吹水,但是打广告,不提醒,直接踢出。有兴趣加浪尖微信。
常量使用目的
1,为什么要将常亮提取出来? 2,提取出来怎么定义,定义在interface中,还是class中?有什么区别?
1)常亮提取出来有利于代码阅读,而且下次再做这种判断不用手写或复制,直接通过常量类就能得到,能够避免有的地方是username,有的地方是name来判断同一个逻辑含义相同变量问题。不过我觉得提取出来并不会有利于代码性能提升武汉托福,因为常量分配在内存的常亮池中,所以内存不会出现多个相同常量字符串。总的来说提取常量主要是为了避免魔法数字和提高代码可读性。
2)常亮定义在final的class中,防止被其它类继承和实例化。定义在interface中性质也是一样,static final属性。但是interface看起来就是会被继承的。
interface中定义常量
采用接口(Interface)的中变量默认为static final的特性。
Enum定义常量
普通类中定义常量
采用了在普通类中使用static final修饰变量的方法。
也可以使用get方法
final class定义常量
推荐,使用final class定义,表面意思更清楚。虽然为了简单编码,浪尖采用的是interface。
欢迎关注浪尖的微信公众号:Spark学习技巧。
推荐阅读:
Java面试中常问的数据库方面问题
Java面试知识点解析——JVM篇
面试的角度诠释Java工程师(二)
文章来源:https://blog.csdn.net/rlnLo2pNEfx9c/article/details/81277528