Java程序员必须掌握的英语词组

抽象类(abstract class):抽象类不能建立对象,主要用来建立子类。Java中的抽象类使用 abstract 修饰符定义。java

抽象数据类型(abstract data type ADT):抽象数据类型指明了可能的类型和容许进行的操做,可是没有提供实现。node

访问标识符(access specifier):用于方法或变量定义,限定了哪些类能够访问该方法或变量。Java中的访问标识符有 public、protected 和 private。没有访问标识符修饰的方法或变量默承认见性为“package”。算法

活动记录(activation record):活动记录是包含了实现子程序调用必须的全部信息,包括参数值、子程序中的本地变量和子程序调用结束时计算机的返回地址。活动记录存储在栈中,使得多个子程序调用同时活跃成为可能。这对递归很是重要,递归时对同一个子程序的多个调用要求同时激活。编程

实参(actual parameter):子程序的参数叫作声明。当调用执行时,经过声明把值传递给自函数。实参也叫作“参数”。数组

地址(address):计算机内存中的每一个位置都有一个地址,表示该位置的编号。内存中的位置按序号排列。在现代计算机中,内存中的每一个字节都有本身的地址。在存储或读取内存信息时用须要用到地址。浏览器

算法(algorithm):完成某项任务所须要的一步一步的过程,过程自己没有歧义,且能够保证在有限的步骤内完成该任务。安全

阿尔法颜色组成(alpha color component):颜色组成用来描述颜色的透明度或不透明度。阿尔法组成越高,颜色越不透明。服务器

API:应用编程接口。针对软件包或“工具箱”的接口说明。API包含了工具箱中全部类或子程序及其使用说明。网络

Applet:与能够单独运行的应用程序不一样,Applet是一种在Web浏览器中运行在Web页面上的Java程序。数据结构

动画(animation):由一组静态图片快速显示展现出动态效果。每一幅静态图片叫作帧。在Java中,动画一般由 Timer 对象驱动。每次定时器触发时,会显示动画的下一帧。

反锯齿(antialiasing):当图形和文本以像素方式显示时,能够经过调整像素的颜色减轻“锯齿”效应。反锯齿画图时,图形只覆盖像素的一部分,图形的颜色与该像素以前的颜色混合而成。混合的程度由覆盖像素的多少决定。

数组(array):一个顺序排列的元素列表。列表中,每一个元素均可以由本身的索引标识,即序号。在Java中,数组里全部元素必须类型相同,该类型也称做数组的基类型。数组是一种可随机访问的数据结构,也就是说,你能够随时直接访问数组中的任意元素。

数组类型(array type):这种数据类型的值是数组。好比类型的名字为 Type,那么 Type[] 就是数组类型,基类型为 Type。

赋值语句(assignment statement):计算机程序中的一种语句,能够读取或计算数值,并将其存储到变量中。Java中的赋值语句形式为:变量名 = 表达式。

异步事件(asynchronous event):异步事件指发生时间不可预料的事件,计算机程序没法对其控制。像点击鼠标、按键这样的用户输入事件都是异步的。

ASCII码:美国信息交换标准码。这种编码使用7个比特对字符编码。ASCII码只支持128个字符,不支持重音字符、非英语字符、特殊符号或非字符化语言的表意符号,好比中文。Java采用了容量更大、更加完整的Unicode编码处理字符。

基线条件(base case):在递归算法中,基线条件能够直接处理不须要继续递归。

二进制数(binary number):数值被编码为一组0、1序列。通常数字以“10为基数”,二进制数与其相似,只是以“2为基数”。

二叉树(binary tree):二叉树是一种链式数据结构。能够为空树,或者由两棵更小的二叉树(可能为空树)与根节点组成。根节点包含了指向两棵子树的指针。这两棵更小的二叉树被称做左子树和右子树。

比特(bit):一位二进制数,多是0或1。

黑盒(black box):指系统或组件在使用时无需关心内部结构。黑盒包括接口和实现。在系统中,被当作组件使用的黑盒叫作模块。

块(block):在Java编程中,被花括号({})包围的一组语句称为块。(代码)块用来将一组语句组合成一条语句。块能够为空,表示不包含任何语句,即一对空的花括号。

