
java如何重载运算符
用户关注问题
Java中是否支持自定义运算符重载?
我想在Java中实现自定义的运算符重载,比如让两个对象能用加号相加,这在Java中是否可行?
Java不支持自定义运算符重载
Java语言本身不支持自定义运算符重载。与C++不同,Java设计者选择避免运算符重载来减少代码复杂度和潜在的错误。因此,开发者不能像在C++中那样为自定义类重载加号或其他运算符。
Java中有哪些运算符是默认支持重载的?
Java是否有一些运算符可以自动重载或者内置支持,比如字符串的加号?
只有字符串连接符“+”具有特殊的重载行为
在Java中,字符串的加号(+)运算符被特殊处理,支持自动将其他类型转换为字符串并连接。这是Java编译器内置的特性,不属于用户自定义的运算符重载。其他运算符则没有此类自动重载机制。
在Java里如何实现类似运算符重载的功能?
既然Java不允许重载运算符,有什么方法能实现类似的行为吗?我想在自定义类中实现加法功能。
使用方法实现功能类似于运算符重载
可以在类中定义一个方法,比如命名为add或者plus,来表示两个对象的相加操作。调用该方法即可实现类似加法的效果,比如 obj1.add(obj2)。虽然这不是运算符重载,但可以达到类似目的。