Hi,
Short sObject = new Short(22);
won't work as it knows 22 is an int
Because implicit narrowing is done automatically for assignments, but not automatically done while evaluating method parameters..
So you to do explicit cast to pass a Integer literal to a method that accepts short value.
Look at
jls for more information.
Thanks,
Raja