OpenGL (Open Graphics Library) is a cross-language, multi-platformAPI for rendering 2D and 3D computer graphics. The API is typically used to interact with a GPU, to achieve hardware-accelerated rendering.
The Java Message Service (JMS) API is a JavaMessage Oriented Middleware (MOM) API for sending messages between two or more clients. JavaAPI for XML-based RPC (JAX-RPC) allows a Java application to invoke a Java-based Web Service with a known description while still being consistent with its WSDL description.JavaServer Faces (JSF) is a Java specification for building component-based user interfaces for web applications.The Connected Limited Device Configuration (CLDC) is a specification of a framework for Java ME applications describing the basic set of libraries and virtual-machine features that must be present in an implementation.
In computer science, reflection is the ability of a computer program to examine (see type introspection) and modify the structure and behavior (specifically the values, meta-data, properties and functions) of an object at runtime.
An application programminginterface (API) isa protocol intended to be usedas an interface by softwarecomponents to communicatewith each other. An API is alibrary that may includespecification for routines, datastructures, object classes, andWhat is an API?2
There are 3 types of Java ProgrammingLanguage Application Programming Interfaces(APIs) :• the official core Java API, contained inthe JDK or JRE, of one of the editions ofthe Java Platform.• optional official APIs that can be downloadedseparately. The specification of these APIs aredefined according to a Java SpecificationRequest (JSR).• unofficial APIs, developed by third parties, butnot related to any JSRs.Third-parties can freely implement any JSR3
PackagesThere are two types of packages: Java API packages User defined packagesJava API Packages:A large number of classes grouped into differentpackages based on functionality. Examples:1. java.lang2. java.util3. java.io4. java.awt5. java.net etc.4
Name DescriptionJava AdvancedImagingA set of interfaces that support a high-level programming model allowing tomanipulate images easily.Java DataObjectsA specification of Javaobject persistence.JavaHelpA full-featured, extensible help systemthat enables you to incorporate onlinehelp in applets, components,applications, operating systems, anddevices.Java MediaFrameworkAn API that enables audio, video andother time-based media to be added to 5Official APIs- Standard Edition (JavaSE)
6Name DescriptionJava Namingand DirectoryInterfaceAn API for directory services.Java 3D A scene graph-based 3D API.Java OpenGL A wrapper library for OpenGL.Java MailA framework to build mail andmessaging applicationsJava USB forWindowsA USB communication of Javaapplications
8Optional APIs (for SE):• Java API for XML based RPC (JAX-RPC)• Xquery API for JavaOfficial APIs- Micro Edition (Java ME)• Connected Limited Device Configuration• Java Telephony API
9Unofficial APIs- Released by thirdpartiesRich Client PlatformsEclipse Rich ClientPlatform (RCP)NetBeans PlatformOffice_compliantlibrariesApache POICompressionLZMA SDK, the Javaimplementation of theSDK used by thepopular 7-Zip filearchive softwareGame enginesSlickjMonkey EngineJPCT EngineLWJGLReal-time librariesJavolutionWindowing librariesStandard Widget Toolkit(SWT)Physics LibrariesJBox2D
10Full-Screen Exclusive Mode APITo use high-performance graphics in the Javadevelopment environment, to make the images movefast enough, to have a control over the users displayresolution. It enables you to suspend the windowingsystem so that drawing can be done directly to thescreen.JDBC Database AccessThe JDBC API was designed to keep simple thingssimple. This means that the JDBC makes everydaydatabase tasks easyThe Java Remote Method Invocation (RMI) systemallows an object running in one Java virtual machineto invoke methods on an object running in anotherJava virtual machine. RMI provides for remotecommunication between programs written in theRMI
Reflection is commonly used by programs whichrequire the ability to examine or modify the runtimebehavior of applications running in the Java virtualmachine. This is a relatively advanced feature andshould be used only by developers who have astrong grasp of the fundamentals of the language.With that caveat in mind, reflection is a powerfultechnique and can enable applications to performoperations which would otherwise be impossible.11The Reflection APIThe Java Sound API is a low-level API for effectingand controlling the input and output of soundmedia, including both audio and Musical InstrumentDigital Interface (MIDI) data. The Java Sound APIprovides explicit control over the capabilitiesnormally required for sound input and output, in aThe Sound API
12Abstract Window ToolkitAspectWerkzBatooJPAFlying Saucer (library)Internet Foundation ClassesJava 2DJava Authentication andAuthorization ServiceJava Bindings for OpenGLJava Cryptography ExtensionJava Data ObjectsJava ManagementExtensionsJava Media FrameworkJava Naming and DirectoryInterfaceJava OpenALJava Secure SocketExtensionJava: View Technologies andFrameworksJavApiJavolutionJConsoleJess (programminglanguage)JrealityJSBMLLocation API for Java MEObjectWeb ASMPluggable look and feelQt JambiQuickTime for JavaStandard Widget ToolkitSwing (Java)SwingLabsSynth Look and FeelSome more API
13Summary:• Purpose• Java Platforms:• SE• EE• ME• Java APIs categories:• Official• Optional• Unofficial(Released by third parties)• Examples