阻塞操做(blocking operation):一个操做若是须要等待某些事件发生就称为“阻塞”操做,好比从网络链接读取数据。执行阻塞操做的线程会一直处在“阻塞”状态,直到事件发生。处于阻塞状态时,线程不能执行任何指令。而程序中的其它线程能够继续执行。

阻塞队列(blocking queue):当阻塞队列为空时,出队操做会引起阻塞,直到队列中有新成员加入。若是阻塞队列有大小限制,当队列填满时,入队操做也会引发阻塞。

自底向上设计(bottom-up design):自底向上设计是一种软件设计方法。从系统的基础组件开始设计,而后将它们组合成更复杂的组件,诸如此类。

BufferedImage类:BufferedImage类展现了“屏外画布”,即图片存储在计算机内存中,能够在屏幕外进行绘制。

分支(branch):分支是一种控制结构,计算机经过分支从2个或多个不一样的执行路径中进行选择。Java有两种分支语句:if 语句和 switch 语句。

字节(byte):字节是一种由8个比特组成的内存单元。一个字节能够保存8个比特二进制数。

字节码(bytecode):“Java字节码”是Java虚拟机机器语言的经常使用名称。Java程序会被编译成Java字节码,后者由JVM执行。

字符集(charset):字符集是一种将字符数据编码为二进制的特定编码形式。例如UTF-8和ISO-8859-1。

受检异常(checked exception):在Java中受检异常必须处理,能够经过 try catch 语句捕获,或者在方法上使用 throw 语句抛出该异常。若是没有用这两种方式处理受检异常,会报告语法错误。

类(class):类是Java的基础编程单元。类是静态方法、非静态方法和变量的集合。静态成员是类自身的一部分,非静态或“实例”成员是建立对象的蓝本,由此建立的对象“属于”该类。

类变量(class variable)和类方法(class methods):“静态变量”和“静态方法”的别名。它们是类的一部分,与对象无关。

客户端/服务器(client/server):一种网络通信模式。其中,“服务器”在网络上守候某个已知地址,等待“客户端”向它发起链接请求。这是TCP/IP协议的基础通信模型。

命令行接口(command-line interface):一种计算机交互方法。用户向计算机输入命令,计算机对每一个命令进行响应。

注释(comment):在一个计算机程序中,注释是那些被计算机忽略的文本。注释的目的是方便人们阅读,帮助理解程序。

编译器(compiler):编译器是一种计算机程序,将某种计算机语言(一般是高级语言)编写的程序翻译成机器语言程序。

组件(component):组件是对GUI可视元素的泛称,包括窗口、按钮或菜单等。在Java中,组件表现为 java.awt.Component 子类建立的对象。

构造函数(constructor):类的一种特殊子程序,主要用来建立类的对象。构造函数通常使用 new 操做符进行调用,一般不被看作“方法”。

容器(container):相似 JPanel 这样的组件,容器能够包含其它GUI组件。调用容器的 add() 方法能够向其添加组件。

方法契约(contract of a method):方法接口的语义组件。它指明了方法及其调用者的职责,如何调用该方法,以及正确调用方法时会执行的任务。方法契约应当在该方法的 Javadoc注释中完整说明。

控制结构(control structure):相似 if 语句、while 循环这样可影响程序控制流(即程序中指令执行顺序)的程序结构。

CPU:中央处理器。CPU是计算机中实际执行计算和运行程序的部分。

数据结构(data structure):通过组织的数据集合。在程序中被当作一个单元处理。

死锁(deadlock):一种多个线程无限等待的状况。出现死锁的缘由,好比每一个线程都在等待其它线程锁定的资源。

默认方法(default method):Java 8 接口中的方法,该方法提供了本身的实现。全部实现带有默认方法的接口均可以使用默认实现,可是不能覆盖默认方法。经过 default 保留字标记默认方法。Java 7不支持默认方法。

默认包(default package):默认包没有包名。没有在带有名字的包中声明的类都归属默认包。

