zoukankan      html  css  js  c++  java
  • (原)java 向上转型中,任何域的访问操作都是由编译器解析,不是多态

    最近在向java发力,学习学习了下。看到了多态这一节,书中有个比较好的例子,所以就准备写下来,记录下来:

     1 package dynamic_binding01;
     2 
     3 public class dynamic_binding01 {
     4 
     5     public static void main(String[] args) {
     6         // TODO Auto-generated method stub
     7         Super super1=new Sub();
     8         System.out.println("sup.field="+super1.field+",sup.getField="+super1.getField());
     9         Sub sub=new Sub();
    10         System.out.println("sub.field="+sub.field + ",sub.getField="+sub.getField() + ",sub.getSuperField="+sub.getSuperField());
    11         
    12     }
    13 
    14 }
    15 
    16 class Super{
    17     public int field=0;
    18     public int getField(){
    19         //System.out.println("Super class getField");
    20         return field;
    21     }
    22 }
    23 
    24 class Sub extends Super{
    25     public int field=1;
    26     public int getField(){
    27         //System.out.println("Sub class getField");
    28         return field;
    29     }
    30     public int getSuperField(){
    31         //System.out.println("Sub class getSuperField");
    32         return super.field;
    33     }
    34 }

    运行结果为:

    1 sup.field=0,sup.getField=1
    2 sub.field=1,sub.getField=1,sub.getSuperField=0

    总结:子类在向上转型为父类后,任何域的访问操作都是由编译器进行绑定的,所以不是多态的。

  • 相关阅读:
    鼠标移上与移出事件
    最小高度 最大高度
    鼠标移上改变光标
    设置圆角
    iframe 子窗口获取父窗口元素 父窗口获取子窗口元素
    parent
    禁用滚动条
    mysql--user表
    mysql客户端连不上数据库
    linux下安装MySQL
  • 原文地址:https://www.cnblogs.com/lihaiping/p/5837531.html
Copyright © 2011-2022 走看看