Какво представлява претоварването на методите в Python и как работи?



Тази статия обяснява какво е претоварването на метода в python и как работи. Има два различни примера за подробно обяснение на метода.

Два метода не могат да имат едно и също име в . Претоварването на метода в Python е функция, която позволява на един и същ оператор да има различни значения. В тази статия ще разгледаме функцията за претоварване на метода в Python и как се използвапретоварване на методите, в следната последователност:

Какво е претоварване?

Претоварване е способността на функция или оператор да се държи по различни начини въз основа на параметрите, които се предават на , или операндите, върху които действа операторът.





Някои от предимства за използване на претоварване са:

  • Претоварването на метод насърчава повторната употреба. Например, вместо да пишем множество методи, които се различават само леко, можем да напишем един метод и да го претоварим.



    какво е методът tostring в java
  • Претоварването също подобрява яснотата на кода и елиминира сложността.

Претоварването е много полезна концепция. Той обаче има редица недостатъци свързано с него.

  • Претоварването може да създаде объркване, когато се използва навсякъде граници. При прекомерно използване става тромаво управлението на претоварените функции.



Претоварване на метод в Python

В Python можете да създадете метод, който може да бъде извикан по различни начини. Така че, можете да имате метод, който има нула, един или повече броя параметри. В зависимост от дефиницията на метода можем да го извикаме с нула, един или повече аргументи.

Като се има предвид един метод или функция, броят на параметрите може да бъде определен от вас. Този процес на извикване на един и същ метод по различни начини се нарича претоварване на метода.

Примери за претоварване на методи

Сега, след като знаете какво е претоварването на методите в Python, нека вземем пример. Тук създаваме клас с такъв Здравейте() . Първият параметър на този метод е зададен на None. Това ще ни даде възможност да го извикаме със или без параметър.

Обектът също се създава въз основа на класа и ние ще извикаме метода му, използвайки нула и един параметър.

Пример 1:

#! / usr / bin / env python клас Person: def Hello (self, name = None): ако името не е None: print ('Hello' + name) else: print ('Hello') # Създаване на екземпляр obj = Person () # Извикайте метода obj.Hello () # Извикайте метода с параметър obj.Hello ('Edureka')

Изход:

Здравейте Здравейте Edureka

За да изясним претоварването на метода, сега можем да извикаме метода Hello () по два начина:

obj.Hello () obj.Hello ('Edureka')

В горния пример създадохме метод, който може да бъде извикан с по-малко аргументи, отколкото е дефинирано да позволи. Също така, не е ограничено до две променливи и вашият метод може да има повече променливи, които не са задължителни.

Сега да вземем друг пример да разберем претоварването на метода в .

Пример 2:

В следващия пример ще претоварим метода area. Ако няма аргумент, той връща 0. И, ако имаме един аргумент, той връща квадрата на стойността и приема, че изчислявате площта на квадрат. Освен това, ако имаме два аргумента, той връща произведението на двете стойности и приема, че изчислявате площта на правоъгълник.

# class class Изчисляване: # area метод def area (self, x = None, y = None): if x! = None и y! = None: return x * y elif x! = None: return x * x else: return 0 # обект obj = Compute () # нулев аргумент print ('Стойност на площ:', obj.area ()) # един аргумент print ('Стойност на площ:', obj.area (4)) # print два аргумента ('Area Стойност: ', obj.area (3, 5))

Горният код ще ни даде следното изход:

Стойност на площ: 0 Стойност на площ: 16 Стойност на площ: 15

С това стигнахме до края на нашата статия. Надявам се, че сте разбрали какво е претоварването на метода в python и как работи.

За да получите задълбочени познания за python заедно с различните му приложения, можете да се регистрирате за живо от Edureka с денонощна поддръжка и доживотен достъп.

Имате въпрос към нас? Моля, споменете го в раздела за коментари на този блог „Претоварване на метода в Python“ и ние ще се свържем с вас възможно най-скоро.