Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/343.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在java中,重载与继承一起工作吗?解释这个概念_Java_Inheritance_Overloading - Fatal编程技术网

在java中,重载与继承一起工作吗?解释这个概念

在java中,重载与继承一起工作吗?解释这个概念,java,inheritance,overloading,Java,Inheritance,Overloading,我主要想知道它背后的概念 public class Myprogram3 { public static void main(String args[]){ Derived obj = new Derived(); System.out.println(obj.f(3)); System.out.println(obj.f(3.3)); } } class Base{ public int f(int i){ System.out.pr

我主要想知道它背后的概念

public class Myprogram3 {

  public static void main(String args[]){
    Derived obj = new Derived();
    System.out.println(obj.f(3));
    System.out.println(obj.f(3.3));
  }
}
class Base{

    public int f(int i){
        System.out.print("f (int): ");
        return i+3;
    }
}
class Derived extends Base{
    public double f(double i){
        System.out.print("f (double) : ");
        return i + 3.3;
    }
}
输出:
重载和继承的概念实际上并不相关

您正在将方法
f
定义为接受double或int(重载)。编译器根据参数决定调用哪个方法

您正在从基类(继承)中继承一个重载方法

但是你可以将两个方法放在同一个类中,它仍然可以工作,你可以重命名其中一个方法(这样你就不会有重载),它仍然可以工作


它们是不同的概念。

您尝试过吗?它有用吗?看起来像家庭作业?到目前为止你尝试了什么?可能是重复的
f (int): 6
f (double) : 6.6