I think this is because Spring use reflection to initiate your bean and invoke its method.
So even the bean class itself is not visible for the bean factory it still can access it.
If there wasn't a main method, could Mix4 create more Mix4's, like say within a method right in the same class of Mix4?