Я думаю, что, возможно, нет способа сделать это, но я подумал, что стоит спросить. Я хочу сделать что-то вроде следующего:Создание подклассов из статических методов
public class Super {
public static String print() { System.out.println(new Super().getClass().getSimpleName()); }
public Super() {}
}
public class Subclass extends Super {
public Subclass() {}
public void main(String[] args) {
Super.print();
Subclass.print();
}
}
Моя надежда состоит в том, чтобы получить Super.print(), чтобы показать, «Супер» и Subclass.print(), чтобы показать «Подкласс». Однако я не вижу, как это сделать из статического контекста. Спасибо за помощь.
Мне хорошо известно, что я могу сделать это без статических методов, и что я могу передать класс в каждый вызов метода. Я не хочу этого делать, поскольку это требует переопределения нескольких статических методов во многих подклассах.
Вы могли бы хотеть иметь Подкласс продлить супер так что он может назвать печать() и иметь печать() возвращает строку или изменить свою подпись к мочеиспусканию .. просто FYI. –
Я добавил расширение для моего примера. Я изначально собирался положить его туда и забыл. – Blacktiger