什么情况下java实现自动转换,什么情况下需要强制转换?TAT
1个回答
展开全部
自动转换和强制转换我知道的有两种情况:基本数据类型 和 类。
先说基本数据类型:因为java是强类型语言,由强类型向弱类型转换需要强制转换,而由弱类型向强类型转换则系统自动转换。比如:double 类型相比int类型是属于强类型,则由double类型的数据向int类型数据转换就需要强制转换,反之则自动转换。另外八大基本数据类型的强弱关系如下:byte<short=char<int<long<float<double,同级之间相互转换也需要强制转换。
再说类:在类中由子类对象向父类对象(包括接口)转换时,系统自动转换,称为向上转型,而由父类对象(包括接口)向子类对象转换时,则需要进行强制转换,称为向下强制转换。
先说基本数据类型:因为java是强类型语言,由强类型向弱类型转换需要强制转换,而由弱类型向强类型转换则系统自动转换。比如:double 类型相比int类型是属于强类型,则由double类型的数据向int类型数据转换就需要强制转换,反之则自动转换。另外八大基本数据类型的强弱关系如下:byte<short=char<int<long<float<double,同级之间相互转换也需要强制转换。
再说类:在类中由子类对象向父类对象(包括接口)转换时,系统自动转换,称为向上转型,而由父类对象(包括接口)向子类对象转换时,则需要进行强制转换,称为向下强制转换。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询