万象云档 本次搜索耗时 1.728 秒,为您找到 223 个相关结果.
  • 第16章 设计模式

    第16章 设计模式 第16章 设计模式 本章要向大家介绍重要但却并不是那么传统的“模式”(Pattern)程序设计方法。 在向面向对象程序设计的演化过程中,或许最重要的一步就是“设计模式”(Design Pattern)的问世。它在由Gamma,Helm和Johnson编著的《设计模式》一书中被定义成一个“里程碑”(该书由Addison-Wesley...
  • 4.1 有序数组的查找

    4.1 有序数组的查找 题目描述 分析与解法 总结 4.1 有序数组的查找 题目描述 给定一个有序的数组,查找某个数是否在数组中,请编程实现。 分析与解法 一看到数组本身已经有序,我想你可能反应出了要用二分查找,毕竟二分查找的适用条件就是有序的。那什么是二分查找呢? 二分查找可以解决(预排序数组的查找)问题:只要数组中包含T(即要查找的值...
  • 4.2.6 函数的返回值

    4.2.6 函数的返回值 4.2.6 函数的返回值 函数作为一种模块构件,它与其他模块如何协作、交换信息?我们已经知道,通过函数 调用时的参数传递,可以实现从函数外部向函数内部输入数据。本节讨论函数向外部输出信 息的问题。 在数学中,函数是从定义域到值域的映射,亦即从自变量计算出函数值。编程语言中的 函数原本就是数学函数的模仿物,自然也可以计算出一个...
  • 6.4 到底选择组合还是继承

    6.4 到底选择组合还是继承 6.4 到底选择组合还是继承 无论组合还是继承,都允许我们将子对象置于自己的新类中。大家或许会奇怪两者间的差异,以及到底该如何选择。 如果想利用新类内部一个现有类的特性,而不想使用它的接口,通常应选择组合。也就是说,我们可嵌入一个对象,使自己能用它实现新类的特性。但新类的用户会看到我们已定义的接口,而不是来自嵌入对象的接...
  • 5.2.4 图形的事件处理

    5.2.4 图形的事件处理 5.2.4 图形的事件处理 面向对象的概念是和事件驱动编程联系在一起的。所谓事件是指在程序执行过程中发生的事情,例如点击了鼠标左键、按下了键盘上的回车键之类。某个对象可以与特定事件绑定 在一起,这样当特定事件发生时,可以调用特定的函数来处理这个事件。 画布及画布上的图形都是对象,都可以与交互事件绑定,这样用户可以利用键盘、...
  • 6.5 几种高级数据结构*

    6.5 几种高级数据结构* 6.5 几种高级数据结构* 以上介绍的各种数据集合体都是 Python 直接提供的数据类型,属于基本的数据结构。 本节介绍几种高级数据结构,编程语言不直接支持它们的表示和操作,需要程序员自己实现。
  • 7.1 向上转换

    7.1 向上转换 7.1.1 为什么要向上转换 7.1 向上转换 在第6章,大家已知道可将一个对象作为它自己的类型使用,或者作为它的基类型的一个对象使用。取得一个对象引用,并将其作为基类型引用使用的行为就叫作“向上转换”——因为继承树的画法是基类位于最上方。 但这样做也会遇到一个问题,如下例所示(若执行这个程序遇到麻烦,请参考第3章的3.1.2小节...
  • 1.4 方案的重复使用

    1.4 方案的重复使用 1.4 方案的重复使用 创建并测试好一个类后,它应(从理想的角度)代表一个有用的代码单位。但并不象许多人希望的那样,这种重复使用的能力并不容易实现;它要求较多的经验以及洞察力,这样才能设计出一个好的方案,才有可能重复使用。 许多人认为代码或设计模式的重复使用是面向对象的程序设计提供的最伟大的一种杠杆。 为重复使用一个类,最简...
  • 4.1 有序数组的查找

    4.1 有序数组的查找 题目描述 分析与解法 总结 4.1 有序数组的查找 题目描述 给定一个有序的数组,查找某个数是否在数组中,请编程实现。 分析与解法 一看到数组本身已经有序,我想你可能反应出了要用二分查找,毕竟二分查找的适用条件就是有序的。那什么是二分查找呢? 二分查找可以解决(预排序数组的查找)问题:只要数组中包含T(即要查找的值...
  • 第3章 控制程序流程

    第3章 控制程序流程 第3章 控制程序流程 “就象任何有感知的生物一样,程序必须能操纵自己的世界,在执行过程中作出判断与选择。” 在Java里,我们利用运算符操纵对象和数据,并用执行控制语句作出选择。Java是建立在C++基础上的,所以对C和C++程序员来说,对Java这方面的大多数语句和运算符都应是非常熟悉的。当然,Java也进行了自己的一些改进与...