We are working to restore the Unionpedia app on the Google Play Store
OutgoingIncoming
🌟We've simplified our design for better navigation!
Instagram Facebook X LinkedIn
Your own Unionpedia with your logo and domain, from 9.99 USD/month
Create my Unionpedia

Java (programming language)

Index Java (programming language)

Java is a high-level, class-based, object-oriented programming language that is designed to have as few implementation dependencies as possible. [1]

Table of Contents

  1. 234 relations: Abstract Window Toolkit, Ada (programming language), Adoptium, Android (operating system), Android Runtime, Android SDK, Anonymous function, Apache Groovy, Apache Harmony, API, Apple Inc., Application software, Aqua (user interface), ArkTS, ARM architecture family, Ars Technica, Arthur van Hoff, Associative array, Barbara Liskov, BeanShell, Boolean data type, Bootstrapping (compilers), C (programming language), C Sharp (programming language), C++, Certiorari, Chapel (programming language), Class (computer programming), Class-based programming, Client (computing), Client–server model, Clojure, CLU (programming language), Coffee production in Indonesia, Comment (computer programming), Common Object Request Broker Architecture, Comparison of C Sharp and Java, Comparison of Java and C++, Comparison of programming languages, Compiler, Computer architecture, Computer network, Computer security, Computer Weekly, Computing platform, Concurrent computing, Coupling (computer programming), Dalvik (software), Data center, Data structure, ... Expand index (184 more) »

  2. Class-based programming languages
  3. Compiled programming languages
  4. JVM programming languages
  5. Multi-paradigm programming languages
  6. Programming languages created in 1995

Abstract Window Toolkit

The Abstract Window Toolkit (AWT) is Java's original platform-dependent windowing, graphics, and user-interface widget toolkit, preceding Swing.

See Java (programming language) and Abstract Window Toolkit

Ada (programming language)

Ada is a structured, statically typed, imperative, and object-oriented high-level programming language, inspired by Pascal and other languages. Java (programming language) and Ada (programming language) are multi-paradigm programming languages, object-oriented programming languages, programming languages and statically typed programming languages.

See Java (programming language) and Ada (programming language)

Adoptium

The Eclipse Adoptium Working Group is the successor of AdoptOpenJDK.

See Java (programming language) and Adoptium

Android (operating system)

Android is a mobile operating system based on a modified version of the Linux kernel and other open-source software, designed primarily for touchscreen mobile devices such as smartphones and tablets.

See Java (programming language) and Android (operating system)

Android Runtime

Android Runtime (ART) is an application runtime environment used by the Android operating system.

See Java (programming language) and Android Runtime

Android SDK

The Android SDK is a software development kit for the Android software ecosystem that includes a comprehensive set of development tools.

See Java (programming language) and Android SDK

Anonymous function

In computer programming, an anonymous function (function literal, lambda abstraction, lambda function, lambda expression or block) is a function definition that is not bound to an identifier.

See Java (programming language) and Anonymous function

Apache Groovy

Apache Groovy is a Java-syntax-compatible object-oriented programming language for the Java platform. Java (programming language) and Apache Groovy are JVM programming languages, java specification requests, object-oriented programming languages and programming languages.

See Java (programming language) and Apache Groovy

Apache Harmony

Apache Harmony is a retired open source, free Java implementation, developed by the Apache Software Foundation.

See Java (programming language) and Apache Harmony

API

An is a way for two or more computer programs or components to communicate with each other.

See Java (programming language) and API

Apple Inc.

Apple Inc. is an American multinational corporation and technology company headquartered in Cupertino, California, in Silicon Valley.

See Java (programming language) and Apple Inc.

Application software

An application program (software application, or application, or app for short) is a computer program designed to carry out a specific task other than one relating to the operation of the computer itself, typically to be used by end-users.

See Java (programming language) and Application software

Aqua (user interface)

Aqua is the graphical user interface, design language and visual theme of Apple's macOS and iOS operating systems.

See Java (programming language) and Aqua (user interface)

ArkTS

ArkTS is a high-level general-purpose, multi-paradigm, compiled, declarative programming language developed by Huawei which is a superset of open-source TypeScript, in turn a superset of JavaScript formerly used in July 2022 HarmonyOS 3.0 version, alongside its evolved percussor, extended TypeScript (eTS) built for HarmonyOS development as a shift towards Declarative programming. Java (programming language) and ArkTS are statically typed programming languages.

See Java (programming language) and ArkTS

ARM architecture family

ARM (stylised in lowercase as arm, formerly an acronym for Advanced RISC Machines and originally Acorn RISC Machine) is a family of RISC instruction set architectures (ISAs) for computer processors.

See Java (programming language) and ARM architecture family

Ars Technica

Ars Technica is a website covering news and opinions in technology, science, politics, and society, created by Ken Fisher and Jon Stokes in 1998.

See Java (programming language) and Ars Technica

Arthur van Hoff

Arthur van Hoff (born 16 February 1963) is a Dutch computer scientist and businessman.

See Java (programming language) and Arthur van Hoff

Associative array

In computer science, an associative array, map, symbol table, or dictionary is an abstract data type that stores a collection of (key, value) pairs, such that each possible key appears at most once in the collection.

See Java (programming language) and Associative array

Barbara Liskov

Barbara Liskov (born November 7, 1939, as Barbara Jane Huberman) is an American computer scientist who has made pioneering contributions to programming languages and distributed computing.

See Java (programming language) and Barbara Liskov

BeanShell

BeanShell is a small, free, embeddable Java source interpreter with object scripting language features, written in Java. Java (programming language) and BeanShell are JVM programming languages and java specification requests.

See Java (programming language) and BeanShell

Boolean data type

In computer science, the Boolean (sometimes shortened to Bool) is a data type that has one of two possible values (usually denoted true and false) which is intended to represent the two truth values of logic and Boolean algebra.

See Java (programming language) and Boolean data type

Bootstrapping (compilers)

In computer science, bootstrapping is the technique for producing a self-compiling compiler – that is, a compiler (or assembler) written in the source programming language that it intends to compile.

See Java (programming language) and Bootstrapping (compilers)

C (programming language)

C (pronounced – like the letter c) is a general-purpose programming language. Java (programming language) and c (programming language) are c programming language family and statically typed programming languages.

See Java (programming language) and C (programming language)

C Sharp (programming language)

C# is a general-purpose high-level programming language supporting multiple paradigms. Java (programming language) and c Sharp (programming language) are class-based programming languages, compiled programming languages, multi-paradigm programming languages, programming languages and statically typed programming languages.

