【问题标题】:what are override methods and how do they work?什么是覆盖方法以及它们如何工作?
【发布时间】:2014-04-24 15:12:49
【问题描述】:

我正在做一些比较科学的作业,并意识到我忘记了覆盖方法的概念。我必须在这段代码中重写 equals 方法:

public boolean equals( Object b ) 
{ 
  if ( ! (b instanceof Employee) ) 
    return false;

所以,我必须添加覆盖方法的代码,但我忘记了覆盖的含义。有人可以将其解释为一个更好的概念吗?它如何应用于此代码?

【问题讨论】:

    标签: object methods overriding instance equals


    【解决方案1】:

    当你重写时,你基本上是在使用实现它的类正在使用的函数,并使其变得更好。例如,当使用 paintComponent 方法时,您通常会在其上方添加 @override,如下所示:

    @Override
    public void paintComponent(Graphics g) {
    
        super.paintComponent(g);
        doDrawing(g);
    }
    

    注意你必须调用 super.paintComponent(g);方法里面。这就是覆盖的完成方式,通过使用超级实现来启动它,然后使用您自己的代码来增加它的唯一性。

    希望对你有帮助

    【讨论】:

    • 做“超级”。参考整个方法?我是说外面那个。
    • super 被用作“第一个实现者”,它采用 Java 开发人员已经在 paintComponent 方法中使用的东西,并使用您的代码使其按照您的需要工作。
    猜你喜欢
    • 2014-11-22
    • 2016-08-18
    • 2017-11-27
    • 1970-01-01
    • 2018-01-25
    • 2014-06-10
    • 2019-04-25
    • 2020-08-06
    • 2019-09-28
    相关资源
    最近更新 更多