zoukankan      html  css  js  c++  java
  • Java学习之多态---类成员变化

    类成员

    一、成员变量
      编译时:变量(f)所属类(Fu)中是否有成员变量,有:编译成功,没有:编译失败
      运行时:变量(f)所属类(Fu)中是否有成员变量,运行该类(Fu)中的成员变量

     1 class Fu
     2     {
     3         int num = 3;
     4     }
     5     
     6     class Zi extends Fu
     7     {
     8         int num=4;
     9     }
    10     
    11     class Demo
    12     {
    13         public static void main(String[] args)
    14         {
    15             Fu f=new Zi();
    16             System.out.println(f.num);//结果:3
    17             //
    18         }
    19     }
    20     
    21     class Fu
    22     {
    23         //int num = 3;
    24     }
    25     
    26     class Zi extends Fu
    27     {
    28         int num=4;
    29     }
    30     
    31     class Demo
    32     {
    33         public static void main(String[] args)
    34         {
    35             Fu f=new Zi();
    36             System.out.println(f.num);//结果:编译失败
    37         }
    38     }

    二、成员函数 
      编译时:变量(f)所属类(Fu)中是否有成员函数,有:编译成功,没有:编译失败
      运行时:对象所属的类(Zi)中是否有成员函数,有:运行对象的类(Zi)的成员函数,没有:运行父类(Fu)成员函数 

     1 class Fu
     2     {
     3         void show()
     4         {
     5             System.out.println("Fu");
     6         }
     7     }
     8     
     9     class Zi extends Fu
    10     {
    11         void show()
    12         {
    13             System.out.println("Zi");
    14         }
    15     }
    16     
    17     class Demo
    18     {
    19         public static void main(String[] args)
    20         {
    21             Fu f=new Zi();
    22             f.show();//结果:Zi
    23         }
    24     }
    25     
    26     class Fu
    27     {
    28         //void show()
    29         //{
    30         //    System.out.println("Fu");
    31         //}
    32     }
    33     
    34     class Zi extends Fu
    35     {
    36         void show()
    37         {
    38             System.out.println("Zi");
    39         }
    40     }
    41     
    42     class Demo
    43     {
    44         public static void main(String[] args)
    45         {
    46             Fu f=new Zi();
    47             f.show();//结果:编译失败
    48         }
    49     }

    三、静态函数
      编译时:变量(f)所属类(Fu)中是否有静态函数,有:编译成功,没有:编译失败
      运行时:变量(f)所属类(Fu)中是否有静态函数,有:运行成功,没有:运行失败

     1 class Fu
     2     {
     3         static void show()
     4         {
     5             System.out.println("Fu");
     6         }
     7     }
     8     
     9     class Zi extends Fu
    10     {
    11         static void show()
    12         {
    13             System.out.println("Zi");
    14         }
    15     }
    16     
    17     class Demo
    18     {
    19         public static void main(String[] args)
    20         {
    21             Fu f=new Zi();
    22             f.show();//结果:Fu
    23         }
    24     }
    25     
    26     class Fu
    27     {
    28         //void show()
    29         //{
    30         //    System.out.println("Fu");
    31         //}
    32     }
    33     
    34     class Zi extends Fu
    35     {
    36         static void show()
    37         {
    38             System.out.println("Zi");
    39         }
    40     }
    41     
    42     class Demo
    43     {
    44         public static void main(String[] args)
    45         {
    46             Fu f=new Zi();
    47             f.show();//结果:编译失败
    48         }
    49     }
  • 相关阅读:
    [SHOI2008]堵塞的交通
    [SHOI2008]汉诺塔
    [JSOI2008]最小生成树计数
    [JSOI2008]球形空间产生器
    [HNOI2014]画框
    HDU 2255 奔小康赚大钱
    [SDOI2017]新生舞会
    [BZOJ2285][SDOI2011]保密
    [BZOJ3232]圈地游戏
    [HDU5909]Tree Cutting
  • 原文地址:https://www.cnblogs.com/WarBlog/p/12060196.html
Copyright © 2011-2022 走看看