一、this关键字

1.对象创建的过程

java中使用new关键字调用构造器,构造器返回该类的对象,但这个对象并不是完全由构造器负责创建。创建一个对象需要如下四步:
(1)系统为对象分配空间,并将对象成员变量初始化为空或0;
(2)执行属性值的显式初始化;
(3)执行构造方法,将实参传给对象的成员变量进行赋值;
(4)返回对象的地址给相关变量。

2.this的本质

this的本质是:创建好的对象的地址。
由于在构造方法调用前对象已经创建好了,因此,在构造方法中也可以使用this代表当前对象

3.this在类中的使用

使用注意事项

  • 在程序产生二义性时建议使用this来进行区分和调用;在普通方法中,this总是指向调用该方法的对象;构造方法中,this总是指向正要初始化的对象。
  • 使用 this 关键字调用重载的构造方法,避免相同的初始化代码。但只能在构造方法中用,并且必须位于构造方法的第一句。
  • this 不能用于 static 方法中。
    用法
  • 语法格式:
    this.属性;
    this.方法(实参列表);
    样例代码:

    运行结果;

二、static关键字

1.static关键字的特点

在类中,用static声明的成员变量为静态成员变量,也称类变量。静态成员变量的生命周期与其所在的类的生命周期相同。它具有如下特点:

  • 为该类的公用变量,属于类,被该类的所有实例共享,在类被载入时被显式初始化。
  • 对于该类的所有对象来说,static 成员变量只有一份。被该类的所有对象共享!!
  • 一般用==“类名.类属性/方法”==来调用。(也可以通过对象引用或类名(不需要实例化)访问静态成员。)
  • 在 static方法中不可直接访问非static的成员。

2.static关键字的使用

== 1.语法格式==
类名.静态变量;
类名.静态方法(实参列表);
在类的成员方法间,可以直接调用静态变量和静态方法,而不需要通过对象来调用。

样例代码

Java键值对象 java创建对象的关键字_初始化

运行结果

Java键值对象 java创建对象的关键字_初始化_02