您的位置:首页 > 其它

这是一个长长的故事--关于自动包装的理解

2015-06-14 15:52 260 查看
今天有学生问了我关于“自动包装”是如何理解的,我稍微思考了一下,写了如下文字,与大家分享,浅见浅见,希望大家多提意见,互相讨论。

早期Java版本(1.4及以前的版本,包括1.4这个版本)把Java分为两种数据类型,一种是基本数据类型,如int,char float boolean等,另一种称为引用类型,如String,Object等类型。其目的是为了既能使用面向对象的思想完成代码的编写,又能让计算机保持一定的计算性能(基本数据类型计算速度较快,而对象型计算速度较慢)。

但是,这样一来,就带来了个很困扰Java程序员的事情:由于基本数据类型和对象类型的完全不兼容,它们之间的类型转换很麻烦。Java设计了将基本型转换为对象型,然后再进行运算的形式,但是整个代码在早期版本的时候需要程序员自己手动完成,这带来了程序员的机械操作和记忆量。

这时微软公司推出了C#2.0,它不需要程序员自己去完成基本数据类型和对象类型的转换,并将这个自动化类型的过程取了两个名字,由基本数据类型转对象类型取名叫“装箱”,由对象类型转基本数据类型取名叫“拆箱”,天呀,妈妈再也不用担心我转不来类型了!程序员们喜大普奔,拍手称快。

微软能搞,咱们Java也能!所以在1.5时推出了“自动包装”的概念,并为了说明这个版本的划历史的大变革,对外发布时不再称为”Java SE 1.5”,而是更名为”Java SE 5.0”,额滴神呀,嘿嘿嘿。

生活在幸福中的今天的你们,应该感谢咱们这些老一辈程序员们的辛苦,正是因为我们这些老一辈程序员孜孜不倦寻找各种偷懒的方案,才让你们生活在幸福的今天。

所以,你们要继承老一辈程序员的遗志,勤奋的愉懒,找到让这个世界更幸福的方法。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: