java保留基本数据类型的原因

        java中有8中基本数据类型,分别是boolean,char,byte,short,int,long,float,double这8种,但是我们可曾思考过,java明明是一种面向对象的语言,为什么还要保留基本数据类型呢?

        对此,我们就来对比一下基本数据类型和对象类型。基本数据类型基于值,对象类型基于对象的引用。先做两种声明,第一种是使用基本数据类型,第二种是使用包装类。

        int n1 = 100;

        Integer n2 = new Integer(100);

        两种声明的内存结构如下图所示。

        

        new将对象存储在堆中,针对一些特别小的、简单的变量,往往不是很有效,创建一个并非是引用的“自动”变量,这个变量直接存储“值”,并置于栈中,更加高效些。

        对此问题的思考源自导师开会时的发问。总以为理所当然,但是仍然深藏学问。多思考,多发问,多思考.....

       日ji

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值