See Java (programming language) and C Sharp (programming language)

C++

C++ (pronounced "C plus plus" and sometimes abbreviated as CPP) is a high-level, general-purpose programming language created by Danish computer scientist Bjarne Stroustrup. Java (programming language) and C++ are class-based programming languages, compiled programming languages, multi-paradigm programming languages, object-oriented programming languages and statically typed programming languages.

See Java (programming language) and C++

Certiorari

In law, certiorari is a court process to seek judicial review of a decision of a lower court or government agency.

See Java (programming language) and Certiorari

Chapel (programming language)

Chapel, the Cascade High Productivity Language, is a parallel programming language that was developed by Cray, and later by Hewlett Packard Enterprise which acquired Cray. Java (programming language) and Chapel (programming language) are c programming language family and object-oriented programming languages.

See Java (programming language) and Chapel (programming language)

Class (computer programming)

In object-oriented programming, a class defines the shared aspects of objects created from the class.

See Java (programming language) and Class (computer programming)

Class-based programming

Class-based programming, or more commonly class-orientation, is a style of object-oriented programming (OOP) in which inheritance occurs via defining classes of objects, instead of inheritance occurring via the objects alone (compare prototype-based programming).

See Java (programming language) and Class-based programming

Client (computing)

Client is a computer that gets information from another computer called server in the context of client–server model of computer networks.

See Java (programming language) and Client (computing)

Client–server model

The client–server model is a distributed application structure that partitions tasks or workloads between the providers of a resource or service, called servers, and service requesters, called clients.

See Java (programming language) and Client–server model

Clojure

Clojure (like closure) is a dynamic and functional dialect of the Lisp programming language on the Java platform. Like most other Lisps, Clojure's syntax is built on S-expressions that are first parsed into data structures by a reader before being compiled. Clojure's reader supports literal syntax for maps, sets and vectors along with lists, and these are compiled to the mentioned structures directly. Java (programming language) and Clojure are JVM programming languages, multi-paradigm programming languages and programming languages.

See Java (programming language) and Clojure

CLU (programming language)

CLU is a programming language created at the Massachusetts Institute of Technology (MIT) by Barbara Liskov and her students starting in 1973. Java (programming language) and CLU (programming language) are class-based programming languages.

See Java (programming language) and CLU (programming language)

Coffee production in Indonesia

Indonesia was the fourth-largest producer of coffee in the world in 2014.

See Java (programming language) and Coffee production in Indonesia

Comment (computer programming)

In computer programming, a comment is a programmer-readable explanation or annotation in the source code of a computer program.

See Java (programming language) and Comment (computer programming)

Common Object Request Broker Architecture

The Common Object Request Broker Architecture (CORBA) is a standard defined by the Object Management Group (OMG) designed to facilitate the communication of systems that are deployed on diverse platforms.

See Java (programming language) and Common Object Request Broker Architecture

Comparison of C Sharp and Java

This article compares two programming languages: C# with Java. Java (programming language) and Comparison of C Sharp and Java are c programming language family.

See Java (programming language) and Comparison of C Sharp and Java

Comparison of Java and C++

Java and C++ are two prominent object-oriented programming languages.

See Java (programming language) and Comparison of Java and C++

Comparison of programming languages

Programming languages are used for controlling the behavior of a machine (often a computer).

See Java (programming language) and Comparison of programming languages

Compiler

In computing, a compiler is a computer program that translates computer code written in one programming language (the source language) into another language (the target language).

See Java (programming language) and Compiler

Computer architecture

In computer science and computer engineering, computer architecture is a description of the structure of a computer system made from component parts.

See Java (programming language) and Computer architecture

Computer network

A computer network is a set of computers sharing resources located on or provided by network nodes.

See Java (programming language) and Computer network

Computer security

Computer security (also cybersecurity, digital security, or information technology (IT) security) is the protection of computer systems and networks from threats that may result in unauthorized information disclosure, theft of (or damage to) hardware, software, or data, as well as from the disruption or misdirection of the services they provide.

See Java (programming language) and Computer security

Computer Weekly

Computer Weekly is a digital magazine and website for IT professionals in the United Kingdom.

See Java (programming language) and Computer Weekly

Computing platform

A computing platform, digital platform, or software platform is the infrastructure on which software is executed.

See Java (programming language) and Computing platform

Concurrent computing

Concurrent computing is a form of computing in which several computations are executed concurrently—during overlapping time periods—instead of sequentially—with one completing before the next starts.

See Java (programming language) and Concurrent computing

Coupling (computer programming)

In software engineering, coupling is the degree of interdependence between software modules; a measure of how closely connected two routines or modules are; the strength of the relationships between modules.

See Java (programming language) and Coupling (computer programming)

Dalvik (software)

Dalvik is a discontinued process virtual machine (VM) in the Android operating system that executes applications written for Android.

See Java (programming language) and Dalvik (software)

Data center

A data center (American English) or data centre (Commonwealth English)See spelling differences.

See Java (programming language) and Data center

Data structure

In computer science, a data structure is a data organization, and storage format that is usually chosen for efficient access to data.

See Java (programming language) and Data structure

De facto standard

A de facto standard is a custom or convention that is commonly used even though its use is not required.

See Java (programming language) and De facto standard

Debugger

A debugger or debugging tool is a computer program used to test and debug other programs (the "target" program).

See Java (programming language) and Debugger

Delimiter

A delimiter is a sequence of one or more characters for specifying the boundary between separate, independent regions in plain text, mathematical expressions or other data streams.

See Java (programming language) and Delimiter

Desktop computer

A desktop computer (often abbreviated desktop) is a personal computer designed for regular use at a stationary location on or near a desk (as opposed to a portable computer) due to its size and power requirements.

See Java (programming language) and Desktop computer

Double-ended queue

In computer science, a double-ended queue (abbreviated to deque) is an abstract data type that generalizes a queue, for which elements can be added to or removed from either the front (head) or back (tail).

See Java (programming language) and Double-ended queue

Dynamic programming language

In computer science, a dynamic programming language is a class of high-level programming languages which at runtime execute many common programming behaviours that static programming languages perform during compilation.

See Java (programming language) and Dynamic programming language

Eclipse (software)

Eclipse is an integrated development environment (IDE) used in computer programming. Java (programming language) and Eclipse (software) are java platform.

See Java (programming language) and Eclipse (software)

Ecma International

