Mój obecny jest zrozumienie, że JDT zapewnia nam dwa różne interfejsy i klasy hierachies do reprezentowania i manipulowania kod Java:Jaka jest rola wiązania I * w Eclipse JDT?
Java Model: to sposób przedstawiania projektu Java. Szybko tworzyć, ale nie zawierać jak najwięcej informacji jak klasa AST hierarchię, na przykład nie są dostępne o dokładne położenie każdego elementu w pliku źródłowym informacje (AST, który jest dostępnych)
AST: bardziej szczegółowa reprezentacja kodu źródłowego plus zapewnia środki do manipulowania nim.
Czy to prawda?
Teraz istnieje również hierarchia interfejsów o nazwie I * Binding (począwszy od IBinding), na przykład IMethodBinding. Tak na przykład, mamy 3 różne rodzaje do czynienia z metodami:
- IMethod (z Java modelu)
- MethodInvocation (od AST, mógłby dostać od IMethod)
- IMethodBinding
Z dokumentu IMethodBinding wydaje mi się bardzo podobny do MethodInvocation od AST, ale nie widzę wyraźnego rozróżnienia i kiedy należy z nich korzystać. Czy ktoś mógłby to wyjaśnić?
Czy możesz powiedzieć, jak uzyskać metodę Prowokacja z IMethod? – berezovskyi