Strictly speaking, Java is pass-by-value.
However, what gets passed by value is a "pointer" to an object. So you will be able to access and modify the state of that object from inside the called method (and those changes are visible to everyone else who has a "pointer" to the same object).
Pass-by-reference would mean that you can change where the variable on the calling side points to. That you cannot do in Java.
For example
public static void editString(StringBuilder x){
x = new StringBuilder("Foo");
}
has no effect outside of the method. In pass-by-reference, you would actually be assigning that new StringBuilder back into the calling method variable.