配列の配列みたいに参照が2段になってないとシャローだのディープだのって話はでてこないぞ。

byte[][] array = {{ 0, 1, 2 }};
byte[][] shallowCopy = new byte[][]{ array[0] }; //内側の配列を書き換えるとarrayにも影響が出る。
byte[][] deepCopy = new byte[][] { array[0].clone() }; //内側の配列を書き換えてもarrayに影響が出ない。