Science Fair Projects Ideas - Java programming language

All Science Fair Projects

      

Science Fair Project Encyclopedia for Schools!

  Search    Browse    Forum  Coach    Links    Editor    Help    Tell-a-Friend    Encyclopedia    Dictionary     

Science Fair Project Encyclopedia

For information on any area of science that interests you,
enter a keyword (eg. scientific method, molecule, cloud, carbohydrate etc.).
Or else, you can start by choosing any of the categories below.

Java 2 Platform, Standard Edition

(Redirected from Java API)

Java 2 Platform, Standard Edition or J2SE is a collection of Java Application Programming Interfaces useful to any Java platform programs. The J2EE (Enterprise Edition) includes all of the classes in the J2SE, plus a number which are more useful to programs running on servers than on workstations.

Contents

General-purpose

java.lang

Contains fundamental classes closely tied to the language and runtime system. This includes basic exceptions, math functions, threading, security functions, as well as some information on the underlying native system. It also contains the String class, and wrappers for numeric types like Integer.

Classes in java.lang are always available to the programmer, without needing a special import declaration at the beginning of a sourcecode file.

java.lang.ref

Special routines for interacting with the garbage collector. For example, one can create a weak reference, which allows one to refer to an object, without preventing the garbage collector from cleaning it up. This is useful in caches, where if nothing else refers to an object held by the cache, the garbage collector may clean it up at whim.

java.lang.reflection

Routines for using the Reflection API.

Reflection is a constituent of the Java API which enables Java code to examine and "reflect" upon Java components at runtime. This enables, for example, advanced debugging strategies.

The main use of Reflection is to call classes and methods just by knowing their names. This supports very dynamic programming, at the cost of not having safe compile-time checks to see if the class actually exists.

java.io

Routines for normal input and output. This includes streams and filehandling. Noteworthy streams are InputStreamReader, FileReader, and BufferedReader. InputStreamReader takes as a parameter System.in. The InputStreamReader accepts character input from the system. FileReader reads one character at a time from a data file. BufferedReader takes as a parameter either FileReader or InputStreamReader, and changes the input to word by word as opposed to one character at a time.

java.math

Package for multiprecision arithmetic including modular arithmetic operations. Provides multiprecision prime number generators used for cryptographic key generation. The main classes of the package are BigInteger and BigDecimal.

java.net

Special IO routines for networks. This includes the ability to easily request files over HTTP, as well as other common transactions. Numerical subroutines.

It does need more work to achieve high perfermence computing (HPC).

java.text

Parsing routines for strings. Support for different human-readable languages and locale-specific parsing is also included.

java.util

Routines for useful data structures. These data structures aggregate objects, with varying useful properties. Also includes the Collections API, which is a very organized way to handle data structures, influenced heavily by the Design Patterns community.

Special-purpose

java.applet

Routines to create applets. Applets allow applications to be downloaded over a network and run within a guarded sandbox. Security restrictions may be applied to applets, so they are not allowed to execute potentially hostile code from within the sandbox. A developer may apply a digital signature to an applet to label it as "safe," removing most of the restrictions, but this typically requires the developer to pay hundreds of US dollars a year to a certificate issuing agency such as Thawte or Entrust.

java.beans

Classes for developing and manipulating beans. Beans are reusable components defined by a specific set of Java coding conventions known as the JavaBeans architecture. The architecture provides mechanisms for manipulating properties of components and firing events when properties change.

Most of the APIs in java.beans are intended for use by a bean editor. A bean editor is a tool in which beans can be combined, customized and manipulated. A common example of a bean editor is a GUI designer in an Integrated development environment.

java.awt

The Abstract Windowing Toolkit contains routines to support basic GUI operations. These GUIs use basic windows from the underlying native system. Many independent implementations of the Java API (such as the GNU project's libgcj ) implement everything but AWT, as AWT is not at all necessary for most server-side applications of Java technology. This package also contains the Java2D graphics API.

java.rmi

Support for remote communication between two java applications.

java.security

Support for security. Includes message digest algorithm.

java.sql

The JDBC API for accessing SQL databases.

javax.swing

Swing is a collection of routines that build upon java.awt. It uses 2D drawing routines to exercise greater control over UI components than the underlying GUI system normally allows. One cost of this flexibility is that Swing elements may not exist outside of java.awt windows. Another issue with Swing is that it can be much slower than the java.awt package. This is because Swing is implemented entirely in Java, whereas the awt is implemented using native code.

Swing is a very rich system in its own right. There is support for switchable "look and feels," so that widgets in the GUI can imitate those from the underlying native system, or a completely new one. Also, design patterns permeate the system, especially a modified model-view-controller pattern, so programming is done cleanly, with good separation of function from appearance. However, one inconsistency is that (as of JDK 1.3) fonts are drawn by the underlying native system, and not by Java. This makes it difficult to have completely portable control of text size, though workarounds exist such as drawing fonts as application-supplied bitmaps. In general, layouts should be used, which keep elements within a GUI aesthetically consistent despite minor variations between platforms.

External links

10-26-2009 08:16:03
The contents of this article is licensed from www.wikipedia.org under the GNU Free Documentation License. Click here to see the transparent copy and copyright details
Science kits, science lessons, science toys, maths toys, hobby kits, science games and books - these are some of many products that can help give your kid an edge in their science fair projects, and develop a tremendous interest in the study of science. When shopping for a science kit or other supplies, make sure that you carefully review the features and quality of the products. Compare prices by going to several online stores. Read product reviews online or refer to magazines.

Start by looking for your science kit review or science toy review. Compare prices but remember, Price $ is not everything. Quality does matter.
Science Fair Coach
What do science fair judges look out for?
ScienceHound
Science Fair Projects for students of all ages
All Science Fair Projects.com Site
All Science Fair Projects Homepage
Search | Browse | Links | From-our-Editor | Books | Help | Contact | Privacy | Disclaimer | Copyright Notice