• 技术文章 >java >java基础

    java强制类型转换的使用

    小妮浅浅小妮浅浅2021-10-19 10:06:20原创5710

    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学习指路:Java基础

    专题推荐:java 强制类型
    品易云
    上一篇:java类常量是什么 下一篇:java自增和自减运算符的介绍

    相关文章推荐

    • Java基础之如何快捷键生成文档注释?• Java基础中注释添加的位置以及原则详解• Java基础里的@Target是什么?怎么用?• Java基础@Retention如何创建注解?• Java基础之内置注解有哪些?

    全部评论我要评论

    © 2021 Python学习网 苏ICP备2021003149号-1

  • 取消发布评论
  • 

    Python学习网