Ecma International is a nonprofit standards organization for information and communication systems.

See Java (programming language) and Ecma International

ECMAScript

ECMAScript (ES) is a standard for scripting languages, including JavaScript, JScript, and ActionScript.

See Java (programming language) and ECMAScript

Eiffel (programming language)

Eiffel is an object-oriented programming language designed by Bertrand Meyer (an object-orientation proponent and author of Object-Oriented Software Construction) and Eiffel Software. Java (programming language) and Eiffel (programming language) are class-based programming languages and object-oriented programming languages.

See Java (programming language) and Eiffel (programming language)

End user

In product development, an end user (sometimes end-user) is a person who ultimately uses or is intended to ultimately use a product.

See Java (programming language) and End user

Escape analysis

In compiler optimization, escape analysis is a method for determining the dynamic scope of pointers where in the program a pointer can be accessed.

See Java (programming language) and Escape analysis

Exception handling

In computing and computer programming, exception handling is the process of responding to the occurrence of exceptions – anomalous or exceptional conditions requiring special processing – during the execution of a program.

See Java (programming language) and Exception handling

Executable

In computer science, executable code, an executable file, or an executable program, sometimes simply referred to as an executable or binary, causes a computer "to perform indicated tasks according to encoded instructions", as opposed to a data file that must be interpreted (parsed) by an interpreter to be functional.

See Java (programming language) and Executable

Fair use

Fair use is a doctrine in United States law that permits limited use of copyrighted material without having to first acquire permission from the copyright holder.

See Java (programming language) and Fair use

Fantom (programming language)

Fantom is a general-purpose object-oriented programming language, created by Brian Frank and Andy Frank. Java (programming language) and Fantom (programming language) are JVM programming languages, object-oriented programming languages and statically typed programming languages.

See Java (programming language) and Fantom (programming language)

Foreach loop

In computer programming, foreach loop (or for-each loop) is a control flow statement for traversing items in a collection.

See Java (programming language) and Foreach loop

Free and open-source software

Free and open-source software (FOSS) is software that is available under a license that grants the right to use, modify, and distribute the software, modified or not, to everyone free of charge.

See Java (programming language) and Free and open-source software

Free software

Free software, libre software, libreware or rarely known as freedom-respecting software is computer software distributed under terms that allow users to run the software for any purpose as well as to study, change, and distribute it and any adapted versions.

See Java (programming language) and Free software

Functional programming

In computer science, functional programming is a programming paradigm where programs are constructed by applying and composing functions.

See Java (programming language) and Functional programming

Gambas

Gambas is the name of an object-oriented dialect of the BASIC programming language, as well as the integrated development environment that accompanies it. Java (programming language) and Gambas are object-oriented programming languages.

See Java (programming language) and Gambas

Garbage collection (computer science)

In computer science, garbage collection (GC) is a form of automatic memory management.

See Java (programming language) and Garbage collection (computer science)

Garbage-first collector

The garbage-first collector (G1) is a garbage collection algorithm introduced in the Oracle HotSpot Java virtual machine (JVM) 6 and supported from 7 Update 4.

See Java (programming language) and Garbage-first collector

General-purpose language

A general-purpose language is a computer language that is broadly applicable across application domains, and lacks specialized features for a particular domain.

See Java (programming language) and General-purpose language

Generic programming

Generic programming is a style of computer programming in which algorithms are written in terms of data types to-be-specified-later that are then instantiated when needed for specific types provided as parameters.

See Java (programming language) and Generic programming

Generics in Java

Generics are a facility of generic programming that were added to the Java programming language in 2004 within version J2SE 5.0.

See Java (programming language) and Generics in Java

GitHub

GitHub is a developer platform that allows developers to create, store, manage and share their code.

See Java (programming language) and GitHub

GNU General Public License

The GNU General Public License (GNU GPL or simply GPL) is a series of widely used free software licenses, or copyleft, that guarantee end users the four freedoms to run, study, share, and modify the software.

See Java (programming language) and GNU General Public License

GraalVM

GraalVM is a Java Development Kit (JDK) written in Java.

See Java (programming language) and GraalVM

Graphical user interface

A graphical user interface, or GUI, is a form of user interface that allows users to interact with electronic devices through graphical icons and visual indicators such as secondary notation.

See Java (programming language) and Graphical user interface

Graphical widget

A graphical widget (also graphical control element or control) in a graphical user interface is an element of interaction, such as a button or a scroll bar.

See Java (programming language) and Graphical widget

GTK

GTK (formerly GIMP ToolKit and GTK+) is a free software cross-platform widget toolkit for creating graphical user interfaces (GUIs).

See Java (programming language) and GTK

Hack (programming language)

Hack is a programming language for the HipHop Virtual Machine (HHVM), created by Meta (formerly Facebook) as a dialect of PHP. Java (programming language) and Hack (programming language) are statically typed programming languages.

See Java (programming language) and Hack (programming language)

Haxe

Haxe is a high-level cross-platform programming language and compiler that can produce applications and source code for many different computing platforms from one code-base. Java (programming language) and Haxe are multi-paradigm programming languages, programming languages and statically typed programming languages.

See Java (programming language) and Haxe

High-level programming language

In computer science, a high-level programming language is a programming language with strong abstraction from the details of the computer.

See Java (programming language) and High-level programming language

HotSpot (virtual machine)

HotSpot, released as Java HotSpot Performance Engine, is a Java virtual machine for desktop and server computers, developed by Sun Microsystems which was purchased by and became a division of Oracle Corporation in 2010.

See Java (programming language) and HotSpot (virtual machine)

HTML

Hypertext Markup Language (HTML) is the standard markup language for documents designed to be displayed in a web browser.

See Java (programming language) and HTML

HTTP

HTTP (Hypertext Transfer Protocol) is an application layer protocol in the Internet protocol suite model for distributed, collaborative, hypermedia information systems.

See Java (programming language) and HTTP

Imperative programming

In computer science, imperative programming is a programming paradigm of software that uses statements that change a program's state.

See Java (programming language) and Imperative programming

Indonesia

Indonesia, officially the Republic of Indonesia, is a country in Southeast Asia and Oceania between the Indian and Pacific oceans.

See Java (programming language) and Indonesia

InfoWorld

InfoWorld (IW) is an American information technology media business.

See Java (programming language) and InfoWorld

Integrated development environment

An integrated development environment (IDE) is a software application that provides comprehensive facilities for software development.

See Java (programming language) and Integrated development environment

Interface (Java)

