In this particular case, you think wrong, my friend. The Java language specification is quite clear on this point. All integer literals are of "int" type, and all floating-point literals are "double". In the example we're looking at, the "int" version is called. You could use "aMethod((byte) 12)" to call the byte version (or pass a variable, of course.)
Now, the original poster didn't ask this, but I'll tell him anyway: this is a very bad idea. This sort of wonton use of overloading can be really confusing. In general, overloading a method on multiple different integral types this way is a bad idea, and should be avoided.