如题所述
第1个回答 推荐于2017-10-04
自动转换和强制转换我知道的有两种情况:基本数据类型 和 类。
先说基本数据类型:因为java是强类型语言,由强类型向弱类型转换需要强制转换,而由弱类型向强类型转换则系统自动转换。比如:double 类型相比int类型是属于强类型,则由double类型的数据向int类型数据转换就需要强制转换,反之则自动转换。另外八大基本数据类型的强弱关系如下:byte<short=char<int<long<float<double,同级之间相互转换也需要强制转换。
再说类:在类中由子类对象向父类对象(包括接口)转换时,系统自动转换,称为向上转型,而由父类对象(包括接口)向子类对象转换时,则需要进行强制转换,称为向下强制转换。本回答被提问者采纳
先说基本数据类型:因为java是强类型语言,由强类型向弱类型转换需要强制转换,而由弱类型向强类型转换则系统自动转换。比如:double 类型相比int类型是属于强类型,则由double类型的数据向int类型数据转换就需要强制转换,反之则自动转换。另外八大基本数据类型的强弱关系如下:byte<short=char<int<long<float<double,同级之间相互转换也需要强制转换。
再说类:在类中由子类对象向父类对象(包括接口)转换时,系统自动转换,称为向上转型,而由父类对象(包括接口)向子类对象转换时,则需要进行强制转换,称为向下强制转换。本回答被提问者采纳