明确赋值(definite assignment):在程序中,变量在使用前必须确保已经被赋值。局部变量只有在赋值后才能合法使用。为了达到这个要求,编译器必须对变量从声明开始到使用的每条路径都进行赋值检查。

弃用(deprecated):表示已经废弃,但为了前后兼容仍然保留。弃用的Java类或方法仍然是Java语言的一部分,但不建议在新代码中使用。在将来的Java版本中,弃用的内容会被移除。

对话框(dialog box):对话框是依赖其它窗体建立的新窗体。弹出对话框一般用做获取用户信息或展现消息。Swing API中,对话框表示为 JDialog 建立的对象。

分布式计算(distributed computing):一种在由网络链接的多个计算机中进行的并行处理。

虚参数(dummy parameter):调用子程序时,用来代替实际传入参数的标识符。虚参数也叫“形式参数”(有时候会用“变元 argument”表示实参,这时虚参数也叫作“参数”)。

enum:枚举类型。枚举类型的定义中列举了该类型全部可能值。在Java中,枚举类型是一个类,全部可能的值都是对象。

事件(event):在GUI编程中,事件指发生在程序控制之外的操做,好比点击鼠标。程序必须对发生的事件进行响应。

异常(exception):程序控制流程以外的错误或异常状况。在Java中,异常表示为 Throwable 对象,能够由 try..catch 语句捕捉并处理。

获取-执行周期(fetch-and-execute cycle):也称指令周期。指CPU执行机器语言程序的过程。CPU会从内存获取(即读取)指令,执行(运行)指令,而后再循环重复该过程。

标志(flag):一个布尔值。设为 true 时表示达到某些条件或发生了某种事情。可利用二进制数中的某个比特位做为标志。

形式参数(formal parameter):“虚拟参数”的另外一种说法。

帧(frame):组成动画的某一幅画面,也是活动记录的另外一种说法。

函数(function):带有返回值的子程序。

垃圾回收(garbage collection):自动回收内存的过程。被回收的内存由对象占用但已再也不会对其访问。

泛型编程(generic programming):编写的代码不只限于单一数据类型,可适应多种数据类型。Java集合框架及其它使用了类似技术的类都是泛型编程的实例。

getter方法:类中的一个实例方法,用来读取类的某个属性值。一般,属性表明一些实例变量的值。按惯例,getter方法被命名为 getXyz(),其中 xyz 是属性的名字。

全局变量(global variable):成员变量的别名。强调类中的成员变量能够在类方法外存在。

图形上下文(graphics context):用来绘制某些特定地点所必须得数据和方法。Java中的图形上下文是属于 Graphics 类的对象。

GUI:图形用户界面是与计算机的现代交互方式。计算机经过GUI在显示器上展现相似按钮和菜单这样的接口组件,用户能够经过像鼠标点击这样的方式与之交互。

哈希表(hash table):一种优化的数据结构,能够高效搜索、插入和删除对象。哈希表包含对象的地址数组。对象存储的地址由自身的“哈希代码”决定。经过对象的内容能够高效地计算出地址整数值。

堆(heap):计算机内存中存储对象的区域。

高级语言(high level language):相似Java这样的计算机语言,方便人们阅读,但在执行前须要翻译成机器语言。

HSB:一种颜色系统。其中颜色由3个数值表示(在Java中,实际的数值在0.0到1.0之间)。分别表明色调、饱和度和亮度。

IDE:集成开发环境。带图形用户界面的编程环境,集成了建立、编辑和执行程序的各类工具。

标识符(identifier):在程序中可用做名字的一组标识符。标识符可用做变量名、方法名和类名。

索引号(index):元素在数组中的位置编号。

实现(implementation):黑盒的内部实现,好比子程序的实现代码。

不可变对象(immutable object):不可变对象构造完成后不能改变,由于实例中全部变量都标记为 final。

无限循环(infinite loop):循环永远不会结束,由于它的循环条件永远断定为 true。

继承(inheritence):一个类能够继承另外一个类。继承者会从父类继承数据和行为。

类的实例(instance of a class):指归属于类(或者该类型子类)的对象。当类用做对象模板时,对象由类中的构造函数建立的对象归属于这个类。

