当前位置:七道奇文章资讯编程技术Java编程
日期:2011-03-22 16:17:00  来源:本站整理

<b>Java的单根构造</b>[Java编程]

赞助商链接



  本文“<b>Java的单根构造</b>[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
在面向对象的程序计划中,由于C++的引入而显得尤为突出的一个问题是:全部类终究能否都应从单独一个底子类担当.在Java中(与其他几近全部OOP语言一样),对这个问题的答案都是必定的,并且这个终级底子类的名字很简单,就是一个“Object”.这种“单根构造”具有很多方面的长处.
单根构造中的全部对象都有一个通用接口,所以它们终究都属于相同的范例.另一种筹划(就象C++那样)是我们不能保证全部东西都属于相同的基本范例.从向后兼容的角度看,这一筹划可与C模子更好地配合,并且可以认为它的限制更少一些.但假期我们想举行纯粹的面向对象编程,那么必须构建自己的构造,以期得到与内建到其他OOP语言里的一样的便利.需增添我们要用到的各种新类库,还要利用另一些不兼容的接口.理所当然地,这也需求付出额外的精神使新接口与自己的计划筹划配合(大概还需求多重担当).为得到C++额外的“机动性”,付出这样的代代价得吗?当然,假如真的需求——假如早已是C专家,假如对C有难舍的情结——那么就真的很值得.但假定你是一名新手,初次接触这类计划,象Java那样的替换筹划大概会更费事一些.
单根构造中的全部对象(比方全部Java对象)都可以保证拥有一些特定的功效.在自己的系统中,我们知道对每个对象都能举行一些基本操作.一个单根构造,加上全部对象都在内存堆中成立,可以极大简化参数的传送(这在C++里是一个复杂的概念).
操纵单根构造,我们可以更便利地实现一个垃圾汇集器.与此有关的必要支持可安装于底子类中,而垃圾汇集器可将得当的消息发给系统内的任何对象.假如没有这种单根构造,并且系统通过一个句柄来操作对象,那么实现垃圾汇集器的途径会有很大的差别,并且会面对很多障碍.
由于运行期的范例信息必定存在于全部对象中,所以永久不会碰到判断不出一个对象的范例的情形.这对系统级的操作来说显得分外重要,比方违例掌握;并且也能在程序计划时得到更大的机动性.
但大家也大概产生疑问,既然你把好处说得这么天花乱坠,为什么C++没有采取单根构造呢?事实上,这是早期在效率与掌握上衡量的一种后果.单根构造会带来程序计划上的一些限制.并且更重要的是,它加大了新程序与原有C代码兼容的难度.固然这些限制仅在特定的场所会真的造成问题,但为了得到最大的机动程度,C++终究决意放弃采取单根构造这一做法.而Java不存在上述的问题,它是全新计划的一种语言,没必要与现有的语言保持所谓的“向后兼容”.所以很自然地,与其他大大都面向对象的程序计划语言一样,单根构造在Java的计划筹划中很快就落实下来.
  以上是“<b>Java的单根构造</b>[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
  • <b>hosts是什么 hosts文件在什么位置 若何改正hosts</b>
  • <b>在 Windows 8 中手动安装语言包</b>
  • <b>五个常见 PHP数据库问题</b>
  • Windows中Alt键的12个高效快速的利用本领介绍
  • <b>MySQL ORDER BY 的实现解析</b>
  • <b>详解MySQL存储历程参数有三种范例(in、out、inout)</b>
  • <b>Win8系统恢复出来经典的开始菜单的办法</b>
  • <b>Win8系统花屏怎么办 Win8系统花屏的办理办法</b>
  • <b>Windows 7系统下无线网卡安装</b>
  • <b>为什么 Linux不需求碎片整理</b>
  • <b>Windows 8中删除账户的几种办法(图)</b>
  • <b>教你如安在win7下配置路由器</b>
  • 本文地址: 与您的QQ/BBS好友分享!
    • 好的评价 如果您觉得此文章好,就请您
        0%(0)
    • 差的评价 如果您觉得此文章差,就请您
        0%(0)

    文章评论评论内容只代表网友观点,与本站立场无关!

       评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
    Copyright © 2020-2022 www.xiamiku.com. All Rights Reserved .