【问题标题】:Is it method Overloading? [closed]是方法重载吗? [关闭]
【发布时间】:2012-12-03 08:08:42
【问题描述】:

请在下面找到示例代码:-

class ExtendMe{
    public void printV(int x){
        System.out.println(x);
    }
}

public class InheritOM extends ExtendMe {
    void printV(int y ,int z){
        System.out.println("2 arg method called");
        System.out.println(y);
        System.out.println(z);
    }

    public static void main(String args []){
        InheritOM obj = new InheritOM();
        obj.printV(4);
        obj.printV(5,6); 
    }
}

我可以说 printV 方法被重载了吗?

【问题讨论】:

  • 是的,你当然可以这么说,因为你可以同时调用它们,对吧?
  • @Rohit,+1,是的,我可以同时调用它们。不知道重载适用于继承。

标签: java inheritance overloading


【解决方案1】:

是的,当尝试从超类重载方法时,重载会起作用。

在谈到重载时请记住这一点:

  • 重载的方法必须更改参数列表。
  • 重载的方法可以改变返回类型。
  • 重载的方法可以更改访问修饰符。
  • 重载的方法可以声明新的或更广泛的检查异常。

【讨论】:

  • 我就是这么说的。您必须更改参数列表以重载方法。我没有说更改 return type 会使它重载。
  • @user1870638.. 啊!我的错。在第一种情况下我没有看到MUST。我收回我的评论。
  • +1,我知道子弹,我不知道的一件事是在继承下重载方法,但现在我知道了。谢谢你的时间。 :)
【解决方案2】:

是的。你可以这样说。 http://en.wikipedia.org/wiki/Function_overloading 的第一句话告诉你。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-02
    • 1970-01-01
    • 2021-01-06
    • 2011-01-24
    相关资源
    最近更新 更多