Am I understanding correct? The original poster thinks that Byte("127") isn't available for GC until after line 4? It seems pretty clear that after line 2 that object is available, just as Barry said.
What is the reasoning you are using that makes you think it would be line 4? Maybe I'm missing something here.
Byte Object will be eligible for GC after the execution of line 2. If you comment line b2[1] = b1; then same Byte object will be eligible for GC after the execution of line 1.