数智图书馆-无锡数智政务 本次搜索耗时 6.381 秒,为您找到 793 个相关结果.
  • 13.9 单选钮

    13.9 单选钮 13.9 单选钮 单选钮在GUI程序设计中的概念来自于老式的电子管汽车收音机的机械按钮:当我们按下一个按钮时,其它的按钮就会弹起。因此它允许我们强制从众多选择中作出单一选择。 AWT没有单独的描述单选钮的类;取而代之的是复用复选框。然而将复选框放在单选钮组中(并且修改它的外形使它看起来不同于一般的复选框)我们必须使用一个特殊的构建器...
  • 13.16 新型AWT

    13.16 新型AWT 13.16 新型AWT 在Java 1.1中一个显著的改变就是完善了新AWT的创新。大多数的改变围绕在Java 1.1中使用的新事件模型:老的事件模型是糟糕的、笨拙的、非面向对象的,而新的事件模型可能是我所见过的最优秀的。难以理解一个如此糟糕的(老的AWT)和一个如此优秀的(新的事件模型)程序语言居然出自同一个集团之手。新的考虑...
  • 13.20 总结

    13.20 总结 13.20 总结 对于AWT而言,Java 1.1到Java 1.2最大的改变就是Java中所有的库。Java 1.0版的AWT曾作为目前见过的最糟糕的一个设计被彻底地批评,并且当它允许我们在创建小巧精致的程序时,产生的GUI“在所有的平台上都同样的平庸”。它与在特殊平台上本地应用程序开发工具相比也是受到限制的,笨拙的并且也是不友好的...
  • 6.1 合成的语法

    6.1 合成的语法 6.1 合成的语法 就以前的学习情况来看,事实上已进行了多次“合成”操作。为进行合成,我们只需在新类里简单地置入对象句柄即可。举个例子来说,假定需要在一个对象里容纳几个String对象、两种基本数据类型以及属于另一个类的一个对象。对于非基本类型的对象来说,只需将句柄置于新类即可;而对于基本数据类型来说,则需在自己的类中定义它们。如下...
  • 7.7 构建器和多形性

    7.7 构建器和多形性 7.7 构建器和多形性 同往常一样,构建器与其他种类的方法是有区别的。在涉及到多形性的问题后,这种方法依然成立。尽管构建器并不具有多形性(即便可以使用一种“虚拟构建器”——将在第11章介绍),但仍然非常有必要理解构建器如何在复杂的分级结构中以及随同多形性使用。这一理解将有助于大家避免陷入一些令人不快的纠纷。 7.7.1 构建器...
  • 9.6 用finally清除

    9.6 用finally清除 9.6 用finally清除 无论一个违例是否在try块中发生,我们经常都想执行一些特定的代码。对一些特定的操作,经常都会遇到这种情况,但在恢复内存时一般都不需要(因为垃圾收集器会自动照料一切)。为达到这个目的,可在所有违例控制器的末尾使用一个finally从句(注释④)。所以完整的违例控制小节象下面这个样子: try ...
  • 10.8 压缩

    10.8 压缩 10.8 压缩 Java 1.1也添加一个类,用以支持对压缩格式的数据流的读写。它们封装到现成的IO类中,以提供压缩功能。 此时Java 1.1的一个问题显得非常突出:它们不是从新的Reader和Writer类衍生出来的,而是属于InputStream和OutputStream层次结构的一部分。所以有时不得不混合使用两种类型的数据流(...
  • 12.3 克隆的控制

    12.3 克隆的控制 12.3 克隆的控制 为消除克隆能力,大家也许认为只需将clone()方法简单地设为private(私有)即可,但这样是行不通的,因为不能采用一个基础类方法,并使其在衍生类中更“私有”。所以事情并没有这么简单。此外,我们有必要控制一个对象是否能够克隆。对于我们设计的一个类,实际有许多种方案都是可以采取的: (1) 保持中立,不为...
  • 14.3 堵塞

    14.3 堵塞 14.3 堵塞 一个线程可以有四种状态: (1) 新(New):线程对象已经创建,但尚未启动,所以不可运行。 (2) 可运行(Runnable):意味着一旦时间分片机制有空闲的CPU周期提供给一个线程,那个线程便可立即开始运行。因此,线程可能在、也可能不在运行当中,但一旦条件许可,没有什么能阻止它的运行——它既没有“死”掉,也未被“...
  • 消除循环

    消除循环 方法1:依据经验构建正则表达式 真正的“消除循环”解法 方法2:自顶向下的视角 方法3:匹配主机名 观察 使用固化分组和占有优先量词 简单的消除循环的例子 消除C语言注释匹配的循环 消除循环 Unrolling the Loop 无论系统本身支持怎样的优化,最重要的收益或许还是来自于对引擎基本工作原理的理解,和编写能够配合引...