An interface in the Java programming language is an abstract type that is used to declare a behavior that classes must implement.

See Java (programming language) and Interface (Java)

International Data Group

International Data Group (IDG, Inc.) is a market intelligence and demand generation company focused on the technology industry.

See Java (programming language) and International Data Group

Internationalization and localization

In computing, internationalization and localization (American) or internationalisation and localisation (British), often abbreviated i18n and l10n respectively, are means of adapting computer software to different languages, regional peculiarities and technical requirements of a target locale.

See Java (programming language) and Internationalization and localization

Interpreter (computing)

In computer science, an interpreter is a computer program that directly executes instructions written in a programming or scripting language, without requiring them previously to have been compiled into a machine language program.

See Java (programming language) and Interpreter (computing)

ISO/IEC JTC 1

ISO/IEC JTC 1, entitled "Information technology", is a joint technical committee (JTC) of the International Organization for Standardization (ISO) and the International Electrotechnical Commission (IEC).

See Java (programming language) and ISO/IEC JTC 1

Jakarta EE

Jakarta EE, formerly Java Platform, Enterprise Edition (Java EE) and Java 2 Platform, Enterprise Edition (J2EE), is a set of specifications, extending Java SE with specifications for enterprise features such as distributed computing and web services. Java (programming language) and Jakarta EE are java platform and java specification requests.

See Java (programming language) and Jakarta EE

Jakarta RESTful Web Services

Jakarta RESTful Web Services, (JAX-RS; formerly Java API for RESTful Web Services) is a Jakarta EE API specification that provides support in creating web services according to the Representational State Transfer (REST) architectural pattern.

See Java (programming language) and Jakarta RESTful Web Services

Jakarta Server Pages

Jakarta Server Pages (JSP; formerly JavaServer Pages) is a collection of technologies that helps software developers create dynamically generated web pages based on HTML, XML, SOAP, or other document types. Java (programming language) and Jakarta Server Pages are java specification requests.

See Java (programming language) and Jakarta Server Pages

Jakarta Servlet

A Jakarta Servlet, formerly Java Servlet is a Java software component that extends the capabilities of a server. Java (programming language) and Jakarta Servlet are java specification requests.

See Java (programming language) and Jakarta Servlet

Jakarta XML Web Services

The Jakarta XML Web Services (JAX-WS; formerly Java API for XML Web Services) is a Jakarta EE API for creating web services, particularly SOAP services.

See Java (programming language) and Jakarta XML Web Services

James Gosling

James Gosling (born 19 May 1955) is a Canadian computer scientist, best known as the founder and lead designer behind the Java programming language.

See Java (programming language) and James Gosling

JAR (file format)

A JAR ("Java archive") file is a package file format typically used to aggregate many Java class files and associated metadata and resources (text, images, etc.) into one file for distribution. Java (programming language) and JAR (file format) are java platform.

See Java (programming language) and JAR (file format)

Java (software platform)

Java is a set of computer software and specifications that provides a software platform for developing application software and deploying it in a cross-platform computing environment. Java (programming language) and Java (software platform) are java platform.

See Java (programming language) and Java (software platform)

Java annotation

In the Java computer programming language, an annotation is a form of syntactic metadata that can be added to Java source code. Java (programming language) and Java annotation are java specification requests.

See Java (programming language) and Java annotation

Java applet

Java applets are small applications written in the Java programming language, or another programming language that compiles to Java bytecode, and delivered to users in the form of Java bytecode. Java (programming language) and Java applet are java platform.

See Java (programming language) and Java applet

Java bytecode

Java bytecode is the instruction set of the Java virtual machine (JVM), the language to which Java and other JVM-compatible source code is compiled. Java (programming language) and Java bytecode are java platform.

See Java (programming language) and Java bytecode

Java Card

Java Card is a software technology that allows Java-based applications (applets) to be run securely on smart cards and more generally on similar secure small memory footprint devices which are called "secure elements" (SE).

See Java (programming language) and Java Card

Java class file

A Java class file is a file (with the filename extension) containing Java bytecode that can be executed on the Java Virtual Machine (JVM). Java (programming language) and Java class file are java platform.

See Java (programming language) and Java class file

Java Class Library

The Java Class Library (JCL) is a set of dynamically loadable libraries that Java Virtual Machine (JVM) languages can call at run time.

See Java (programming language) and Java Class Library

Java collections framework

The Java collections framework is a set of classes and interfaces that implement commonly reusable collection data structures.

See Java (programming language) and Java collections framework

Java Community Process

The Java Community Process (JCP), established in 1998, is a formal mechanism that enables interested parties to develop standard technical specifications for Java technology. Java (programming language) and Java Community Process are java specification requests.

See Java (programming language) and Java Community Process

Java compiler

A Java compiler is a compiler for the Java programming language. Java (programming language) and Java compiler are java specification requests.

See Java (programming language) and Java compiler

Java ConcurrentMap

The Java programming language's Java Collections Framework version 1.5 and later defines and implements the original regular single-threaded Maps, and also new thread-safe Maps implementing the interface among other concurrent interfaces.

See Java (programming language) and Java ConcurrentMap

Java Database Connectivity

Java Database Connectivity (JDBC) is an application programming interface (API) for the Java programming language which defines how a client may access a database. Java (programming language) and Java Database Connectivity are java specification requests.

See Java (programming language) and Java Database Connectivity

Java Development Kit

The Java Development Kit (JDK) is a distribution of Java technology by Oracle Corporation.

See Java (programming language) and Java Development Kit

Java Heterogeneous Distributed Computing

Java Heterogeneous Distributed Computing refers to a programmable Java distributed system which was developed at the National University of Ireland in Maynooth.

See Java (programming language) and Java Heterogeneous Distributed Computing

Java Management Extensions

Java Management Extensions (JMX) is a Java technology that supplies tools for managing and monitoring applications, system objects, devices (such as printers) and service-oriented networks. Java (programming language) and Java Management Extensions are java specification requests.

See Java (programming language) and Java Management Extensions

Java Naming and Directory Interface

The Java Naming and Directory Interface (JNDI) is a Java API for a directory service that allows Java software clients to discover and look up data and resources (in the form of Java objects) via a name.

See Java (programming language) and Java Naming and Directory Interface

Java Native Interface

In software design, the Java Native Interface (JNI) is a foreign function interface programming framework that enables Java code running in a Java virtual machine (JVM) to call and be called by native applications (programs specific to a hardware and operating system platform) and libraries written in other languages such as C, C++ and assembly. Java (programming language) and Java Native Interface are java platform.

