Java明确表示不支持运算符的重载,可是对String类,加运算符“+”进行了重载。可是我一直认为在Java中不之“+”一个有双重功能,“|”和“&”也有双重功能,我能不能认为java语言的实现者对“|”和“&”也进行了重载呢

解决方案 »

  1.   

    java 中没有给程序员提供运算符重载的功能...但JVM在底层实现了重载,java使用者不能对运算符进行重载关于string,你应该看看他源码实现中关于 + 是怎么处理的
      

  2.   

    “|”和“&”也有双重功能?
    愿闻其详
      

  3.   

    这三个都算是重载了吧方法的重载是同名的方法以不同的参数来区别,彼此实现不同的功能,而这里运算符的表现也是如此+除了进行算术加法还可以进行string连接,| & 除了有逻辑与或功能还可以进行位与或
      

  4.   

    运算符重载是被java排斥的技术,认为会造成混乱,虽然他们自己重载了 + ,但是不提供对外的重载。