Department of Computer Science         Java - Glossary


A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

A

Abstract Window Toolkit (AWT)
A collection of graphical user interface (GUI) components. Functionality of these components has been significantly extended by the Swing component set.1 See also Swing Set.

abstract
Keyword used in a class definition to specify that a class is not to be instantiated. An abstract class is used to specify bodiless abstract methods that are given definitions in subclasses which extend the abstract class. 

abstract class
A class that contains one or more abstract methods, and therefore can never be instantiated. Abstract classes are defined so that other classes can extend them and make them concrete by implementing the abstract methods.

abstract method
A method that has no implementation. These methods terminate with semicolon as opposed to having a body delimited by curly braces.

abstraction
The process of ignoring certain distinguishing details in order to eliminate the irrelevant and amplify the essential.

actual parameter list
The value passed to a method, called an argument in a method call. The compiler checks the arguments specified in the method invocation against the parameter list in the method definition. See also formal parameter list.
 
address
Numerical value that uniquely identifies a location in memory. Also used in the context of unique identification of a computer on a network.

 

algorithm
A set of step-by-step instructions that specify how to solve a problem.

alpha value
A value that indicates the opacity of a pixel.

API
Application Programming Interface. The specification of how a programmer writing an application accesses the behavior and state of classes and objects. An API is generated using the utility javadoc in conjunction with javadoc comments in the source code.

applet
A JavaTM program written to run within an HTML document. Once linked to, the web browser executes the applet. This is in contrast to a stand alone JavaTM application.

argument
A data item specified in a method call. An argument can be a literal value, a variable, or an expression. Arguments are provided by the client when invoking a method. The method invocation must have an argument of the appropriate type for each parameter appearing in the method definition.

array
A programming language construct used to store an ordered list of data items, all of the same type. Each item's position is uniquely designated by an integer from 0 to N - 1, where N is the number of items in the ordered list.
arithmetic promotion
Arithmetic promotion happens automatically when operators in expressions convert their operands. Hence, when dividing a double by an int, the int is promoted to (converted to and stored in RAM as) a double prior to the division.

 

