setPublic
tip
kotlin
groovy
javascript
lua
php
python
ruby
val reflector1 = _reflectors.reflect("com.m8test.script.core.impl.JavaTypeTester")
// 调用无参构造方法
_console.log(reflector1.newInstance(null) {
setPublic(true)
})
val reflector2 = _reflectors.reflect("java.lang.StringBuilder")
// 调用有参构造方法
_console.log(reflector2.newInstance(arrayOf("hello world")) {
setPublic(true)
setParameterTypes(arrayOf(_plugins.loadClass("java.lang.String")))
})
tip
def reflector1 = $reflectors.reflect("com.m8test.script.core.impl.JavaTypeTester")
// 调用无参构造方法
$console.log(reflector1.newInstance(null) {
setPublic(true)
})
def reflector2 = $reflectors.reflect("java.lang.StringBuilder")
// 调用有参构造方法
$console.log(reflector2.newInstance($arrays.arrayOf($plugins.loadClass("java.lang.String"), "hello world")) {
setPublic(true)
setParameterTypes($arrays.arrayOf($plugins.loadClass("java.lang.Class"), $plugins.loadClass("java.lang.String")))
})
tip
let reflector1 = $reflectors.reflect("com.m8test.script.core.impl.JavaTypeTester")
// 调用无参构造方法
$console.log(reflector1.newInstance(null, (constructorSelector) => {
constructorSelector.setPublic(true)
}))
let reflector2 = $reflectors.reflect("java.lang.StringBuilder")
// 调用有参构造方法
$console.log(reflector2.newInstance($arrays.arrayOf($plugins.loadClass("java.lang.String"), "hello world"), (constructorSelector) => {
constructorSelector.setPublic(true)
constructorSelector.setParameterTypes($arrays.arrayOf($plugins.loadClass("java.lang.Class"), $plugins.loadClass("java.lang.String")))
}))
tip
local reflector1 = _reflectors:reflect("com.m8test.script.core.impl.JavaTypeTester")
-- 调用无参构造方法
_console:log(reflector1:newInstance(nil, function(constructorSelector)
constructorSelector:setPublic(true)
end))
local reflector2 = _reflectors:reflect("java.lang.StringBuilder")
-- 调用有参构造方法
_console:log(reflector2:newInstance(_arrays:arrayOf(_plugins:loadClass("java.lang.String"), "hello world"), function(constructorSelector)
constructorSelector:setPublic(true)
constructorSelector:setParameterTypes(_arrays:arrayOf(_plugins:loadClass("java.lang.Class"), _plugins:loadClass("java.lang.String")))
end))
tip
<?php
$reflector1 = $reflectors->reflect("com.m8test.script.core.impl.JavaTypeTester");
// 调用无参构造方法
$console->log($reflector1->newInstance(null, function ($constructorSelector) {
$constructorSelector->setPublic(true);
}));
$reflector2 = $reflectors->reflect("java.lang.StringBuilder");
// 调用有参构造方法
$console->log($reflector2->newInstance($arrays->arrayOf($plugins->loadClass("java.lang.String"), "hello world"), function ($constructorSelector) use ($plugins, $arrays) {
$constructorSelector->setPublic(true);
$constructorSelector->setParameterTypes($arrays->arrayOf($plugins->loadClass("java.lang.Class"), $plugins->loadClass("java.lang.String")));
}));
tip
reflector1 = _reflectors.reflect("com.m8test.script.core.impl.JavaTypeTester")
def fn1(constructorSelector):
constructorSelector.setPublic(True)
# 调用无参构造方法
_console.log(reflector1.newInstance(None, fn1))
reflector2 = _reflectors.reflect("java.lang.StringBuilder")
def fn2(constructorSelector):
constructorSelector.setPublic(True)
constructorSelector.setParameterTypes(
_arrays.arrayOf(_plugins.loadClass("java.lang.Class"), _plugins.loadClass("java.lang.String")))
# 调用有参构造方法
_console.log(reflector2.newInstance(_arrays.arrayOf(_plugins.loadClass("java.lang.String"), "hello world"), fn2))
tip
reflector1 = $reflectors.reflect("com.m8test.script.core.impl.JavaTypeTester")
# 调用无参构造方法
$console.log(reflector1.newInstance(nil) { |constructorSelector|
constructorSelector.setPublic(true)
})
reflector2 = $reflectors.reflect("java.lang.StringBuilder")
# 调用有参构造方法
$console.log(reflector2.newInstance($arrays.arrayOf($plugins.loadClass("java.lang.String"), "hello world")) { |constructorSelector|
constructorSelector.setPublic(true)
constructorSelector.setParameterTypes($arrays.arrayOf($plugins.loadClass("java.lang.Class"), $plugins.loadClass("java.lang.String")))
})
tip