对于以下代码:java
1class Fruit{
2 public int weight;
3 public Fruit(int w) {
4 weight=w;
5 }
6
7}
8public class HelloWorld {
9 public static void main(String[] args) {
10 Fruit fruit=new Fruit(10);
11 }
12}
复制代码
若再添加语句web
Fruit fruit2;
fruit2=fruit1;
复制代码
则存储图变为 编程
做用:让类中的一个方法,访问该类里的另外一个方法或成员变量。bash
以下代码:app
1class S{
2 public int a;
3 public int b;
4 public S(int aa,int bb) {
5 a=aa;
6 b=bb;
7 }
8}
9public class HelloWorld {
10 public static void swap(S s) {
11 int tmp=s.a;
12 s.a=s.b;
13 s.b=tmp;
14 }
15 public static void main(String[] args) {
16 S s=new S(1, 3);
17 System.out.println("交换前:a="+s.a+",b="+s.b);
18 swap(s);
19 System.out.println("交换后:a="+s.a+",b="+s.b);
20 }
21}
复制代码
执行结果:ui
1交换前:a=1,b=3
2交换后:a=3,b=1
复制代码
执行18行后,建立方法执行栈区swap栈,存储示意图以下:
this