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

同时这组信息是由: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}')

Zszen
11 声望2 粉丝

print('搬家至此, 简书不错'.replace('不错', '滚粗'))