【问题标题】:is it calling a Overriden method in a overriding method using "super", are we doing overloading with the call?它是否在使用“super”的覆盖方法中调用 Overriden 方法,我们是否正在使用调用进行重载?
【发布时间】:2017-04-04 12:32:13
【问题描述】:

它是否同时代表覆盖和重载? B类

public class A{
    void someMethod(){
    System.out.println("Class A's some method");
    }
}

class B extends A{
    void someMethod(){
    super.someMethod();   // does this line reperesnt overloading of super class method??
    System.out.println("Class B's some method");
    }
}

【问题讨论】:

  • 您只需要在 Google 上搜索“过载”是什么意思就可以自己回答这个问题……您不这样做的“原因”是什么?

标签: java methods overloading overriding


【解决方案1】:

这段代码sn-p中没有方法重载。当具有不同参数列表(不同数量的参数或不同类型的参数)的两个方法具有相同的名称时,就会发生重载。

而覆盖的发生仅仅是因为类B 具有与类A - someMethod() 具有相同签名和访问级别的方法。 B对该方法的实现是否执行A的实现(使用super.someMethod())没有区别。

【讨论】:

  • 可以说,行为超载了吗?
  • @vinaybayyaram 我不知道你的意思是什么,但术语重载在 Java 中有不同的含义。
猜你喜欢
  • 1970-01-01
  • 2012-08-09
  • 1970-01-01
  • 2011-11-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多