Java中,一切皆是对象!为何数据类型中还分为:基本类型和对象?不应该只有一个类型——对象吗?

 我来答
迪伦少校
推荐于2017-09-28 · TA获得超过359个赞
知道小有建树答主
回答量:272
采纳率:0%
帮助的人:153万
展开全部
首先,这问题问得很好!说明认真思考了。Java中一切皆是对象!这句话没错,因为八种基本类型都有对应的包装类(int的包装类是Integer),包装类自然就是对象了。 基本类型一直都是Java语言的一部分,这主要是基于程序性能的考量,基本类型定义定义的变量是存放在栈中,比如int i = 5;而Integer j = new Integer(10);j则只是一个对象的引用,存放在栈中,而实际的数值10则是放在堆里,堆的读写速度远不及栈了。再有就是基本类型定义的变量创建和销毁很快,而类定义的变量还需要JVM去销毁。
追问
问下,基本类型的包装类有什么用,好像都没怎么见过?
追答
在你的程序中如果某些数据可能会返回空值,那么是要用包装类的,比如
当结果为空时,转换为int会发生异常,而转换为Integer则不会,因为对象可以为null。
一般建议用包装类,虽然会牺牲一些转换效率,但可以避免持久化数据时产生的一些异常。
ahcc08
推荐于2018-04-25 · 知道合伙人软件行家
ahcc08
知道合伙人软件行家
采纳数:11853 获赞数:51941
拥有丰富的软件开发经验。

向TA提问 私信TA
展开全部
Java是一门面向对象的语言,所以Java中,一切皆是对象,这句是正确的。
什么是对象呢?举个例子,如猫就是一个对象,张三也是一个对象。
猫有很多属性,如猫的体重,这时候就需要一个int型的数据来表示,如int weight;
这里的int就是基本类型。数据和对象是不一样的。
你可以这样理解,一个对象有很多数据,每个数据的表示,有的是基本数据类型如int
有的数据就不是基本数据类型如String。

欢迎采纳,如有不明,请继续提问
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
九零后的明天a1
2014-06-29 · 超过28用户采纳过TA的回答
知道答主
回答量:126
采纳率:0%
帮助的人:65.7万
展开全部
我在百度中给你找的一个答案(具体我也解释不清楚,咱关键是会用就好了,不要纠结!):
其实java不是100%的面向对象编程,比如基本数据类型如int,boolean等等都不是对象,也就是不能用new的方式获取,但是java对这些基本数据类型都有解决办法,就是对着一个封装类型,比如int对应着Integer,boolean对应着Boolean,他们都是为了既决基本数据类型面向对象用的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
潇_三_郎
2014-06-29
知道答主
回答量:58
采纳率:0%
帮助的人:21.1万
展开全部
这个怎么说呢,还是做个比方说我们人类社会吧
世界万物皆对象
基本类型好比:元素
元素可以构造一切
人就好比一个对象
但人又是元素组成的
元素与人又皆是世间存在对象
这个比喻虽不够恰当,但试着理解吧
接触多了,你就明白了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
t_host
2014-06-29
知道答主
回答量:7
采纳率:0%
帮助的人:9359
展开全部
对象是一个父类,基本类型都继承Object类型,所以不矛盾。。
追问
基本类型继承Object类型吗?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(5)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式