Jak přetížíte funkci v Pythonu?
Jak přetížíte funkci v Pythonu?
Anonim

Krajta nepodporuje přetížení funkcí . Když definujeme více funkcí se stejným jménem, pozdější vždy přepíše předchozí, a proto ve jmenném prostoru bude vždy proti každému jeden záznam funkce název.

V souladu s tím, jak přetěžujete v Pythonu?

Na dosáhnout operátor přetěžování , definujeme speciální metodu v definici třídy. Název metody by měl začínat a končit dvojitým podtržítkem (_). Operátor + je přetížené pomocí speciální metody s názvem _add_(). Tato metoda je implementována jak třídami int, tak str.

Za druhé, který operátor je přetížen funkcí _ OR_? Vysvětlení: Funkce _or_() přetěžuje bitový NEBO operátor |.

Podobně, proč není v Pythonu podporováno přetěžování metod?

Krajta dělá nepodporuje přetížení metody , tedy je ne možné definovat více než jeden metoda se stejným jménem ve třídě v krajta . To je proto, že metoda argumenty v krajta dělat ne mít typ. A metoda přijetí jednoho argumentu lze volat s celočíselnou hodnotou, řetězcem nebo dvojicí.

Co znamená přetížení metody?

Metoda přetížení je funkce, která umožňuje třídě mít více než jednu metoda mající stejný název, pokud jejich argument uvádí jsou odlišný. To je podobně jako konstruktor přetěžování v Javě to umožňuje, aby třída měla více než jeden konstruktor s různými seznamy argumentů.

Doporučuje: