在java中,super()可以用于调用任何父方法或仅调用父构造函数
是否可以使用子类方法中的super()调用任何父类方法,或者super仅用于调用父构造函数对于调用方法,语法为在java中,super()可以用于调用任何父方法或仅调用父构造函数,java,inheritance,constructor,super,Java,Inheritance,Constructor,Super,是否可以使用子类方法中的super()调用任何父类方法,或者super仅用于调用父构造函数对于调用方法,语法为super.methodName()。只需super()即可调用构造函数 它非常类似于这个关键字,但用于父级 this()从另一个构造函数调用此类构造函数super()从childs构造函数调用父构造函数 this.methodName()调用当前类的方法,super.methodName()调用父类的方法 编辑:正如@harry在评论中提到的,家长的方法应该对孩子可见,这样孩子才能真正
super.methodName()
。只需super()
即可调用构造函数
它非常类似于这个
关键字,但用于父级
this()
从另一个构造函数调用此类构造函数super()
从childs构造函数调用父构造函数
this.methodName()
调用当前类的方法,super.methodName()
调用父类的方法
编辑:正如@harry在评论中提到的,家长的方法应该对孩子可见,这样孩子才能真正使用
super.methodName()
。无法访问父级中的私有方法。超级关键字的用法:
希望这有帮助 范围可见性还需要考虑父方法:)我仍然没有在您的答案中看到OP实际问题的答案。“
任何父类方法”
“@sᴜʀᴇsʜᴀᴛᴛᴀ, super.methodName()
可用于访问所有可见父类的方法。我已经编辑了答案。“this.methodName()调用当前类的方法”不一定。如果当前对象属于已重写methodName
的子类,则它将调用该子类。