An ordered sequence of items that can be efficiently accessed at random through an integer index.
A class that cannot be instantiated.
An ordered sequence of items that can be traversed sequentially and that allows for efficient insertion and removal of elements at any position.
A method with a name, parameter types, and return type but without an implementation.
The process of finding the essential feature set for a building block of a program such as a class.
A reserved word that indicates the accessibility of a feature, such as private or public.
A method that accesses an object but does not change it.
The expression supplied for a formal parameter of a method by the caller.
A specification of the fundamental operations that characterize a data type, without supplying an implementation.
The has-a relationship between classes.
An unambiguous, executable, and terminating specification of a way to solve a problem.
A class that does not have a name.
An object that is not stored in a named variable.
A code library for building programs.
Information about each class in the Java library.
A graphical Java program that executes inside a web browser or applet viewer.
An actual parameter in a method call, or one of the values combined by an operator.
A collection of values of the same type stored in contiguous memory locations, each of which can be accessed by an integer index.
A Java class that implements a dynamically-growable array of objects.
A claim that a certain condition holds in a particular program location.
Placing a new value into a variable.
A relationship between classes in which one can navigate from objects of one class to objects of the other class, usually by following object references.
Bounds that include the starting index but not the ending index.
A named property that an object is responsible for maintaining.
Automatically converting a primitive type value into a wrapper type object.
A tree in which each subtree has the property that the number of descendants to the left is approximately the same as the number of descendants to the right.
The notation g(n) = O(f(n)), which denotes that the function g grows at a rate that is bounded by the growth rate of the function f with respect to n. For example, 10n2 − 100n = 1000 = O(n2).
A file in which values are stored in their binary representation and cannot be read as text.
An operator that takes two arguments, for example + in x + y.
A fast algorithm for finding a value in a sorted array. It narrows the search down to half of the array in every step.
A binary tree in which each subtree has the property that all left descendants are smaller than the value stored in the root, and all right descendants are larger.
A tree in which each node has at most two child nodes.
Binary digit; the smallest unit of information, having two possible values: 0 and 1. A data element consisting of n bits has 2n possible values.
Testing a method without knowing its implementation.
A group of statements bracketed by {}.
A thread that cannot proceed because it is waiting for some external event.
See Logical operator
A type with two possible values: true and false.
A layout management scheme in which components are placed into the center or one of the four borders of their container.
A test case involving values that are at the outer boundary of the set of legal values. For example, if a function is expected to work for all nonnegative integers, then 0 is a boundary test case.
Trying to access an array element that is outside the legal range.
A point in a program, specified in a debugger, at which the debugger stops executing the program and lets the user inspect the program state.
A statement that terminates a loop or switch statement.
In a hash table, a set of values with the same hash code.
A temporary storage location for holding values that have been produced (for example, characters typed by the user) and are waiting to be consumed (for example, read a line at a time).
Input that is gathered in batches, for example, a line at a time.
A programming error.
A number made up of eight bits. Essentially all currently manufactured computers use a byte as the smallest unit of storage in memory.
Instructions for the Java virtual machine.
A mechanism for specifying a block of code so it can be executed at a later time.
A method call mechanism in which the method receives the memory location of a variable supplied as an actual parameter. Call by reference enables a method to change the contents of the original variable so that the change remains in effect after the method returns.
A method call mechanism in which the method receives a copy of the contents of a variable supplied as an actual parameter. Java uses only call by value. If a parameter variable's type is a class, its value is an object reference, so the method can alter that object but cannot make the parameter variable refer to a different object.
The ordered set of all methods that currently have been called but not yet terminated, starting with the current method and ending with main.
Distinguishing upper- and lowercase characters.
Explicitly converting a value from one type to a different type. For example, the cast from a floating-point number x to an integer is expressed in Java by the cast notation (int) x.
A part of a try block that is executed when a matching exception is thrown by any statement in the try block.
The part of a computer that executes the machine instructions.
A single letter, digit, or symbol.
A user-interface component that can be used for a binary selection.
An exception that the compiler checks. All checked exceptions must be declared or caught.
A programmer-defined data type.
See Static method
The set of directories and archives that the virtual machine searches for class files.
A computer program or system that issues requests to a server and processes the server responses.
Making a copy of an object so the copy's state can be modified independently of the original object.
A measure of the amount of source code that has been executed during testing.
A class is cohesive if its features support a single abstraction.
A class on which another class depends.
A user-interface component that combines a text field with a drop-down list of selections.
The line the user types to start a program in DOS or UNIX or a command window in Windows. It consists of the program name followed by any necessary arguments.
An explanation to help the human reader understand a section of a program; ignored by the compiler.
A program that translates code in a high-level language (such as Java) to machine instructions (such as bytecode for the Java virtual machine).
An error that is detected when a program is compiled.
See User-interface componentCompound statement A statement such as if or while that is made up of several parts such as a condition and a body.
Placing one string after another to form a new string.
A class that can be instantiated.
An object that manages threads that currently cannot proceed.
A Java program that does not have a graphical window. A console program reads input from the keyboard and writes output to the terminal screen.
A value that cannot be changed by a program. In Java, constants are defined with the reserved word final.
Setting a newly allocated object to an initial state.
A method that initializes a newly instantiated object.
A user-interface component that can hold other components and present them together to the user. Also, a data structure, such as a list, that can hold a collection of objects and present them individually to a program.
The part of a Swing frame that holds the user-interface components of the frame.
The degree to which classes are related to each other by dependency.
An index card representing a class that lists its responsibilities and collaborating classes.
A law about logical operations that describes how to negate expressions formed with and and or operations.
A state in which no thread can proceed because each thread is waiting for another to do some work first.
A set of blocked threads, each of which could only be unblocked by the action of other threads in the set.
A program that lets a user run another program one or a few steps at a time, stop execution, and inspect the variables in order to analyze it for bugs.
A constructor that is invoked with no parameters.
The uses relationship between classes, in which one class needs services provided by another class.
See Lexicographic ordering
A structure on a disk that can hold files or other directories; also called a folder.
A comment in a source file that can be automatically extracted into the program documentation by a program such as javadoc.
The notation object.method(parameters) or object.variable used to invoke a method or access a variable.
A linked list in which each link has a reference to both its predecessor and successor links.
A sequence of rules that describes the legal child elements and attributes for each element type in an SGML or XML document.
Selecting a method to be invoked at run time. In Java, dynamic method lookup considers the class of the implicit parameter object to select the appropriate method.
A program for writing and modifying text files.
The processor, software, and supporting circuitry that is included in a device other than a computer.
The hiding of implementation details.
The condition that is true when all characters of a file have been read. Note that there is no special "end of file character". When composing a file on the keyboard, you may need to type a special character to tell the operating system to end the file, but that character is not part of the file.
A type with a finite number of values, each of which has its own symbolic name.
A character in text that is not taken literally but has a special meaning when combined with the character or characters that follow it. The character is an escape character in Java strings.
See User-interface event
A class that contains information about an event, such as its source.
A class that implements an event listener interface by defining all methods to do nothing.
A method that is executed when an event occurs.
An object that is notified by an event source when an event occurs.
An object that can notify other classes of events.
A class that signals a condition that prevents the program from continuing normally. When such a condition occurs, an object of the exception class is thrown.
A sequence of statements that is given control when an exception of a particular type has been thrown and caught.
A parameter of a method other than the object on which the method is invoked.
A syntactical construct that is made up of constants, variables, method calls, and operators combining them.
The last part of a file name, which specifies the file type. For example, the extension .java denotes a Java file.
A development methodology that strives for simplicity, by removing formal structure and focusing on best practices.
The sequence of numbers 1, 1, 2, 3, 5, 8, 13, ..., in which every term is the sum of its two predecessors.
A sequence of bytes that is stored on disk.
The position within a random-access file of the next byte to be read or written. It can be moved so as to access any byte in the file.
A part of a try block that is executed no matter how the try block is exited.
See Boolean typeFloating-point number A number that can have a fractional part.
A layout management scheme in which components are laid out left to right.
Sending all characters that are still held in a buffer to its destination.
See Directory
A set of character shapes in a particular style and size.
A reference to a primary key in a linked table.
A variable in a method definition; it is initialized with an actual parameter value when the method is called.
A window with a border and a title bar.
Automatic reclamation of memory occupied by objects that are no longer referenced.
A class with one or more type parameters.
A method with one or more type parameters.
Providing program components that can be reused in a wide variety of situations.
A statement that transfers control to some other statement, which is tagged with a label. Java does not have a goto statement.
A set of rules that specifies which sequences of tokens are legal for a particular document set.
A class through which a programmer can cause shapes to appear on a window or off-screen bitmap.
The "global regular expression print" search program, useful for finding all strings matching a pattern in a set of files.
A layout management scheme in which components are placed into a two-dimensional grid.
A user interface in which the user supplies inputs through graphical components such as buttons, menus, and text fields.
A value that is computed by a hash function.
Two different objects for which a hash function computes identical values.
A function that computes an integer value from an object in such a way that different objects are likely to yield different values.
A data structure in which elements are mapped to array positions according to their hash function values.
Applying a hash function to a set of objects.
A balanced binary tree that is used for implementing sorting algorithms and priority queues.
A sorting algorithm that inserts the values to be sorted into a heap.
The language in which web pages are described.
The protocol that defines communication between web browsers and web servers.
A programming environment that includes an editor, compiler, and debugger.
A class without a mutator method.
Implementing a class that defines all methods specified in the interface.
The object on which a method is invoked. For example, in the call x.f(y), the object x is the implicit parameter of the method f.
Indicating the intention of referring to a class, or all classes in a package, by the simple name rather than the qualified name.
The is-a relationship between a more general superclass and a more specialized subclass.
Setting a variable to a well-defined value when it is created.
A class that is defined inside another class.
A method with an implicit parameter; that is, a method that is invoked on an instance of a class.
An object whose type is that class.
A variable defined in a class for which every object of the class has its own value.
Construction of an object of that class.
A number that cannot have a fractional part.
Taking the quotient of two integers and discarding the remainder. In Java the / symbol denotes integer division if both arguments are integers. For example, 11/4 is 2, not 2.75.
A type with no instance variables, only abstract methods and constants.
A worldwide collection of networks, routing equipment, and computers using a common set of protocols that define how participants interact with each other.
A program that reads a set of codes and carries out the commands specified by them.
An object that can inspect all elements in a container such as a linked list.
A class with a default constructor that exposes properties through its get and set methods.
The documentation generator in the Java SDK. It extracts documentation comments from Java source files and produces a set of linked HTML files.
A framework for developing web applications that aids in the separation of user interface and program logic.
The technology that enables a Java program to interact with relational databases.
The Java software development kit that contains the Java compiler and related development tools.
A database query that involves multiple tables.
A program that executes JSF applications.
The Java Virtual Machine.
A class that arranges user-interface components inside a container.
Deferring the computation of a value until it is needed, thereby avoiding the computation if the value is never needed.
Software that has existed for a long time and that continues to operate.
Ordering strings in the same order as in a dictionary, by skipping all matching characters and comparing the first non matching characters of both strings. For example, "orbit" comes before "orchid" in lexicographic ordering. Note that in Java, unlike a dictionary, the ordering is case-sensitive: Z comes before a.
A set of precompiled classes that can be included in programs.
Searching a container (such as an array or list) for an object by inspecting each element in turn.
A data structure that can hold an arbitrary number of objects, each of which is stored in a link object, which contains a pointer to the next link.
A variable whose scope is a block.
A data structure to regulate the scheduling of multiple threads. Once a thread has acquired a lock, other threads that also wish to acquire it must wait until the first thread relinquishes it.
An object that allows a single thread to execute a section of a program.
Sending messages that trace the progress of a program to a file or window.
An operator that can be applied to Boolean values. Java has three logical operators: &&, ||, and !.
An error in a syntactically correct program that causes it to act differently from its specification. (A form of run-time error.)
A sequence of instructions that is executed repeatedly.
A loop whose termination decision is neither at the beginning nor at the end.
A statement about the program state that is preserved when the statements in the loop are executed once.
Instructions that can be executed directly by the CPU.
A number that appears in a program without explanation.
The method that is first called when a Java application executes.
A JavaBean that is managed by a JSF container.
A data structure that keeps associations between key and value objects.
Information about data that is added as humanly readable instructions. An example is the tagging of HTML documents with elements such as <h1> or <b>.
A value that specifies the location of data in computer memory.
A sorting algorithm that first sorts two halves of a data structure and then merges the sorted subarrays together.
Data that describe properties of a data set.
A sequence of statements that has a name, may have formal parameters, and may return a value. A method can be invoked any number of times, with different values for its parameters.
In JSF, an expression describing a bean and a method that is to be applied to the bean at a later time.
The name of a method and the types of its parameters.
In XML, a markup element that contains both text and other elements.
An object that is used during program testing, replacing another object and providing similar behavior. Usually, the mock object is simpler to implement or provides better support for testing.
A method that changes the state of an object.
Cooperating methods that call each other.
Accidentally using the same name to denote two program features in a way that cannot be resolved by the compiler.
In JSF, a rule that describes when to move from one web page to another.
A test case that is expected to fail. For example, when testing a root-finding program, an attempt to compute the square root of −1 is a negative test case.
A block that is contained inside another block.
A loop that is contained in another loop.
A set of rules that must be followed by programs that communicate over a network.
An operator that allocates new objects.
The ' ' character, which indicates the end of a line.
A reference that does not refer to any object.
A constant value in a program this is explicitly written as a number, such as −2 or 6.02214115E23.
A value of a class type.
Designing a program by discovering objects, their properties, and their relationships.
A value that denotes the location of an object in memory. In Java, a variable whose type is a class contains a reference to an object of that class.
A common programming error in which a value is one larger or smaller than it should be.
Preparing a file for reading or writing.
The software that launches application programs and provides services (such as a file system) for those programs.
A symbol denoting a mathematical or logical operation, such as + or &&.
The rule that governs in which order operators of the same precedence are executed. For example, in Java the - operator is left-associative because a - b - c is interpreted as (a - b) - c, and = is right-associative because a = b = c is interpreted as a = (b = c).
The rule that governs which operator is evaluated first. For example, in Java the && operator has a higher precedence than the || operator. Hence a || b && c is interpreted as a || (b && c). (See Appendix B.)
A program that predicts how another program should behave.
Giving more than one meaning to a method name.
Redefining a method in a subclass.
A collection of related classes. The import statement is used to access one or more classes in a package.
Accessibility by methods of classes in the same package.
A user-interface component with no visual appearance. It can be used to group other components.
Arrays of the same length, in which corresponding elements are logically related.
An item of information that is specified to a method when the method is called. For example, in the call System.out.println("Hello, World!"), the parameters are the implicit parameter System.out and the explicit parameter "Hello, World!".
Specifying expressions to be actual parameter values for a method when it is called.
A variable of a method that is initialized with a parameter value when the method is called.
A tree structure that shows how a string conforms to rules of a grammar.
A program that reads a document, checks whether it is syntactically correct, and takes some action as it processes the document.
An array that is not filled to capacity, together with a companion variable that indicates the number of elements actually stored.
A rearrangement of a set of values.
Selecting a method among several methods that have the same name on the basis of the actual types of the implicit parameters.
A test case that a method is expected to handle correctly.
A condition that is true after a method has been called.
A unary operator that is written after its argument.
A condition that must be true when a method is called if the method is to work correctly.
A method that returns a Boolean value.
A unary operator that is written before its argument.
A SQL statement with a precomputed query strategy.
A column (or combination of columns) whose value uniquely specifies a table record.
In Java, a number type or boolean.
An abstract data type that enables efficient insertion of elements and efficient removal of the smallest element.
A feature that is accessible only by methods of the same class or an inner class.
A collection of source files and their dependencies.
A string that tells the user to provide input.
A named value that is managed by a component.
A feature that is accessible by a class, its inner classes, its subclasses, and the other classes in the same package.
A high-level description of the actions of a program or algorithm, using a mixture of English and informal programming language syntax.
A number that appears to be random but is generated by a mathematical formula.
A feature that is accessible by all classes.
The features (methods, variables, and nested types) of a class that are accessible to all clients.
A name that is made unambiguous because it starts with the package name.
A collection of items with "first in, first out" retrieval.
A generally fast sorting algorithm that picks an element, called the pivot, partitions the sequence into the elements smaller than the pivot and those larger than the pivot, and then recursively sorts the subsequences.
A condition in which the effect of multiple threads on shared data depends on the order in which the threads are scheduled.
A user-interface component that can be used for selecting one of several options.
Electronic circuits in a computer that can store code and data of running programs.
The ability to access any value directly without having to read the values preceding it.
In the Java input/output library, a class from which to read characters.
A method for computing a result by decomposing the inputs into simpler values and applying the same method to them.
A method that can call itself with simpler values. It must handle the simplest values without calling itself.
Linking the input or output of a program to a file instead of the keyboard or display.
See Object reference
Keeping old test cases and testing every revision of a program against them.
A string that defines a set of matching strings according to their content. Each part of a regular expression can be a specific required character; one of a set of permitted characters such as [abc]
, which can be a range such as [a-z]
; any character not in a set of forbidden characters, such as [^0-9]
; a repetition of one or more matches, such as [0-9]+
, or zero or more, such as [ACGT]; one of a set of alternatives, such as and|et|und
; or various other possibilities. For example, "[A-Za-z][0-9]+
" matches "Cloud9
" or "007
" but not "Jack
".
A data repository that stores information in tables and retrieves data as the result of queries that are formulated in terms of table relationships.
An operator that compares two values, yielding a Boolean result.
A word that has a special meaning in a programming language and therefore cannot be used as a name by the programmer.
The value returned by a method through a return statement.
A style of writing expressions in which the operators are written following the operands, such as 2 3 4 + for 2 + 3 4.
An error introduced by the fact that the computer can store only a finite number of digits of a floating-point number.
A thread that can proceed provided it is given a time slice to do work.
An error in a syntactically correct program that causes it to act differently from its specification.
The data structure that stores the local variables of all called methods as a program runs.
The part of a program in which a variable is defined.
A programming language that favors rapid development over execution speed and code maintainability.
A sorting algorithm in which the smallest element is repeatedly found and removed until no elements remain.
A value in input that is not to be used as an actual input value but to signal the end of input.
Accessing values one after another without skipping over any of them.
See Linear searchSerialization The process of saving an object, and all the objects that it references, to a stream.
A computer program or system that receives requests from a client, obtains or computes the requested information, and sends it to the client.
A sequence of page requests from the same browser to the same web server.
An unordered collection that allows efficient addition, location, and removal of elements.
Hiding a variable by defining another one with the same name.
Copying only the reference to an object.
A file that contains commands for running programs and manipulating files. Typing the name of the shell script file on the command line causes those commands to be executed.
A window for interacting with an operating system through textual commands.
Evaluating only a part of an expression if the remainder cannot change the result.
An effect of a method other than returning a value.
The bit of a binary number that indicates whether the number is positive or negative.
See Method signature
A statement consisting of a single expression.
Executing a program in the debugger one statement at a time.
An object that encapsulates a TCP/IP connection. To communicate with the other endpoint of the connection, you use the input and output streams attached to the socket.
All activities related to the creation and maintenance of the software from initial analysis until obsolescence.
Instructions in a programming language that need to be translated before execution on a computer.
A file containing instructions in a programming language such as Java.
An iterative process model of software development in which design and implementation are repeated.
A command language for interacting with a database.
A data structure with "last in, first out" retrieval. Elements can be added and removed only at one position, called the top of the stack.
A printout of the call stack, listing all currently pending method calls.
The current value of an object, which is determined by the cumulative action of all methods that were invoked on it.
A diagram that depicts state transitions and their causes.
A syntactical unit in a program. In Java a statement is either a simple statement, a compound statement, or a block.
A method with no implicit parameter.
A variable defined in a class that has only one value for the whole class, which can be accessed and changed by any method of that class.
A database procedure that is executed in the database kernel.
An abstraction for a sequence of bytes from which data can be read or to which data can be written.
A sequence of characters.
A method with no or minimal functionality.
A class that inherits variables and methods from a superclass but adds instance variables, adds methods, or redefines methods.
A general class from which a more specialized class (a subclass) inherits.
A Java toolkit for implementing graphical user interfaces.
Bounds that include the starting index and the ending index.
A block of code that is controlled by a lock. To start execution, a thread must acquire the lock. Upon completion, it relinquishes the lock.
A method that is controlled by a lock. In order to execute the method, the calling thread must acquire the lock.
Rules that define how to form instructions in a particular programming language.
A graphical representation of grammar rules.
An instruction that does not follow the programming language rules and is rejected by the compiler. (A form of compile-time error.)
The ' ' character, which advances the next character on the line to the next one of a set of fixed positions known as tab stops.
The pair of communication protocols that is used to establish reliable transmission of data between two computers on the Internet.
An operator with three arguments. Java has one ternary operator, a ? b : c.
The instructions of a program that are executed in a set of test cases.
A program that calls a function that needs to be tested, supplying parameters and analyzing the function's return value.
A set of test cases for a program.
A user-interface component that allows a user to provide text input.
A file in which values are stored in their text representation.
A program unit that is executed independently of other parts of the program.
An application that is composed of separate tiers for presentation logic, business logic, and data storage.
Indicating an abnormal condition by terminating the normal control flow of a program and transferring control to a matching catch clause.
Indicates the types of the checked exceptions that a method may throw.
Scheduling threads by giving each thread a small amount of time in which to do its work, then giving control to another thread.
A sequence of consecutive characters from an input source that belongs together for the purpose of analyzing the input. For example, a token can be a sequence of characters other than white space.
An ordering relationship in which all elements can be compared to each other.
A message that is printed during a program run for debugging purposes.
A set of database operations that should either succeed in their entirety, or not happen at all.
A data structure consisting of nodes, each of which has a list of child nodes, and one of which is distinguished as the root node.
A block of statements that contains exception processing clauses. A try block contains at least one catch or finally clause.
A very simple model of computation that is used in theoretical computer science to explore computability of problems.
A tabular arrangement of elements in which an element is specified by a row and a column index.
A named set of values and the operations that can be carried out with them.
A parameter in a generic class or method that can be replaced with an actual type.
A variable in the declaration of a generic type that can be instantiated with a type.
An operator with one argument.
An exception that the compiler doesn't check.
A standard code that assigns code values consisting of two bytes to characters used in scripts around the world. Java stores all characters as their Unicode values.
A notation for specifying, visualizing, constructing, and documenting the artifacts of software systems.
A variable that has not been set to a particular value. In Java, using an uninitialized local variable is a syntax error.
A test of a method by itself, isolated from the remainder of the program.
A pointer to an information resource (such as a web page or an image) on the World Wide Web.
A building block for a graphical user interface, such as a button or a text field. User-interface components are used to present information to the user and allow the user to enter information to the program.
A notification to a program that a user action such as a key press, mouse move, or menu selection has occurred.
In JSF, an expression describing a bean and a property that is to be accessed at a later time.
A symbol in a program that identifies a storage location that can hold different values.
A program that simulates a CPU that can be implemented efficiently on a variety of actual machines. A given program in Java bytecode can be executed by any Java virtual machine, regardless of which CPU is used to run the virtual machine itself.
Programming by arranging graphical elements on a form, setting program behavior by selecting properties for these elements, and writing only a small amount of "glue" code linking them.
A reserved word indicating no type or an unknown type.
A window in a debugger that shows the current values of selected variables.
A sequential process model of software development, consisting of analysis, design, implementation, testing, and deployment.
An application that executes on a web server and whose user interface is displayed in a web browser.
Testing methods by taking their implementations into account, in contrast to black-box testing; for example, by selecting boundary test cases and ensuring that all branches of the code are covered by some test case.
Any sequence of only space, tab, and newline characters.
A class that contains a primitive type value, such as Integer.
In the Java input/output library, a class to which characters are to be sent.
A simple format for structured data in which the structure is indicated by markup instructions.
18.225.72.245