实例方法(instance method):类中的非静态方法,该类的全部实例都具备该方法。

实例变量(instance variable):类中的非静态变量,该类的全部实例都包含该变量。

接口(interface):对如何使用相似子程序这样的黑盒子一种通用说法。接口对其内部发生的状况没有提供任何信息。“interface”同时也是Java中的保留字。从这个意义上说,接口是一种定义了一个或多个抽象方法的类型。实现该接口的对象必须提供这些方法的定义。

解释器(interpreter):一种执行程序的计算机程序,被执行的程序由某种编程语言编写。经过从程序中一个接一个读取指令而后逐条执行(将指令翻译为等价的机器语言)。

I/O:输入/输出。计算机程序与其它部分的通信方式,好比向用户展现数据、从用户那里获取信息、读写文件、经过网络发送和获取数据。

迭代器(iterator):与 list 或 set 这样的集合相关联的对象。可用来对该集合进行遍历。迭代器会轮流访问集合中的每一个元素。

Java集合框架(Java Collection Framework  JCF):一组实现了泛型数据结构的标准类。包括 ArrayList、TreeSet等。

JavaFX:新的应用程序GUI工具集。在Java 8中推荐使用。JavaFX不在本书的讨论范围。

JDK:Java开发工具集。支持编译、运行Java程序的基本软件。JDK包含命令行编程环境以及JRE。要编译Java源代码或执行预编译程序时,须要使用JDK。

JRE(Java Runtime Environment):Java运行时环境。支持运行已编译的标准Java程序。JRE包括一个Java虚拟机和全部标准的Java类。

即时编译器(just-in-time compiler):一种解释器和编译器的结合,在解释程序某部分的同时可对其进行编译。接下来对该部分程序执行时比首次运行更快速。这样能够大大提升执行速度。现代JVM都使用了即时编译器。

JVM:Java虚拟机。将Java字节码做为机器语言执行的虚拟计算机。也用来称呼解析字节码程序的计算机程序。要在计算机上运行Java程序须要使用JVM。

布局管理器(layout manager):负责对容器中组件进行布局的对象。进行的部分操做包括设置大小和位置。不一样类型的布局管理器实现的布局策略各不相同。

链式数据结构(linked data structure):一组由之指针相互连接的对象数据。这些指针存储在对象的实例变量中。链式数据结构包括链表和二叉树。

链表(linked list):一种链式数据结构,节点之间由指针串连造成线性链表。

监听器(listener):在GUI编程中,能够向对象注册特定事件的触发通知。所以能够说,对象在“监听”这些事件。

文字(literal):在程序中键入的一组字符序列,表示常量值。例如,当A在Java程序中出现时,’A'是一个常量字符。

(内存)位置(location  in memory):计算机内存由一系列位置组成。这些位置顺序编号,标识特定位置的编号被称为该位置的地址。

本地变量(local variable):在方法内部声明的变量,只能在该方法内部使用。代码块中声明变量的有效性,从声明处开始到该代码块的尾部结束。

循环(loop):一种控制结构,重复执行一组指令。Java提供了3种循环:for 循环、while 循环和 do 循环。

循环控制变量(loop control variable):for 循环中的变量,每次执行 for 循环时都会修改循环变量值,经过检查该变量决定是否结束循环。

机器语言(machine language):由计算机可以直接执行的指令组成的编程语言。机器语言中的指令会被编码成二进制数。每种类型的计算机都有本身的机器语言。用其它语言编写的程序必须翻译为该计算的机器语言,才能在它上面执行。

主内存(main memory):程序和数据能够存储在计算机的主内存中,主内存能够被CPU直接访问。其它形式的内存,好比磁盘驱动器,虽然也能存储信息,可是惟有主内存可被CPU直接访问。磁盘分区中的程序和数据只有拷贝到内存中才能被CPU访问。

map:一种映射数组。这种数据结构将一组(Collection)中的某个对象与摸个集合(Set)中的全部对象关联在一块儿。在Java中,map 由泛型接口 Map 表示。

成员变量(member variable):定义在类中的变量,但不属于任何方法。成员变量与本地变量不一样,后者在某个方法中定义。

