Сценарий:
Для контекста посмотрите мой предыдущий пост.
Как исправить программу Java?
По сути, в моей компании, если мне приходится повторно развертывать программу, мне разрешено обновлять только определенные классы. Это означает, что я должен предоставить скомпилированный класс администратору и сообщить ему, где следует разместить эти файлы.
Вопрос:
Теперь мой вопрос: у меня есть класс с именем ClassA, который расширяется за счет ClassB, ClassC и ClassD. В классе A есть метод с именем genericMethodA(), внутреннюю реализацию которого я хотел бы изменить.
Пример
Код: Выделить всё
// old implementation in ClassA
public void int genericMethodA()
{
return 50;
}
// change to this implementation in ClassA
public void int genericMethodA()
{
return 100;
}
// Method in ClassB, ClassC, and ClassD
public void logB()
{
log.info(genericMethodA());
}
Также кто-нибудь может указать документацию, как Java компилирует код. Например, когда класс расширяется, компилятор помещает инструкции в байт-код подкласса или просто указывает на базовый класс.
Ребята, пожалуйста, не стесняйтесь комментировать. если вам нужна дополнительная информация или разъяснения по моему вопросу.
Подробнее здесь: https://stackoverflow.com/questions/200 ... e-subclass
Мобильная версия