引用传递的本质:一块堆内存空间可以同时被多个栈内存空间所指向,不同的栈可以修改同一块堆内存的空间。
实例代码:
//类:某些共性的数据集合,类之中定义了对象的属性
//类只能依靠对象才可以使用。而且类属于引用
//每一个对象之中要保存的是自己的属性信息
class Person {
//string是一个类,但是这是一个特殊的类
//”“声明的就是一个string类对象
//任何的属性都必须进行封装,封装后的属性必须编写setter和getter
private String name;
//构造方法名称与类名称相同,无返回值声明
//构造方法实在实业关键字new的时候调用的,而且只调用一次
//构造方法之间可以使用this互相调用,但是至少要保留一个出口
//构造方法的主要目的是为类中的属性初始化
public Person(String name) {
this.name = name;//只要访问属性前面都加上this
}
//setter方法除了可以设置内容之外还可以修改内容
public void setName(String name) {
this.name = name;
}
public String getName() {
return this.name;
}
}
public class TestY {
public static void main(String[] args) {
Person per = new Person("zhangsan");
//Person temp = per; //引用传递
fun(per);
System.out.println(per.getName());
}
//static方法可以由类名称直接调用
//static方法可以在没有实例化对象的时候使用
//static方法只能访问static属性或static方法
public static void fun(Person temp) {
temp.setName("lisi");
}
}