Download presentation
Presentation is loading. Please wait.
1
辅导课程八
2
this 关键字 this TestThis/Leaf.java 在类的方法定义中使用的 this 关键字代表使用该方法的对象的引用。
public class Leaf{ int i = 0; Leaf(int i) { this.i = i; } Leaf increament(){ i++; return this; } void print(){ System.out.println("i = "+i); } public static void main(String[] args){ Leaf leaf = new Leaf(100); leaf.increament().increament().print(); TestThis/Leaf.java
3
stack heap i:102 this ret:xx ret:xx i:100 leaf:xx
4
stack heap i:102 this ret:xx ret:xx leaf:xx
5
static 关键字 在类中,用static声明的成员变量为静态成员变量。它为该类的公用变量,在第一次使用时被初始化;对于该类的所有对象来说,static成员变量只有一份,被所有对象所共享。 可以通过对象引用或类名(不需要实例化)访问静态成员。 在类中,用static声明的方法为静态方法。静态方法不属于某个对象,因而在调用该方法时,不会将对象的引用传递给它,所以在static方法中不可访问non-static的成员。 static class:除了静态实名内部类之外,类一般不能具有静态属性。 TestStatic/Cat.java
6
heap name name stack id:100 id:2000 data seg mimi:xx pipi:xx sid: 101 “mimi” “pipi”
7
heap name name id:2000 id:100 stack data seg sid:2001 “mimi” pipi:xx “pipi” mimi:xx
Similar presentations