java基础学习记录之this

58 阅读1分钟
public class thiss {
    public static void main(String[] args) {
        Dogy dog1 = new Dogy("JACK", 3);
        System.out.println("dog1的哈希值=" + dog1.hashCode());
        dog1.info();

        Dogy dog2 = new Dogy("TERRY", 2);
        System.out.println("dog2的哈希值=" + dog2.hashCode());
        dog2.info();

        Ted t11 = new Ted();
        t11.f2();
        Ted t22 = new Ted();
    }
}
class Dogy{
    String name;
    int age;
    public Dogy(String name, int age){
        this.name = name;
        this.age = age;
        System.out.println("this.的哈希值=" + this.hashCode());
    }
    public void info(){
        System.out.println(name + "\t" + age + "\t");
    }
}
class Ted{
    public Ted(){
        this("jack", 100);
        System.out.println("Ted构造器被调用");
    }
    public Ted(String name, int age){
        System.out.println("Ted有参构造器被调用");
    }
    public  void  f1(){
        System.out.println("f1方法");
    }
    public void f2(){
        System.out.println("f2方法");// 3.访问成员方法的语法是this.方法名(参数列表)
        f1(); //方法调用的方式1
        this.f1();// 方法调用的方式2.
    }
}
//this介绍:
//1.this关键字可以用来访问本类的属性,方法和构造器
//2.this用来区分当前类的属性和局部变量
//3.访问成员方法的语法是this.方法名(参数列表)
//4.访问构造器的语法:this(参数列表); 注意:只能在构造器中使用
//5.this不能在类定义的外部使用,只能在类定义的方法中使用
//6.构造器访问另外一个构造器,this语句必须放在第一行

// this总结:哪个对象调用,this就代表哪个对象