標籤:style blog color java 使用 strong ar div
看一段代碼:(Demo112.java),先瞭解為什麼要使用this。
/* this的必要性*/public class Demo112{ public static void main(String []args){ Dog dog1=new Dog(2,"大黃"); Person p1=new Person(dog1,23,"剛子"); Person p2=new Person(dog1,24,"小龍"); p1.showInfo(); p1.dog.showInfo(); }}//定義一個人類class Person{ //成員變數 int age; String name; Dog dog;//參考型別
//人類的建構函式 public Person(Dog dog,int age,String name){ //如此書寫可讀性很差,不知道兩個age哪個指參數列表中的,哪個指成員變數中的。 //age=age; //name=name;
//引入this,讓它指向當前對象。 this.age=age; //this.age指定的是成員變數age this.name=name; //this.name指定的是成員變數name this.dog=dog; } //顯示人名字 public void showInfo(){ System.out.println("人名是:"+this.name); }}class Dog{ int age; String name; public Dog(int age,String name){ this.age=age; this.name=name; } //顯示狗名 public void showInfo(){ System.out.println("狗名叫"+this.name); }}
從案例中看出,引入thsi是必要的。this是屬於一個對象,不屬於類的,但它不能在類定義的外部使用,只能在類定義的方法中使用。java虛擬機器會給每個對象分配this,代表當前對象。