面向对象(多态中成员的特点)

本文详细解析了Java中多态的概念及其应用。重点介绍了成员函数和成员变量在多态中的行为差异,以及静态成员函数在多态上下文中的特点。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


class Fu
{
    //int num = 5;
    static int num = 5;
    void method1()
    {
        System.out.println("fu method_1");
    }
    void method2()
    {
        System.out.println("fu method_2");
    }
    *static* void method4()
    {
        System.out.println("fu method_4");
    }
}
class Zi extends Fu
{
    //int num = 8;
    static int num = 8;
    void method1()
    {
        System.out.println("zi method_1");
    }
    void method3()
    {
        System.out.println("zi method_3");
    }

    *static* void method4()
    {
        System.out.println("zi method_4");
    }
}
class  DuoTaiDemo4
{
    public static void main(String[] args) 
    {

//      Fu f = new Zi();
//      System.out.println(f.num);//num 不是静态是5
//
//      Zi z = new Zi();
//      System.out.println(z.num);//num 不是静态是8

        //f.method1();
        //f.method2();
        //f.method3();  //编译报错

        Fu f = new Zi();
        System.out.println(f.num);
        f.method4(); //fu method4   ---等同于Fu.method4()

        Zi z = new Zi();
        z.method4();//zi method4  ---等同于Zi.method4()

//      Zi z = new Zi();
//      z.method1();
//      z.method2();
//      z.method3();
    }
    /*
在多态中**成员函数**的特点:
在编译时期:参阅引用型变量所属的类中是否有调用的方法。如果有,编译通过,如果没有编译失败。
在运行时期:参阅对象所属的类中是否有调用的方法。
简单总结就是:成员函数在多态调用时,编译看左边,运行看右边。

在多态中**成员变量**的特点:
无论编译和运行,都参考左边(引用型变量所属的类)。

在多态中,**静态成员函数**的特点:
无论编译和运行,都参考做左边。

*/
}   
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值