学编程一定要掌握的186个关键单词及作用 (py表格处理版

索引 英文 中文 说明 作用
1 abstract class 抽象类 抽象类不能创建对象,主要用来创建子类。 Java中的抽象类使用 abstract 修饰符定义。
2 abstract data type ADT 抽象数据类型 抽象类不能创建对象,主要用来创建子类。 Java中的抽象类使用 abstract 修饰符定义。
3 access specifier 访问标识符 用于方法或变量定义,限定了哪些类可以访问该方法或变量。 Java中的访问标识符有 public、protected 和 private。没有访问标识符修饰的方法或变量默认可见性为“package”。
4 activation record 活动记录 活动记录是包含了实现子程序调用必须的所有信息,包括参数值、子程序中的本地变量和子程序调用结束时计算机的返回地址。 活动记录存储在栈中,使得多个子程序调用同时活跃成为可能。这对递归非常重要,递归时对同一个子程序的多个调用要求同时激活。
5 actual parameter 实参 活动记录是包含了实现子程序调用必须的所有信息,包括参数值、子程序中的本地变量和子程序调用结束时计算机的返回地址。 活动记录存储在栈中,使得多个子程序调用同时活跃成为可能。这对递归非常重要,递归时对同一个子程序的多个调用要求同时激活。
6 address 地址 计算机内存中的每个位置都有一个地址,表示该位置的编号。内存中的位置按序号排列。 在现代计算机中,内存中的每个字节都有自己的地址。在存储或读取内存信息时用需要用到地址。
7 algorithm 算法 计算机内存中的每个位置都有一个地址,表示该位置的编号。内存中的位置按序号排列。 在现代计算机中,内存中的每个字节都有自己的地址。在存储或读取内存信息时用需要用到地址。
8 alpha color component 阿尔法颜色组成 计算机内存中的每个位置都有一个地址,表示该位置的编号。内存中的位置按序号排列。 在现代计算机中,内存中的每个字节都有自己的地址。在存储或读取内存信息时用需要用到地址。
9 API --- 应用编程接口。针对软件包或“工具箱”的接口说明。 API包含了工具箱中所有类或子程序及其使用说明。
10 Applet --- 应用编程接口。针对软件包或“工具箱”的接口说明。 API包含了工具箱中所有类或子程序及其使用说明。
11 animation 动画 由一组静态图片快速显示展示出动态效果。每一幅静态图片叫做帧。 在Java中,动画通常由 Timer 对象驱动。每次定时器触发时,会显示动画的下一帧。
12 antialiasing 反锯齿 当图形和文本以像素方式显示时,可以通过调整像素的颜色减轻“锯齿”效应。 反锯齿画图时,图形只覆盖像素的一部分,图形的颜色与该像素之前的颜色混合而成。混合的程度由覆盖像素的多少决定。
13 array 数组 一个顺序排列的元素列表。列表中,每个元素都可以由自己的索引标识,即序号。 在Java中,数组里所有元素必须类型相同,该类型也称作数组的基类型。数组是一种可随机访问的数据结构,也就是说,你可以随时直接访问数组中的任意元素。
14 array type 数组类型 一个顺序排列的元素列表。列表中,每个元素都可以由自己的索引标识,即序号。 在Java中,数组里所有元素必须类型相同,该类型也称作数组的基类型。数组是一种可随机访问的数据结构,也就是说,你可以随时直接访问数组中的任意元素。
15 assignment statement 赋值语句 计算机程序中的一种语句,可以读取或计算数值,并将其存储到变量中。 Java中的赋值语句形式为:变量名 = 表达式。
16 asynchronous event 异步事件 异步事件指发生时间不可预料的事件,计算机程序无法对其控制。 像点击鼠标、按键这样的用户输入事件都是异步的。
17 ASCII码 --- 美国信息交换标准码。这种编码使用7个比特对字符编码。 ASCII码只支持128个字符,不支持重音字符、非英语字符、特殊符号或非字符化语言的表意符号,比如中文。Java采用了容量更大、更加完整的Unicode编码处理字符。
18 base case 基线条件 美国信息交换标准码。这种编码使用7个比特对字符编码。 ASCII码只支持128个字符,不支持重音字符、非英语字符、特殊符号或非字符化语言的表意符号,比如中文。Java采用了容量更大、更加完整的Unicode编码处理字符。
19 binary number 二进制数 美国信息交换标准码。这种编码使用7个比特对字符编码。 ASCII码只支持128个字符,不支持重音字符、非英语字符、特殊符号或非字符化语言的表意符号,比如中文。Java采用了容量更大、更加完整的Unicode编码处理字符。
19 binary tree 二叉树 二叉树是一种链式数据结构。可以为空树,或者由两棵更小的二叉树(可能为空树)与根节点组成。 根节点包含了指向两棵子树的指针。这两棵更小的二叉树被称作左子树和右子树。
21 bit 比特 二叉树是一种链式数据结构。可以为空树,或者由两棵更小的二叉树(可能为空树)与根节点组成。 根节点包含了指向两棵子树的指针。这两棵更小的二叉树被称作左子树和右子树。
22 black box 黑盒 二叉树是一种链式数据结构。可以为空树,或者由两棵更小的二叉树(可能为空树)与根节点组成。 根节点包含了指向两棵子树的指针。这两棵更小的二叉树被称作左子树和右子树。
23 block 在Java编程中,被花括号({})包围的一组语句称为块。(代码)块用来将一组语句组合成一条语句。 块可以为空,表示不包含任何语句,即一对空的花括号。
24 blocking operation 阻塞操作 一个操作如果需要等待某些事件发生就称为“阻塞”操作,比如从网络连接读取数据。 执行阻塞操作的线程会一直处在“阻塞”状态,直到事件发生。处于阻塞状态时,线程不能执行任何指令。而程序中的其它线程可以继续执行。
25 blocking queue 阻塞队列 当阻塞队列为空时,出队操作会引发阻塞,直到队列中有新成员加入。 如果阻塞队列有大小限制,当队列填满时,入队操作也会引起阻塞。
26 bottom-up design 自底向上设计 当阻塞队列为空时,出队操作会引发阻塞,直到队列中有新成员加入。 如果阻塞队列有大小限制,当队列填满时,入队操作也会引起阻塞。
27 BufferedImage类 --- 当阻塞队列为空时,出队操作会引发阻塞,直到队列中有新成员加入。 如果阻塞队列有大小限制,当队列填满时,入队操作也会引起阻塞。
28 branch 分支 分支是一种控制结构,计算机通过分支从2个或多个不同的执行路径中进行选择。 Java有两种分支语句:if 语句和 switch 语句。
29 byte 字节 字节是一种由8个比特组成的内存单元。 一个字节可以保存8个比特二进制数。
30 bytecode 字节码 “Java字节码”是Java虚拟机机器语言的常用名称。 Java程序会被编译成Java字节码,后者由JVM执行。
31 charset 字符集 “Java字节码”是Java虚拟机机器语言的常用名称。 Java程序会被编译成Java字节码,后者由JVM执行。
32 checked exception 受检异常 在Java中受检异常必须处理,可以通过 try catch 语句捕获,或者在方法上使用 throw 语句抛出该异常。 如果没有用这两种方式处理受检异常,会报告语法错误。
33 class 类是Java的基础编程单元。 类是静态方法、非静态方法和变量的集合。静态成员是类自身的一部分,非静态或“实例”成员是创建对象的蓝本,由此创建的对象“属于”该类。
34 class variable)和类方法(class methods 类变量 类是Java的基础编程单元。 类是静态方法、非静态方法和变量的集合。静态成员是类自身的一部分,非静态或“实例”成员是创建对象的蓝本,由此创建的对象“属于”该类。
35 client/server 客户端/服务器 一种网络通讯模式。 其中,“服务器”在网络上守候某个已知地址,等待“客户端”向它发起连接请求。这是TCP/IP协议的基础通讯模型。
36 command-line interface 命令行接口 一种网络通讯模式。 其中,“服务器”在网络上守候某个已知地址,等待“客户端”向它发起连接请求。这是TCP/IP协议的基础通讯模型。
37 comment 注释 一种网络通讯模式。 其中,“服务器”在网络上守候某个已知地址,等待“客户端”向它发起连接请求。这是TCP/IP协议的基础通讯模型。
38 compiler 编译器 一种网络通讯模式。 其中,“服务器”在网络上守候某个已知地址,等待“客户端”向它发起连接请求。这是TCP/IP协议的基础通讯模型。
39 component 组件 组件是对GUI可视元素的泛称,包括窗口、按钮或菜单等。 在Java中,组件表现为 java.awt.Component 子类创建的对象。
40 constructor 构造函数 类的一种特殊子程序,主要用来创建类的对象。 构造函数一般使用 new 操作符进行调用,通常不被看做“方法”。
41 container 容器 类似 JPanel 这样的组件,容器可以包含其它GUI组件。 调用容器的 add() 方法可以向其添加组件。
42 contract of a method 方法契约 方法接口的语义组件。 它指明了方法及其调用者的职责,如何调用该方法,以及正确调用方法时会执行的任务。方法契约应当在该方法的Javadoc注释中完整说明。
43 control structure 控制结构 方法接口的语义组件。 它指明了方法及其调用者的职责,如何调用该方法,以及正确调用方法时会执行的任务。方法契约应当在该方法的Javadoc注释中完整说明。
44 CPU --- 方法接口的语义组件。 它指明了方法及其调用者的职责,如何调用该方法,以及正确调用方法时会执行的任务。方法契约应当在该方法的Javadoc注释中完整说明。
45 data structure 数据结构 方法接口的语义组件。 它指明了方法及其调用者的职责,如何调用该方法,以及正确调用方法时会执行的任务。方法契约应当在该方法的Javadoc注释中完整说明。
46 deadlock 死锁 方法接口的语义组件。 它指明了方法及其调用者的职责,如何调用该方法,以及正确调用方法时会执行的任务。方法契约应当在该方法的Javadoc注释中完整说明。
47 default method 默认方法 Java 8 接口中的方法,该方法提供了自己的实现。 所有实现带有默认方法的接口都可以使用默认实现,但是不能覆盖默认方法。通过 default 保留字标记默认方法。Java 7不支持默认方法。
47 default package 默认包 默认包没有包名。 没有在带有名字的包中声明的类都归属默认包。
49 definite assignment 明确赋值 在程序中,变量在使用前必须确保已经被赋值。 局部变量只有在赋值后才能合法使用。为了达到这个要求,编译器必须对变量从声明开始到使用的每条路径都进行赋值检查。
50 deprecated 弃用 表示已经废弃,但为了先后兼容仍然保留。 弃用的Java类或方法仍然是Java语言的一部分,但不建议在新代码中使用。在未来的Java版本中,弃用的内容会被移除。
51 dialog box 对话框 对话框是依赖其它窗体创建的新窗体。 弹出对话框通常用作获取用户信息或展示消息。Swing API中,对话框表示为 JDialog 创建的对象。
52 distributed computing 分布式计算 对话框是依赖其它窗体创建的新窗体。 弹出对话框通常用作获取用户信息或展示消息。Swing API中,对话框表示为 JDialog 创建的对象。
53 dummy parameter 虚参数 调用子程序时,用来代替实际传入参数的标识符。 虚参数也叫“形式参数”(有时候会用“变元 argument”表示实参,这时虚参数也叫做“参数”)。
54 enum --- 枚举类型。 枚举类型的定义中列举了该类型所有可能值。在Java中,枚举类型是一个类,所有可能的值都是对象。
55 event 事件 在GUI编程中,事件指发生在程序控制以外的操作,比如点击鼠标。 程序必须对发生的事件进行响应。
56 exception 异常 程序控制流程之外的错误或异常情况。 在Java中,异常表示为 Throwable 对象,可以由 try..catch 语句捕捉并处理。
57 fetch-and-execute cycle 获取-执行周期 也称指令周期。 指CPU执行机器语言程序的过程。CPU会从内存获取(即读取)指令,执行(运行)指令,然后再循环重复该过程。
58 flag 标志 一个布尔值。 设为 true 时表示达到某些条件或发生了某种事情。可利用二进制数中的某个比特位作为标志。
59 formal parameter 形式参数 一个布尔值。 设为 true 时表示达到某些条件或发生了某种事情。可利用二进制数中的某个比特位作为标志。
60 frame 一个布尔值。 设为 true 时表示达到某些条件或发生了某种事情。可利用二进制数中的某个比特位作为标志。
61 function 函数 一个布尔值。 设为 true 时表示达到某些条件或发生了某种事情。可利用二进制数中的某个比特位作为标志。
62 garbage collection 垃圾回收 一个布尔值。 设为 true 时表示达到某些条件或发生了某种事情。可利用二进制数中的某个比特位作为标志。
63 generic programming 泛型编程 编写的代码不仅限于单一数据类型,可适应多种数据类型。 Java集合框架及其它使用了相似技术的类都是泛型编程的实例。
64 getter方法 --- 类中的一个实例方法,用来读取类的某个属性值。 通常,属性代表一些实例变量的值。按惯例,getter方法被命名为 getXyz(),其中 xyz 是属性的名字。
65 global variable 全局变量 类中的一个实例方法,用来读取类的某个属性值。 通常,属性代表一些实例变量的值。按惯例,getter方法被命名为 getXyz(),其中 xyz 是属性的名字。
66 graphics context 图形上下文 类中的一个实例方法,用来读取类的某个属性值。 通常,属性代表一些实例变量的值。按惯例,getter方法被命名为 getXyz(),其中 xyz 是属性的名字。
67 GUI --- 图形用户界面是与计算机的现代交互方式。 计算机通过GUI在显示器上展示类似按钮和菜单这样的接口组件,用户可以通过像鼠标点击这样的方式与之交互。
68 hash table 哈希表 一种优化的数据结构,可以高效搜索、插入和删除对象。哈希表包含对象的地址数组。 对象存储的地址由自身的“哈希代码”决定。通过对象的内容可以高效地计算出地址整数值。
69 heap 一种优化的数据结构,可以高效搜索、插入和删除对象。哈希表包含对象的地址数组。 对象存储的地址由自身的“哈希代码”决定。通过对象的内容可以高效地计算出地址整数值。
70 high level language 高级语言 一种优化的数据结构,可以高效搜索、插入和删除对象。哈希表包含对象的地址数组。 对象存储的地址由自身的“哈希代码”决定。通过对象的内容可以高效地计算出地址整数值。
71 HSB --- 一种颜色系统。 其中颜色由3个数值表示(在Java中,实际的数值在0.0到1.0之间)。分别代表色调、饱和度和亮度。
72 IDE --- 集成开发环境。 带图形用户界面的编程环境,集成了创建、编辑和执行程序的各种工具。
73 identifier 标识符 在程序中可用作名字的一组标识符。 标识符可用作变量名、方法名和类名。
74 index 索引号 在程序中可用作名字的一组标识符。 标识符可用作变量名、方法名和类名。
75 implementation 实现 在程序中可用作名字的一组标识符。 标识符可用作变量名、方法名和类名。
76 immutable object 不可变对象 在程序中可用作名字的一组标识符。 标识符可用作变量名、方法名和类名。
77 infinite loop 无限循环 在程序中可用作名字的一组标识符。 标识符可用作变量名、方法名和类名。
78 inheritence 继承 一个类可以继承另一个类。 继承者会从父类继承数据和行为。
79 instance of a class 类的实例 指归属于类(或者该类型子类)的对象。 当类用作对象模板时,对象由类中的构造函数创建的对象归属于这个类。
80 instance method 实例方法 指归属于类(或者该类型子类)的对象。 当类用作对象模板时,对象由类中的构造函数创建的对象归属于这个类。
81 instance variable 实例变量 指归属于类(或者该类型子类)的对象。 当类用作对象模板时,对象由类中的构造函数创建的对象归属于这个类。
82 interface 接口 对如何使用类似子程序这样的黑盒子一种通用说法。 接口对其内部发生的情况没有提供任何信息。“interface”同时也是Java中的保留字。从这个意义上说,接口是一种定义了一个或多个抽象方法的类型。实现该接口的对象必须提供这些方法的定义。
83 interpreter 解释器 一种执行程序的计算机程序,被执行的程序由某种编程语言编写。 通过从程序中一个接一个读取指令然后逐条执行(将指令翻译为等价的机器语言)。
84 I/O --- 输入/输出。 计算机程序与其它部分的通讯方式,比如向用户展示数据、从用户那里获取信息、读写文件、通过网络发送和获取数据。
85 iterator 迭代器 与 list 或 set 这样的集合相关联的对象。可用来对该集合进行遍历。 迭代器会轮流访问集合中的每个元素。
86 Java Collection Framework JCF Java集合框架 与 list 或 set 这样的集合相关联的对象。可用来对该集合进行遍历。 迭代器会轮流访问集合中的每个元素。
87 JavaFX --- 新的应用程序GUI工具集。 在Java 8中推荐使用。JavaFX不在本书的讨论范围。
88 JDK --- Java开发工具集。 支持编译、运行Java程序的基本软件。JDK包含命令行编程环境以及JRE。要编译Java源代码或执行预编译程序时,需要使用JDK。
89 Java Runtime Environment JRE Java运行时环境。 支持运行已编译的标准Java程序。JRE包括一个Java虚拟机和所有标准的Java类。
90 just-in-time compiler 即时编译器 一种解释器和编译器的结合,在解释程序某部分的同时可对其进行编译。 接下来对该部分程序执行时比首次运行更快速。这样可以大大提高执行速度。现代JVM都使用了即时编译器。
91 JVM --- Java虚拟机。 将Java字节码作为机器语言执行的虚拟计算机。也用来称呼解析字节码程序的计算机程序。要在计算机上运行Java程序需要使用JVM。
92 layout manager 布局管理器 负责对容器中组件进行布局的对象。 进行的部分操作包括设置大小和位置。不同类型的布局管理器实现的布局策略各不相同。
93 linked data structure 链式数据结构 一组由之指针相互链接的对象数据。 这些指针存储在对象的实例变量中。链式数据结构包括链表和二叉树。
94 linked list 链表 一组由之指针相互链接的对象数据。 这些指针存储在对象的实例变量中。链式数据结构包括链表和二叉树。
95 listener 监听器 在GUI编程中,可以向对象注册特定事件的触发通知。 因此可以说,对象在“监听”这些事件。
96 literal 文字 在程序中键入的一组字符序列,表示常量值。 例如,当A在Java程序中出现时,’A'是一个常量字符。
97 内存)位置(location in memory 计算机内存由一系列位置组成。 这些位置顺序编号,标识特定位置的编号被称为该位置的地址。
98 local variable 本地变量 在方法内部声明的变量,只能在该方法内部使用。 代码块中声明变量的有效性,从声明处开始到该代码块的尾部结束。
99 loop 循环 一种控制结构,重复执行一组指令。 Java提供了
3 种循环 --- 一种控制结构,重复执行一组指令。 Java提供了
100 loop control variable 循环控制变量 一种控制结构,重复执行一组指令。 Java提供了
101 machine language 机器语言 由计算机能够直接执行的指令组成的编程语言。 机器语言中的指令会被编码成二进制数。每种类型的计算机都有自己的机器语言。用其它语言编写的程序必须翻译为该计算的机器语言,才能在它上面执行。
102 main memory 主内存 程序和数据可以存储在计算机的主内存中,主内存可以被CPU直接访问。 其它形式的内存,比如磁盘驱动器,虽然也能存储信息,但是唯有主内存可被CPU直接访问。磁盘分区中的程序和数据只有拷贝到内存中才能被CPU访问。
103 map --- 一种映射数组。 这种数据结构将一组(Collection)中的某个对象与摸个集合(Set)中的所有对象关联在一起。在Java中,map 由泛型接口 Map 表示。
104 member variable 成员变量 定义在类中的变量,但不属于任何方法。 成员变量与本地变量不同,后者在某个方法中定义。
105 memory 内存 定义在类中的变量,但不属于任何方法。 成员变量与本地变量不同,后者在某个方法中定义。
106 method 方法 子程序的另一种称呼,在面向对象编程中使用。 方法指包含在类或对象中的子程序。
107 module 模块 子程序的另一种称呼,在面向对象编程中使用。 方法指包含在类或对象中的子程序。
108 multitasking 多任务 一次执行多个编程任务。 要么在多个任务之间快速来回切换,要么同时逐个执行多个任务。
109 multiprocessing 多重处理 进行多任务处理时使用多个处理器。 这样,多个任务可以同时逐个执行。
110 mutual exclusion 互斥 防止两个线程同时访问相同的资源。 在Java中,这种方法应用于多个线程同时访问同步方法或同步语句中的资源。互斥可以阻止竞态条件,但是可能引发死锁。
111 MVC pattern MVC模式 模型-视图-控制器模式。 一种用在GUI组件中进行职责划分的策略。模型代表组件的数据,视图指该模型在屏幕上的展示,控制器负责响应模型变化事件。在MVC模式中,这些职责由不同的对象负责处理。
112 NaN 非数值 不是一个数值。 Double.NaN表示一种特殊的 double 值,表示未定义或非法值。
113 node 节点 不是一个数值。 Double.NaN表示一种特殊的 double 值,表示未定义或非法值。
114 null --- 不是一个数值。 Double.NaN表示一种特殊的 double 值,表示未定义或非法值。
115 numerical analysis 数值分析 不是一个数值。 Double.NaN表示一种特殊的 double 值,表示未定义或非法值。
116 off-by-one error 差一错误 一种常见错误,处理时多减或多加了一个元素。 通常是技术错误或者循环时由其它原因过早停止或过度执行造成的。
117 object 对象 计算机程序中带有数据(变量)和行为(方法)的实体。 Java中的对象必须以某个类作为创建模板。对象所属的类决定了对象包含的类和方法。
118 object type 对象类型 这种类型的值是对象而非基础类型。 类和接口都是对象类型。
119 Object-Oriented Programming OOP 面向对象编程。 一种计算机程序设计和实现的方法。OOP使用类和对象创建、表示实体及实体间的交互。
120 operating system 操作系统 在计算机中一直运行的基础软件。 没有操作系统的计算机无法工作。操作系统由Linux、Mac OS 和 Windows Vista。
121 operator 操作符 在计算机中一直运行的基础软件。 没有操作系统的计算机无法工作。操作系统由Linux、Mac OS 和 Windows Vista。
122 操作符)重载(overloading of operators 相同操作符可以在不同类型的数据上使用。 比如“+”操作可以同时应用于数字和字符类型。
123 方法名)重载(overloading of method names 相同操作符可以在不同类型的数据上使用。 比如“+”操作可以同时应用于数字和字符类型。
124 覆盖)(overriding 重写 在子类中进行重定义。 子类中,对从父类继承的方法重新定义,新定义的方法就是对原方法进行重写。
125 package 在Java中,相关类和子包的有名集合称为包。 例如 java.awt 和 javax.swing。
126 parallel processing 并行处理 在Java中,相关类和子包的有名集合称为包。 例如 java.awt 和 javax.swing。
127 parameter 参数 调用子程序时,参数用来向子程序提供信息。 在执行子程序代码前,子程序调用语句中的“实参”会分配给子程序定义的“虚参数”。
128 parameterized type 参数化类型 调用子程序时,参数用来向子程序提供信息。 在执行子程序代码前,子程序调用语句中的“实参”会分配给子程序定义的“虚参数”。
129 parsing 解析 确定预演中字符串语法结构的过程。 解析字符串用来确定字符串中是否遵循该语言的语法;如果是,那么会确定该字符串是如何根据语法进行创建。
130 partially full array 部分完全数组 数组是用来存储数量各异的元素。 部分完全数组表示为一个带有追踪元素个数计数器的普通数组。
131 pixel 像素 指屏幕或图片中的“图像元素”。 一幅图像由像素的行和列组成。每个像素的色彩都可以单独设置。
132 polymorphism 多态 多态是指调用实例方法的意义取决于调用方法时对象的实际类型。 也就是说,如果变量的类型是 var,那么调用方法的语句。比如 var.action() 取决于执行时 var 所指向的对象类型,而非 var 变量的类型。
133 pointer 指针 代表计算机内存中某个地址的值,因此可以看做“指向”具有该地址的位置。 在Java中,变量不存有对象;变量只是指向存储该对象的位置。指针也称作“引用”。
134 pragmatics 语用学 描述如何编写好程序的经验法则。 例如样式规则、程序组织指南都是编程语用学的一部分。
135 precedence 优先级 描述如何编写好程序的经验法则。 例如样式规则、程序组织指南都是编程语用学的一部分。
136 precondition 前置条件 在程序的执行过程中,为了让程序正确运行,前置条件必须判定为 true。 子程序的前置条件是指,为了让子程序正确运行必须满足的前置条件。子程序的前置条件通常是对传入的子程序的实参值进行的限制。
137 priority queue 优先级队列 一种表示元素结合的数据结构,其中每个元素都有自己的“优先级”。 优先级队列具有添加和移除操作。可以按照任意的顺序添加元素,但移除时总是先移除优先级最低的元素。(某些版本的优先级队列会先移除优先级最高的元素)
138 postcondition 后置条件 在执行程序的某个节点,该条件的计算结果为 true。 子程序的后置条件在子程序执行结束后必须为 true。函数的后置条件通常表示为函数的返回值。
139 primitive type 基本类型 Java的8个内建基本数据类型有 double、float、long、int、short、byte、boolean 和 char。 基本类型变量存储了真实的值,而非指向数值的指针。
140 priority of a thread 线程优先级 与线程关联的整数值,可以影响线程的执行顺序。 优先级高的线程比优先级低的线程提前执行。
141 producer/consumer 生产者/消费者 并行编程中的一种经典模式,一个或多个生产者生产的产品被一个或更多的消费者使用。 生产者和消费者设计为可以并行执行。这里的难点在于,如何安全、高效地从生产者向消费者非配产品。在Java中,通过阻塞队列实现生产者/消费者模式。
142 program 程序 用某种合适的编程语言编写的一组指令,由计算机执行。 用做动词时,表示创建该指令的动作。
143 programming language 编程语言 用来为计算机编程的一种语言。 编程语言的复杂性,从机器语言到像Java这样的高级语言跨度很大。
144 protocol 协议 在指定上下文中,构成合法通信的一组规范。 协议中规定了合法的消息、传送的时间、期待的恢复类型等。
145 pseudocode 伪代码 非正式算法规范。 与实际编程语言相比,伪代码更加接近英语。并且,通常无需明确地写出过程的每个细节。
146 queue 队列 由一组元素构成的数据结构。 只能在列表的一头添加数据,在列表的另一头移除数据。
147 race condition 竞态条件 并行编程中可能的错误源。 由于某个线程改变了第二个程序依赖的程序状态(比如变量值),从而引发错误。
148 Random Access Memory RAM 随机访问内存。 计算机主内存的同义词。然而,从技术角度看,RAM是指在任意时间内都可以同样访问内存地址。RAM也意味着可以同时读写数据。
149 recursion 递归 用自身的形式定义自己。 特别地,递归子程序可以直接或通过一系列其它子程序间接调用自己。递归算法的工作方式,通过将一个复杂问题拆分成更小的子问题。子问题要么可以直接解决,要么可以“递归”使用相同的算法。
150 RGB --- 一种颜色系统。 颜色由3个数值定义(在Java中,数值的范围从0到255)。分别表示颜色中的红色、绿色和蓝色组成。
151 reference 引用 一种颜色系统。 颜色由3个数值定义(在Java中,数值的范围从0到255)。分别表示颜色中的红色、绿色和蓝色组成。
152 return type of a function 函数返回类型 一种颜色系统。 颜色由3个数值定义(在Java中,数值的范围从0到255)。分别表示颜色中的红色、绿色和蓝色组成。
153 关键字)(reserved word 保留字 一组字符串序列,看起来和标识符很像。 但是由于在编程语言中有特殊含义,所以不能用作标识符。例如 class、public 是Java中的保留字。
154 resource 资源 图片、声音、文字或程序中的数据文件都是资源。 Java资源文件与编译好的class文件存储在相同的路径(class path)。
155 robust program 健壮的程序 图片、声音、文字或程序中的数据文件都是资源。 Java资源文件与编译好的class文件存储在相同的路径(class path)。
156 set 集合 没有重复的一组对象。 在Java中,集合用泛型接口 Set 表示。
157 scope 作用域 没有重复的一组对象。 在Java中,集合用泛型接口 Set 表示。
158 semantics 语义 没有重复的一组对象。 在Java中,集合用泛型接口 Set 表示。
159 sentinel value 哨兵值 没有重复的一组对象。 在Java中,集合用泛型接口 Set 表示。
160 setter方法 --- 类中的实例方法,用来设置类中的一些属性值。 通常,这些属性只是实例变量值。按照惯例,setter 方法命名为 setXyz(),其中 xyz 是属性的名字。
161 signature of a method 方法签名 方法名、方法定义中形参的个数以及每个形参的类型。 编译器通过方法签名来识别指定子程序调用语句究竟调用了哪个方法。
162 socket 套接字 网络上两个计算机之间的连接,对其中一端的抽象表示。 套接字表示计算机程序间的一个逻辑连接,而非计算机间的物理连接。
163 stack 一组元素组成的列表数据结构,只能在列表的尾部,也称作“栈顶”。 向栈中添加元素叫“入栈 push”,移除元素称作“出栈 pop”。栈也指用来实现子程序调用的活动记录。
164 standard input 标准输入 程序读取输入数据的标准源,由 System.in 对象表示。 通常,标准输入来自用户键入的文本,但是标准输出也可以重定向到其它源,比如文件。
165 standard output 标准输出 程序将输出文本写入的标准目标,由 System.out 对象表示。 通常,标准输出会向用户展示,但是也可以“重定向”到其它目标,比如文件。此外,System.err 对象用来输出错误信息。
166 state machine 状态机 一种计算机模型。 抽象的“机器”可处于有限状态集中的任何一种状态。机器会根据自身的状态决定行为,根据输入或事件进行状态切换。GUI程序的基本逻辑可表现为状态机。
167 step-wise refinement 逐步精化法 一种算法开发技术。 开始列出算法步骤大纲,通常用伪代码表示,然后逐步填充细节。
168 stream 输入数据源或输出数据目标的抽象表示。 Java为字符和二进制数据输入、输出流提供了4个基础类。这些类组成了Java I/O API的基础。
169 source code 源代码 用高级编程语言编写的文本。 在计算机执行前,必须翻译成机器语言,比如Java字节码。
170 subclass 子类 一个类,直接或间接继承了其它类,从而继承了它的数据和行为。 前一个类就叫做第二类的子类。
171 subroutine 子程序 一系列程序指令。 通过子程序名可以“调用”该子程序。在面向对象编程中,子程序也称作方法。
172 subroutine call statement 子程序调用语句 程序中调用子程序的语句。 当执行子程序调用语句时,计算机会执行子程序内部的代码。
173 super --- 一个特殊变量,在实例方法中自动定义。 super指包含该方法的对象,归属于方法所在类的父类。super可以访问父类中被隐藏的成员变量,这些变量与子类中的成员变量同名。
174 syntax 语法 一个特殊变量,在实例方法中自动定义。 super指包含该方法的对象,归属于方法所在类的父类。super可以访问父类中被隐藏的成员变量,这些变量与子类中的成员变量同名。
175 TCP/IP --- 一个特殊变量,在实例方法中自动定义。 super指包含该方法的对象,归属于方法所在类的父类。super可以访问父类中被隐藏的成员变量,这些变量与子类中的成员变量同名。
176 this --- 一个特殊变量,在实例方法中自动定义。 super指包含该方法的对象,归属于方法所在类的父类。super可以访问父类中被隐藏的成员变量,这些变量与子类中的成员变量同名。
177 thread 线程 对一系列逐条执行语句的抽象表示。 计算机可以并行执行多个线程。
178 thread pool 线程池 执行任务时可以使用的一组“工作线程”。 当任务就绪时,可分配给池中的线程。线程池通常使用阻塞式队列存储任务。
179 top-down design 自顶向下设计 一种软件设计方法。 开始把问题作为一个整体,然后拆分成更小的问题,再逐步细化,直到子问题可以直接解决。
180 type 类型 数值的特定类型。 例如,int类型规定了整形值可以表示为32比特二进制数。在Java中,类型可以是基本类型、类名或接口名。类型名可用来定义变量的类型,子程序中的虚拟参数和子程序的返回类型。
181 type cast 类型转换 把一种类型的值强制转换为另一种类型。 例如,在 (int)(6Math.random()) 中,(int) 是一个类型转换操作,将 (6Math.random()) 的浮点值转换为了整形,丢弃了实数中的小数部分。
182 Unicode --- 将字符编码成二进制数的一种方式。 Unicode字符集包含了许多语言的字符,不仅限于英语。Java内部使用的就是Unicode字符集。
183 URL --- 全球资源定位器。 Internet上资源的地址,比如网页。
184 variable 变量 一个带名字的内存位置(或一系列位置),用来存储数据。 在程序中创建变量,通过变量声明语句将名字赋予该变量。根据使用情况,这个名字在程序中可以代指该内存位置,或者向内存地址中存储数据。在Java中,变量具有类型,可以表示变量持有数据的种类。
185 wrapper class 包装类 类似 Double、Integer这样的类,将一个基本类型的值“包装”在对象中,该对象归属于包装类。 这样,在需要使用对象的地方也可以使用基本类型值,比如Java集合框架。
186 eXtensible Markup Language XML 可扩展标记语言。 一种非常常见且语法标准、支持良好的语言。用来创建基于文本的数据表示。
1 abstract class 抽象类 抽象类不能创建对象,主要用来创建子类。Java中的抽象类使用 abstract 修饰符定义。
2 abstract data type ADT 抽象数据类型 抽象类不能创建对象,主要用来创建子类。Java中的抽象类使用 abstract 修饰符定义。
3 access specifier 访问标识符 用于方法或变量定义,限定了哪些类可以访问该方法或变量。 Java中的访问标识符有 public、protected 和 private。没有访问标识符修饰的方法或变量默认可见性为“package”。
4 activation record 活动记录 活动记录是包含了实现子程序调用必须的所有信息,包括参数值、子程序中的本地变量和子程序调用结束时计算机的返回地址。 活动记录存储在栈中,使得多个子程序调用同时活跃成为可能。这对递归非常重要,递归时对同一个子程序的多个调用要求同时激活。
5 actual parameter 实参 活动记录是包含了实现子程序调用必须的所有信息,包括参数值、子程序中的本地变量和子程序调用结束时计算机的返回地址。 活动记录存储在栈中,使得多个子程序调用同时活跃成为可能。这对递归非常重要,递归时对同一个子程序的多个调用要求同时激活。
6 address 地址 计算机内存中的每个位置都有一个地址,表示该位置的编号。内存中的位置按序号排列。 在现代计算机中,内存中的每个字节都有自己的地址。在存储或读取内存信息时用需要用到地址。
7 algorithm 算法 计算机内存中的每个位置都有一个地址,表示该位置的编号。内存中的位置按序号排列。 在现代计算机中,内存中的每个字节都有自己的地址。在存储或读取内存信息时用需要用到地址。
8 alpha color component 阿尔法颜色组成 计算机内存中的每个位置都有一个地址,表示该位置的编号。内存中的位置按序号排列。 在现代计算机中,内存中的每个字节都有自己的地址。在存储或读取内存信息时用需要用到地址。
9 API --- 应用编程接口。针对软件包或“工具箱”的接口说明。 API包含了工具箱中所有类或子程序及其使用说明。
10 Applet --- 应用编程接口。针对软件包或“工具箱”的接口说明。 API包含了工具箱中所有类或子程序及其使用说明。
11 animation 动画 由一组静态图片快速显示展示出动态效果。每一幅静态图片叫做帧。 在Java中,动画通常由 Timer 对象驱动。每次定时器触发时,会显示动画的下一帧。
12 antialiasing 反锯齿 当图形和文本以像素方式显示时,可以通过调整像素的颜色减轻“锯齿”效应。 反锯齿画图时,图形只覆盖像素的一部分,图形的颜色与该像素之前的颜色混合而成。混合的程度由覆盖像素的多少决定。
13 array 数组 一个顺序排列的元素列表。列表中,每个元素都可以由自己的索引标识,即序号。 在Java中,数组里所有元素必须类型相同,该类型也称作数组的基类型。数组是一种可随机访问的数据结构,也就是说,你可以随时直接访问数组中的任意元素。
14 array type 数组类型 一个顺序排列的元素列表。列表中,每个元素都可以由自己的索引标识,即序号。 在Java中,数组里所有元素必须类型相同,该类型也称作数组的基类型。数组是一种可随机访问的数据结构,也就是说,你可以随时直接访问数组中的任意元素。
15 assignment statement 赋值语句 计算机程序中的一种语句,可以读取或计算数值,并将其存储到变量中。 Java中的赋值语句形式为:变量名 = 表达式。
16 asynchronous event 异步事件 异步事件指发生时间不可预料的事件,计算机程序无法对其控制。 像点击鼠标、按键这样的用户输入事件都是异步的。
17 ASCII码 --- 美国信息交换标准码。这种编码使用7个比特对字符编码。 ASCII码只支持128个字符,不支持重音字符、非英语字符、特殊符号或非字符化语言的表意符号,比如中文。Java采用了容量更大、更加完整的Unicode编码处理字符。
18 base case 基线条件 美国信息交换标准码。这种编码使用7个比特对字符编码。 ASCII码只支持128个字符,不支持重音字符、非英语字符、特殊符号或非字符化语言的表意符号,比如中文。Java采用了容量更大、更加完整的Unicode编码处理字符。
19 binary number 二进制数 美国信息交换标准码。这种编码使用7个比特对字符编码。 ASCII码只支持128个字符,不支持重音字符、非英语字符、特殊符号或非字符化语言的表意符号,比如中文。Java采用了容量更大、更加完整的Unicode编码处理字符。
19 binary tree 二叉树 二叉树是一种链式数据结构。可以为空树,或者由两棵更小的二叉树(可能为空树)与根节点组成。 根节点包含了指向两棵子树的指针。这两棵更小的二叉树被称作左子树和右子树。
21 bit 比特 二叉树是一种链式数据结构。可以为空树,或者由两棵更小的二叉树(可能为空树)与根节点组成。 根节点包含了指向两棵子树的指针。这两棵更小的二叉树被称作左子树和右子树。
22 black box 黑盒 二叉树是一种链式数据结构。可以为空树,或者由两棵更小的二叉树(可能为空树)与根节点组成。 根节点包含了指向两棵子树的指针。这两棵更小的二叉树被称作左子树和右子树。
23 block 在Java编程中,被花括号({})包围的一组语句称为块。(代码)块用来将一组语句组合成一条语句。 块可以为空,表示不包含任何语句,即一对空的花括号。
24 blocking operation 阻塞操作 一个操作如果需要等待某些事件发生就称为“阻塞”操作,比如从网络连接读取数据。 执行阻塞操作的线程会一直处在“阻塞”状态,直到事件发生。处于阻塞状态时,线程不能执行任何指令。而程序中的其它线程可以继续执行。
25 blocking queue 阻塞队列 当阻塞队列为空时,出队操作会引发阻塞,直到队列中有新成员加入。 如果阻塞队列有大小限制,当队列填满时,入队操作也会引起阻塞。
26 bottom-up design 自底向上设计 当阻塞队列为空时,出队操作会引发阻塞,直到队列中有新成员加入。 如果阻塞队列有大小限制,当队列填满时,入队操作也会引起阻塞。
27 BufferedImage类 --- 当阻塞队列为空时,出队操作会引发阻塞,直到队列中有新成员加入。 如果阻塞队列有大小限制,当队列填满时,入队操作也会引起阻塞。
28 branch 分支 分支是一种控制结构,计算机通过分支从2个或多个不同的执行路径中进行选择。 Java有两种分支语句:if 语句和 switch 语句。
29 byte 字节 字节是一种由8个比特组成的内存单元。 一个字节可以保存8个比特二进制数。
30 bytecode 字节码 “Java字节码”是Java虚拟机机器语言的常用名称。 Java程序会被编译成Java字节码,后者由JVM执行。
31 charset 字符集 “Java字节码”是Java虚拟机机器语言的常用名称。 Java程序会被编译成Java字节码,后者由JVM执行。
32 checked exception 受检异常 在Java中受检异常必须处理,可以通过 try catch 语句捕获,或者在方法上使用 throw 语句抛出该异常。 如果没有用这两种方式处理受检异常,会报告语法错误。
33 class 类是Java的基础编程单元。 类是静态方法、非静态方法和变量的集合。静态成员是类自身的一部分,非静态或“实例”成员是创建对象的蓝本,由此创建的对象“属于”该类。
34 class variable)和类方法(class methods 类变量 类是Java的基础编程单元。 类是静态方法、非静态方法和变量的集合。静态成员是类自身的一部分,非静态或“实例”成员是创建对象的蓝本,由此创建的对象“属于”该类。
35 client/server 客户端/服务器 一种网络通讯模式。 其中,“服务器”在网络上守候某个已知地址,等待“客户端”向它发起连接请求。这是TCP/IP协议的基础通讯模型。
36 command-line interface 命令行接口 一种网络通讯模式。 其中,“服务器”在网络上守候某个已知地址,等待“客户端”向它发起连接请求。这是TCP/IP协议的基础通讯模型。
37 comment 注释 一种网络通讯模式。 其中,“服务器”在网络上守候某个已知地址,等待“客户端”向它发起连接请求。这是TCP/IP协议的基础通讯模型。
38 compiler 编译器 一种网络通讯模式。 其中,“服务器”在网络上守候某个已知地址,等待“客户端”向它发起连接请求。这是TCP/IP协议的基础通讯模型。
39 component 组件 组件是对GUI可视元素的泛称,包括窗口、按钮或菜单等。 在Java中,组件表现为 java.awt.Component 子类创建的对象。
40 constructor 构造函数 类的一种特殊子程序,主要用来创建类的对象。 构造函数一般使用 new 操作符进行调用,通常不被看做“方法”。
41 container 容器 类似 JPanel 这样的组件,容器可以包含其它GUI组件。 调用容器的 add() 方法可以向其添加组件。
42 contract of a method 方法契约 方法接口的语义组件。 它指明了方法及其调用者的职责,如何调用该方法,以及正确调用方法时会执行的任务。方法契约应当在该方法的Javadoc注释中完整说明。
43 control structure 控制结构 方法接口的语义组件。 它指明了方法及其调用者的职责,如何调用该方法,以及正确调用方法时会执行的任务。方法契约应当在该方法的Javadoc注释中完整说明。
44 CPU --- 方法接口的语义组件。 它指明了方法及其调用者的职责,如何调用该方法,以及正确调用方法时会执行的任务。方法契约应当在该方法的Javadoc注释中完整说明。
45 data structure 数据结构 方法接口的语义组件。 它指明了方法及其调用者的职责,如何调用该方法,以及正确调用方法时会执行的任务。方法契约应当在该方法的Javadoc注释中完整说明。
46 deadlock 死锁 方法接口的语义组件。 它指明了方法及其调用者的职责,如何调用该方法,以及正确调用方法时会执行的任务。方法契约应当在该方法的Javadoc注释中完整说明。
47 default method 默认方法 Java 8 接口中的方法,该方法提供了自己的实现。 所有实现带有默认方法的接口都可以使用默认实现,但是不能覆盖默认方法。通过 default 保留字标记默认方法。Java 7不支持默认方法。
47 default package 默认包 默认包没有包名。 没有在带有名字的包中声明的类都归属默认包。
49 definite assignment 明确赋值 在程序中,变量在使用前必须确保已经被赋值。 局部变量只有在赋值后才能合法使用。为了达到这个要求,编译器必须对变量从声明开始到使用的每条路径都进行赋值检查。
50 deprecated 弃用 表示已经废弃,但为了先后兼容仍然保留。 弃用的Java类或方法仍然是Java语言的一部分,但不建议在新代码中使用。在未来的Java版本中,弃用的内容会被移除。
51 dialog box 对话框 对话框是依赖其它窗体创建的新窗体。 弹出对话框通常用作获取用户信息或展示消息。Swing API中,对话框表示为 JDialog 创建的对象。
52 distributed computing 分布式计算 对话框是依赖其它窗体创建的新窗体。 弹出对话框通常用作获取用户信息或展示消息。Swing API中,对话框表示为 JDialog 创建的对象。
53 dummy parameter 虚参数 调用子程序时,用来代替实际传入参数的标识符。 虚参数也叫“形式参数”(有时候会用“变元 argument”表示实参,这时虚参数也叫做“参数”)。
54 enum --- 枚举类型。 枚举类型的定义中列举了该类型所有可能值。在Java中,枚举类型是一个类,所有可能的值都是对象。
55 event 事件 在GUI编程中,事件指发生在程序控制以外的操作,比如点击鼠标。 程序必须对发生的事件进行响应。
56 exception 异常 程序控制流程之外的错误或异常情况。 在Java中,异常表示为 Throwable 对象,可以由 try..catch 语句捕捉并处理。
57 fetch-and-execute cycle 获取-执行周期 也称指令周期。 指CPU执行机器语言程序的过程。CPU会从内存获取(即读取)指令,执行(运行)指令,然后再循环重复该过程。
58 flag 标志 一个布尔值。 设为 true 时表示达到某些条件或发生了某种事情。可利用二进制数中的某个比特位作为标志。
59 formal parameter 形式参数 一个布尔值。 设为 true 时表示达到某些条件或发生了某种事情。可利用二进制数中的某个比特位作为标志。
60 frame 一个布尔值。 设为 true 时表示达到某些条件或发生了某种事情。可利用二进制数中的某个比特位作为标志。
61 function 函数 一个布尔值。 设为 true 时表示达到某些条件或发生了某种事情。可利用二进制数中的某个比特位作为标志。
62 garbage collection 垃圾回收 一个布尔值。 设为 true 时表示达到某些条件或发生了某种事情。可利用二进制数中的某个比特位作为标志。
63 generic programming 泛型编程 编写的代码不仅限于单一数据类型,可适应多种数据类型。 Java集合框架及其它使用了相似技术的类都是泛型编程的实例。
64 getter方法 --- 类中的一个实例方法,用来读取类的某个属性值。 通常,属性代表一些实例变量的值。按惯例,getter方法被命名为 getXyz(),其中 xyz 是属性的名字。
65 global variable 全局变量 类中的一个实例方法,用来读取类的某个属性值。 通常,属性代表一些实例变量的值。按惯例,getter方法被命名为 getXyz(),其中 xyz 是属性的名字。
66 graphics context 图形上下文 类中的一个实例方法,用来读取类的某个属性值。 通常,属性代表一些实例变量的值。按惯例,getter方法被命名为 getXyz(),其中 xyz 是属性的名字。
67 GUI --- 图形用户界面是与计算机的现代交互方式。 计算机通过GUI在显示器上展示类似按钮和菜单这样的接口组件,用户可以通过像鼠标点击这样的方式与之交互。
68 hash table 哈希表 一种优化的数据结构,可以高效搜索、插入和删除对象。哈希表包含对象的地址数组。 对象存储的地址由自身的“哈希代码”决定。通过对象的内容可以高效地计算出地址整数值。
69 heap 一种优化的数据结构,可以高效搜索、插入和删除对象。哈希表包含对象的地址数组。 对象存储的地址由自身的“哈希代码”决定。通过对象的内容可以高效地计算出地址整数值。
70 high level language 高级语言 一种优化的数据结构,可以高效搜索、插入和删除对象。哈希表包含对象的地址数组。 对象存储的地址由自身的“哈希代码”决定。通过对象的内容可以高效地计算出地址整数值。
71 HSB --- 一种颜色系统。 其中颜色由3个数值表示(在Java中,实际的数值在0.0到1.0之间)。分别代表色调、饱和度和亮度。
72 IDE --- 集成开发环境。 带图形用户界面的编程环境,集成了创建、编辑和执行程序的各种工具。
73 identifier 标识符 在程序中可用作名字的一组标识符。 标识符可用作变量名、方法名和类名。
74 index 索引号 在程序中可用作名字的一组标识符。 标识符可用作变量名、方法名和类名。
75 implementation 实现 在程序中可用作名字的一组标识符。 标识符可用作变量名、方法名和类名。
76 immutable object 不可变对象 在程序中可用作名字的一组标识符。 标识符可用作变量名、方法名和类名。
77 infinite loop 无限循环 在程序中可用作名字的一组标识符。 标识符可用作变量名、方法名和类名。
78 inheritence 继承 一个类可以继承另一个类。 继承者会从父类继承数据和行为。
79 instance of a class 类的实例 指归属于类(或者该类型子类)的对象。 当类用作对象模板时,对象由类中的构造函数创建的对象归属于这个类。
80 instance method 实例方法 指归属于类(或者该类型子类)的对象。 当类用作对象模板时,对象由类中的构造函数创建的对象归属于这个类。
81 instance variable 实例变量 指归属于类(或者该类型子类)的对象。 当类用作对象模板时,对象由类中的构造函数创建的对象归属于这个类。
82 interface 接口 对如何使用类似子程序这样的黑盒子一种通用说法。 接口对其内部发生的情况没有提供任何信息。“interface”同时也是Java中的保留字。从这个意义上说,接口是一种定义了一个或多个抽象方法的类型。实现该接口的对象必须提供这些方法的定义。
83 interpreter 解释器 一种执行程序的计算机程序,被执行的程序由某种编程语言编写。 通过从程序中一个接一个读取指令然后逐条执行(将指令翻译为等价的机器语言)。
84 I/O --- 输入/输出。 计算机程序与其它部分的通讯方式,比如向用户展示数据、从用户那里获取信息、读写文件、通过网络发送和获取数据。
85 iterator 迭代器 与 list 或 set 这样的集合相关联的对象。可用来对该集合进行遍历。 迭代器会轮流访问集合中的每个元素。
86 Java Collection Framework JCF Java集合框架 与 list 或 set 这样的集合相关联的对象。可用来对该集合进行遍历。 迭代器会轮流访问集合中的每个元素。
87 JavaFX --- 新的应用程序GUI工具集。 在Java 8中推荐使用。JavaFX不在本书的讨论范围。
88 JDK --- Java开发工具集。 支持编译、运行Java程序的基本软件。JDK包含命令行编程环境以及JRE。要编译Java源代码或执行预编译程序时,需要使用JDK。
89 Java Runtime Environment JRE Java运行时环境。 支持运行已编译的标准Java程序。JRE包括一个Java虚拟机和所有标准的Java类。
90 just-in-time compiler 即时编译器 一种解释器和编译器的结合,在解释程序某部分的同时可对其进行编译。 接下来对该部分程序执行时比首次运行更快速。这样可以大大提高执行速度。现代JVM都使用了即时编译器。
91 JVM --- Java虚拟机。 将Java字节码作为机器语言执行的虚拟计算机。也用来称呼解析字节码程序的计算机程序。要在计算机上运行Java程序需要使用JVM。
92 layout manager 布局管理器 负责对容器中组件进行布局的对象。 进行的部分操作包括设置大小和位置。不同类型的布局管理器实现的布局策略各不相同。
93 linked data structure 链式数据结构 一组由之指针相互链接的对象数据。 这些指针存储在对象的实例变量中。链式数据结构包括链表和二叉树。
94 linked list 链表 一组由之指针相互链接的对象数据。 这些指针存储在对象的实例变量中。链式数据结构包括链表和二叉树。
95 listener 监听器 在GUI编程中,可以向对象注册特定事件的触发通知。 因此可以说,对象在“监听”这些事件。
96 literal 文字 在程序中键入的一组字符序列,表示常量值。 例如,当A在Java程序中出现时,’A'是一个常量字符。
97 内存)位置(location in memory 计算机内存由一系列位置组成。 这些位置顺序编号,标识特定位置的编号被称为该位置的地址。
98 local variable 本地变量 在方法内部声明的变量,只能在该方法内部使用。 代码块中声明变量的有效性,从声明处开始到该代码块的尾部结束。
99 loop 循环 一种控制结构,重复执行一组指令。 Java提供了
3 种循环 --- 一种控制结构,重复执行一组指令。 Java提供了
100 loop control variable 循环控制变量 一种控制结构,重复执行一组指令。 Java提供了
101 machine language 机器语言 由计算机能够直接执行的指令组成的编程语言。 机器语言中的指令会被编码成二进制数。每种类型的计算机都有自己的机器语言。用其它语言编写的程序必须翻译为该计算的机器语言,才能在它上面执行。
102 main memory 主内存 程序和数据可以存储在计算机的主内存中,主内存可以被CPU直接访问。 其它形式的内存,比如磁盘驱动器,虽然也能存储信息,但是唯有主内存可被CPU直接访问。磁盘分区中的程序和数据只有拷贝到内存中才能被CPU访问。
103 map --- 一种映射数组。 这种数据结构将一组(Collection)中的某个对象与摸个集合(Set)中的所有对象关联在一起。在Java中,map 由泛型接口 Map 表示。
104 member variable 成员变量 定义在类中的变量,但不属于任何方法。 成员变量与本地变量不同,后者在某个方法中定义。
105 memory 内存 定义在类中的变量,但不属于任何方法。 成员变量与本地变量不同,后者在某个方法中定义。
106 method 方法 子程序的另一种称呼,在面向对象编程中使用。 方法指包含在类或对象中的子程序。
107 module 模块 子程序的另一种称呼,在面向对象编程中使用。 方法指包含在类或对象中的子程序。
108 multitasking 多任务 一次执行多个编程任务。 要么在多个任务之间快速来回切换,要么同时逐个执行多个任务。
109 multiprocessing 多重处理 进行多任务处理时使用多个处理器。 这样,多个任务可以同时逐个执行。
110 mutual exclusion 互斥 防止两个线程同时访问相同的资源。 在Java中,这种方法应用于多个线程同时访问同步方法或同步语句中的资源。互斥可以阻止竞态条件,但是可能引发死锁。
111 MVC pattern MVC模式 模型-视图-控制器模式。 一种用在GUI组件中进行职责划分的策略。模型代表组件的数据,视图指该模型在屏幕上的展示,控制器负责响应模型变化事件。在MVC模式中,这些职责由不同的对象负责处理。
112 NaN 非数值 不是一个数值。 Double.NaN表示一种特殊的 double 值,表示未定义或非法值。
113 node 节点 不是一个数值。 Double.NaN表示一种特殊的 double 值,表示未定义或非法值。
114 null --- 不是一个数值。 Double.NaN表示一种特殊的 double 值,表示未定义或非法值。
115 numerical analysis 数值分析 不是一个数值。 Double.NaN表示一种特殊的 double 值,表示未定义或非法值。
116 off-by-one error 差一错误 一种常见错误,处理时多减或多加了一个元素。 通常是技术错误或者循环时由其它原因过早停止或过度执行造成的。
117 object 对象 计算机程序中带有数据(变量)和行为(方法)的实体。 Java中的对象必须以某个类作为创建模板。对象所属的类决定了对象包含的类和方法。
118 object type 对象类型 这种类型的值是对象而非基础类型。 类和接口都是对象类型。
119 Object-Oriented Programming OOP 面向对象编程。 一种计算机程序设计和实现的方法。OOP使用类和对象创建、表示实体及实体间的交互。
120 operating system 操作系统 在计算机中一直运行的基础软件。 没有操作系统的计算机无法工作。操作系统由Linux、Mac OS 和 Windows Vista。
121 operator 操作符 在计算机中一直运行的基础软件。 没有操作系统的计算机无法工作。操作系统由Linux、Mac OS 和 Windows Vista。
122 操作符)重载(overloading of operators 相同操作符可以在不同类型的数据上使用。 比如“+”操作可以同时应用于数字和字符类型。
123 方法名)重载(overloading of method names 相同操作符可以在不同类型的数据上使用。 比如“+”操作可以同时应用于数字和字符类型。
124 覆盖)(overriding 重写 在子类中进行重定义。 子类中,对从父类继承的方法重新定义,新定义的方法就是对原方法进行重写。
125 package 在Java中,相关类和子包的有名集合称为包。 例如 java.awt 和 javax.swing。
126 parallel processing 并行处理 在Java中,相关类和子包的有名集合称为包。 例如 java.awt 和 javax.swing。
127 parameter 参数 调用子程序时,参数用来向子程序提供信息。 在执行子程序代码前,子程序调用语句中的“实参”会分配给子程序定义的“虚参数”。
128 parameterized type 参数化类型 调用子程序时,参数用来向子程序提供信息。 在执行子程序代码前,子程序调用语句中的“实参”会分配给子程序定义的“虚参数”。
129 parsing 解析 确定预演中字符串语法结构的过程。 解析字符串用来确定字符串中是否遵循该语言的语法;如果是,那么会确定该字符串是如何根据语法进行创建。
130 partially full array 部分完全数组 数组是用来存储数量各异的元素。 部分完全数组表示为一个带有追踪元素个数计数器的普通数组。
131 pixel 像素 指屏幕或图片中的“图像元素”。 一幅图像由像素的行和列组成。每个像素的色彩都可以单独设置。
132 polymorphism 多态 多态是指调用实例方法的意义取决于调用方法时对象的实际类型。 也就是说,如果变量的类型是 var,那么调用方法的语句。比如 var.action() 取决于执行时 var 所指向的对象类型,而非 var 变量的类型。
133 pointer 指针 代表计算机内存中某个地址的值,因此可以看做“指向”具有该地址的位置。 在Java中,变量不存有对象;变量只是指向存储该对象的位置。指针也称作“引用”。
134 pragmatics 语用学 描述如何编写好程序的经验法则。 例如样式规则、程序组织指南都是编程语用学的一部分。
135 precedence 优先级 描述如何编写好程序的经验法则。 例如样式规则、程序组织指南都是编程语用学的一部分。
136 precondition 前置条件 在程序的执行过程中,为了让程序正确运行,前置条件必须判定为 true。 子程序的前置条件是指,为了让子程序正确运行必须满足的前置条件。子程序的前置条件通常是对传入的子程序的实参值进行的限制。
137 priority queue 优先级队列 一种表示元素结合的数据结构,其中每个元素都有自己的“优先级”。 优先级队列具有添加和移除操作。可以按照任意的顺序添加元素,但移除时总是先移除优先级最低的元素。(某些版本的优先级队列会先移除优先级最高的元素)
138 postcondition 后置条件 在执行程序的某个节点,该条件的计算结果为 true。 子程序的后置条件在子程序执行结束后必须为 true。函数的后置条件通常表示为函数的返回值。
139 primitive type 基本类型 Java的8个内建基本数据类型有 double、float、long、int、short、byte、boolean 和 char。 基本类型变量存储了真实的值,而非指向数值的指针。
140 priority of a thread 线程优先级 与线程关联的整数值,可以影响线程的执行顺序。 优先级高的线程比优先级低的线程提前执行。
141 producer/consumer 生产者/消费者 并行编程中的一种经典模式,一个或多个生产者生产的产品被一个或更多的消费者使用。 生产者和消费者设计为可以并行执行。这里的难点在于,如何安全、高效地从生产者向消费者非配产品。在Java中,通过阻塞队列实现生产者/消费者模式。
142 program 程序 用某种合适的编程语言编写的一组指令,由计算机执行。 用做动词时,表示创建该指令的动作。
143 programming language 编程语言 用来为计算机编程的一种语言。 编程语言的复杂性,从机器语言到像Java这样的高级语言跨度很大。
144 protocol 协议 在指定上下文中,构成合法通信的一组规范。 协议中规定了合法的消息、传送的时间、期待的恢复类型等。
145 pseudocode 伪代码 非正式算法规范。 与实际编程语言相比,伪代码更加接近英语。并且,通常无需明确地写出过程的每个细节。
146 queue 队列 由一组元素构成的数据结构。 只能在列表的一头添加数据,在列表的另一头移除数据。
147 race condition 竞态条件 并行编程中可能的错误源。 由于某个线程改变了第二个程序依赖的程序状态(比如变量值),从而引发错误。
148 Random Access Memory RAM 随机访问内存。 计算机主内存的同义词。然而,从技术角度看,RAM是指在任意时间内都可以同样访问内存地址。RAM也意味着可以同时读写数据。
149 recursion 递归 用自身的形式定义自己。 特别地,递归子程序可以直接或通过一系列其它子程序间接调用自己。递归算法的工作方式,通过将一个复杂问题拆分成更小的子问题。子问题要么可以直接解决,要么可以“递归”使用相同的算法。
150 RGB --- 一种颜色系统。 颜色由3个数值定义(在Java中,数值的范围从0到255)。分别表示颜色中的红色、绿色和蓝色组成。
151 reference 引用 一种颜色系统。 颜色由3个数值定义(在Java中,数值的范围从0到255)。分别表示颜色中的红色、绿色和蓝色组成。
152 return type of a function 函数返回类型 一种颜色系统。 颜色由3个数值定义(在Java中,数值的范围从0到255)。分别表示颜色中的红色、绿色和蓝色组成。
153 关键字)(reserved word 保留字 一组字符串序列,看起来和标识符很像。 但是由于在编程语言中有特殊含义,所以不能用作标识符。例如 class、public 是Java中的保留字。
154 resource 资源 图片、声音、文字或程序中的数据文件都是资源。 Java资源文件与编译好的class文件存储在相同的路径(class path)。
155 robust program 健壮的程序 图片、声音、文字或程序中的数据文件都是资源。 Java资源文件与编译好的class文件存储在相同的路径(class path)。
156 set 集合 没有重复的一组对象。 在Java中,集合用泛型接口 Set 表示。
157 scope 作用域 没有重复的一组对象。 在Java中,集合用泛型接口 Set 表示。
158 semantics 语义 没有重复的一组对象。 在Java中,集合用泛型接口 Set 表示。
159 sentinel value 哨兵值 没有重复的一组对象。 在Java中,集合用泛型接口 Set 表示。
160 setter方法 --- 类中的实例方法,用来设置类中的一些属性值。 通常,这些属性只是实例变量值。按照惯例,setter 方法命名为 setXyz(),其中 xyz 是属性的名字。
161 signature of a method 方法签名 方法名、方法定义中形参的个数以及每个形参的类型。 编译器通过方法签名来识别指定子程序调用语句究竟调用了哪个方法。
162 socket 套接字 网络上两个计算机之间的连接,对其中一端的抽象表示。 套接字表示计算机程序间的一个逻辑连接,而非计算机间的物理连接。
163 stack 一组元素组成的列表数据结构,只能在列表的尾部,也称作“栈顶”。 向栈中添加元素叫“入栈 push”,移除元素称作“出栈 pop”。栈也指用来实现子程序调用的活动记录。
164 standard input 标准输入 程序读取输入数据的标准源,由 System.in 对象表示。 通常,标准输入来自用户键入的文本,但是标准输出也可以重定向到其它源,比如文件。
165 standard output 标准输出 程序将输出文本写入的标准目标,由 System.out 对象表示。 通常,标准输出会向用户展示,但是也可以“重定向”到其它目标,比如文件。此外,System.err 对象用来输出错误信息。
166 state machine 状态机 一种计算机模型。 抽象的“机器”可处于有限状态集中的任何一种状态。机器会根据自身的状态决定行为,根据输入或事件进行状态切换。GUI程序的基本逻辑可表现为状态机。
167 step-wise refinement 逐步精化法 一种算法开发技术。 开始列出算法步骤大纲,通常用伪代码表示,然后逐步填充细节。
168 stream 输入数据源或输出数据目标的抽象表示。 Java为字符和二进制数据输入、输出流提供了4个基础类。这些类组成了Java I/O API的基础。
169 source code 源代码 用高级编程语言编写的文本。 在计算机执行前,必须翻译成机器语言,比如Java字节码。
170 subclass 子类 一个类,直接或间接继承了其它类,从而继承了它的数据和行为。 前一个类就叫做第二类的子类。
171 subroutine 子程序 一系列程序指令。 通过子程序名可以“调用”该子程序。在面向对象编程中,子程序也称作方法。
172 subroutine call statement 子程序调用语句 程序中调用子程序的语句。 当执行子程序调用语句时,计算机会执行子程序内部的代码。
173 super --- 一个特殊变量,在实例方法中自动定义。 super指包含该方法的对象,归属于方法所在类的父类。super可以访问父类中被隐藏的成员变量,这些变量与子类中的成员变量同名。
174 syntax 语法 一个特殊变量,在实例方法中自动定义。 super指包含该方法的对象,归属于方法所在类的父类。super可以访问父类中被隐藏的成员变量,这些变量与子类中的成员变量同名。
175 TCP/IP --- 一个特殊变量,在实例方法中自动定义。 super指包含该方法的对象,归属于方法所在类的父类。super可以访问父类中被隐藏的成员变量,这些变量与子类中的成员变量同名。
176 this --- 一个特殊变量,在实例方法中自动定义。 super指包含该方法的对象,归属于方法所在类的父类。super可以访问父类中被隐藏的成员变量,这些变量与子类中的成员变量同名。
177 thread 线程 对一系列逐条执行语句的抽象表示。 计算机可以并行执行多个线程。
178 thread pool 线程池 执行任务时可以使用的一组“工作线程”。 当任务就绪时,可分配给池中的线程。线程池通常使用阻塞式队列存储任务。
179 top-down design 自顶向下设计 一种软件设计方法。 开始把问题作为一个整体,然后拆分成更小的问题,再逐步细化,直到子问题可以直接解决。
180 type 类型 数值的特定类型。 例如,int类型规定了整形值可以表示为32比特二进制数。在Java中,类型可以是基本类型、类名或接口名。类型名可用来定义变量的类型,子程序中的虚拟参数和子程序的返回类型。
181 type cast 类型转换 把一种类型的值强制转换为另一种类型。 例如,在 (int)(6Math.random()) 中,(int) 是一个类型转换操作,将 (6Math.random()) 的浮点值转换为了整形,丢弃了实数中的小数部分。
182 Unicode --- 将字符编码成二进制数的一种方式。 Unicode字符集包含了许多语言的字符,不仅限于英语。Java内部使用的就是Unicode字符集。
183 URL --- 全球资源定位器。 Internet上资源的地址,比如网页。
184 variable 变量 一个带名字的内存位置(或一系列位置),用来存储数据。 在程序中创建变量,通过变量声明语句将名字赋予该变量。根据使用情况,这个名字在程序中可以代指该内存位置,或者向内存地址中存储数据。在Java中,变量具有类型,可以表示变量持有数据的种类。
185 wrapper class 包装类 类似 Double、Integer这样的类,将一个基本类型的值“包装”在对象中,该对象归属于包装类。 这样,在需要使用对象的地方也可以使用基本类型值,比如Java集合框架。
186 eXtensible Markup Language XML 可扩展标记语言。 一种非常常见且语法标准、支持良好的语言。用来创建基于文本的数据表示。

同时这组信息是由:https://mp.weixin.qq.com/s/Cp...
网页通过下面代码提取处理的:

import re, os, json

with open('/Users/zszen/Desktop/info.txt', 'r+') as f:
    str = f.read()
    lst = re.split(r'(\d+.*?:)',str)
    del lst[0]
    for k in range(int(len(lst)/2)):
        res = re.split(r'^(\d+)(.*?)(\((.*?)\))?:',lst[k*2])
        if res[4] is None:
            idx = res[1]
            title = '---'
            title_en = res[2]
        else:
            idx = res[1]
            title = res[2]
            title_en = res[4]
        content = lst[k*2+1].replace('\n\n','')
        res = re.split(r'^(.*)\n',content)
        if len(res)>1:
            del res[0]
            content1 = res[0]
            if len(res)>1:
                del res[0]
                content2 = ''.join(res)
                content2 = content2.replace('\n','')
        print(f'{idx}|{title_en}|{title} | {content1} | {content2}')

你可能感兴趣的:(java,python,基础)