Java学习笔记——关于继承执行顺序问题

/*
   这是一个关于继承一个最基本的小知识点,关于调用顺序的问题,很多初学者刚开始接触面向对象的语言时可能也会像我一样搞不清他们的执行顺序,他的规则是:如果父类和子类有相同成员(非私有),当在主类创建子类对象时,对象调用成员时会优先调用子类中的成员(非私有),而当只有父类有此成员时,则会调用父类的成员,下面举个例子说明:

*/




class Father //这是一个父类,有show()方法
{
    void show(){

    System.out.println("father");

    }
}



class Son extends Father //这是一个子类,也有show()方法,继承父类father
{
    void show(){

    System.out.println("son");

    }
    
}


class ExtendsDemo    //主类
{
    public static void main(String[] args)
    {
        Son s = new Son();    //创建子类对象
        s.show();        //调用同名的方法
    }
}

/*

    在这个情况下,执行结果是:son,因为子类和父类中有同名成员(非私有),则会优先调用子类中的成员。

*/


class Father
{
    void show(){

    System.out.println("father");

    }
}



class Son extends Father
{
    
    
}


class ExtendsDemo
{
    public static void main(String[] args)
    {
        Son s = new Son();
        s.show();
    }
}

/*
    在这是,show方法只在父类中有,则会调用父类中的show方法,因为子类中没有。

    这个小知识点大家一定搞清楚~~

*/
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值