内存(memory):计算机中的内存用来存储程序和数据。

方法(method):子程序的另外一种称呼,在面向对象编程中使用。方法指包含在类或对象中的子程序。

模块(module):大型系统中的组件,与系统中其它部分以简单、定义清晰、直接的方式进行交互。

多任务(multitasking):一次执行多个编程任务。要么在多个任务之间快速来回切换,要么同时逐个执行多个任务。

多重处理(multiprocessing):进行多任务处理时使用多个处理器。这样,多个任务能够同时逐个执行。

互斥(mutual exclusion):防止两个线程同时访问相同的资源。在Java中,这种方法应用于多个线程同时访问同步方法或同步语句中的资源。互斥能够阻止竞态条件,可是可能引起死锁。

MVC模式(MVC pattern):模型-视图-控制器模式。一种用在GUI组件中进行职责划分的策略。模型表明组件的数据,视图指该模型在屏幕上的展现,控制器负责响应模型变化事件。在MVC模式中,这些职责由不一样的对象负责处理。

非数值(NaN):不是一个数值。Double.NaN表示一种特殊的 double 值,表示未定义或非法值。

节点(node):链式数据结构中,某个对象的经常使用称呼。

null:一种特殊的指针值,表示“没有指向任何东西”。

数值分析(numerical analysis):使用逼近法研究算法的领域,好比实数以及从逼近计算中获得的错误。

差一错误(off-by-one error):一种常见错误,处理时多减或多加了一个元素。一般是技术错误或者循环时由其它缘由过早中止或过分执行形成的。

对象(object):计算机程序中带有数据(变量)和行为(方法)的实体。Java中的对象必须以某个类做为建立模板。对象所属的类决定了对象包含的类和方法。

对象类型(object type):这种类型的值是对象而非基础类型。类和接口都是对象类型。

OOP(Object-Oriented Programming):面向对象编程。一种计算机程序设计和实现的方法。OOP使用类和对象建立、表示实体及实体间的交互。

操做系统(operating system):在计算机中一直运行的基础软件。没有操做系统的计算机没法工做。操做系统由Linux、Mac OS 和 Windows Vista。

操做符(operator):相似“+”、“<=”或”++”这样的操做符,能够在表达式中计算一个或多个值。

(操做符)重载(overloading of operators):相同操做符能够在不一样类型的数据上使用。好比“+”操做能够同时应用于数字和字符类型。

(方法名)重载(overloading of method names):同一个类中定义了几个名称相同的方法,区别在于各个方法的签名不一样。

重写(覆盖)(overriding):在子类中进行重定义。子类中,对从父类继承的方法从新定义,新定义的方法就是对原方法进行重写。

包(package):在Java中,相关类和子包的有名集合称为包,例如 java.awt 和 javax.swing。

并行处理(parallel processing):同时执行多个任务,能够是多个处理器,也能够由一个处理器在多个任务间返复执行。

参数(parameter):调用子程序时,参数用来向子程序提供信息。在执行子程序代码前,子程序调用语句中的“实参”会分配给子程序定义的“虚参数”。

参数化类型(parameterized type):相似 ArrayList 这样,包含了一种或多种类型参数的类型(这里的参数类型是String)。

解析(parsing):肯定预演中字符串语法结构的过程。解析字符串用来肯定字符串中是否遵循该语言的语法;若是是,那么会肯定该字符串是如何根据语法进行建立。

部分彻底数组(partially full array):数组是用来存储数量各异的元素。部分彻底数组表示为一个带有追踪元素个数计数器的普通数组。

像素(pixel):指屏幕或图片中的“图像元素”。一幅图像由像素的行和列组成。每一个像素的色彩均可以单独设置。

多态(polymorphism):多态是指调用实例方法的意义取决于调用方法时对象的实际类型。也就是说,若是变量的类型是 var,那么调用方法的语句,好比 var.action() 取决于执行时 var 所指向的对象类型,而非 var 变量的类型。

指针(pointer):表明计算机内存中某个地址的值,所以能够看作“指向”具备该地址的位置。在Java中,变量不存有对象;变量只是指向存储该对象的位置。指针也称做“引用”。

