宏替换的final变量

mac2022-06-30  31

对于一个final变量阿狸说,不管是类变量 实例变量  局部变量,只要满足以下三个条件,那么这个final变量就不是一个变量了,而是一个直接量.

使用final变量修饰符修饰

在定义该final变量时指定了初始值

该初始值可以在编译时就被确定下来

 

public static void main(String[] args) { String s1 = "HelloWorld"; String s2 = "Hello" + "World"; System.out.println(s1==s2);//输出true String str = "Hello"; String str2 = "World"; // final String str = "Hello"; // final String str2 = "World"; String str3 = str + str2; System.out.println(s1==str3 );//输出是false,如果注释不要那么就是true了,因为str+str2都是可以被执行的宏替换 }

 

最新回复(0)