java对象引用传递实践,理解对象传递和值传递
package cn.com.github;
class NewObject {
public StringBuffer newString() {
StringBuffer buffer = new StringBuffer();
buffer = PassValue.passvalue();
return buffer;
}
}
class NotNewObject {
public StringBuffer newString() {
StringBuffer buffer = null;
buffer = PassValue.passvalue();
return buffer;
}
}
class PassValue {
public static StringBuffer passvalue() {
StringBuffer buffer = new StringBuffer();
buffer.append("hello world");
return buffer;
}
}
class QuoteObject{
public StringBuffer newString() {
StringBuffer buffer = null;
buffer = PassValue.passvalue();
StringBuffer buffer2 = null;
buffer2 = buffer;
buffer2.append("hi,guys");
return buffer2;
}
}
public class NewOrNotObject {
public static void main(String[] args) {
NewObject newObject = new NewObject();
System.out.println(newObject.newString());
NotNewObject notNewObject = new NotNewObject();
System.out.println(notNewObject.newString());
QuoteObject object = new QuoteObject();
System.out.println(object.newString());
}
}