我所知道的是,编译器在字节码中编写了一个默认的无参数构造函数.但是如果我们自己编写它,那么构造函数会自动调用.这种现象是构造函数的重写吗?
我知道构造函数在java中不可继承,我们需要使用super() - super必须是Constructors中的第一个语句.
但为什么我不能使用@Override注释?
例如:
public class Foo extends Point2D.Double {
@Override // The annotation @Override is disallowed for this location
public Foo(){}
}
Run Code Online (Sandbox Code Playgroud)
如果我有一个Foo的实例,我永远不能Point2D.Double.Double()直接打电话!这种行为完全像Overriding!