The code has c.velocity += 10; This means you are accessing the instance variable velocity on the Car object referenced by c. That's fine.
If it just said velocity += 10; you would have the problem you mentioned about accessing a non-static variables.
You could move the go() method to another class and it would still compile for that matter. The fact that it is in the Car class at all is a happy coincidence. Or an evil trick

.