Java的String类要受一种名为“运算符过载”的机制的制约

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u011733020/article/details/85644916

Java的String类要受一种名为“运算符过载”的机制的制约。也就是说,只有在随同String对象使用时,加号才会产生
与其他任何地方不同的表现。对于字串,它的意思是“连接这两个字串”。
但事情到此并未结束。请观察下述语句:

System.out.println("Total Memory = "
+ rt.totalMemory()
+ " Free Memory = "
+ rt.freeMemory());

其中,totalMemory()和freeMemory()返回的是数值,并非String对象。如果将一个数值“加”到一
个字串身上,会发生什么情况呢?同我们一样,编译器也会意识到这个问题,并魔术般地调
用一个方法,将那个数值(int,float等等)转换成字串。经这样处理后,它们当然能利用加
号“加”到一起。这种“自动类型转换”亦划入“运算符过载”处理的范畴。

猜你喜欢

转载自blog.csdn.net/u011733020/article/details/85644916