zoukankan      html  css  js  c++  java
  • Java面向对象之多态(成员访问特点) 入门实例

    一、基础概念

      多态的调用方式在子父类中的特殊体现。

      1.访问成员变量特点:
        当子父类中出现同名成员变量时。

        多态调用时,编译和运行都参考引用型变量所属的类中的成员变量。

        即编译和运行看等号的左边。

      2.访问成员函数特点:

        当子父类中出现一模一样的函数时。

        多态调用时,编译参考的是引用型变量所属的类,运行时参考的是对象所属类。因为函数有一个覆盖的特性。

        即编译看左边,运行看右边。

      3.访问静态函数特点:
        当子父类中出现一模一样的静态函数时。

        多态调用时,编译和运行都参考引用型变量所属的类中的静态函数。

        即编译和运行看等号的左边。

    二、实例代码

     1 class Fu
     2 {
     3     int num = 4;
     4     void show()
     5     {
     6         System.out.println("fu run  ......");
     7     }
     8     static void staticshow()
     9     {
    10         System.out.println("fu static show  ......");
    11     }
    12 }
    13 
    14 class Zi extends Fu
    15 {
    16     int num = 5;
    17     void show()
    18     {
    19         System.out.println("Zi run  ......");
    20     }
    21     static void staticshow()
    22     {
    23         System.out.println("Zi static show  ......");
    24     }
    25 }
    26 
    27 class DuoTaiDemo2 
    28 {
    29     public static void main(String[] args) 
    30     {
    31         //访问成员变量
    32         Fu f1 = new Zi();//多态向上转型
    33         Zi z1 = (Zi)f1;//多态向下转型
    34         System.out.println(f1.num);
    35         System.out.println(z1.num);
    36         
    37         //访问成员函数
    38         Fu f2 = new Zi();
    39         Zi z2 = (Zi)f2;
    40         f2.show();
    41         z2.show();
    42         
    43         //访问静态函数
    44         Fu f3 = new Zi();
    45         Zi z3 = (Zi)f3;
    46         f3.staticshow();
    47         z3.staticshow();
    48     }    
    49 }

    三、代码运行

      

  • 相关阅读:
    JAVA编写的一个简单的Socket实现的HTTP响应服务器
    IPTV 质量评价方法已经不适用于 OTT TV 质量评价
    AAC规格(LC,HE,HEv2)及性能对比
    洛谷 P1572 计算分数
    洛谷 P2128 赤壁之战
    洛谷 P2818 天使的起誓
    洛谷 P3914 染色计数
    洛谷 P1193 洛谷团队训练VS传统团队训练
    洛谷 P1318 积水面积
    洛谷 P1061 Jam的计数法
  • 原文地址:https://www.cnblogs.com/zhuxr/p/8961908.html
Copyright © 2011-2022 走看看