Hi
I think i understood your question wrongly,anyway coming to assigning int to char this happens to be a widening conversion,From JLS
byte to short, int, long, float, or double
short to int, long, float, or double
char to int, long, float, or double
int to long, float, or double
long to float or double
float to double
These are all the examples of widening conversions,as long as the int value is in therange which char can accept the compiler implicitly converts it into int,but if the int value is not in the range of char the it gives the compiler error saying explicit cast needed to convert int to char.For example this is fine char c=65000 but this will result in a compile error
char c=65555.Hope i am clear this time.
Surya