static void testNumericPromotion() {
char char1 = 1, char2 = 2;
short short1 = 1, short2 = 2;
int int1 = 1, int2 = 2;
float float1 = 1.0f, float2 = 2.0f;
// char1 = char1 + char2; // 错误:无法从 int 转换为 char;
// short1 = short1 + short2; // 错误:无法从 int 转换为 short;
int1 = char1 + char2; // char 被提升为 int。
int1 = short1 + short2; // short 被提升为 int。
int1 = char1 + short2; // char 和 short 都被提升为 int。
float1 = short1 + float2; // 空头被提升为浮动。
int1 = int1 + int2; // int 不变。
}