zoukankan      html  css  js  c++  java
  • java中super关键字和this比较以及final关键字的理解

    1.super关键字和this关键字不同

    • this代表本类对象的引用
    • super代表父类对象存储空间的标识(可以简单的理解为父类对象的引用)

    2.用法上类似

    • 访问成员变量
      this.成员变量
      super.成员变量
    • 访问构造方法
      this(...)
      super(...)
    • 访问成员方法
      this.成员方法()
      super.成员方法()

    代码例子

    class A{
          private int age ;
          private String name;
          public A(){
          }
          public A(int age , String name){
                this.age = age ;
                this.name =name;
          }
          public void show(){
                System.out.println("姓名:"+name+"年龄:"+age);
          }
    }
    class B extends A {
          public B(){
                super();//默认调用父类的构造方法
          }
          public void print(){
                super.show();//用super关键字调用父类的方法
                System.out.println("我是B ");
          }
    }
    public class Test{
         public static void main(String []  args){
                B b = new B();//创建一个B类对象
                b.print();//通过对象访问方法
          }
    }
    

    3.final关键字

    final 关键字是最终的意思,可以修饰类,成员变量,成员方法。
    1.修饰类,类类不能被继承
    2.修饰变量,变量就标称了常量,只能被赋值一次修饰方法,方法不能被重写**。

    final关键字面试题

    1.final修饰局部变量

    • 在方法内部,该变量不可以被改变
    • 在方法声明上,分为基本类型和引用类型作为参数的情况
    • 基本类型,是值不能被改变
    • 引用类型,是地址值不能被改变
    • final修饰变量的初始化时机
      在对象构造完毕前即可
  • 相关阅读:
    [C++]C++指针和引用及区别
    FMX画图实例
    VCL画图实例
    DelphiXE FireMonkey 如何画图
    教程-Delphi 启动流程
    Delphi类引用示例
    手机UC下载视频M3U8转MP4
    ComputeShader中Counter类型的使用
    ComputeShader中Consume与AppendStructuredBuffer的使用
    通过一个小Trick实现shader的像素识别/统计操作
  • 原文地址:https://www.cnblogs.com/Xieyingpeng/p/14143430.html
Copyright © 2011-2022 走看看