2、引用类型
引用类型传递的是虚地址。
如下程序:
package com.csst.test;
public class Test6 {
/**
* @param args
*/
public void printName(Student stu){
System.out.println("printName: name is "+stu.getName
());
}
public void printPwd(Student stu){
stu.setPwd("abcdef");
System.out.println("printPwd: pwd is "+stu.getPwd());
}
public static void main(String[] args) {
// TODO Auto-generated method stub
Test6 test6=new Test6();
Student stu1=new Student("Rose");
test6.printName(stu1);
System.out.println("main: name is "+stu1.getName());
Student stu2=new Student("John","123");
test6.printPwd(stu2);
System.out.println("main: pwd is "+stu2.getPwd());
}
}
class Student{
private String name;
private String pwd;
public String getPwd() {
return pwd;
}
public void setPwd(String pwd) {
this.pwd = pwd;
}
public Student() {
super();
}
public Student(String name) {
super();
this.name = name;
}
public Student(String name, String pwd) {
super();
this.name = name;
this.pwd = pwd;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
运行结果为:
printName: name is Rose
main: name is Rose
printPwd: pwd is abcdef
main: pwd is abcdef
在该类main方法中,将stu1和stu2传递给printName,printPwd时,是将 stu1,stu2的虚地址传递给了对应的方法参数。因此,在printName,printPwd中 打印出的name和pwd,与main中打印的name和pwd永远相同,尤其在printPwd方法 中,通过参数改变了其pwd属性后,main方法中的stu2的pwd属性也随之变化,足 以说明stu2与printPwd的参数本质上是一个对象。
通过本篇学习,可以基本了解java语言中值传递的特征,进一步,初学者可 以继续学习类与类之间的关系。
上一篇:Java语言中的构造方法
下一篇:初见python你对它了解多少?
¥299.00
¥399.00
¥29.00
¥498.00