首页 > 学院 > 开发设计 > 正文

一个困惑我好久的问题

2019-11-14 23:45:16
字体:
来源:转载
供稿:网友
一个困惑我好久的问题

下面代码:

package com.lk.C;public class Test5 {    public static void main(String[] args) {        go(new MyBase());    }    static void go(Base b){        b.add(8);    }}class Base{    int i;    Base(){        add(1);        System.out.PRintln(i);    }    void add(int v){        i = i+v;        System.out.println(i);    }    void print(){        System.out.println(i);    }}class MyBase extends Base{    MyBase(){        add(2);    }    void add(int v){        i += v*2;        System.out.println(i);    }}
22622

java新手一枚,望有人解答:

我调试了一下,走的顺序:当走父类的构造函数内的add(1)方法时,为什么不是调用父类的add()方法,而调用了子类的add()方法?因此第一个输出是2。


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表