class A {
    String f(Object x) { return "1"; }
    String g() { return f("a"); }
}

class B extends A {
    String f(Object x) { return "2"; }
    String f(String x) { return "3"; }
}

public class Test {
    public static void main(String[] args) {
        A a = new B();
        System.out.println(a.g());
    }
}
public class Main {

    int func(int a, int b) {
        return a + b;
    }

    int func(char a, char b) {
        return b - a;
    }

    char func(char a) {
        return a;
    }

    public static void main(String[] args) {
        Main m = new Main();
        int r1 = m.func(4, 5);
        int r2 = m.func('A', 'C');
        char r3 = m.func('3');

        System.out.println(r1 + r2 + "2" + r3);
    }
}