Java中this的基礎用法
阿新 • • 發佈:2018-11-08
1.this表示類中的屬性
如下我們的有參構造方法中。
1 public class Person { 2 private String name; 3 private int age; 4 5 public Person(String name, int age) { 6 //this呼叫本類屬性進行賦值 7 this.name = name; 8 this.age = age; 9 } 10 @Override 11 public String toString() {View Code12 return "Person{" + 13 "name='" + name + '\'' + 14 ", age=" + age + 15 '}'; 16 } 17 }
如果我們把構造方法中的this去掉。
1 public class Person { 2 private String name; 3 private int age; 4 5 public Person(String name, intView Codeage) { 6 //去掉this,那麼結果會怎麼樣呢? 7 name = name; 8 age = age; 9 } 10 @Override 11 public String toString() { 12 return "Person{" + 13 "name='" + name + '\'' + 14 ", age=" + age + 15 '}'; 16 } 17 }
這是構造方法中並沒有給類的屬性去賦值,所以Person中的屬性依然是預設值。
2.使用this呼叫構造方法
1 public class Person { 2 private String name; 3 private int age; 4 5 public Person() { 6 } 7 8 public Person(String name, int age) { 9 //使用this呼叫上面的無參構造方法 10 //構造方法在例項化物件時被自動呼叫,使用this須放在第一行 11 this(); 12 this.name = name; 13 this.age = age; 14 } 15 }View Code
3.this表示當前物件
1 public class Person { 2 private String name; 3 private int age; 4 5 public Person(String name, int age) { 6 this.name = name; 7 this.age = age; 8 } 9 public String getPersonInfo(){ 10 return "呼叫方法的當前物件->"+this; 11 } 12 }View Code
那個物件呼叫了類中的方法,則this就表示那個物件。
結尾:這是我的第一篇部落格,很簡單,卻也很開心。擱置已久,想開始又不知從何寫起。望君堅持!
@Author: qiuling
@Date: 2018/11/8 21:25