Как вызвать конкретный родительский конструктор из анонимного внутреннего класса?

Итак, я знаю, что анонимный внутренний класс либо неявно расширяет родительский класс, либо реализует интерфейс, и поэтому должен быть вызван конструктор суперкласса. Однако я не уверен, как создать конструктор для анонимного класса (если это возможно), и без определения конструктора, я не уверен, как делать вызовы super ()! Вот мой тренировочный код:

public class AnonymousConstructor {
    public static void main(String[] args) {
        //I'm not sure how to explicitly call one of the arg super constructors
        MyBob my = new MyBob() {
            //I would like to do something like this super("String"); or      
            //super("String", "String");
        };

    }
}

class MyBob extends Thread {
    MyBob() {
        System.out.println("No arg constructor");
    }
    MyBob(String a) {
        System.out.println("Arg constructor");
    }
    MyBob(String a, String b) {
        System.out.println("2 arg constructor");
    }
    public void run() {
        System.out.println("Outer");
    }
}

Меня беспокоит то, что если вы попытаетесь создать анонимный класс из класса, у которого нет конструктора без аргументов, код завершится ошибкой во время компиляции, потому что нет способа передать аргумент суперконструктору. Это действительная проблема, и если так, есть ли способ обойти это?

Ответы на вопрос(3)

Ваш ответ на вопрос