"getName",
    public static void init(Scriptable scope) {        Method[] methods = FileObject.class.getDeclaredMethods();        ScriptableObject proto = new FileObject();        proto.setPrototype(getObjectPrototype(scope));        Member ctorMember = null;        for (int i=0; i<methods.length; i++) {            if ("fileObjCtor".equals(methods[i].getName())) {                ctorMember = methods[i];                break;            }        }        FunctionObject ctor = new FunctionObject("File", ctorMember, scope);        ctor.addAsConstructor(scope, proto);        String[] fileFuncs = {                                "getParent",                                "isAbsolute",                                "write",                                "remove",                                "list",                                "flush",                                "writeln",                                "close",                                "getPath",                                "open",                                "error",                                "canRead",                                "canWrite",                                "exists",                                "getAbsolutePath",                                "getLength",                                "isDirectory",                                "isFile",                                "lastModified",                                "mkdir",                                "renameTo",                                "eof",                                "isOpened",                                "readln",                                "clearError",                                "readAll"                               };        try {            proto.defineFunctionProperties(fileFuncs, FileObject.class, 0);        } catch (Exception ignore) {            System.err.println ("Error defining function properties: "+ignore);        }    }