「java注解宏定义」java的宏定义
今天给各位分享java注解宏定义的知识,其中也会对java的宏定义进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录一览:
c中的宏定义在java中怎样实现
无法实现,Java不是C,不能这么对应着考虑,要学会适应用Java语言考虑问题,而不要只把作为一种C语言思想的表现工具。
在Java中,要定义常量的话,可以在类中使用
public static final 。
比如:
public static final int PI = 3.14159;//java.lang.Math.PI差不多就应该是这么定义的。
再比如:
public static final int NAME = "John";
等。
JAVA有宏定义吗?有的话怎么写?整形变量的?急啊 帮帮忙
没有。
写整型变量可以这样写。
private static final int NUM=1;
final表示是一个常量。
什么是Java宏??
在java中,被final关键字修饰的、设置了初始值的变量就被称为宏变量。宏变量在编译阶段就已经被固定了值,因此编译器会把程序中所有该变量出现的位置全部以初始值替换。
举个例子:
图1
对于图1,按照预先设想的样子,s1和s5都应该是字符串“百度知道”,但是在实际的运行中,s1和s5尽管都是“百度知道”,但计算机判定它们并不相等。
原因:对于s1来说,“百度知道”算是字符串常量,因此“百度知道”这个字符串作为常量保存在常量池中。当编译器运行到String s2那一行时,因为s2也是“百度知道”,那么编译器会前往常量池中寻找“百度知道”这个常量,理所应当可以找到,所以s2将会和s1同时指向“百度知道”这个字符串常量所在的地址(也就是说s1和s2指针相同)。但是对于s5来说,编译器认为s5的本质是两个字符串变量的和,也就是“百度”+“知道”,组成s5的s3、s4的值随时可以发生变化,只不过恰好在这里它们是一样的而已,一个是常量一个是变量,当然不可能相等。
接下来,将s3、s4转为宏变量,如图2:
图2
此时作为宏变量的s3、s4它们的值恒为“百度”、“知道”,组成的s5“百度知道”也就和s1、s2相等了。
补充:
在计算机中,宏就是在程序编译时,用一系列规定好的的规则模式去替换相应的宏变量,进行相关宏展开的工具通常被称作宏展开器。
java 枚举和宏定义有啥不同?枚举有什么好处?枚举占用内存么?
你好,这个问题不太好回答。
只有你用了枚举,并且细细体会,才能明白它被引入的目的和好处。
常见的宏定义是PI。这个就是为了让一个经常使用的变量用一个符号PI来代替。
而枚举,用法用名字上也能猜出一二,就是一组相关的集合。如颜色,季节,星期,月份。
好处也不是三言两语能说明白的,你要是不用,真的不好体会,理论永远需要实践去验证。
占内存是肯定的,但是相比其他的java对象,又不是特别浪费内存。
java注解宏定义的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java的宏定义、java注解宏定义的信息别忘了在本站进行查找喔。