语用学(pragmatics):描述如何编写好程序的经验法则。例如样式规则、程序组织指南都是编程语用学的一部分。

优先级(precedence):操做符的优先级指,在没有括号的状况下,表达式中多个操做符的做用顺序。

前置条件(precondition):在程序的执行过程当中,为了让程序正确运行,前置条件必须断定为 true。子程序的前置条件是指,为了让子程序正确运行必须知足的前置条件。子程序的前置条件一般是对传入的子程序的实参值进行的限制。

优先级队列(priority queue):一种表示元素结合的数据结构,其中每一个元素都有本身的“优先级”。优先级队列具备添加和移除操做。能够按照任意的顺序添加元素,但移除时老是先移除优先级最低的元素。(某些版本的优先级队列会先移除优先级最高的元素)

后置条件(postcondition):在执行程序的某个节点,该条件的计算结果为 true。子程序的后置条件在子程序执行结束后必须为 true。函数的后置条件一般表示为函数的返回值。

基本类型(primitive type):Java的8个内建基本数据类型有 double、float、long、int、short、byte、boolean 和 char。基本类型变量存储了真实的值,而非指向数值的指针。

线程优先级(priority of a thread):与线程关联的整数值,能够影响线程的执行顺序。优先级高的线程比优先级低的线程提早执行。

生产者/消费者(producer/consumer):并行编程中的一种经典模式,一个或多个生产者生产的产品被一个或更多的消费者使用。生产者和消费者设计为能够并行执行。这里的难点在于,如何安全、高效地从生产者向消费者非配产品。在Java中,经过阻塞队列实现生产者/消费者模式。

程序(program):用某种合适的编程语言编写的一组指令,由计算机执行。用作动词时,表示建立该指令的动做。

编程语言(programming language):用来为计算机编程的一种语言。编程语言的复杂性,从机器语言到像Java这样的高级语言跨度很大。

协议(protocol):在指定上下文中,构成合法通讯的一组规范。协议中规定了合法的消息、传送的时间、期待的恢复类型等。

伪代码(pseudocode):非正式算法规范。与实际编程语言相比,伪代码更加接近英语。而且,一般无需明确地写出过程的每一个细节。

队列(queue):由一组元素构成的数据结构。只能在列表的一头添加数据,在列表的另外一头移除数据。

竞态条件(race condition):并行编程中可能的错误源。因为某个线程改变了第二个程序依赖的程序状态(好比变量值),从而引起错误。

RAM(Random Access Memory):随机访问内存。计算机主内存的同义词。然而,从技术角度看,RAM是指在任意时间内均可以一样访问内存地址。RAM也意味着能够同时读写数据。

递归(recursion):用自身的形式定义本身。特别地,递归子程序能够直接或经过一系列其它子程序间接调用本身。递归算法的工做方式,经过将一个复杂问题拆分红更小的子问题。子问题要么能够直接解决,要么能够“递归”使用相同的算法。

RGB:一种颜色系统。颜色由3个数值定义(在Java中,数值的范围从0到255)。分别表示颜色中的红色、绿色和蓝色组成。

引用(reference):“指针”的另外一种称呼。

函数返回类型(return type of a function):函数返回值的类型。

保留字(关键字)(reserved word):一组字符串序列,看起来和标识符很像。可是因为在编程语言中有特殊含义,因此不能用做标识符。例如 class、public 是Java中的保留字。

资源(resource):图片、声音、文字或程序中的数据文件都是资源。Java资源文件与编译好的class文件存储在相同的路径(class path)。

健壮的程序(robust program):健壮的程序不只正确,同时也能合理地处理错误,好比文件不存在或者没法创建网络链接。

集合(set):没有重复的一组对象。在Java中,集合用泛型接口 Set 表示。

做用域(scope):表示程序中声明的标识符的有效做用域。

语义(semantics):语义是指,语言的语义规则决定了该语言中字符串符号(例如句子或语句)的含义。

哨兵值(sentinel value):表示数据序列结束的特殊标记,代表该数据已结束。

