+++ /dev/null
-
-
-public abstract aspect AbstractMethods {
-
- protected abstract pointcut tracingScope ();
-
- before () : tracingScope () {
- test();
- }
-
- protected abstract void test ();
-// protected void test () {}
-}
+++ /dev/null
-import org.aspectj.lang.annotation.Aspect;
-
-@Aspect
-public class AtAspectTestConcreteMethods extends ConcreteMethods {
-
-}
+++ /dev/null
-
-
-public abstract aspect ConcreteMethods extends AbstractMethods {
-
- protected void test () {}
-
-}
+++ /dev/null
-public class HelloWorld {
-
- public static void main(String[] args) {
- new HelloWorld().println();
- }
-
- public void println() {
- System.out.print("Hello World!");
- }
-
-}
+++ /dev/null
-<aspectj>
- <aspects>
- <concrete-aspect name="TraceHelloWorld" extends="ConcreteMethods">
- <pointcut name="tracingScope" expression="within(*)"/>
- </concrete-aspect>
- </aspects>
-
- <weaver options="-verbose"/>
-</aspectj>
-