#386 Overloaded Method Resolution with a Private Method

Companies:
Aston
Themes:
JavaOOPCode Review

What will be printed?

class MyCode {
    public static void main(String[] args) {
        SuperBase sb = new Base();
        Object o = "";
        sb.mm(o);
        sb.mm("");
    }

    static class SuperBase {
        public int i = 3;

        protected void mm(Object o) {
            System.out.println("Object  " + i);
        }

        private void mm(String o) {
            System.out.println("String  " + i);
        }
    }

    public static class Base extends SuperBase {
        public Base() {
            i = 5;
        }
    }
}

Question review

Mentor
Answer as you would in a real interview. I’ll ask follow-up questions, then compare your answer with the reference answer and show your accuracy as a %.
Sign in to start the dialogue The mentor keeps the context of the current question and your previous messages.
Sign in