【发布时间】:2018-06-18 12:40:19
【问题描述】:
public class Class2 extends Class1{
public static void main(String[] args) {
Class2 c2 = new Class2();
c2.m3(10);
c2.m3(10.5f);
c2.m3('a');
c2.m3(10l);
c2.m3(10.5);
}
public void m2() {
System.out.println("M1 method of class2");
}
public void m3(int i) {
System.out.println("int argument");
}
public void m3(float j) {
System.out.println("float argument");
}
}
尝试调用 c2.m3(10.5) 时出错;你能帮忙解释一下为什么会这样吗?
【问题讨论】:
-
"getting error"你得到了什么错误?
-
Class2类型中的方法m3(int)不适用于参数(double)
-
如果您有任何方法,您也可以显示
Class1 -
那么您的解决方案就在您面前,直接在错误描述中。 10.5是双倍的。该方法需要一个浮点数。
-
试试
c2.m3(10.5f);
标签: java oop types casting overloading