this
- 在類的方法定義中使用的
this
關(guān)鍵字代表使用該方法的對象的引用 - 當(dāng)必須指出當(dāng)前使用方法的對象是誰時要使用
this
- 有時使用
this
可以處理方法中成員變量和參數(shù)重名的情況 - this可以看作是一個變量,它的值是當(dāng)前對象的引用
static
- 在類中,用
static
聲明的成員變量為靜態(tài)成員變量,它為該類的公用變量,在第一次使用時被初始化,對于該類的所有對象來說,static成員變量只有一份 - 用static聲明的方法為靜態(tài)方法,在調(diào)用該方法時,不會將對象的引用傳遞給它,所以static方法中不可訪問非static的成員.
靜態(tài)方法不再是針對某個對象調(diào)用,所以不能訪問非靜態(tài)成員 - 可以通過對象引用或類名(不需要實(shí)例化)訪問靜態(tài)成員,如
public class Person {
public static int age;
}
//
Person p = new Person();
p.age = 20;//通過對象引用訪問靜態(tài)成員
Person.age = 30;//通過類名訪問靜態(tài)成員