Class Exclude Parameter
|
The Class Exclude Parameter dialog has two facets:
- the specification of the class itself and
- the specification of the package that contains the class
For a class to be excluded it must match the full specification.
|
The class itself
In specifying the class whose name is to be excluded, you can specify:
- whether its access level is
- not specifed
- public
- package (i.e. default)
- whether it has or doesn't have the modifiers
- abstract
- final
- interface (i.e. the class is an interface)
- its name or a "*" wildcard string that its unqualified name must match
- the fully qualified name of its superclass
- a comma separated list of fully qualified interface names that it implements.
- the fully qualified class name of an annotation that a matching method must have. You can use the "*" wildcard. Do not include the '@' character.
|
|
The containing package
To specify the containing package, click the Containing package tab.
The dialog basically works the same way as the Package Exclude Parameter dialog.
The difference is that you are now specifying the package qualifiers of the class whose name is to be excluded.
If you clear the Name field then you are specifying that the class is in the default package.
If you wish to exclude the containing package name as well as the class name then you should select the
Exclude package name as well box.
|
|
Example
The specification:
public final p*.C*x
means exclude all classes that:
- are
public final
- are contained in a package whose name matches
"p*"
- have a name that matches
"C*x"
The specification:
@pack2.MyAnnotation0 public final p*.*.C*x extends pack1.Class1
means exclude all classes that:
- are annotated by a class matching
pack2.MyAnnotation0
- are
public final
- are contained in a package whose name matches
"p*.*"
- have a name that matches
"C*x"
- extend
pack1.Class1
|