我觉得答案为34,为什么为14
class J_Base{
public int m_data=1;
public String mb_method()
{return “2”;}
}
class J_Test extends J_Base{
public int m_data=3;
public String mb_method() {return “4”;}
public static void main(String args[]){
J_Base app=new J_Test(); System.out.println(app.m_data+app.mb_method());
}
}
答案:14
我觉得app.m_data为3,app.mb_method())=4
class J_Base{
public int m_data=1;
public String mb_method()
{return “2”;}
}
class J_Test extends J_Base{
public int m_data=3;
public String mb_method() {return “4”;}
public static void main(String args[]){
J_Base app=new J_Test(); System.out.println(app.m_data+app.mb_method());
}
}
答案:14
我觉得app.m_data为3,app.mb_method())=4
当你将这两个类型不一样的数据相加时,并且你要在这个过程打印出来,系统会将这个int转换成会
String类型的"1",然后与String “4”结合,即"14";
这个问题与多态无关
而mb_method() 为4
这就是多态 子类继承父类,执行子类的方法