• this


    什么是this:

    表示当前对象,this主要存在于两个位置:

      构造器中:就表示当前创建的对象

      方法中:哪个对象调用this所在的方法,此时this表示哪个对象。

    当一个对象创建之后,JVM会分配一个引用自身的引用this。

    使用this:

    1:解决成员变量和参数(局部变量)之间的二义性,必须使用;

    2:同类中实例方法间互调,(此时可以省略this,但不建议省略)

    3:将this作为参数传递给另一个方法

    4:将当前对象作为方法的返回值(链式方法编程)

    5:构造器重载的互调,this(参数)必须写在构造方法第一行,所以一个构造器中只能调用一个重载的构造器。当多个构造器重载时,或者多个方法重载时,我们用少参数调用多参数的。因为参数越多,该方法考虑的未知的因素也越多。

    User(String name)

    {

    this.name = name;
    }

    User(String name,int age)

    {

    this(name);//表示在调用参数为String类型的构造器。

    this.age = age;

    }

    6:static不能和this一起使用

    创建对象并给对象设置初始值有两种方式:

    1):通过无参数构造器创建出一个对象,再通过对象调用相应的setter方法。

    2):直接调用带参数的构造器,创建出来的对象就有了初始值。

    -----------------------------------

    如何选择:

    1:如果存在带参数的构造器,方式2是比较简洁的

    2:在构建对象的时候需要初始化多个数据,如果使用方式2,那么构造器得提供N个参数,参数过大不直观。此时方式1简单明了。

    有时候需要根据数据来创建对象,此时优先使用方式1,其他情况任选。

  • 相关阅读:
    ansible 批量在远程主机上执行命令
    SQLAlchemy
    operator, itertools
    mongodb基础语法
    django model Meta选项
    __getattr__,settr
    django的contenttype表
    time和datetime和tzinfo
    全局钩子的改名
    dom中文字居中
  • 原文地址:https://www.cnblogs.com/falling/p/7997401.html
Copyright © 2020-2023  润新知