// Interacting private ITDs public class InteractingOldAndNew { public static void main(String []argv) { InteractingOldAndNew inst = new InteractingOldAndNew(); inst.setI1(12); inst.setI2(65); int value = inst.getI1(); if (value!=12) { throw new RuntimeException(Integer.toString(value)); } value = inst.getI2(); if (value!=65) { throw new RuntimeException(Integer.toString(value)); } } } aspect X { private int InteractingOldAndNew.i; public int InteractingOldAndNew.getI1() { return i; } public void InteractingOldAndNew.setI1(int newvalue) { i = newvalue; } } aspect Y { private int InteractingOldAndNew.i; public int InteractingOldAndNew.getI2() { return i; } public void InteractingOldAndNew.setI2(int newvalue) { i = newvalue; } }