this只能在类中得非静态方法中使用
thispublic class Cat { private String name; public void eat () { // this引用本类得成员属性 System.out.println(this.name); } public void drink () { // this引用本类中得方法 this.eat(); }}
private String name;public void setName(String name) { this.name = name;}
private String name;public Cat eat(String name) { this.name = name; return this;}public static void main(String[] args) { Cat cat1 = new Cat(); Cat cat2 = cat1.eat("鱼"); System.out.println(cat2.name); // 鱼}
this()
private String name; private int age; public Cat() { System.out.println("cat无参构造"); } public Cat(String name) { // 必须放在第壹行 this(); System.out.println("cat有参构造 " + name); } public Cat(String name, int age) { // 只能存在一个this() this(name); System.out.println("cat有参构造" + name + " " + age); } public static void main(String[] args) { new Cat(); // cat无参构造 new Cat("小白"); // cat无参构造 // cat有参构造 小白 new Cat("小橘",3); // cat无参构造 // cat有参构造 小橘 // cat有参构造小橘 3 }
例子