首页 新闻 论坛 群组 Blog 文档 下载 读书 Tag 网摘 搜索 开源 FAQ 第二书店 博文视点 程序员
频道: 研发 数据库 中间件 信息化 视频 .NET Java 游戏 移动 服务: 人才 外包 培训
    图书品种:235680
       
热门搜索: ASP.NET Ajax Spring Hibernate Java

Language-Specific Issues

与具体编程语言相关的问题

不同编程语言在实现类的方法上有着很有意思的差别。请考虑一下如何在一个派生类中通过覆盖成员函数来实现多态。在Java中,所有的方法默认都是可覆盖的,方法必须被定义成final才能阻止派生类对它进行覆盖。在C++中,默认是不可以覆盖方法的,基类中的方法必须被定义成virtual才能被覆盖。而在Visual Basic中,基类中的子程序必须被定义为overridable,而派生类中的子程序也必须要用overrides关键字。

下面列出跟类相关的,不同语言之间有着显著差异的一些地方:

           在继承层次中被覆盖的构造函数和析构函数的行为

           在异常处理时构造函数和析构函数的行为

           默认构造函数(即无参数的构造函数)的重要性

           析构函数或终结器(finalizer)的调用时机

           和覆盖语言内置的运算符(包括赋值和等号)相关的知识

           当对象被创建和销毁时,或当其被声明时,或者它所在的作用域退出时,处理内存的方式

关于这些事项的详细论述超出了本书的范围,不过在“更多资源”一节中提供了一些与特定语言相关的很好资源。

查看所有评论(0)条】

最近评论



正在载入评论列表...
热点评论