万象云档 本次搜索耗时 1.385 秒,为您找到 1096 个相关结果.
  • 12.5 总结

    12.5 总结 12.5 总结 由于Java中的所有东西都是引用,而且由于每个对象都是在内存堆中创建的——只有不再需要的时候,才会当作垃圾收集掉,所以对象的操作方式发生了变化,特别是在传递和返回对象的时候。举个例子来说,在C和C++中,如果想在一个方法里初始化一些存储空间,可能需要请求用户将那片存储区域的地址传递进入方法。否则就必须考虑由谁负责清除那片...
  • 6.10 总结

    6.10 总结 6.10 总结 无论继承还是组合,我们都可以在现有类型的基础上创建一个新类型。但在典型情况下,我们通过组合来实现现有类型的“复用”或“重复使用”,将其作为新类型基础实现过程的一部分使用。但如果想实现接口的“复用”,就应使用继承。由于派生或派生出来的类拥有基类的接口,所以能够将其“向上转换”为基类。对于下一章要讲述的多态性问题,这一点是至...
  • 6.3 组合与继承的结合

    6.3 组合与继承的结合 6.3.1 确保正确的清除 6.3.2 名字的隐藏 6.3 组合与继承的结合 许多时候都要求将组合与继承两种技术结合起来使用。下面这个例子展示了如何同时采用继承与组合技术,从而创建一个更复杂的类,同时进行必要的构造器初始化工作: //: PlaceSetting.java // Combining compositi...
  • 6.6 累积开发

    6.6 累积开发 6.6 累积开发 继承的一个好处是它支持“累积开发”,允许我们引入新的代码,同时不会为现有代码造成错误。这样可将新错误隔离到新代码里。通过从一个现成的、功能性的类继承,同时增添成员新的数据成员及方法(并重新定义现有方法),我们可保持现有代码原封不动(另外有人也许仍在使用它),不会为其引入自己的编程错误。一旦出现错误,就知道它肯定是由于...
  • 6.4 外排序

    6.4 外排序 方法介绍 问题实例 举一反三 6.4 外排序 方法介绍 所谓外排序,顾名思义,即是在内存外面的排序,因为当要处理的数据量很大,而不能一次装入内存时,此时只能放在读写较慢的外存储器(通常是硬盘)上。 外排序通常采用的是一种“排序-归并”的策略。 在排序阶段,先读入能放在内存中的数据量,将其排序输出到一个临时文件,依此进行,将...
  • 1.2.3 日常生活中的计算思维

    1.2.3 日常生活中的计算思维 1.2.3 日常生活中的计算思维 人们在日常生活中的很多做法其实都和计算思维不谋而合,也可以说计算思维从生活中吸收了很多有用的思想和方法。我们来看一些例子。 算法过程:菜谱可以说是算法(或程序)的典型代表,它将一道菜的烹饪方法一步一步地罗列出来,即使不是专业厨师,照着菜谱的步骤也能做出可口的菜肴。这里,菜谱的每一 步骤...
  • 2.4.4 Python 中真假的表示与计算*

    2.4.4 Python 中真假的表示与计算* 2.4.4 Python 中真假的表示与计算* 如前所述,较新版本的 Python 引入了内建类型 bool,并且定义了布尔值 True 和 False。而在此之前,Python 曾经利用 1 和 0 来作为布尔值。 事实上,如今的 Python 在表达真假方面更加灵活——任何内建类型的值都可以解释成布...
  • 2.5 列表和元组类型

    2.5 列表和元组类型 2.5 列表和元组类型 整数类型、浮点数类型和布尔类型都是最简单的“原子”数据类型,因为这些类型的值 是不可分割的基本数据项。而字符串类型稍微有点复杂,因为字符串可以看成是由许多单字 符组成的有序的集合体,我们可以通过索引操作来深入到字符串内部访问其成员。不过,通 常我们仍然将字符串类型归为简单的基本类型,毕竟构成字符串的成员...
  • 5 循环

    5 循环 undefined5 循环 undefined5.1 repeat…until 循环 undefined5.2 while循环 undefined5.3 for 循环 5 循环 undefined5 循环 undefined5.1 repeat…until 循环 Lua 编程语言中 repeat…until 循环语句不同于 for...
  • 命令行

    [命令行] [命令行] 本节介绍ThinkCMF命令行程序相关基础知识。 查看版本 帮助 清除缓存文件 自定义应用命令行 自定义插件命令行 轻量级命令行 发布 高亮输出 在命令行切换到ThinkCMF根目录(注意是think 文件所在目录,不是public 目录),执行如下命令: php think 以上命令会输出项目下...