mmm, kind of. Technically everything is pass by value, but when you "pass an object" it's the objects address which gets passed by value.

ex.:
public static void doIt(int[] a)
{
a = new...