See Java (programming language) and Java Native Interface

Java package

A Java package organizes Java classes into namespaces, providing a unique namespace for each type it contains.

See Java (programming language) and Java package

Java Platform, Micro Edition

Java Platform, Micro Edition or Java ME is a computing platform for development and deployment of portable code for embedded and mobile devices (micro-controllers, sensors, gateways, mobile phones, personal digital assistants, TV set-top boxes, printers). Java (programming language) and Java Platform, Micro Edition are java platform and java specification requests.

See Java (programming language) and Java Platform, Micro Edition

Java Platform, Standard Edition

Java Platform, Standard Edition (Java SE) is a computing platform for development and deployment of portable code for desktop and server environments. Java (programming language) and Java Platform, Standard Edition are java platform and java specification requests.

See Java (programming language) and Java Platform, Standard Edition

Java remote method invocation

The Java Remote Method Invocation (Java RMI) is a Java API that performs remote method invocation, the object-oriented equivalent of remote procedure calls (RPC), with support for direct transfer of serialized Java classes and distributed garbage-collection.

See Java (programming language) and Java remote method invocation

Java version history

The Java language has undergone several changes since JDK 1.0 as well as numerous additions of classes and packages to the standard library. Java (programming language) and Java version history are java platform.

See Java (programming language) and Java version history

Java virtual machine

A Java virtual machine (JVM) is a virtual machine that enables a computer to run Java programs as well as programs written in other languages that are also compiled to Java bytecode. Java (programming language) and Java virtual machine are java platform and java specification requests.

See Java (programming language) and Java virtual machine

Java Web Start

In computing, Java Web Start (also known as JavaWS, javaws or JAWS) is a deprecated framework developed by Sun Microsystems (now Oracle) that allows users to start application software for the Java Platform directly from the Internet using a web browser. Java (programming language) and java Web Start are java specification requests.

See Java (programming language) and Java Web Start

Javadoc

Javadoc is a documentation generator created by Sun Microsystems for the Java language (now owned by Oracle Corporation) for generating API documentation in HTML format from Java source code.

See Java (programming language) and Javadoc

JavaFX

JavaFX is a software platform for creating and delivering desktop applications, as well as rich web applications that can run across a wide variety of devices.

See Java (programming language) and JavaFX

JavaScript

JavaScript, often abbreviated as JS, is a programming language and core technology of the Web, alongside HTML and CSS. Java (programming language) and JavaScript are programming languages created in 1995.

See Java (programming language) and JavaScript

Jazelle

Jazelle DBX (direct bytecode execution) is an extension that allows some ARM processors to execute Java bytecode in hardware as a third execution state alongside the existing ARM and Thumb modes.

See Java (programming language) and Jazelle

John Guttag

John Vogel Guttag (born March 6, 1949) is an American computer scientist, professor, and former head of the department of electrical engineering and computer science at MIT.

See Java (programming language) and John Guttag

JS++

JS++ is a proprietary programming language for web development that extends JavaScript with a sound type system. Java (programming language) and JS++ are class-based programming languages, programming languages and statically typed programming languages.

See Java (programming language) and JS++

Just-in-time compilation

In computing, just-in-time (JIT) compilation (also dynamic translation or run-time compilations) is compilation (of computer code) during execution of a program (at run time) rather than before execution.

See Java (programming language) and Just-in-time compilation

Kotlin (programming language)

Kotlin is a cross-platform, statically typed, general-purpose high-level programming language with type inference. Java (programming language) and Kotlin (programming language) are JVM programming languages, object-oriented programming languages, programming languages and statically typed programming languages.

See Java (programming language) and Kotlin (programming language)

Legacy system

In computing, a legacy system is an old method, technology, computer system, or application program, "of, relating to, or being a previous or outdated computer system", yet still in use.

See Java (programming language) and Legacy system

Library (computing)

In computer science, a library is a collection of read-only resources that is leveraged during software development to implement a computer program.

See Java (programming language) and Library (computing)

Linux

Linux is both an open-source Unix-like kernel and a generic name for a family of open-source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991, by Linus Torvalds.

See Java (programming language) and Linux

Linux kernel

The Linux kernel is a free and open source, UNIX-like kernel that is used in many computer systems worldwide.

See Java (programming language) and Linux kernel

Lisp (programming language)

Lisp (historically LISP, an abbreviation of "list processing") is a family of programming languages with a long history and a distinctive, fully parenthesized prefix notation. Java (programming language) and Lisp (programming language) are programming languages.

See Java (programming language) and Lisp (programming language)

List (abstract data type)

In computer science, a list or sequence is collection of items that are finite in number and in a particular order.

See Java (programming language) and List (abstract data type)

List of Java APIs

There are two types of Java programming language application programming interfaces (APIs).

See Java (programming language) and List of Java APIs

List of Java frameworks

Below is a list of notable Java programming language technologies (frameworks, libraries).

See Java (programming language) and List of Java frameworks

List of Java virtual machines

This article provides non-exhaustive lists of Java SE Java virtual machines (JVMs).

See Java (programming language) and List of Java virtual machines

List of JVM languages

This list of JVM Languages comprises notable computer programming languages that are used to produce computer software that runs on the Java virtual machine (JVM). Java (programming language) and list of JVM languages are JVM programming languages.

See Java (programming language) and List of JVM languages

Logical address

In computing, a logical address is the address at which an item (memory cell, storage element, network host) appears to reside from the perspective of an executing application program.

See Java (programming language) and Logical address

Long-term support

Long-term support (LTS) is a product lifecycle management policy in which a stable release of computer software is maintained for a longer period of time than the standard edition.

See Java (programming language) and Long-term support

Low-level programming language

A low-level programming language is a programming language that provides little or no abstraction from a computer's instruction set architecture; commands or functions in the language are structurally similar to a processor's instructions.

See Java (programming language) and Low-level programming language

Machine code

In computer programming, machine code is computer code consisting of machine language instructions, which are used to control a computer's central processing unit (CPU).

See Java (programming language) and Machine code

MacOS

macOS, originally Mac OS X, previously shortened as OS X, is an operating system developed and marketed by Apple since 2001.

See Java (programming language) and MacOS

Manifest typing

In computer science, manifest typing is explicit identification by the software programmer of the type of each variable being declared.

See Java (programming language) and Manifest typing

Memory leak

In computer science, a memory leak is a type of resource leak that occurs when a computer program incorrectly manages memory allocations in a way that memory which is no longer needed is not released.

