24.03.2020, 14:30 | #11 |
Участник
|
Наткнулся в недрах класса JournalRunBaseBatch
X++: public container pack() { throw error(Error::missingOverload(funcName())); } Здесь как бы разница есть, перегружен метод, или переопределен. Причем в Х++ сроду не было перегруженных методов. Видимо, не сильно-то и важно. Заходим внутрь и видим: X++: //Do not use! //Declare method as abstract instead or call Error::missingOverride(); #obsolete static LabelType missingOverload(str name) { return Error::missingOverride(name); } Но что мешало сразу использовать missingOverride()? Напомню, кто может не въехал. Override - переопределение метода в рамках наследования. Overload - перегрузка метода, т.е. в теле одного класса мы можем разместить дофига методов с одним и тем же именем, но разными параметрами. Что очень распространено в C#, Java и Delphi. Такое чувство, что разработчики MS просто сами не сильно понимают в чем разница.
__________________
// no comments |
|