简而言之,这是如何以及为什么可能:
Object obj=new MyClass();
Run Code Online (Sandbox Code Playgroud)
Object是所有对象的超类,因此MyClass是Object的子类.通常,在Java中,为什么可以在父类中使用子类的构造函数?
我理解它是如何反过来的,因为子类具有父类的所有变量/方法,所以当你初始化它们时,你只是初始化在父构造函数中指定的变量,它在子节点中按照定义存在.问题是,当你走另一条路时,它不一定是真的.一个子节点可以有父节点不具有的变量,那么如果父节点首先没有变量,那么如何将子构造函数与父节点一起使用呢?
该功能在开发中有什么用途?我认为如果你想要一个B类的实例,你会把它声明为B thing = new B(),而不是A thing = new B().这可能是我缺乏经验的谈话,所以我很感激启发为什么以及如何将父类初始化为其子女之一.