See Java (programming language) and Memory leak

Mesa (programming language)

Mesa is a programming language developed in the mid 1970s at the Xerox Palo Alto Research Center in Palo Alto, California, United States. Java (programming language) and Mesa (programming language) are statically typed programming languages.

See Java (programming language) and Mesa (programming language)

Microsoft

Microsoft Corporation is an American multinational corporation and technology company headquartered in Redmond, Washington.

See Java (programming language) and Microsoft

Microsoft Windows

Microsoft Windows is a product line of proprietary graphical operating systems developed and marketed by Microsoft.

See Java (programming language) and Microsoft Windows

Mobile operating system

A mobile operating system is an operating system used for smartphones, tablets, smartwatches, smartglasses, or other non-laptop personal mobile computing devices.

See Java (programming language) and Mobile operating system

Modula-3

Modula-3 is a programming language conceived as a successor to an upgraded version of Modula-2 known as Modula-2+. Java (programming language) and Modula-3 are object-oriented programming languages.

See Java (programming language) and Modula-3

Motif (software)

In computing, Motif refers to both a graphical user interface (GUI) specification and the widget toolkit for building applications that follow that specification under the X Window System on Unix and Unix-like operating systems.

See Java (programming language) and Motif (software)

Multiple inheritance

Multiple inheritance is a feature of some object-oriented computer programming languages in which an object or class can inherit features from more than one parent object or parent class.

See Java (programming language) and Multiple inheritance

Native (computing)

In computing, native software or data-formats are those that were designed to run on a particular operating system.

See Java (programming language) and Native (computing)

Niklaus Wirth

Niklaus Emil Wirth (15 February 1934 – 1 January 2024) was a Swiss computer scientist.

See Java (programming language) and Niklaus Wirth

Nominal type system

In computer science, a type system is nominal (also called nominative or name-based) if compatibility and equivalence of data types is determined by explicit declarations and/or the name of the types.

See Java (programming language) and Nominal type system

Non-blocking algorithm

In computer science, an algorithm is called non-blocking if failure or suspension of any thread cannot cause failure or suspension of another thread; for some operations, these algorithms provide a useful alternative to traditional blocking implementations.

See Java (programming language) and Non-blocking algorithm

Null pointer

In computing, a null pointer or null reference is a value saved for indicating that the pointer or reference does not refer to a valid object.

See Java (programming language) and Null pointer

O'Reilly Media

O'Reilly Media, Inc. (formerly O'Reilly & Associates) is an American learning company established by Tim O'Reilly provides technical and professional skills development courses via an online learning platform.

See Java (programming language) and O'Reilly Media

Oak

An oak is a hardwood tree or shrub in the genus Quercus of the beech family.

See Java (programming language) and Oak

Oak (programming language)

Oak is a discontinued programming language created by James Gosling in 1989, initially for Sun Microsystems' set-top box project. Java (programming language) and Oak (programming language) are c programming language family, class-based programming languages and object-oriented programming languages.

See Java (programming language) and Oak (programming language)

Oberon (programming language)

Oberon is a general-purpose programming language first published in 1987 by Niklaus Wirth and the latest member of the Wirthian family of ALGOL-like languages (Euler, ALGOL W, Pascal, Modula, and Modula-2). Java (programming language) and Oberon (programming language) are class-based programming languages and statically typed programming languages.

See Java (programming language) and Oberon (programming language)

Object lifetime

In object-oriented programming (OOP), object lifetime is the period of time between an object's creation and its destruction.

See Java (programming language) and Object lifetime

Object Pascal

Object Pascal is an extension to the programming language Pascal that provides object-oriented programming (OOP) features such as classes and methods. Java (programming language) and object Pascal are object-oriented programming languages.

See Java (programming language) and Object Pascal

Object-oriented programming

Object-oriented programming (OOP) is a programming paradigm based on the concept of objects, which can contain data and code: data in the form of fields (often known as attributes or properties), and code in the form of procedures (often known as methods).

See Java (programming language) and Object-oriented programming

Objective-C

Objective-C is a high-level general-purpose, object-oriented programming language that adds Smalltalk-style messaging to the C programming language. Java (programming language) and Objective-C are c programming language family, class-based programming languages and object-oriented programming languages.

See Java (programming language) and Objective-C

Open-source software

Open-source software (OSS) is computer software that is released under a license in which the copyright holder grants users the rights to use, study, change, and distribute the software and its source code to anyone and for any purpose.

See Java (programming language) and Open-source software

OpenJDK

OpenJDK (Open Java Development Kit) is a free and open-source implementation of the Java Platform, Standard Edition (Java SE).

See Java (programming language) and OpenJDK

Operator overloading

In computer programming, operator overloading, sometimes termed operator ad hoc polymorphism, is a specific case of polymorphism, where different operators have different implementations depending on their arguments.

See Java (programming language) and Operator overloading

Oracle Corporation

Oracle Corporation is an American multinational computer technology company headquartered in Austin, Texas.

See Java (programming language) and Oracle Corporation

Oracle Solaris

Solaris is a proprietary Unix operating system originally developed by Sun Microsystems.

See Java (programming language) and Oracle Solaris

Patrick Naughton

Patrick Naughton is an American software developer and convicted sex offender.

See Java (programming language) and Patrick Naughton

PersonalJava

PersonalJava was a Java edition for mobile and embedded systems based on Java 1.1.8.

See Java (programming language) and PersonalJava

PHP

PHP is a general-purpose scripting language geared towards web development. Java (programming language) and PHP are c programming language family, class-based programming languages, object-oriented programming languages, programming languages and programming languages created in 1995.

See Java (programming language) and PHP

Pluggable look and feel

Pluggable look and feel is a mechanism used in the Java Swing widget toolkit allowing to change the look and feel of the graphical user interface at runtime.

See Java (programming language) and Pluggable look and feel

Pointer (computer programming)

In computer science, a pointer is an object in many programming languages that stores a memory address.

See Java (programming language) and Pointer (computer programming)

Primitive data type

In computer science, primitive data types are a set of basic data types from which all other data types are constructed.

See Java (programming language) and Primitive data type

Programmer

A programmer, computer programmer or coder is an author of computer source code someone with skill in computer programming.

See Java (programming language) and Programmer

Programming language

A programming language is a system of notation for writing computer programs. Java (programming language) and programming language are programming languages.

See Java (programming language) and Programming language

Proprietary software

