1. The type of this: Which object is called is the reference type of that object
1.this.data; //Access properties
2.this.func(); //Access method
3.this(); //Call other constructors in this class
This is used in member methods
Let's take a look at what will happen if this is not added
class MyDate{ public int year; public int month; public int day; public void setDate(int year, int month,int day){ year = year;//这里没有加this month = month;//这里没有加this day = day;//这里没有加this } public void PrintDate(){ System.out.println(year+"年 "+month+"月 "+day+"日 "); } } public class TestDemo { public static void main(String[] args) { MyDate myDate = new MyDate(); myDate.setDate(2000,9,25); myDate.PrintDate(); MyDate myDate1 = new MyDate(); myDate1.setDate(2002,7,14); myDate1.PrintDate(); } }
The expectation we want to achieve is to output September 25, 2000, and July 14, 2002 respectively.
And the actual output result is
And when we add this
class MyDate{ public int year; public int month; public int day; public void setDate(int year, int month,int day){ this.year = year; this.month = month; this.day = day; } public void PrintDate(){ System.out.println(this.year+"年 "+this.month+"月 "+this.day+"日 "); } } public class TestDemo { public static void main(String[] args) { MyDate myDate = new MyDate(); myDate.setDate(2000,9,25); myDate.PrintDate(); MyDate myDate1 = new MyDate(); myDate1.setDate(2002,7,14); myDate1.PrintDate(); } }
realizes the function of assignment. In order to avoid errors, we recommend bringing this
One refers to using this in a normal member method to call another member method
class Student{ public String name; public void doClass(){ System.out.println(name+"上课"); this.doHomeWork(); } public void doHomeWork(){ System.out.println(name+"正在写作业"); } } public class TestDemo2 { public static void main(String[] args) { Student student = new Student(); student.name = "小明"; student.doClass(); } }
Running result:
(3)this()
This refers to using this in the constructor method to call other constructors of this class
When using this, please pay attention to the following points
1. this can only call other constructors in the constructor
2.this must be placed in the first line
3.Only one constructor can be called in one constructor
operation result
The above is the detailed content of How to use this method in Java. For more information, please follow other related articles on the PHP Chinese website!