私はEclipseプラグインの開発に取り組んでいるので、APIドキュメントを見つけてグーグルで検索します.ICompilationUnitでそのようなメソッドisClass() isInterface()しか含まれていませんが、抽象クラス、次のようなコードを深く掘り下げたい
public boolean isAbstract(ICompilationUnit icu) {
//TODO
}
誰でも私を助けることができますか?
私はEclipseプラグインの開発に取り組んでいるので、APIドキュメントを見つけてグーグルで検索します.ICompilationUnitでそのようなメソッドisClass() isInterface()しか含まれていませんが、抽象クラス、次のようなコードを深く掘り下げたい
public boolean isAbstract(ICompilationUnit icu) {
//TODO
}
誰でも私を助けることができますか?
まず、 のインスタンスが必要です。これはorg.eclipse.jdt.core.IType
、1 つのインスタンスにICompilationUnit
複数の型を含めることができるためです。ICompilationUnit.getTypes()
このユニットのすべてのタイプのリストを提供します。ICompilationUnit.findPrimaryType()
このユニットのプライマリ タイプを取得します。
ルーチンは次のようになります。
public boolean isAbstract(ICompilationUnit icu) throws JavaModelException {
final IType type = icu.findPrimaryType();
return (type != null)
? Flags.isAbstract(type.getFlags())
: false;
}
はどこFlags
ですかorg.eclipse.jdt.core.Flags
。