ASCII
American Standard Code for Information Interchange, 7-bit numeric code, b6b5b4b3b2b1b0, assignment to characters. ASCII is a subset of the 16-bit numeric code Unicode. In the table below, notice the difference between a = 1100001 = 97 and A = 1000001 = 65 is 100000 = 32. Also note that digits begin with zero at 0110000 = 48. Decimal values for the columns are given in parenthesis in green. (Full View Table
The first two columns contain control characters, the third has special symbols and punctuation, the fourth has numbers and special symbols, the fifth and sixth have uppercase letters and special symbols, and the last two columns have lowercase and special symbols. In JavaTM special symbols can be indicated by use of a character escape sequence.
                                                                b6b5b4                                                           
b3b2b1b0 000  (0-15) 001  (16-31) 010  (32-47) 011  (48-63) 100  (64-79)   101  (80-95) 110  (96-111) 111  (112-127)
0000 nul dle space 0 @ P ` p
0001 soh dc1 ! 1 A Q a q
0010 stx dc2 " 2 B R b r
0011 etx dc3 # 3 C S c s
0100 eot dc4 $ 4 D T d t
0101 enq negAck % 5 E U e u
0110 ack syn & 6 F V f v
0111 bell etb ' 7 G W g w
1000 bksp cancel ( 8 H X h x
1001 hTab eom ) 9 I Y i y
1010 lineFeed subs * : J Z j z
1011 vTab esc + ; K [ k {
1100 formFeed fileSep , < L \ l |
1101 carReturn GrpSep - = M ] m }
1110 shOut recrdSep . > N ^ n ~
1111 shIn unitSep / ? O _ o del
assembly language
A low-level language that uses mnemonics to represent program commands.

assignment conversion
Assignment conversion occurs when a value of one type is assigned to a variable of another type. Only widening conversions are allowed as narrowing conversions result in a syntax error.
 
attributes
Defines the state of an object as determined by variables declared within a class. Attributes are synonymous with the variables declared within a class.

 

B   top

binary operator
An operator that has two operands.

bit
A binary digit is the smallest unit of information in a computer, with a value of either 0 or 1.

bitwise operator
An operator that manipulates individual bits of a value either by shifting, calculation, or in the case of a binary bitwise operator by comparing each bit of one value to the corresponding bit of the other value.

block
A group of declarations and statements delimited by curly braces,{}. Note: perhaps the most common logical error made by beginning programmers is following the statement terminator ";" by a block "{...}". 

boolean
A JavaTM keyword for a primitive data type. Refers to an expression or variable that can have only a true or false literal value. 

bounding box
For a Raster object, the smallest rectangle that completely encloses all the pixels that are not fully transparent.

bounding rectangle
The smallest rectangle that completely encloses a region in which an oval or arc is defined. The upper left hand corner of the bounding rectangle is the reference point for the oval or arc.

break
A JavaTM programming language keyword used to resume program execution at the statement immediately following the current statement. If followed by a label, the program resumes execution at the labeled statement.1

byte
A JavaTM programming language keyword for a primitive data type consisting  of a sequence of eight bits in 2's complement form.

bytecode
Machine-independent code generated by the JavaTM compiler and executed by the Java interpreter.1

C   top

case
A JavaTM programming language keyword that defines a group of statements to begin executing if a value specified matches the value of the data defined by a preceding "switch" keyword.1 The char and integer data types are the only data types that should be used as the argument in a switch(data){ case value: ...} construct.

casting
A JavaTM operation expressed using a type or class name in parenthesis to cause explicit conversion from one data type to another.

catch
A JavaTM programming language keyword used to specify an exception handler. This run time exception handler consists of a block of statements to be executed in the event that a Java exception. Defined after a try block.

char
A JavaTM keyword for a primitive data type. The char data type has 16 bits and follows the Unicode standard. Range: 0 to 65536, with 0 to 127 following the subset ASCII. The char literal consists of single quotes around the character. Some characters are not visible but are identified by an escape sequence. The char data type may be explicitly cast to an int. Consider the code:
char letter = 'a';
char tab = '\t';
System.out.print(letter + tab + (int) letter + (int) tab + (char) 46 + tab);

which has output: a    97    9    .    .

class
In the JavaTM programming language, a type that defines the implementation of a particular kind of object. A class definition defines instance and class variables and methods, as well as specifying the interfaces the class implements and the immediate superclass of the class. If the superclass is not explicitly specified, the superclass will implicitly be Object.1 Essentially, a class is a set of objects having the same features, that is , supporting the same queries and commmands.

class header
The first line of a class definition, it defines many class properties beginning with scope modifiers, static modifier, the keyword class (required), the class name (required), extensions and interfaces as applicable.

class method
A method that is invoked using only the class name. Does not require an instantiated object. Class methods are defined using the keyword static. They affect the class as a whole. Also called a static method. Contrast with instance method.

classpath
Classpath is an environmental variable which tells the JavaTM virtual machine, Java technology-based applications (for example, the tools located in the JDK™ 1.3\bin directory) and other applications such as Adobe PhotoShop™ where to find the class libraries. Many applications, when installed will modify this variable preventing the compiler from finding user-defined class libraries such as "javabook". Most IDEs have a way of setting the classpath variable at compile time incorporating javac switches.

class variable
A data item associated with a particular class as a whole--not with particular instances of the class. Class variables are defined in class definitions. Also called a static field. See also instance variable.

client
In the client/server model of communications, the client is a process that remotely accesses resources of a server computer which typically has large memory capacity and computational power.

codebase
Works together with the code attribute in the <APPLET> tag to give a complete specification of where to find the main applet class file: code specifies the name of the file, and codebase specifies the URL of the directory containing the file.

command
A method invocation calling the object to action. Existence of a  return value is dependent on the method definition. See also query.

comment
In a program, explanatory text that is ignored by the compiler. In programs written in the JavaTM programming language, comments are delimited using // for single line or to the end of this line,  /*...*/ for multiple lines, and /**...*/ for javadoc comments used to produce the API.

compilation unit
A text file containing the definitions of one or more classes of a package. Typically, to satisfy the IDE, the name of the compilation unit (the file name) will identically match the name of the public class in the unit or barring a public class, the name of the class containing the main method.
compile errors
Any error that occurs during the compilation process. Generally syntactical errors identified by the compiler. The class file (byte code) is not produced in the event of compile errors.

compiler
A program to translate source code into code to be executed by a computer. The JavaTM compiler translates source code written in the Java programming language into bytecode for the Java virtual machine. See also interpreter.

compositing
The process of superimposing one image on another to create a single image.

const
This is a reserved JavaTM programming language keyword. However, it is deprecated, i.e. not used by current versions of the Java programming language.

constant
An immutable variable made so by using the modifier final. By convention, constants are identified by all caps and delimited with the underscore, i.e. final float PI_6_SIGNIFICANT_DIGITS = 3.14159F;

construct
Something constructed by the mind: The novel ...a verbal construct in which invented human characters appear. -Anthony Burgess. JavaTM has constructs for objects, methods, loops, etc.

constructor
A pseudo-method that creates an object. In the JavaTM programming language, constructors are instance methods with the same name as their class. Constructors are invoked using the new keyword. Constructors differ from methods in that they return no data type, they have the same name as the class, and have public visibility (except for abstract classes which appropriately have protected visibility).

continue
A JavaTM programming language keyword used to resume program execution at the end of the current loop. If followed by a label, "continue" resumes execution where the label occurs.

control character
Sometimes called nonprintable or invisible characters, they have specific symbols to represent them. Many control characters have special meaning  to certain software applications. They include carriage return, null, end-of-text and others. See ASCII, escape sequence, char.

convention
A principle, procedure, or technique accepted as true or correct. Each programming language has a set of conventions followed by most programmers. This aids in readability and helps to reduce programming errors. Examples include: name queries with nouns, use imperative verbs for commands, identifiers naming a query that access an objects property begin with "get" and those that change an objects property begin with "set". Only class names and constants begin with capital letters. While style is a matter of choice, consistency in style is a convention followed by all good programmers. 

core class
A public class (or interface) that is a standard member of the JavaTM Platform. The intent is that the core classes for the Java platform, at minimum, are available on all operating systems where the Java platform runs. A program written entirely in the Java programming language relies only on core classes, meaning it can run anywhere.

critical section
A segment of code in which a thread uses resources (such as certain instance variables) that can be used by other threads, but that must not be used by them at the same time.

D   top
data
A fundamental piece of information, a value that can be manipulated in a program. 


data conversion
In JavaTM data conversion can occur in three ways: assignment conversion, arithmetic promotion, and casting.

data structure
A programming construct used to organize data into a format to facilitate processing. Examples include arrays, linked lists, vectors, and stacks. 

data type
A set of related values and associated operations. Each variable has a data type that specifies the kind of values that can be stored in it as well as the types of operations that can be performed on it. In some languages these can also be programmer specified. In JavaTM objects must be used to simulate new data types.

declaration
A statement that establishes an identifier and associates attributes with it, without necessarily reserving its storage (for data) or providing the implementation (for methods). See also definition.

default
A JavaTM programming language keyword optionally used after all "case" conditions in a "switch" statement. If all "case" conditions are not matched by the value of the "switch" variable, the "default" keyword will be executed.

definition
A declaration that reserves storage (for data) or provides implementation (for methods). See also declaration.

deprecation
Refers to a class, interface, constructor, method or field that is no longer recommended, and may cease to exist in a future version.

derived from
Class X is "derived from" class Y if class X extends class Y. See also subclass, superclass.

distributed
Running in more than one address space.

do
A JavaTM programming language keyword used to declare a loop that will iterate a block of statements at least once. The loop`s exit condition can be specified with the "while" keyword. Syntax:
do {...} while(conditionsMet);
Where conditionsMet evaluates to a boolean.

double
A JavaTM programming language keyword used to define a variable of type double. This data type is used to approximate the value of a real number using 64 bits per the IEEE 754 standard. There are 53 bits of precision, or about 16 decimal digits. Examples of valid declarations for two constants:
     final double G = 6.67e-11; // the Gravitational constant with units (nt m2 / kg2)
     final double ACCELERATION_OF_GRAVITY = 9.806; // given in units of  m / s2

double precision
In the JavaTM programming language specification, describes a floating point number that holds 64 bits of data. See also single precision.

E   top

else
A JavaTM programming language keyword used to execute a block of statements in the case that the test condition with the "if" keyword evaluates to false.

encapsulation
The localization of knowledge within a module. Because objects encapsulate data and implementation, the user of an object can view the object as a black box that provides services. Instance variables and methods can be added, deleted, or changed, but as long as the services provided by the object remain the same, code that uses the object can continue to use it without being rewritten. See also instance variable, instance method.

escape sequences
JavaTM characters are encoded using unicode which is a superset of ASCII characters. Similar to C and C++ the following escape sequences are used to represent certain characters, i.e. ASCII control characters or JavaTM delimiters:

Escaped character

Meaning

Escaped character

Meaning

Escaped character

Meaning
'\b' backspace '\n' newline '\0' null
'\f' form feed '\t' tab '\"' quotation mark
'\r' carriage return '\'' apostrophe '\\' backslash

exception
An event during program execution that prevents the program from continuing normally; generally, an error. The JavaTM programming language supports exceptions with the try, catch, and throw keywords. See also exception handler.

exception handler
A block of code that reacts to a specific type of exception. If the exception is for an error that the program can recover from, the program can resume executing after the exception handler has executed.

expression
An expression is a sequence of one or more operands (variables) and zero or more operators (see operator precedence) combined to produce a value.

extends
Class X extends class Y to add functionality, either by adding fields or methods to class Y, or by overriding methods of class Y. An interface extends another interface by adding methods. Class X is said to be a subclass of class Y. See also derived from.

F   top
features
Characterization of an object including its data (properties) and methods (queries and commands).

field
A data member of a class. Unless specified otherwise, a field is not static.

final
A JavaTM programming language keyword. You define an entity once and cannot change it or derive from it later. More specifically: a final class cannot be subclassed, a final method cannot be overridden and a final variable cannot change from its initialized value.

finally
A JavaTM programming language keyword that executes a block of statements regardless of whether a Java Exception, or run time error, occurred in a block defined previously by the "try" keyword.

float
A JavaTM programming language keyword used to define a floating point number variable. This data type is used to approximate the value of a real number using 32 bits per the IEEE 754 standard. Examples of valid declarations for two constants:
     final float G = 6.67e-11F; // the Gravitational constant with units (nt m2 / kg2)
     final float ACCELERATION_OF_GRAVITY = 9.806f;  // given in units of  m / s2

for
A JavaTM programming language keyword used to declare a repetition construct. Syntax:
for ( int i = 0; i < MAX_VALUE; i++){...}
"for
" loops are most often used in count controlled situations. "while" loops are more often used with sentinel controls.
Java Tutorial

FTP
The basic Internet File Transfer Protocol. FTP, which is based on TCP/IP, enables the fetching and storing of files between hosts on the Internet. See also TCP/IP.

formal parameter list
The parameters specified in the definition of a particular method. See also actual parameter list.

G   top

garbage collection
The automatic detection and freeing of memory that is no longer in use. The JavaTM runtime system performs garbage collection so that programmers never explicitly free objects.

goto
This is a reserved JavaTM programming language keyword. However, it is depracated, i.e. not used by current versions of the Java programming language.

GUI
Graphical User Interface. Refers to the techniques involved in using graphics, along with a keyboard and a mouse, to provide an easy-to-use interface to some program.

H   top

hexadecimal
The numbering system that uses 16 as its base. The marks 0-9 and a-f (or equivalently A-F) represent the digits 0 through 15. In programs written in the JavaTM programming language, literals representing hexadecimal numbers must be preceded with 0x. See also octal, base conversion.

hierarchy
A classification of relationships in which each item except the top one (known as the root) is a specialized form of the item above it. Each item can have one or more items below it in the hierarchy. In the JavaTM class hierarchy, the root is the Object class.

high-level language
A programming language in which each statement represents many machine-level instructions.

I   top

IDE
Interface Development Environment, examples include Forte™, JCreator, Realj, Borland® JBuilder, and Microsoft VisualJ++. While source files can be generated using any text editor and JDK™ can be run directly from DOS using the javac and java commands, use of an IDE greatly enhances productivity.

IDL
Interface Definition Language. APIs written in the JavaTM programming language that provide standards-based interoperability and connectivity with CORBA (Common Object Request Broker Architecture).

identifier
The name of an item in a program. Consists of a sequence of valid characters including letters, digits, dollar signs($), and underscores(_). An identifier can be of any length but cannot begin with a number. Identifiers are case sensitive. Identifiers are not file names. Rules for file names are operation system dependent. Certain identifiers are reserved: the identifier literals true, false, and null, as well as the keywords.

if
A JavaTM programming language keyword used to conduct a conditional test and execute a block of statements if the test evaluates to true.
The if-then statement is the most basic of all the control flow statements. It tells your program to execute a certain section of code only if a particular test evaluates to true. For example, the Bicycle class could allow the brakes to decrease the bicycle's speed only if the bicycle is already in motion. One possible implementation of the applyBrakes method could be as follows:
void applyBrakes(){
     if (isMoving){  // the "if" clause: bicycle must be moving
          currentSpeed--; // the "then" clause: decrease current speed
     }
}

If this test evaluates to false (meaning that the bicycle is not in motion), control jumps to the end of the if-then statement.

In addition, the opening and closing braces are optional, provided that the "then" clause contains only one statement:

 

void applyBrakes(){
     if (isMoving) currentSpeed--; // same as above, but without braces 
}
Deciding when to omit the braces is a matter of personal taste. Omitting them can make the code more brittle. If a second statement is later added to the "then" clause, a common mistake would be forgetting to add the newly required braces. The compiler cannot catch this sort of error; you'll just get the wrong results.
if else
The if-then-else statement provides a secondary path of execution when an "if" clause evaluates to false. You could use an if-then-else statement in the applyBrakes method to take some action if the brakes are applied when the bicycle is not in motion. In this case, the action is to simply print an error message stating that the bicycle has already stopped.
void applyBrakes(){
     if (isMoving) {
          currentSpeed--;
     } else {
          System.err.println("The bicycle has already stopped!");
     } 
}

immutable object
An object whose state cannot be changed after it is created.

implements
A JavaTM programming language keyword optionally included in the class declaration to specify any interfaces that are implemented by the current class.

import
A JavaTM programming language keyword used at the beginning of a source file that can specify classes or entire packages to be referred to later without including their package names in the reference.

inheritance
The concept of classes automatically containing the variables and methods defined in their supertypes. See also superclass, subclass.

instance
An object of a particular class. In programs written in the JavaTM programming language, an instance of a class is created using the new operator followed by the class name. An instance object contains all variables and methods for this particular instance as well as access to all class data and methods. Each instance of an object comes with memory allocation for its own variables and methods.

instance method
Any method that is invoked with respect to an instance of a class. Also called simply a method. See also class method.1

instance variable
Any item of data that is associated with a particular object. Each instance of a class has its own copy of the instance variables defined in the class. Also called a field. See also class variable.1

instanceof
A two-argument JavaTM programming language keyword that tests whether the run-time type of its first argument is assignment compatible with its second argument.1

int
A JavaTM programming language keyword used to define a variable of type integer. An int uses 32-bit 2's complement representation. Range: -231 to 231-1.

interface
A JavaTM programming language keyword used to define a collection of method definitions and constant values. It can later be implemented by classes that define this interface with the "implements" keyword.1

IP
Internet Protocol. The basic protocol of the Internet. It enables the unreliable delivery of individual packets from one host to another. It makes no guarantees about whether or not the packet will be delivered, how long it will take, or if multiple packets will arrive in the order they were sent. Protocols built on top of this add the notions of connection and reliability. See also TCP/IP.1

interpreter
A module that alternately decodes and executes every statement in some body of code. The JavaTM interpreter decodes and executes bytecode for the Java virtual machine. See also compiler, runtime system.1

J   top

JAR Files (.jar)
Java ARchive. A file format used for aggregating many files into one.1 You can see an example of how to create a self execuatble JAR file here. JavaTM Development Kit software for managing Java Archive (JAR) files.  - reference

JAR file format
JAR (Java Archive) is a platform-independent file format that aggregates many files into one. Multiple applets written in the JavaTM programming language, and their requisite components (.class files, images, sounds and other resource files) can be bundled in a JAR file and subsequently downloaded to a browser in a single HTTP transaction. It also supports file compression and digital signatures.1

Java Development Kit (JDK™)
A software development environment for writing applets and applications in the Java programming language.1

JavaTM Foundation Classes (JFC)
An extension that adds graphical user interface class libraries to the Abstract Windowing Toolkit (AWT).1

JavaTM Platform
Consists of a language for writing programs ("the JavaTM programming language"); a set of APIs, class libraries, and other programs used in developing, compiling, and error-checking programs; and a virtual machine which loads and executes the class files.1

In addition, the Java platform is subject to a set of compatibility requirements to ensure consistent and compatible implementations. Implementations that meet the compatibility requirements may qualify for Sun's targeted compatibility brands.1

The JavaTM 2 platform is the current generation of the Java platform.1

Java-Script™
A Web scripting language that is used in both browsers and Web servers. Like all scripting languages, it is used primarily to tie other components together or to accept user input.

JavaTM virtual machine (JVM)
Sun's specification for or implementation of a software "execution engine" that safely and compatibly executes the byte codes in Java class files on a microprocessor (whether in a computer or in another electronic device).1

* Java HotSpot™ performance engine - Sun's ultra-high-performance engine for implementing the Java runtime environment which features an adaptive compiler that dynamically optimizes the performance of running applications.1

* KJavaTM virtual machine - Sun's small-footprint, highly optimized foundation of a runtime environment within the Java 2 Platform, Micro Edition. Derived from the Java virtual machine, it is targeted at small connected devices and can scale from 30KB to approximately 128KB, depending on the target device's functionality.1

* Java Card™ virtual machine - Sun's ultra-small-footprint, highly-optimized foundation of a runtime environment within the Java 2 Platform, Micro Edition. Derived from the Java virtual machine, it is targeted at smart cards and other severely memory-constrained devices and can run in devices with memory as small as 24K of ROM, 16K of EEPROM, and 512 bytes of RAM.1

java
The java tool launches a Java application. It does this by starting a Java runtime environment, loading a specified class, and invoking that class's main method. The method declaration must look like the following: public static void main(String args[]); The method must be declared public and static, it must not return any value, and it must accept a String array as a parameter. By default, the first non-option argument is the name of the class to be invoked. A fully-qualified class name should be used. If the -jar option is specified, the first non-option argument is the name of a JAR archive containing class and resource files for the application, with the startup class indicated by the Main-Class manifest header. - reference

javac
JavaTM Development Kit software for compiling applets and applications in the Java programming language. The command line javac Lab1.java takes the characters from the source file Lab1 as an input stream and produces two output streams, the binary byte code Lab1.class stored as a file and warnings/errors sent to the standard output (display). - reference

javadoc
JavaTM Development Kit software for creating external documentation in HTML format. This document provides an API specification of the project. The following command line was used to produce the API for the "Mano CPU Simulator":
javadoc -author -windowtitle "Mano CPU Simulator" -splitindex -d C:\javadocManoSim\html -private *.java
- reference
javah
JavaTM Development Kit software for C header and stub generator. Used to write native methods. - reference
 

javap
JavaTM Development Kit software for converting .class files to human readable .java files, a class file disassembler. - reference

JDK™
JavaTM Development Kit software. A software development environment for writing applets and applications in the Java programming language. Software included are java, javac, javadoc, javah, javap, and jdb.

jdb
JavaTM Development Kit software, a command-line debugger. - reference

JFC
JavaTM Foundation Class. An extension that adds graphical user interface class libraries to the Abstract Windowing Toolkit (AWT).1

JPEG
Joint Photographic Experts Group's image file compression standard.

Just-in-time (JIT) Compiler
A compiler that converts all of the bytecode into native machine code just as a JavaTM program is run. This results in run-time speed improvements over code that is interpreted by a Java virtual machine.1

JVM
JavaTM Virtual Machine. The part of the Java Runtime Environment responsible for interpreting bytecodes.1

K   top

keyword
A sequence of characters that conform to the language's rules (syntax) for an identifier, but is used for a special syntactic purpose. The JavaTM programming language sets aside words as keywords - these words are reserved by the language itself and therefore are not available as names for variables or methods.

L   top

lexical
Of or relating to words or the vocabulary of a language as distinguished from its grammar or construction. Pertaining to how the characters in source code are translated into tokens that the compiler can understand.

linker
A module that builds an executable, complete program from component machine code modules. The JavaTM linker creates a runnable program from compiled classes. See also compiler, interpreter, runtime system.

literal
The basic representation for the value of any integer, floating point, boolean, character, or String value. For example, 3.0 is a double-precision floating point literal (double), 3.0f is a single-precision floating point literal (float), 'a' is a character literal (char), and "Have a great day!" is a string literal. Note: representation is context dependant so the char 'a' would be 97 if cast to an int. For example, 'a' - 'A' is 32. To place a double quote inside a string literal one must use an escape sequence so the compiler does not confuse the interior double quotes with the quotes terminating the string literal.

local variable
A local variable is known within its block, but is inaccessible to code outside the block. For example, any variable defined within a method is a local variable and can't be used outside the method as it does not exist except during execution of the method.

logical error
A problem stemming from inappropriate processing in the code. It does not cause abnormal termination but does produce incorrect results.

long
A JavaTM programming language keyword used to define a variable of type long. A long uses 64-bit two's complement representation. Range: -263 to 263-1.

M   top

machine language
The native language of a particular central processing unit (CPU). Any program that runs on a given CPU must first be translated into its machine language. Machine language CPU simulation demonstrating the fetch, decode, execute cycles of a simple CPU.

member
A field or method of a class. Unless specified otherwise, a member is not static.

memory
Computer component(s) designed to store information (data/instructions). Typically a computer has cache memory in the central processing unit, Random Access Memory on the motherboard, hard drives, tape drives, zip-drives, and or compact disk drives as auxiliary devices for storing information.

method
A group of declarations and statements defined in a class. This language construct defines or implements a query or command. See also instance method, class method. Unless specified otherwise, a method is not static. Methods are uniquely identified by their signature. Additionally, all methods have a return type which must be specified in the method header. The return statement, required for all but the void return type, must match the return type specified in the header. Use of multiple methods with the same name is example of overloading.

method header
The first line of a method definition, it uniquely defines the method beginning with scope modifiers, static modifier (if applicable), the return type,  method name, and in parenthesis the method's parameter list (an ordered list by data type which uniquely distinguishes overloaded methods). 

modulo
The modulo or remainder operator returns the remainder from long division. Contrast this with integer division which returns the quotient from long division.

N   top

 

narrowing conversion
This type of data conversion results in a loss of precision. It is allowed only by casting


native
A JavaTM programming language keyword used in method declarations to specify that the method is  implemented in another language.

NCSA
National Center for Supercomputer Applications. See also Mosaic.

new
A JavaTM programming language keyword also an operator used to create an instance of a class.

null
A JavaTM programming language reserved word, a reference literal, that means the reference does not currently refer to any object.

O   top

object
The principal building blocks of object-oriented programs, an instance of some class which determines the object's features. Each object is a programming unit consisting of data (instance variables / class variables) and functionality (instance methods / class methods). Objects can be thought of as having structure and behavior. See also class.
 

object-oriented design
A software design method that models the characteristics of abstract or real objects using classes and objects.

octal
The numbering system using 8 as its base, using the numerals 0-7 as its digits. In programs written in the JavaTM programming language, octal numbers must be preceded with 0. See also hexadecimal, base conversion.

opacity
The relative capacity of matter to obstruct the transmisison of light.

 

operator precedence
The natural order of operations in a given language. JavaTM has some 16 orders of precedence with parenthisis being the highest (first to be performed) and assignment the lowest (last to be performed). JavaTM has three types of operators: unary, binary, and tertiary. Typically unary operators have higher precedence. There is only one tertiary operator, the conditional operator. See also operator_precedence.htm

 

out
The "standard" output stream. This stream is already open and ready to accept output data. Typically this stream corresponds to display output or another output destination specified by the host environment or user. For simple stand-alone Java applications, a typical way to write a line of output data is:

     System.out.println(data)

 

overloading
Using one identifier to refer to multiple items in the same scope. In the JavaTM programming language, you can overload methods but not variables or operators. Syntactically, each overloaded method must be uniquely identifiable. This is accomplished by having unique signatures for overloaded methods.

overriding
Providing a different implementation of a method in a subclass by redefining the method. This is accomplished by having identical signatures for overridden methods

P   top

 

parse
To resolve (as a sentence) into component parts of speech and describe them grammatically. The StringTokenizer class can be wrapped around a Reader to parse lines of text into tokens that look like those used in Java.

package
A JavaTM programming language keyword used to specify a group of related classes, a group of types. A package is the fundamental structure unit of a Java application. Package files reside in the same directory with the name of the package and have the keyword package and directory name at the top of each source file in the same package.

pass by reference
The process of passing a reference to a value into a method as the parameter. In Java, all objects are managed using references, so an object's formal parameter is an alias to the original.2

pass by value
The process of making a copy of a value and passing the copy into a method. Therefore, any change made to the value inside the method is not reflected in the original value. All Java primitive types are passed by value.2

peer
In networking, any functional unit in the same layer as another entity.1

precedence
Order of operation: parenthesis have the highest precedence and assignment has the lowest precedence. Precedence Table

pixel
The smallest addressable picture element on a display screen or printed page.

primitive data type
Primitive data types consist of eight basic structures used to hold data. From smallest to largest they are boolean, byte, char, short, int, float, long, double. Literals are used to assign values to these data types. The other type of data in JavaTM are called reference types.
Name Type Range Default Value
boolean boolean true or false false
byte byte integer -128 to 127 0
char character data any character '\0' (null)
short short integer -32768 to 32767 0
int integer -231 to 231 - 1 0
long long integer -263 to 263 - 1 0
float real -3.4028E38 to 3.4028E38 0.0
double double precision real -1.7977E308 to 1.7977E308 0.0

print
Prints a string. If the argument is null then the string "null" is printed. Otherwise, the string's characters are converted into bytes according to the platform's default character encoding.

println
Terminates the current line by writing the line separator string. The line separator string is defined by the system property line.separator, and is not necessarily a single newline character ('\n').

private
A JavaTM programming language keyword used to modify visibility of methods or variables. Private methods and variables are not inherited by subclasses, they can only be used by other methods in the same class.

process
A virtual address space containing one or more threads.

property
Characteristics of an object that the programmer defines, such as age, cost, strength, or the color of a window.

protected
A JavaTM programming language keyword used in a method or variable declaration. It signifies that the method or variable can only be accessed by elements residing in its class, subclasses, or classes in the same package.

public
A JavaTM programming language keyword used in a method or variable declaration. It signifies that the method or variable can be accessed by elements residing in other classes.

Q   top
 
query
A method invocation expecting a value to be returned. See also command.

R   top
 
raster
A line of pixels.

RedGreenBlue
RGB is a code used to identify the color of a pixel or set of pixels. In HTML, each is specified with two hexadecimal digits where the digits indicate intensity of that primary color. Many languages precede these six bytes with a two byte alpha code to indicate opacity. In JavaTM each part of the RGB code is a decimal value from 0 to 255.

reference
A data element whose value is an address. JavaTM supports only two data types: reference and primitive.

repetition
The repetition control structures are the while, for, and do-while.  The while and do-while statements continually execute a block of statements while a particular condition is true. The difference between do-while and while is that do-while evaluates its expression at the bottom of the loop instead of the top. Therefore, the statements within the do block are always executed at least once. The for statement provides a compact way to iterate over a range of values. It has two forms, one of which was designed for looping through collections and arrays.

return
A JavaTM programming language keyword  when used causes flow of program execution to return from the method to the point of method invocation. This keyword is followed by a value matching the method definition return type.

root
In a hierarchy of items, the one item from which all other items are descended. The root item has nothing above it in the hierarchy. See also hierarchy, class, package.

runtime errors
Errors that occur during execution of a program. One of the JavaTM programming language's strengths is the ability to deal with many of these errors at time of execution.
runtime system
The software environment in which programs compiled for the JavaTM virtual machine can run. The runtime system includes all the code necessary to load programs written in the Java programming language, dynamically link native methods, manage memory, handle exceptions, and an implementation of the Java virtual machine, which may be a Java interpreter.1

S   top

Sandbox
Comprises a number of cooperating system components, ranging from security managers that execute as part of the application, to security measures designed into the JavaTM virtual machine and the language itself. The sandbox ensures that an untrusted, and possibly malicious, application cannot gain access to system resources.1


scale
The act of bringing a number into the desired scale. As an example consider the return value of Math.random() which is a double in the range [0, 1). To scale this value to the range 0 to 99 simply multiply this return value by 100 and cast it to an int. For another example consider the solutions to the following problems:
   9876 / 1     = __________            9876 % 1     = __________
   9876 / 10    = __________            9876 % 10    = __________
   9876 / 100   = __________            9876 % 100   = __________
   9876 / 1000  = __________            9876 % 1000  = __________

If you look for the pattern, you can see that integer division and modulo can be used to scale and shift integer values

 
scope
A characteristic of an identifier that determines where the identifier can be used. Scope is determined by visibility modifiers: private, public, and protected. Protected is essentially the default visibility modifier. Most identifiers in the JavaTM programming environment have either class or local scope. Instance and class variables and methods have class scope; they can be used outside the class and its subclasses only by prefixing them with an instance of the class or (for class variables and methods) with the class name. All other variables are declared within methods and have local scope.

Secure Socket Layer (SSL)
A protocol that allows communication between a Web browser and a server to be encrypted for privacy.1

semantic error
A logical error.

semantics
A set of rules that specify the meaning of a syntactically correct construct in a programming language.

selection
The statements inside your source files are generally executed from top to bottom, in the order that they appear. Control flow statements, however, break up the flow of execution by employing decision making, looping, and branching, enabling your program to conditionally execute particular blocks of code.
 if, if-else, switch

servlet
A server-side program that gives JavaTM technology-enabled servers additional functionality.

short
A JavaTM programming language keyword used to define a variable of type short, 16-bits using two's complement integer representation with a range of -215 to 215-1 (-32768 to 32767).

signature
In the JavaTM language a method's signature is composed of the method's name along with the number, type, and order of its parameters. See also overloading.
 
single precision
In the JavaTM language specification, describes a floating point number with 32-bits of data. See also double precision.
 
 
SGML
Standardized Generalized Markup Language. An ISO/ANSI/ECMA standard that specifies a way to annotate text documents with information about types of sections of a document.

source file
A text file containing data and algorithm descriptions using the syntax of a given programming language. In Java, these source files have the .java extension. Once compiled, a bytecode file with the .class extension is created.

specification
A precise description of an object's attributes and characteristics. The implementation of which enable the object to act according to its specifications. See API and javadoc.

state
The set of an object's properties and associated values at any given time.


 
static
A JavaTM programming language keyword used to define a method or variable as a class variable. Classes maintain one copy of class methods and variables regardless of how many instances exist of that class. Class methods are invoked by the class instead of a specific instance, and can only operate on class variables.

static field
Another name for class variable.

static method
See class method.



stream
A sequence of bytes. If the bytes denote characters, say in the ASCII character set, we refer to the stream as a character stream. Otherwise, we refer to the stream as a binary stream. If the stream is a source, it is called an input stream. Common input streams: keyboard, file, another program, an external device. If the stream is not the source, it is called an output stream. The target of an output stream can be the display, a file, another program, etc. 

String
The String class represents character strings. All string literals in Java programs, such as "abc", are implemented as instances of this class. Strings are constant; their values cannot be changed after they are created. For example:
    String str = "abc";
is equivalent to:
    char data[] = {'a', 'b', 'c'};
    String str = new String(data);

subarray
An array that is inside another array.

subclass
A class that is derived from a particular class, perhaps with one or more classes in between. See also superclass, supertype.

subtype
If type X extends or implements type Y, then X is a subtype of Y. See also supertype.

super
A JavaTM programming language keyword that is a reference to the parent class of the object making the reference. Often used to invoke the parent's constructor, must reside in the first line constructor of the object making the reference. Example:
class DbFrame extends Frame {
    public
DbFrame(String title) {
   
      super(title); //a call to the parent class (Frame), passing it the String to be used in the title bar
       
DbAdapter adapter = new DbAdapter(this);
   
      addWindowListener(adapter);
    }
}
superclass
A class from which a particular class is derived via inheritance. See also subclass, subtype.

supertype
The supertypes of a type are all the interfaces and classes that are extended or implemented by that type. See also subtype, superclass.

switch
A JavaTM programming language keyword used to evaluate a variable that can later be matched with a value specified by the "case" keyword in order to execute a group of statements. The char and integer data types are the only data types that should be used as the argument in a switch(data){ case value: ...} construct.
Unlike if-then and if-then-else, the switch statement allows for any number of possible execution paths. A switch works with the byte, short, char, and int primitive data types. It also works with enumerated types (discussed in Classes and Inheritance) and a few special classes that "wrap" certain primitive types: Character, Byte, Short, and Integer (discussed in Simple Data Objects ).

The following program, SwitchDemo, declares an int named month whose value represents a month out of the year. The program displays the name of the month, based on the value of month, using the switch statement.

class SwitchDemo {
    public static void main(String[] args) {

        int month = 8;
        switch (month) {
            case 1:  System.out.println("January"); break;
            case 2:  System.out.println("February"); break;
            case 3:  System.out.println("March"); break;
            case 4:  System.out.println("April"); break;
            case 5:  System.out.println("May"); break;
            case 6:  System.out.println("June"); break;
            case 7:  System.out.println("July"); break;
            case 8:  System.out.println("August"); break;
            case 9:  System.out.println("September"); break;
            case 10: System.out.println("October"); break;
            case 11: System.out.println("November"); break;
            case 12: System.out.println("December"); break;
            default: System.out.println("Invalid month.");break;
        }
    }
}

In this case, "August" is printed to standard output.

The body of a switch statement is known as a switch block. Any statement immediately contained by the switch block may be labeled with one or more case or default labels. The switch statement evaluates its expression and executes the appropriate case.

Of course, you could also implement the same thing with if-then-else statements:

int month = 8;
if (month == 1) {
    System.out.println("January");
} else if (month == 2) {
    System.out.println("February");
}
. . . // and so on

Swing Set
The code name for a collection of graphical user interface (GUI) components that runs uniformly on any native platform which supports the JavaTM virtual machine. Because they are written entirely in the Java programming language, these components may provide functionality above and beyond that provided by native-platform equivalents. (Contrast with AWT.)

synchronized
A keyword in the Java programming language that, when applied to a method or code block, guarantees that at most one thread at a time executes that code. Unless synchronized is specified separate threads can exist in a method simultaneously. Methods that access shared data should be synchronized to give them mutually exclusive access.

syntactic error
An error resulting form not adhering to the grammatical rules of the language. In Java, these errors are typically caught at compile time (often referred to as compile errors) and are easily identified and corrected. 

syntax
The way in which elements (tokens) of a language are put together to form the constituent parts of the language. The set of rules, the grammar for a language. Contrast with the next level up, semantics.

System
The System class contains several useful class fields and methods. It cannot be instantiated. Among the facilities provided by the System class are standard input, standard output, and error output streams; access to externally defined properties and environment variables; a means of loading files and libraries; and a utility method for quickly copying a portion of an array.

T   top

TCP/IP
Transmission Control Protocol based on IP. This is an Internet protocol that provides for the reliable delivery of streams of data from one host to another. See also IP.

text file
A file satisfying a text protocol. In particular it has an end of file, EOF, character.

this
A JavaTM programming language keyword that can be used to represent an instance of the class in which it appears. "this" can be used to access class variables and methods.1 Examples:
//inside a default constructor to call another constructor with preset parameters
this
("Year", 1953);
//assigning a local variable to an instance variable with the same name

this.dbFrame = dbFrame;
//passing this class to an interface implementation
DbAdapter adapter = new DbAdapter(this);

thread
The basic unit of program execution. A process can have several threads running concurrently, each performing a different job, such as waiting for events or performing a time-consuming job that the program doesn't need to complete before going on. When a thread has finished its job, the thread is suspended or destroyed. See also process.1

throw
A JavaTM programming language keyword that allows the user to throw an exception or any class that implements the "throwable" interface.1

throws
A JavaTM programming language keyword used in method declarations that specify which exceptions are not handled within the method but rather passed to the next higher level of the program.1

token
An identifier, literal, keyword, punctuation mark, or operator that is part of the program's text.

transient
A keyword in the Java programming language that indicates that a field is not part of the serialized form of an object. When an object is serialized, the values of its transient fields are not included in the serial representation, while the values of its non-transient fields are included.1

try
A JavaTM programming language keyword that defines a block of statements that may throw a Java language exception. If an exception is thrown, an optional "catch" block can handle specific exceptions thrown within the "try" block. Also, an optional "finally" block will be executed regardless of whether an exception is thrown or not.

type
A class or interface.1

U   top

Unicode
A 16-bit character set defined by ISO 10646. See also ASCII. All source code in the JavaTM programming environment is written in Unicode.

URL
Uniform Resource Locator. A standard for writing a text reference to an arbitrary piece of data in the WWW. A URL looks like "protocol://host/localinfo" where protocol specifies a protocol to use to fetch the object (like HTTP or FTP), host specifies the Internet name of the host on which to find it, and localinfo is a string (often a file name) passed to the protocol handler on the remote host.1

V   top

variable
An item of data named by an identifier. Each variable has a type, such as int or Object, and a scope. A variable is a name for a location in memory. A variable must be declared, specifying the variable's name and the type of data that will be held in it. A variable can be given an initial value in the declaration. This value can be changed later in variables not declared final (constant), using the assignment operator (=).  See also class variable, instance variable, local variable, constant variable, attributes.

virtual machine
An abstract specification for a computing device that can be implemented in different ways, in software or hardware. You compile to the instruction set of a virtual machine much like you'd compile to the instruction set of a microprocessor. The JavaTM virtual machine consists of a bytecode instruction set, a set of registers, a stack, a garbage-collected heap, and an area for storing methods.

void
A JavaTM programming language keyword used in method declarations to specify that the method does not return any value. Note: the syntax for constructors is public ClassName(parameterList) with no return type, not even void.

volatile
A JavaTM programming language keyword used in variable declarations that specifies that the variable is modified asynchronously by concurrently running threads.1

W   top

while
A JavaTM programming language keyword used to declare a loop that will iterate a block of statements zero or more times. Most often used under sentinel control conditions. The for loop is typically used in count controlled situations. Syntax:
while(conditionsMet) {...}
Where conditionsMet evaluates to a boolean. Java Tutorial
white space
Spaces, tabs, and blank lines used to set off sections of source code to enhance readability.
 
wrapper
An object that encapsulates and delegates to another object to alter its interface or behavior in some way. All primitive data types have corresponding wrapper classes each with a methods to convert to other data types and in particular a method to convert the wrapper to an instance of the primitive it represents.

X   top

XOR
A graphics mode that defines reversible operations on colors. Can be used to erase a shape by redrawing it in the same position.

Y   top

.
yield() 
          Static method in class java.lang.Thread
Causes the currently executing thread object to temporarily pause and allow other threads to execute.

 

Z   top

ZONE_OFFSET 
          Static variable in class java.util.Calendar
Field number for get and set indicating the raw offset from GMT in milliseconds.

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

Software Solutions

1These definitions are as found in the Sun Glossary at http://java.sun.com/docs/books/tutorial/information/glossary.html

2Java Software Solutions Foundations of Program Design by John Lewis and William Loftus, Addison Wesley Longman Inc., p529.




Back