MENU

关键字 | Java

March 3, 2019 • 我爱学习

本文主要讲的是在java中超级关键的关键字。

权限修饰符

  • 权限修饰符的定义:
      权限修饰符,用于修饰类中的成员(成员变量、成员函数)。
  • 权限修饰符的种类:
        java中有四大修饰符,分别为:
      1. private(私有的) :最小的一种权限,只能在在本类中访问到。
        注意:私有是封装的一种表现形式,但是封装不是私有
      2. default(默认的)
      3. protected(受保护的)
      4. public(公共的)
  • 为什么要提供访问方式而不是直接访问成员变量:
        因为可以在访问方式中加入逻辑判断语句来限制成员变量的内容。


this关键字

  • this关键字代表它所在函数所属对象的引用,简单来讲,哪个对象在调用this所在的函数,this就代表哪个对象。
  • 用途:用于在局部变量和成员变量重名时区分二者。
  • 在一个对象中的成员变量相互调用时,其前面都可视为省略了this.
  • 基本应用:在定义类中功能时,该函数内部要用到调用该函数的对象时,可以用this.来表示这个对象。但凡本类功能内部使用到了本类对象,都用this.表示。
  • 特殊用法:用于构造函数之间的调用,用this()
        示例代码如下:

    person(String n){     //结构函数的重载
      name = n;
    }
    person(String n,int a){        //结构函数的重载
      this(n);     
      age = a;
    }


static(静态)

  • 用法:

    1. 用于修饰成员(成员变量,成员函数)
    2. 当成员被static修饰时,除了可以被对象调用外,还可以直接被类名调用,格式:(类名.静态成员)
  • 特点

    1. 随着类的加载而被加载,随着类的消失而消失
    2. 当类一被加载到内存中时,静态也会被载入内存。因此静态变量也被称为类变量。(非静态变量被称为成员变量或实例变量)
    3. static变量的生命周期最长。
    4. 优先于对象存在
    5. 被所有同类对象共享
    6. 可以直接被类调用。
  • 实例变量与类变量的区别

    1. 存放位置:

    类变量:随着类的加载,存在于方法区中。
    实例变量:随着对象的建立存在于堆内存中

    1. 生命周期:

    类变量:生命周期最长,随着类的消失而消失。对象可以产生多个,用完会消失,类消失无法创建静态变量。
    实例变量:随着对象的消失的消失

  • static的注意事项

    1. 静态方法只能访问静态成员,非静态方法既可以访问非静态成员,也可以访问静态成员。
    2. 静态方法中,不可以定义this,super关键字

    因为静态先于对象存在

  • static的好处

    1. 对对象的共享数据进行单独空间存储,节省空间
    2. 可以直接被类调用
  • 弊端

    1. 生命周期过长
    2. 访问出现局限性

    静态虽好,可不要贪杯哟但只能访问静态

Last Modified: September 8, 2021