JAVA 将对象引用作为参数修改实例对象参数 初学者笔记
JAVA采用“按值调用”,所有方法得到的仅仅是参数值的一个副本。
public class ParamTest
{
public static void main(String[] args)
{
System.out.println("\nTesting tripleSalary:");
var harry = new Employee("Harry", 50000);
System.out.println("Before: salary=" + harry.getSalary());
tripleSalary(harry);//传入值的副本,即引用Employee对象的副本
System.out.println("After: salary=" + harry.getSalary());
}
public static void tripleSalary(Employee x)
{
x.raiseSalary(200);
System.out.println("End of method: salary=" + x.getSalary());
//此操作过后参数变量x将不再使用,
// 但x与harry所共同引用的对象Employee的参数的值将发生改变
}
class Employee
{
private String name;
private double salary;
public Employee(String n, double s)//我是一个构造器方法
{
name = n;
salary = s;
}
public String getName()//我是一个访问器方法
{
return name;
}
public double getSalary()//我是一个访问器方法
{
return salary;
}
public void raiseSalary(double byPercent)//我是一个更改器方法
{
double raise = salary * byPercent / 100;
salary += raise;
}
}
/*更改器方法:调用这个方法后,对象的参数值(状态)会改变,我们称之为更改器方法*/
/*访问器方法:只访问对象而不修改对象的方法,我们称之为更改器方法*/
/*构造器方法:构造器方法于类同名,总是配合new运算符调用,在构建其类的对象时构造器会运行,并将实例字段初始化为理想状态*/
本文来自博客园,作者:main(void),转载请注明原文链接:https://www.cnblogs.com/MR---Zhao/p/12576963.html

浙公网安备 33010602011771号