万象云档 本次搜索耗时 2.244 秒,为您找到 126 个相关结果.
  • 1.6 多态对象的互换使用

    1.6 多态对象的互换使用 1.6.1 动态绑定 1.6.2 抽象的基类和接口 1.6 多态对象的互换使用 通常,继承最终会以创建一系列类收场,所有类都建立在统一的接口基础上。我们用一幅颠倒的树形图来阐明这一点(注释⑤): ⑤:这儿采用了“统一记号法”,本书将主要采用这种方法。 对这样的一系列类,我们要进行的一项重要处理就是将派生类的对象当...
  • 16.3 模拟垃圾回收站

    16.3 模拟垃圾回收站 16.3 模拟垃圾回收站 这个问题的本质是若将垃圾丢进单个垃圾筒,事实上是未经分类的。但在以后,某些特殊的信息必须恢复,以便对垃圾正确地归类。在最开始的解决方案中,RTTI扮演了关键的角色(详见第11章)。 这并不是一种普通的设计,因为它增加了一个新的限制。正是这个限制使问题变得非常有趣——它更象我们在工作中碰到的那些非常麻...
  • 4.4 成员初始化

    4.4 成员初始化 4.4.1 规定初始化 4.4.2 构造器初始化 4.4 成员初始化 Java尽自己的全力保证所有变量都能在使用前得到正确的初始化。若被定义成相对于一个方法的“局部”变量,这一保证就通过编译期的出错提示表现出来。因此,如果使用下述代码: void f () { int i ; i ++; } 就会收到...
  • 6.8 final关键字

    6.8 final 关键字 6.8.1 final 数据 6.8.2 final 方法 6.8.3 final 类 6.8.4 final 的注意事项 6.8 final 关键字 由于语境(应用环境)不同,final 关键字的含义可能会稍微产生一些差异。但它最一般的意思就是声明“这个东西不能改变”。之所以要禁止改变,可能是考虑到两方面的因素:设...
  • 9.7 构造器

    9.7 构造器 9.7 构造器 为异常编写代码时,我们经常要解决的一个问题是:“一旦产生异常,会正确地进行清除吗?”大多数时候都会非常安全,但在构造器中却是一个大问题。构造器将对象置于一个安全的起始状态,但它可能执行一些操作——如打开一个文件。除非用户完成对象的使用,并调用一个特殊的清除方法,否则那些操作不会得到正确的清除。若从一个构造器内部“抛”出一...
  • 9.3 标准Java异常

    9.3 标准Java异常 9.3.1 RuntimeException 的特殊情况 9.3 标准Java异常 Java包含了一个名为Throwable 的类,它对可以作为异常“抛”出的所有东西进行了描述。Throwable 对象有两种常规类型(亦即“从Throwable 继承”)。其中,Error 代表编译期和系统错误,我们一般不必特意捕获它们(除在...
  • 5.4 类访问

    5.4 类访问 5.4 类访问 在Java中,亦可用访问指示符判断出一个库内的哪些类可由那个库的用户使用。若想一个类能由客户程序员调用,可在类主体的起始花括号前面某处放置一个public 关键字。它控制着客户程序员是否能够创建属于这个类的一个对象。 为控制一个类的访问,指示符必须在关键字class 之前出现。所以我们能够使用: public c...
  • 3.7 Python 布尔表达式用作控制结构*

    3.7 Python 布尔表达式用作控制结构* 3.7 Python 布尔表达式用作控制结构* 有了顺序、分支和循环控制结构,原则上已足以表达所有算法。然而,为了在解决某些问题时编程更加方便,各种语言还提供了若干其他控制结构。本节介绍 Python 的一个特色, 即布尔表达式可当作控制结构来用。 编程语言中的表达式本来只是用来产生值的,布尔表达式也不...
  • 第三题 猴子吃桃

    578 2025-05-31 《经典算法题》
    第三题 猴子吃桃 第三题 猴子吃桃 猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾就多吃了一个。第二天早上又将剩下的桃子吃了一半,还是不过瘾又多 吃了一个。以后每天都吃前一天剩下的一半再加一个。到第10天刚好剩一个。问猴子第一天摘了多少个桃子? 分析: 这是一套非常经典的算法题,这个题目体现了算法思想中的递推思想,递归有两种形式,顺推和...
  • 第9章 异常差错控制

    第9章 异常差错控制 第9章 异常差错控制 Java的基本原理就是“形式错误的代码不会运行”。 与C++类似,捕获错误最理想的是在编译期间,最好在试图运行程序以前。然而,并非所有错误都能在编译期间侦测到。有些问题必须在运行期间解决,让错误的缔结者通过一些手续向接收者传递一些适当的信息,使其知道该如何正确地处理遇到的问题。 在C++和其他早期语言中,...