Java自学day 9 之 this

Q:什么是this?

A:java虚拟机会给每个对象分配this,代表当前对象。

使用this解决变量名问题。

import java.util.Scanner;
public class test1 {
    public static void main(String args[]) {

        Dog d1 = new Dog("dazhuang",1);
        d1.info();
    }
}
class Dog{
    String name;
    int age;

    public Dog(String name, int age){
        this.name = name;
        this.age = age;
    }
        public void info(){
        System.out.println(name+age);
    }

}

整体感觉和c中函数里的指针类似,指向对象的感觉,通过它可以访问对象也可以直接用对象。

this的使用细节:

1. this关键字可以用来访问本类的属性,方法,构造器。

2.this用于区分当前类的属性和局部变量。

3.访问成员方法的语法:this.方法名(参数列表)

4.访问构造器语法:this(参数列表);只能在构造器中使用。

import java.util.Scanner;
public class test1 {
    public static void main(String args[]) {

        T t2 = new T();

    }
}
class T{
    public T(){
        //tips: 对this的调用必须是构造器中的第一个语句
        this("jack",100); //通过this访问T(String name,int age)构造器
        System.out.println("T()");
    }
    public T(String name,int age){
        System.out.println("T(String name,String age)");
    }

}

5.this不能再类定义的外部使用,只能在类的定义的方法中使用。

注意:

 不写this时候name按照就近原则输出,不能精准定位到对象,而ehis可以准确定位到对象(在主函数中创建的对象)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值