Java technology compiler makes certain assumptions when it evaluate expressions.
When you use primitive data type value in an expression with certain operator (*,+,-,/,%), the value are automatically converted to an int value (or higher if necessary), then the operation is performed.