Electronic Design

  
Reprints     Printer-Friendly    Email this Article    RSS        Font Size     What's This?


[Embedded in Electronic Design]
Java 2

William Wong  |   ED Online ID #3499  |   December 3, 2001


Building structured applications—Java is not just a programming language. It's a collection of technologies built around a programming language called Java. Programmers of Java build applications within this structure technology. They incorporate standard Java classes as necessary, and build new classes when needed. Java 2 added new features. More importantly, it provided a coherent framework starting from the base, working up through the various editions and technologies. The latest additions employ standard Web technologies, like XML and SOAP.

Java APIs
Java application programming interfaces (API) are implemented as Java classes. The following are just a few of the available APIs:

  • Java Real Time
  • Java Foundation Classes (JFC)
  • Swing—user interface
  • JDBC—database
  • Remote Method Invocation (RMI)
  • Java for XML (JAXP)
  • Java for XML Messaging (JAXM)
  • Java Sound
  • Java Media Framework
  • Java 2D and 3D graphics
  • Java Naming and Directory Interface (JNDI)

J2 Micro Edition (J2ME)

  • Targets embedded devices
  • Modular architecture
  • Uses one configuration
  • Uses one or more profiles
  • Uses compact JVM

J2ME Configurations And Profiles

  • Connected Device Configuration (CDC)
  • Connection Limited Device Configuration (CLDC)
  • Foundation Profile—base for other profiles
  • Mobile Information Device Profile (MIDP)
  • Personal Profile Specification

The Language
Java was designed to incorporate the best programming methodologies, while eliminating error-prone techniques found in other programming languages.

Features

  • Object oriented
  • Garbage Collection
  • Class can support multiple interfaces
  • Name spaces
  • Multithreading
  • Array of reference checks
  • Strong type system

Eliminates

  • Pointers
  • Multiple inheritance

J2 Standard Edition

  • Targets desktops
  • Web browser plug-in
  • Runs standalone Java apps
  • Apps can link to J2EE apps
  • Uses standard JVM

Java Technologies

  • Java Platform Debugger Architecture (JPDA)
  • Java Beans
  • Java Spaces
  • Message Queue
  • Java Server Pages
  • Java Servlet
  • Java Server Faces
  • Web Start
  • Java for the Advanced Intelligent Network (JAIN)

Ancillary Technologies

Java is utilized in a number of technologies, such as:

  • Jini—spontaneous networking
  • OSGi—home gateways
  • Jiro—storage management

J2 Enterprise Edition (J2EE)

  • Targets servers
  • Runs server-based apps
  • Apps communicate with J2ME/SE
  • Supports Enterprise Java Beans
  • Works with Web servers like Apache

Java Virtual Machine

  • Base technology providing portability across platforms
  • Executes applications compiled to Java byte codes
  • Provides garbage collection
  • C Virtual Machine—portable C JVM implementation
  • Hot Spot—incremental optimizing compiler technology

Reading The Java Blueprints
Don't expect to learn all about Java from this one page. There simply isn't enough room here. Books have been written about most of the topics listed above.

Java incorporates a plethora of specifications and architectures centered around the Java programming language. The presentation above shows the major components, starting with the Java Virtual Machine (JVM), the execution engine for Java applications. Many more Java-related APIs and technologies aren't listed due to limited space.

A Sun-sponsored standards group called the Java Community Process (JCP) handles the language, APIs, and architectures. JCP involves a wide range of groups and users that propose, refine, and develop Java Specification Requests (JSRs). A JSR provides a definition for the various APIs and technologies listed above. For a complete list, go to the JCP Web site, www.jcp.org.

Java has garnered an amazing following from both developer and company standpoints. Major players like IBM and Hewlett-Packard provide a range of services and products, including their own JVMs. Java runs on all major platforms, and a number of processors execute Java byte codes directly.


Reprints   Printer-Friendly  Email this Article  RSS    Font Size   What's This?


  • 2008 BEST Electronic Design Winners
  • In EDA, A Year Of Mergers, Failed And Otherwise
  • 2008 BEST Electronic Design Winners
  • Engineers Rely On Internet For Product Info
  • Rochester Electronics Establishes New Design and Technology Group
  • November 17, 2008
  • Custom Sources Light Way To 22-nm IC Lithography
  • Software Turns Scopes Into Vector RF Signal Analyzers
    1) Switch-Mode ICs Promote Efficient Power Management, Part 1: Switch-Mode Fundamentals
    (987 views today)
    2) Ubuntu Goes Embedded
    (239 views today)
    3) Build A Smart Battery Charger Using A Single-Transistor Circuit
    (223 views today)
    4) Easily Convert Decimal Numbers To Their Binary And BCD Formats
    (166 views today)
    5) Parts Add Up To Home Theater PC
    (142 views today)
    ALL TOP 20



    POST YOUR COMMENTS HERE
    Name:

    Email:
    Your Comments:

    Enter the text from the image below


    Please refresh the page if you have trouble reading this text.

    Search Electronic Design
         
      
     
    Web Seminar
    Sponsored By:
    Title: Read Pacing: A Performance Enhancing Feature of PCI Express Gen 2 Switch Devices
    Speakers: 
    Date: 07/01/08
    Register: 

    Electronic Design Europe Electronic Design China EEPN Power Electronics Auto Electronics Microwaves & RF
    Mobile Dev & Design Schematics Find Power Products Military Electronics EE Events Related Resources