本文整理匯總了Java中com.intellij.psi.PsiClass.getConstructors方法的典型用法代碼示例。如果您正苦於以下問題:Java PsiClass.getConstructors方法的具體用法?Java PsiClass.getConstructors怎麽用?Java PsiClass.getConstructors使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類com.intellij.psi.PsiClass
的用法示例。
在下文中一共展示了PsiClass.getConstructors方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。
示例1: checkClass
import com.intellij.psi.PsiClass; //導入方法依賴的package包/類
@Override
public void checkClass(JavaContext context, PsiClass declaration) {
final JavaEvaluator evaluator = context.getEvaluator();
if (evaluator.isAbstract(declaration)) {
return;
}
if (!evaluator.isPublic(declaration)) {
context.report(ISSUE, declaration, context.getLocation(declaration),
"Non-abstract Scene class must be public");
return;
}
if (declaration.getContainingClass() != null && !evaluator.isStatic(declaration)) {
context.report(ISSUE, declaration, context.getLocation(declaration),
"Inner Scene class must be static");
return;
}
PsiMethod[] constructors = declaration.getConstructors();
// No constructor means it has default constructor
boolean hasNoParametersConstructor = constructors.length == 0;
if (!hasNoParametersConstructor) {
// Find no-parameter constructor
for (PsiMethod constructor : constructors) {
if (evaluator.isPublic(constructor)) {
PsiParameter[] parameters = constructor.getParameterList().getParameters();
if (parameters.length == 0) {
hasNoParametersConstructor = true;
break;
}
}
}
}
if (!hasNoParametersConstructor) {
context.report(ISSUE, declaration, context.getLocation(declaration),
"Scene class must have a no-parameter constructor");
}
}