methodHandle* method, JavaCallArguments* args, TRAPS
All calls to Java have to go via JavaCalls. Sets up the stack frame
// and makes sure that the last_Java_frame pointers are chained correctly.
class
JavaCalls: AllStatic {
static
void
call_helper(JavaValue* result, methodHandle* method, JavaCallArguments* args, TRAPS);
public
:
// Optimized Constuctor call
static
void
call_default_constructor(JavaThread* thread, methodHandle method, Handle receiver, TRAPS);
// call_special
// ------------
// The receiver must be first oop in argument list
// receiver表示方法的接收者,如A.main()呼叫中,A就是方法的接收者
static
void
call_special(JavaValue* result, KlassHandle klass, Symbol* name,Symbol* signature, JavaCallArguments* args, TRAPS);
static
void
call_special(JavaValue* result, Handle receiver, KlassHandle klass,Symbol* name, Symbol* signature, TRAPS);
// No args
static
void
call_special(JavaValue* result, Handle receiver, KlassHandle klass,Symbol* name, Symbol* signature, Handle arg1, TRAPS);
static
void
call_special(JavaValue* result, Handle receiver, KlassHandle klass,Symbol* name, Symbol* signatur
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69929371/viewspace-2890686/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 安裝redis cluster時:undefined method `invoke_with_build_args' for nil:NilClassRedisUndefinedUI
- java MethodHandle解析Java
- python不定長函式:*args 和 **args的使用Python函式
- 《C Traps and Pitfalls》(C陷阱與缺陷)
- python中*args的使用Python
- 如何理解 new (...args: any[]) => any
- python 中 os.fork() 與 os.waitpid(pid,*args, **args) 說明PythonAI
- Python 擴充之 *args & **kwargsPython
- 【Python】*args 和 **kwargs的用法Python
- python 中的*args 和**kwargsPython
- Methods with Variable Argument Lists (var-args)
- 詳解Python的*args和 **kwargsPython
- Python中如何使用*args和**kwargsPython
- Python可變引數*args和**kwargsPython
- 【Flask】關於request.json /.values /.args /.formFlaskJSONORM
- Python中*args和**kwargs 的簡單使用Python
- Python基礎-*args和**kwargs魔法變數Python變數
- Python 中的 *args 和 **kwargs 是什麼Python
- Go語言之methodGo
- JAVA Method的解析Java
- post 405 method not allowed
- chinese input method in emacsMac
- The method of create a replicate of the database .Database
- Top Ten Traps in C# for C++ Programmers中文版(下篇) (轉)C#C++
- Java中main方法引數String[ ] args的使用JavaAI
- Python中func(*args, **kwargs)的引數問題Python
- IllegalArgumentException: Invalid character found in method name. HTTP method names must be tokensExceptionHTTP
- java程式碼中init method和destroy method的三種使用方式Java
- [vue] computed 和 methodVue
- method.invoke(...)反射點反射
- what is the Mixin method in Python?Python
- The House of Mind (FASTBIN METHOD) PRIMEAST
- form&method【POST~GET】ORM
- Python中的methodPython
- Python: 函式與方法的區別 以及 Bound Method 和 Unbound MethodPython函式
- java 8裡 Method方法bugJava
- ios method swizzlingiOS
- 設計模式-Template Method Pattern設計模式