Java 在构造函数中使用重写注释被认为是一种好的做法吗?
我已经读到使用Java 在构造函数中使用重写注释被认为是一种好的做法吗?,java,constructor,annotations,Java,Constructor,Annotations,我已经读到使用@Override注释有很多好处,大家一致认为应该在每个被重写的方法上使用它 在构造函数中也使用@Override注释被认为是一种好的做法吗 没有 构造函数不会被重写。在构造函数的上下文中,@Override注释没有任何意义。也许你把我和他搞混了。这是一个重要的区别。您不重写构造函数,但可以重载它们。当具有相同名称、返回类型、参数数量和类型的子类被声明为超类的实例方法时,就会发生重写。在这种情况下,子类将重写超类的方法 如果不指定默认构造函数,编译器将创建默认构造函数。然而,这并不
@Override
注释有很多好处,大家一致认为应该在每个被重写的方法上使用它
在构造函数中也使用@Override
注释被认为是一种好的做法吗 没有
构造函数不会被重写。在构造函数的上下文中,
@Override
注释没有任何意义。也许你把我和他搞混了。这是一个重要的区别。您不重写构造函数,但可以重载它们。当具有相同名称、返回类型、参数数量和类型的子类被声明为超类的实例方法时,就会发生重写。在这种情况下,子类将重写超类的方法
如果不指定默认构造函数,编译器将创建默认构造函数。然而,这并不是压倒一切的
扩展类时,基类可以链接到基类构造函数,也可以创建自己的构造函数
例如:
public class Base
{
public Base(int i) {}
public Base(String str) {}
}
public class Derived extends Base
{
public Derived()
{
super(5);
}
}
Derived d1 = new Derived(4); // Correct
Derived d1 = new Derived("4"); // Incorrect - constructor not implemented
显示一个示例,其中您覆盖构造函数。这应该会对您有所帮助。实际上,在构造函数上使用
@Override
注释会导致以下错误消息:注释类型不适用于此类声明
。