Visit Mozilla.org

Core JavaScript 1.5 Reference:Global Objects:JavaClass

From MDC


Contents

[edit] Summary

Core Object

A JavaScript reference to a Java class.

[edit] Created by

A reference to the class name used with the Packages object:

Packages.JavaClass

JavaClass is the fully-specified name of the object's Java class. The LiveConnect java, sun, and netscape objects provide shortcuts for commonly used Java packages and also create JavaClass objects.

[edit] Description

A JavaClass object is a reference to one of the classes in a Java package, such as netscape.javascript.JSObject. A JavaPackage object is a reference to a Java package, such as netscape.javascript. In JavaScript, the JavaPackage and JavaClass hierarchy reflect the Java package and class hierarchy.

You can pass a JavaClass object to a Java method which requires an argument of type java.lang.Class.

[edit] Backward compatibility

[edit] JavaScript 1.3 and earlier

You must create a wrapper around an instance of java.lang.Class before you pass it as a parameter to a Java method -- JavaClass objects are not automatically converted to instances of java.lang.Class.

[edit] Properties

The properties of a JavaClass object are the static fields of the Java class.

[edit] Methods

The methods of a JavaClass object are the static methods of the Java class.

[edit] Examples

[edit] Example: Using JavaClass

In the following example, x is a JavaClass object referring to java.awt.Font. Because BOLD is a static field in the Font class, it is also a property of the JavaClass object.

x = java.awt.Font;
myFont = x("helv", x.BOLD, 10); // creates a Font object

The previous example omits the Packages keyword and uses the java synonym because the Font class is in the java package.

[edit] Example

In the following example, the JavaClass object java.lang.String is passed as an argument to the newInstance method which creates an array:

var cars = java.lang.reflect.Array.newInstance(java.lang.String, 15);

[edit] See also

JavaArray, JavaObject, JavaPackage, Packages