Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/asp.net-mvc-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在构造函数中使用重写注释被认为是一种好的做法吗?_Java_Constructor_Annotations - Fatal编程技术网

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
注释会导致以下错误消息:
注释类型不适用于此类声明