• Java中this和super的区别和应用


    Java中this和super的区别和应用

     1 /*
     2     问题是:
     3         1.我不仅仅要输出局部范围的变量num,还要输出本类成员范围的变量num。怎么办呢?
     4         2.我还想要输出父类成员范围的变量num。怎么办呢?
     5             如果有一个东西和this相似,但是可以直接访问父类的数据就好了。
     6             恭喜你,这个关键字是存在的:super。
     7             
     8     this和super的区别?
     9         分别是什么呢?
    10             this代表本类对应的引用。
    11             super代表父类存储空间的标识(可以理解为父类的引用,可以操作父类的成员,但不是父类的对象!)
    12 
    13         怎么用呢?
    14             A:访问成员变量
    15                 this.成员变量     调用本类的成员变量
    16                 super.成员变量    调用父类的成员变量
    17             B:访问构造方法(在子父类的构造方法问题讲)
    18                 this(...)        调用本类的构造方法
    19                 super(...)       调用父类的构造方法
    20             C:访问成员方法(在子父类的成员方法问题讲)
    21                 this.成员方法     调用本类的成员方法
    22                 super.成员方法    调用父类的成员方法
    23 */
    24 
    25 class Father {
    26     public int num = 10;
    27 }
    28 
    29 class Son extends Father {
    30     public int num = 20;
    31     
    32     public void show() {
    33         int num = 30;
    34         System.out.println(num);
    35         System.out.println(this.num);
    36         System.out.println(super.num);
    37     }
    38 }
    39 
    40 class ExtendsDemo5 {
    41     public static void main(String[] args) {
    42         Son s = new Son();
    43         s.show();
    44     }
    45 }
    输出的结果为:
    30
    20
    10
  • 相关阅读:
    ios连信登录简要分析
    某app涉及腾讯开源数据库wcdb逆向
    某手反调试绕过
    翻译君数据库解密
    顺丰Apk加密数据解密分析
    vue项目使用Cordova用打包成app 沉浸式导航栏
    GitHub项目简介
    vue项目的开发
    vue项目创建
    深入理解JavaScript程序设计
  • 原文地址:https://www.cnblogs.com/chenmingjun/p/8449097.html
Copyright © 2020-2023  润新知