全国旗舰校区

不同学习城市 同样授课品质

北京

深圳

上海

广州

郑州

大连

武汉

成都

西安

杭州

青岛

重庆

长沙

哈尔滨

南京

太原

沈阳

合肥

贵阳

济南

下一个校区
就在你家门口
+
当前位置:首页  >  技术干货

java强制类型转换的使用

发布时间:2022-08-04 16:47:00
发布人:qyf

java强制类型转换的使用

  1、在必要时,int类型的值将会自动转换为double类型。

  但另一方面,可以把double类型强制转成int,但是可能会损失信息。

  2、如果试图将一个数值从一种类型强制转换为另一种类型,而又超出了目标类型的表示范围,结果就会截断成一个完全不同的值。

  例如,(byte)300 的实际值为44。

  实例

  //假若父类对象占1M的内存,因为子类对象有一些其他内容,所以多占用0.5M内存,子类对象一共占1.5M内存

  People[] staff = new People[2];//这里我们定义了一个父类的对象,可以指向1M内存;

  staff[0] = new RichPeople("John", 18, 100,1200);//开辟了1.5M内存,但是实际只指向了1M内存

  staff[1] = new RichPeople("Tp",20,200,20000);

  if(staff[0] instanceof RichPeople){//判断staff[0]是否是RichPeople的实例

  //先创建一个boss实例做暂存,把staff[0]做强制类型转换

  //因为boss的引用就是staff[0],所以对boss的操作就是对staff[0]的操作

  RichPeople boss = (RichPeople)staff[0];

  boss.addDeposit(10000);

  //也可以这样写:

  //((RichPeople)staff[0]).addDeposit(10000);

  //((RichPeople)staff[0])可以看做是创建了一个RichPeople类的匿名对象(等效于上面的boss)

  //这个匿名对象的引用和RichPeople类型的staff[0]是相同的

  以上就是java强制类型转换的使用,希望对大家有所帮助。更多关于“java培训”的问题,欢迎咨询千锋教育在线名师。千锋教育多年办学,课程大纲紧跟企业需求,更科学更严谨,每年培养泛IT人才近2万人。不论你是零基础还是想提升,都可以找到适合的班型,千锋教育随时欢迎你来试听。

相关文章

进程和线程有什么联系和区别?

进程和线程有什么联系和区别?

2023-10-14
结束任务管理器快捷键是什么?

结束任务管理器快捷键是什么?

2023-10-14
服务器为什么要用Linux?

服务器为什么要用Linux?

2023-10-14
Vmlogin是干什么用的?

Vmlogin是干什么用的?

2023-10-14

最新文章

常见网络安全面试题:Windows常用的命令有哪些?

常见网络安全面试题:Windows常用的命令有哪些?

2023-10-09
常见网络安全面试题:根据设备告警如何展开排查?

常见网络安全面试题:根据设备告警如何展开排查?

2023-10-09
常见网络安全面试题:mysql加固呢?(数据库加固)

常见网络安全面试题:mysql加固呢?(数据库加固)

2023-10-09
常见网络安全面试题:windows和linux加固?(操作系统加固)

常见网络安全面试题:windows和linux加固?(操作系统加固)

2023-10-09
在线咨询 免费试学 教程领取