标题:继承,父类与子类的问题
取消只看楼主
zx6861nj
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2016-11-29
结帖率:0
已结贴  问题点数:3 回复次数:0 
继承,父类与子类的问题
public class A {
    public static int y=0;
    public int x=23;
    public A(long x){
    }
    public A(int x){
        this(new Long(x));
        y=y+x;
    }
    public void f(int i, A o){}
    public void f(long lo,A o){}
    public void f(byte b,B o){}
}


public class B extends A{
    int x=17;
    public B(){
        super(1);
        new A(2);
        x++;
    }
    public B(int x){
        super(x);
        y=x+1;
        super.x=y+1;
    }
    public void f(int i,B o){}
    public void f(long lo,B o){}
    public void f(long lo,A o){}
}


public class C {
    public static void main(String[] args) {
        A aa1=new A(1L);
        A aa2=new A(42);
        B bb=new B();
        A ab=new B(3);

        int i=1;
        long lo=2;
        byte b=3;
        
        ab.f(b, bb);
        ab.f(lo, bb);
    }
}
为什么最后 ab.f(lo, bb); 对应的是Class B里面 public void f(long lo,A o){} 这个方法? 求解答,谢谢!
搜索更多相关主题的帖子: public super 
2016-12-18 02:11



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-472542-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.465547 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved