| 
 
| 本帖最后由 陈劲松 于 2015-8-25 18:21 编辑 
 关于多态的问题,下面直接上代码:
 
 复制代码
class Base
{
    int student = 1;
    //定义父类的构造方法a()。
    void a()
    {
        System.out.println("fu");
    }
}
class Sub extends Base
{
    //重新定义student变量。
    String student = "林珊";
    //定义Sub的构造方法a()。
    void a()
    {
        System.out.println("zi");
    }
    public static void main(String[] args)
    {
        Base ls = new Sub();
        //输出的是1,表明访问的是父类对象的变量。
        System.out.println(ls.student);
        //运行结果是zi,执行的是当前类的a()方法。
        ls.a();
    }       
}
 ls.student输出结果是父类中的1,而ls.a()执行的确实Sub中的a()方法,为何啊?
 
 
 
 | 
 |