运算符在Java中重载和覆盖

运算符重载和运算符覆盖之间有什么区别?

它们在inheritance和控制台程序中是否相同?

Java不支持运算符重载和重写。

检查以下desc引用: http : //java.sun.com/docs/white/langenv/Simple.doc2.html

2.2.7不再有运算符重载

程序员没有提供重载标准算术运算符的方法。 再一次,通过声明一个类,适当的实例变量和操作这些变量的适当方法,可以很容易地实现运算符重载的效果。 消除运算符重载可以极大地简化代码。

您不能在Java中覆盖(也不重载)运算符。

在其他一些语言中,运算符重载和覆盖之间的区别在于函数重载和重写之间的区别。 例如,在Scala中,运算符只是函数。

您可以在C ++中重载运算符,但不能在Java中重载。 我想知道你是否意味着方法重载和方法覆盖? 方法重载对于相同的方法签名具有两个定义。 例如,

int sum(int var1, int var2) { return (var1+var2); } int sum(int var1, int var2, int var3) { return (var1+var2+var3); } 

在面向对象的编程中,您覆盖(重新定义)从上升(基础)类inheritance的函数。 在类层次结构中,当子类中的函数(方法)与其超类中的方法具有相同的名称和类型签名时,子类中的方法将被覆盖超类中的方法。

有一个名为“ Java-OO ”的javac-plugin(像Lombok这样的注释处理器),它将操作符重载添加到Java。

它允许您非常轻松地将操作符重载添加到您自己的类中。 除此之外,Java API的许多内置类在使用此插件时也支持运算符重载。 (例如:您可以执行list [6]和map [“hello”]而不是list.get(6)或map.get(“hello”)

您需要做的就是在使用javac进行编译时在类路径中包含.jar。

所有主要IDE都有插件:Eclipse,Netbeans和IntelliJ IDEA。

Java中没有运算符重载/覆盖。