So the other day when I was looking at the wikipedia page for Java bytecode I came across this example:
Consider the following Java code:
You should distinguish between language keyword goto and byte code or assembly instruction goto.
It is bad practice to use goto jumps in high level code, like in C. Therefore it is not allowed in Java.
The original Edsger W. Dijkstra paper on goto.
In compiled code usage of unconditional jump instruction goto is completely OK. It is put in there by compiler and it does not forget about implications of jumping around the code including initialization of data, deallocating memory etc.