Proprietary software is software that grants its creator, publisher, or other rightsholder or rightsholder partner a legal monopoly by modern copyright and intellectual property law to exclude the recipient from freely sharing the software or modifying it, and—in some cases, as is the case with some patent-encumbered and EULA-bound software—from making use of the software on their own, thereby restricting their freedoms.

See Java (programming language) and Proprietary software

Python (programming language)

Python is a high-level, general-purpose programming language. Java (programming language) and Python (programming language) are class-based programming languages, multi-paradigm programming languages, object-oriented programming languages and programming languages.

See Java (programming language) and Python (programming language)

Queue (abstract data type)

In computer science, a queue is a collection of entities that are maintained in a sequence and can be modified by the addition of entities at one end of the sequence and the removal of entities from the other end of the sequence.

See Java (programming language) and Queue (abstract data type)

Reference implementation

In the software development process, a reference implementation (or, less frequently, sample implementation or model implementation) is a program that implements all requirements from a corresponding specification.

See Java (programming language) and Reference implementation

Reflective programming

In computer science, reflective programming or reflection is the ability of a process to examine, introspect, and modify its own structure and behavior.

See Java (programming language) and Reflective programming

Rich Internet Application

A Rich Internet Application (also known as a rich web application, RIA or installable Internet application) is a web application that has many of the characteristics of desktop application software.

See Java (programming language) and Rich Internet Application

Robustness (computer science)

In computer science, robustness is the ability of a computer system to cope with errors during execution1990.

See Java (programming language) and Robustness (computer science)

Scala (programming language)

Scala is a strong statically typed high-level general-purpose programming language that supports both object-oriented programming and functional programming. Java (programming language) and Scala (programming language) are JVM programming languages, multi-paradigm programming languages, object-oriented programming languages, programming languages and statically typed programming languages.

See Java (programming language) and Scala (programming language)

Seed7

Seed7 is an extensible general-purpose programming language designed by Thomas Mertes. Java (programming language) and Seed7 are multi-paradigm programming languages, object-oriented programming languages and statically typed programming languages.

See Java (programming language) and Seed7

Set (abstract data type)

In computer science, a set is an abstract data type that can store unique values, without any particular order.

See Java (programming language) and Set (abstract data type)

Simula

Simula is the name of two simulation programming languages, Simula I and Simula 67, developed in the 1960s at the Norwegian Computing Center in Oslo, by Ole-Johan Dahl and Kristen Nygaard. Java (programming language) and simula are class-based programming languages and programming languages.

See Java (programming language) and Simula

Smalltalk

Smalltalk is a purely object oriented programming language (OOP) that was originally created in the 1970s for educational use, specifically for constructionist learning, but later found use in business. Java (programming language) and Smalltalk are class-based programming languages, object-oriented programming languages and programming languages.

See Java (programming language) and Smalltalk

Smart pointer

In computer science, a smart pointer is an abstract data type that simulates a pointer while providing added features, such as automatic memory management or bounds checking.

See Java (programming language) and Smart pointer

Smartphone

A smartphone, often simply called a phone, is a mobile device that combines the functionality of a traditional mobile phone with advanced computing capabilities.

See Java (programming language) and Smartphone

SOAP

SOAP (formerly an acronym for Simple Object Access Protocol) is a messaging protocol specification for exchanging structured information in the implementation of web services in computer networks.

See Java (programming language) and SOAP

Software portability

Software portability is a design objective for source code to be easily made to run on different platforms.

See Java (programming language) and Software portability

Software release life cycle

The software release life cycle is the process of developing, testing, and distributing a software product (e.g., an operating system).

See Java (programming language) and Software release life cycle

Software relicensing

Software relicensing is applied in open-source software development when software licenses of software modules are incompatible and are required to be compatible for a greater combined work.

See Java (programming language) and Software relicensing

Soundness

In logic and deductive reasoning, an argument is sound if it is both valid in form and has no false premises.

See Java (programming language) and Soundness

Stack (abstract data type)

In computer science, a stack is an abstract data type that serves as a collection of elements with two main operations.

See Java (programming language) and Stack (abstract data type)

Stack-based memory allocation

Stacks in computing architectures are regions of memory where data is added or removed in a last-in-first-out (LIFO) manner.

See Java (programming language) and Stack-based memory allocation

Standard library

In computer programming, a standard library is the library made available across implementations of a programming language.

See Java (programming language) and Standard library

Sun Microsystems

Sun Microsystems, Inc. (Sun for short) was an American technology company that sold computers, computer components, software, and information technology services and created the Java programming language, the Solaris operating system, ZFS, the Network File System (NFS), and SPARC microprocessors.

See Java (programming language) and Sun Microsystems

Supercomputer

A supercomputer is a type of computer with a high level of performance as compared to a general-purpose computer.

See Java (programming language) and Supercomputer

Supreme Court of the United States

The Supreme Court of the United States (SCOTUS) is the highest court in the federal judiciary of the United States.

See Java (programming language) and Supreme Court of the United States

Swing (Java)

Swing is a GUI widget toolkit for Java.

See Java (programming language) and Swing (Java)

Syntax (programming languages)

In computer science, the syntax of a computer language is the rules that define the combinations of symbols that are considered to be correctly structured statements or expressions in that language.

See Java (programming language) and Syntax (programming languages)

Tablet computer

A tablet computer, commonly shortened to tablet, is a mobile device, typically with a mobile operating system and touchscreen display processing circuitry, and a rechargeable battery in a single, thin and flat package.

See Java (programming language) and Tablet computer

Thread (computing)

In computer science, a thread of execution is the smallest sequence of programmed instructions that can be managed independently by a scheduler, which is typically a part of the operating system.

See Java (programming language) and Thread (computing)

Tree structure

A tree structure, tree diagram, or tree model is a way of representing the hierarchical nature of a structure in a graphical form.

See Java (programming language) and Tree structure

Type safety

In computer science, type safety and type soundness are the extent to which a programming language discourages or prevents type errors.

See Java (programming language) and Type safety

Type system

In computer programming, a type system is a logical system comprising a set of rules that assigns a property called a ''type'' (for example, integer, floating point, string) to every term (a word, phrase, or other set of symbols).

See Java (programming language) and Type system

UCSD Pascal

UCSD Pascal is a Pascal programming language system that runs on the UCSD p-System, a portable, highly machine-independent operating system.

See Java (programming language) and UCSD Pascal

Unreachable memory

In computer programming, unreachable memory is a block of dynamically allocated memory where the program that allocated the memory no longer has any reachable pointer that refers to it.

