QualifiedMethodExample.java
package com.acme.qualifiers;

import church.math.Complex;

@SuppressWarnings("unchecked")
public class QualifiedMethodExample {
    public static <T, U> T complex(T x, U y) {
        return x;
    }

    public static void main(String[] args) {
        int              c0 = complex(1, 2);
        int              c1 = complex(1, 2);
        Complex<Integer> c2 = Complex.complex(1, 2);
        Complex<Integer> c3 = Complex.complex(1, 2);
    }

}