Package jadx.api
Class JavaClass
java.lang.Object
jadx.api.JavaClass
- All Implemented Interfaces:
JavaNode
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final ClassNodeprivate final @Nullable JadxDecompilerprivate booleanprivate List<JavaMethod> private final @Nullable JavaClass -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidboolean@Nullable ICodeAnnotationgetAnnotationAt(int pos) Internal API.getCode()@NotNull ICodeInfo@Nullable JavaClassReturn parent class which contains code of this class.@Nullable JavaClassintgetName()(package private) JadxDecompilergetSmali()getSourceLine(int decompiledLine) Return top parent class which contains code of this class.intgetUseIn()getUsePlacesFor(ICodeInfo codeInfo, JavaNode javaNode) inthashCode()booleanisInner()booleanisNoCode()booleanprivate @Nullable ICodeInfoload()Decompile class and loads internal lists of fields, methods, etc.booleanDetect if calling load() would trigger a potentially expensive decompilation operation.private voidreload()void@Nullable JavaMethodsearchMethodByShortId(String shortId) toString()voidunload()
-
Field Details
-
decompiler
-
cls
-
parent
-
innerClasses
-
inlinedClasses
-
fields
-
methods
-
listsLoaded
private boolean listsLoaded
-
-
Constructor Details
-
JavaClass
JavaClass(ClassNode classNode, @NotNull @NotNull JadxDecompiler decompiler) -
JavaClass
Inner classes constructor
-
-
Method Details
-
getCode
-
getCodeInfo
-
decompile
public void decompile() -
loadingWouldRequireDecompilation
public boolean loadingWouldRequireDecompilation()Detect if calling load() would trigger a potentially expensive decompilation operation. -
reload
-
unload
public void unload() -
isNoCode
public boolean isNoCode() -
isInner
public boolean isInner() -
getSmali
-
isOwnCodeAnnotation
- Specified by:
isOwnCodeAnnotationin interfaceJavaNode
-
getCodeNodeRef
- Specified by:
getCodeNodeRefin interfaceJavaNode
-
getClassNode
Internal API. Not Stable! -
load
Decompile class and loads internal lists of fields, methods, etc. Do nothing if already loaded.- Returns:
- code info if decompilation was executed, null otherwise
-
loadLists
private void loadLists() -
getRootDecompiler
JadxDecompiler getRootDecompiler() -
getAnnotationAt
-
getUsageMap
-
getUsePlacesFor
-
getUseIn
-
getSourceLine
-
getName
-
getFullName
- Specified by:
getFullNamein interfaceJavaNode
-
getRawName
-
getPackage
-
getJavaPackage
-
getDeclaringClass
- Specified by:
getDeclaringClassin interfaceJavaNode
-
getOriginalTopParentClass
-
getTopParentClass
Return top parent class which contains code of this class. Code parent can be different from original parent after move or inline- Specified by:
getTopParentClassin interfaceJavaNode- Returns:
- this if already a top class
-
getCodeParent
Return parent class which contains code of this class. Code parent can be different for original parent after move or inline -
getAccessInfo
-
getInnerClasses
-
getInlinedClasses
-
getFields
-
getMethods
-
searchMethodByShortId
-
getDependencies
-
getTotalDepsCount
public int getTotalDepsCount() -
removeAlias
public void removeAlias()- Specified by:
removeAliasin interfaceJavaNode
-
getDefPos
public int getDefPos() -
equals
-
hashCode
public int hashCode() -
toString
-