See Java (programming language) and Unreachable memory

User interface

In the industrial design field of human–computer interaction, a user interface (UI) is the space where interactions between humans and machines occur.

See Java (programming language) and User interface

Vala (programming language)

Vala is an object-oriented programming language with a self-hosting compiler that generates C code and uses the GObject system. Java (programming language) and Vala (programming language) are c programming language family, object-oriented programming languages, programming languages and statically typed programming languages.

See Java (programming language) and Vala (programming language)

Variadic function

In mathematics and in computer programming, a variadic function is a function of indefinite arity, i.e., one which accepts a variable number of arguments.

See Java (programming language) and Variadic function

Video game console

A video game console is an electronic device that outputs a video signal or image to display a video game that can be played with a game controller.

See Java (programming language) and Video game console

Virtual machine

In computing, a virtual machine (VM) is the virtualization or emulation of a computer system.

See Java (programming language) and Virtual machine

Visual J Sharp

Visual J# (pronounced "jay-sharp") is a discontinued implementation of the J# programming language that was a transitional language for programmers of Java and Visual J++ languages, so they could use their existing knowledge and applications with the.NET Framework.

See Java (programming language) and Visual J Sharp

Web browser

A web browser is an application for accessing websites.

See Java (programming language) and Web browser

Web service

A web service (WS) is either.

See Java (programming language) and Web service

WebSocket

WebSocket is a computer communications protocol, providing a simultaneous two-way communication channel over a single Transmission Control Protocol (TCP) connection.

See Java (programming language) and WebSocket

William Alsup

William Haskell Alsup (born June 27, 1945) is a senior United States district judge of the United States District Court for the Northern District of California.

See Java (programming language) and William Alsup

Wired (magazine)

Wired (stylized in all caps) is a monthly American magazine, published in print and online editions, that focuses on how emerging technologies affect culture, the economy, and politics.

See Java (programming language) and Wired (magazine)

Write once, run anywhere

Write once, run anywhere (WORA), or sometimes Write once, run everywhere (WORE), was a 1995 slogan created by Sun Microsystems to illustrate the cross-platform benefits of the Java language.

See Java (programming language) and Write once, run anywhere

XML

Extensible Markup Language (XML) is a markup language and file format for storing, transmitting, and reconstructing arbitrary data.

See Java (programming language) and XML

ZDNET

ZDNET is a business technology news website owned and operated by Red Ventures.

See Java (programming language) and ZDNET

See also

Class-based programming languages

Compiled programming languages

JVM programming languages

Multi-paradigm programming languages

Programming languages created in 1995

References

[1] https://en.wikipedia.org/wiki/Java_(programming_language)

Also known as @java, Flow Java, History of Java (programming language), History of the Java programming language, JPD (file format), Java (langage), Java (language), Java (programming), Java (software), Java Language Specification, Java Posse, Java Programing Languge, Java Programming, Java code, Java computer language, Java for Windows, Java games, Java language, Java prog, Java programming language, Java source code, Java technology, Javalang, Javax, Notifyall, Openframe, The Java Posse, Tostring.

, De facto standard, Debugger, Delimiter, Desktop computer, Double-ended queue, Dynamic programming language, Eclipse (software), Ecma International, ECMAScript, Eiffel (programming language), End user, Escape analysis, Exception handling, Executable, Fair use, Fantom (programming language), Foreach loop, Free and open-source software, Free software, Functional programming, Gambas, Garbage collection (computer science), Garbage-first collector, General-purpose language, Generic programming, Generics in Java, GitHub, GNU General Public License, GraalVM, Graphical user interface, Graphical widget, GTK, Hack (programming language), Haxe, High-level programming language, HotSpot (virtual machine), HTML, HTTP, Imperative programming, Indonesia, InfoWorld, Integrated development environment, Interface (Java), International Data Group, Internationalization and localization, Interpreter (computing), ISO/IEC JTC 1, Jakarta EE, Jakarta RESTful Web Services, Jakarta Server Pages, Jakarta Servlet, Jakarta XML Web Services, James Gosling, JAR (file format), Java (software platform), Java annotation, Java applet, Java bytecode, Java Card, Java class file, Java Class Library, Java collections framework, Java Community Process, Java compiler, Java ConcurrentMap, Java Database Connectivity, Java Development Kit, Java Heterogeneous Distributed Computing, Java Management Extensions, Java Naming and Directory Interface, Java Native Interface, Java package, Java Platform, Micro Edition, Java Platform, Standard Edition, Java remote method invocation, Java version history, Java virtual machine, Java Web Start, Javadoc, JavaFX, JavaScript, Jazelle, John Guttag, JS++, Just-in-time compilation, Kotlin (programming language), Legacy system, Library (computing), Linux, Linux kernel, Lisp (programming language), List (abstract data type), List of Java APIs, List of Java frameworks, List of Java virtual machines, List of JVM languages, Logical address, Long-term support, Low-level programming language, Machine code, MacOS, Manifest typing, Memory leak, Mesa (programming language), Microsoft, Microsoft Windows, Mobile operating system, Modula-3, Motif (software), Multiple inheritance, Native (computing), Niklaus Wirth, Nominal type system, Non-blocking algorithm, Null pointer, O'Reilly Media, Oak, Oak (programming language), Oberon (programming language), Object lifetime, Object Pascal, Object-oriented programming, Objective-C, Open-source software, OpenJDK, Operator overloading, Oracle Corporation, Oracle Solaris, Patrick Naughton, PersonalJava, PHP, Pluggable look and feel, Pointer (computer programming), Primitive data type, Programmer, Programming language, Proprietary software, Python (programming language), Queue (abstract data type), Reference implementation, Reflective programming, Rich Internet Application, Robustness (computer science), Scala (programming language), Seed7, Set (abstract data type), Simula, Smalltalk, Smart pointer, Smartphone, SOAP, Software portability, Software release life cycle, Software relicensing, Soundness, Stack (abstract data type), Stack-based memory allocation, Standard library, Sun Microsystems, Supercomputer, Supreme Court of the United States, Swing (Java), Syntax (programming languages), Tablet computer, Thread (computing), Tree structure, Type safety, Type system, UCSD Pascal, Unreachable memory, User interface, Vala (programming language), Variadic function, Video game console, Virtual machine, Visual J Sharp, Web browser, Web service, WebSocket, William Alsup, Wired (magazine), Write once, run anywhere, XML, ZDNET.