public class CounterQ { public static int num = 0; public int val = 0; public CounterQ(int init) { this.val = init; ++num; } public void increment() { val += 1; } public int compareTo(CounterQ other) { return this.val - other.val; } // compareTo public static void copy(CounterQ a, CounterQ b) { a = b; } // copy public static void main(String[] args) { CounterQ c1 = new CounterQ(5); CounterQ c2 = new CounterQ(7); c1.increment(); int compare = c1.compareTo(c2); System.out.println(c1.num + " " + c2.num); System.out.println(c1.val + " " + c2.val); System.out.println(compare); } } // class CounterQ