setter方法:类中的实例方法,用来设置类中的一些属性值。一般,这些属性只是实例变量值。按照惯例,setter 方法命名为 setXyz(),其中 xyz 是属性的名字。

方法签名(signature of a method):方法名、方法定义中形参的个数以及每一个形参的类型。编译器经过方法签名来识别指定子程序调用语句究竟调用了哪一个方法。

套接字(socket):网络上两个计算机之间的链接,对其中一端的抽象表示。套接字表示计算机程序间的一个逻辑链接,而非计算机间的物理链接。

栈(stack):一组元素组成的列表数据结构,只能在列表的尾部,也称做“栈顶”。向栈中添加元素叫“入栈 push”,移除元素称做“出栈 pop”。栈也指用来实现子程序调用的活动记录。

标准输入(standard input):程序读取输入数据的标准源,由http://System.in对象表示。一般,标准输入来自用户键入的文本,可是标准输出也能够重定向到其它源,好比文件。

标准输出(standard output):程序将输出文本写入的标准目标,由 System.out 对象表示。一般,标准输出会向用户展现,可是也能够“重定向”到其它目标,好比文件。此外,System.err 对象用来输出错误信息。

状态机(state machine):一种计算机模型。抽象的“机器”可处于有限状态集中的任何一种状态。机器会根据自身的状态决定行为,根据输入或事件进行状态切换。GUI程序的基本逻辑可表现为状态机。

逐步精化法(step-wise refinement):一种算法开发技术。开始列出算法步骤大纲,一般用伪代码表示,而后逐步填充细节。

流(stream):输入数据源或输出数据目标的抽象表示。Java为字符和二进制数据输入、输出流提供了4个基础类。这些类组成了Java I/O API的基础。

源代码(source code):用高级编程语言编写的文本。在计算机执行前,必须翻译成机器语言,好比Java字节码。

子类(subclass):一个类,直接或间接继承了其它类,从而继承了它的数据和行为。前一个类就叫作第二类的子类。

子程序(subroutine):一系列程序指令。经过子程序名能够“调用”该子程序。在面向对象编程中,子程序也称做方法。

子程序调用语句(subroutine call statement):程序中调用子程序的语句。当执行子程序调用语句时,计算机会执行子程序内部的代码。

super:一个特殊变量,在实例方法中自动定义。super指包含该方法的对象,归属于方法所在类的父类。super能够访问父类中被隐藏的成员变量,这些变量与子类中的成员变量同名。

语法(syntax):定义了该语言中哪些字符串符号符合该语言的语法规则。

TCP/IP:Internet上用来网络通信的协议。

this:一个特殊变量,在实例方法中自动定义,归属于方法所在的类。

线程(thread):对一系列逐条执行语句的抽象表示。计算机能够并行执行多个线程。

线程池(thread pool):执行任务时可使用的一组“工做线程”。当任务就绪时,可分配给池中的线程。线程池一般使用阻塞式队列存储任务。

自顶向下设计(top-down design):一种软件设计方法。开始把问题做为一个总体,而后拆分红更小的问题,再逐步细化,直到子问题能够直接解决。

类型(type):数值的特定类型。例如,int类型规定了整形值能够表示为32比特二进制数。在Java中,类型能够是基本类型、类名或接口名。类型名可用来定义变量的类型,子程序中的虚拟参数和子程序的返回类型。

类型转换(type cast):把一种类型的值强制转换为另外一种类型。例如,在 (int)(6*Math.random()) 中,(int) 是一个类型转换操做,将 (6*Math.random()) 的浮点值转换为了整形,丢弃了实数中的小数部分。

Unicode:将字符编码成二进制数的一种方式。Unicode字符集包含了许多语言的字符,不只限于英语。Java内部使用的就是Unicode字符集。

URL:全球资源定位器。Internet上资源的地址,好比网页。

变量(variable):一个带名字的内存位置(或一系列位置),用来存储数据。在程序中建立变量,经过变量声明语句将名字赋予该变量。根据使用状况,这个名字在程序中能够代指该内存位置,或者向内存地址中存储数据。在Java中,变量具备类型,能够表示变量持有数据的种类。