rJava (version 1.0-11)

jreflection: Simple helper functions for Java reflection

Description

.jconstructors returns a character vector with all constructors for a given class or object. .jmethods returns a character vector with all methods for a given class or object. .jfields returns a character vector with all fields (aka attributes) for a given class or object.

Usage

.jconstructors(o, as.obj = FALSE, class.loader=.rJava.class.loader)
.jmethods(o, name = NULL, as.obj = FALSE, class.loader=.rJava.class.loader)
.jfields(o, name = NULL, as.obj = FALSE, class.loader=.rJava.class.loader)

Value

Returns a character vector (if as.obj is FALSE) or a list of Java objects. Each entry corresponds to the

Constructor resp. Method resp. Field

object. The string result is constructed by calling

toString() on the objects.

Arguments

o

Name of a class (either notation is fine) or an object whose class will be queried

name

string, regular expression of the method/field to look for

as.obj

if TRUE then a list of Java objects is returned, otherwise a character vector (obtained by calling toString() on each entry).

class.loader

optional, class loader to use for class look up if needed (i.e., if o is a string)

Details

There first two functions are intended to help with finding correct signatures for methods and constructors. Since the low-level API in rJava doesn't use reflection automatically, it is necessary to provide a proper signature. That is somewhat easier using the above methods.

See Also

.jcall, .jnew, .jcast or $,jobjRef-method

Examples

Run this code
if (FALSE) {
.jconstructors("java.util.Vector")
v <- .jnew("java.util.Vector")
.jmethods(v, "add")
}

Run the code above in your browser using DataLab